JP2003015909A - オンボードデバッグシステムおよびオンボードデバッグ方法 - Google Patents

オンボードデバッグシステムおよびオンボードデバッグ方法

Info

Publication number
JP2003015909A
JP2003015909A JP2001198047A JP2001198047A JP2003015909A JP 2003015909 A JP2003015909 A JP 2003015909A JP 2001198047 A JP2001198047 A JP 2001198047A JP 2001198047 A JP2001198047 A JP 2001198047A JP 2003015909 A JP2003015909 A JP 2003015909A
Authority
JP
Japan
Prior art keywords
address
program
information
branch
trace
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
JP2001198047A
Other languages
English (en)
Inventor
Kazuaki Takahashi
一哲 高橋
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 JP2001198047A priority Critical patent/JP2003015909A/ja
Publication of JP2003015909A publication Critical patent/JP2003015909A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】 実行するプログラムの各ステップのアドレス
と予め定められた複数のアドレスとを比較して、アドレ
スの一致を示す信号によってデバッグを行う。 【解決手段】 マイクロコンピュータ2’によりプログ
ラムを実行中のアドレスは、実行情報7として比較器1
5において予め設定されたアドレスと比較される。予め
設定されたアドレスと一致すると、予め設定されたどの
アドレスと一致したかを示す一致信号であるID情報1
6を生成しリアルタイムに出力する。処理の順でトレー
スメモリ11に記録されるID情報16に基づき、各I
D情報に対応するデータベースの設定情報によりトレー
ス解析を行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、マイクロコンピュ
ータにおいて動作するプログラムのデバッグ,評価,解
析を限られたテスト端子から行うオンボードデバッグシ
ステムおよびオンボードデバッグ方法に関するものであ
る。
【0002】
【従来の技術】昨今、組込み型マイクロコンピュータの
製品開発におけるデバッグ手法は、従来型のインサーキ
ットエミュレータから、オンボードデバッグに移行しつ
つある。これは、マイクロコンピュータの動作周波数が
高く高速となることでインサーキットエミュレータの速
度追従が厳しくなったことと、高密度実装によるプロー
ビングが困難であるという課題が上げられるからであ
る。
【0003】オンボードデバッグとは、製品に搭載する
マイクロコンピュータのシリコンチップに最小限のデバ
ッグ機能を実装して、最小限の外部端子によってインタ
ーフェースをとりパーソナルコンピュータ(以下、パソ
コンという)から内部の状態を調べたり、プログラムの
変更を行ったりするデバッグ装置あるいは方法である。
【0004】このプログラムのデバッグ,評価,解析を
行う上で、欠かせない機能にトレース機能がある。これ
は、プログラム実行履歴を確認する機能であり、この機
能を実現するためにはメモリアクセスに必要なアドレス
バスとデータバス、さらには制御信号が必要となる。3
2ビットのマイクロコンピュータの場合、アドレス32
本、データ32本、制御信号を含めると最低66本の信
号線が必要となる。これはトレース機能を実現するため
に必要であるが、マイクロコンピュータを組み込んだ最
終のセットには不要であるため、限りなく少ない端子で
実現する手法が提供されている。少ない端子によりトレ
ースを実現する手段として、例えば、分岐トレースが使
われている。
【0005】ここで、従来例の具体的なオンボードデバ
ッグシステムおよびオンボードデバッグ方法について図
4から図6を用いて説明する。
【0006】図4はオンボードデバッグシステムの概略
構成を示すブロック図である。図4において、1は最終
セットの製品となるターゲットシステム、2はマイクロ
コンピュータ、3はCPU、4は応用ソフトウエア(プ
ログラム)を格納するプログラムメモリ、5はプログラ
ムメモリ4をアクセスするアドレスバス、6はプログラ
ムメモリ4のデータバス、7はCPU3が実際に実行し
たアドレスおよび処理したデータを示す実行情報、8は
実行情報7のアドレスを圧縮して少ない外部端子から出
力できるデータに圧縮するアドレス圧縮部、9はターゲ
ットシステム1のプログラムのデバッグ,評価,解析を
行うオンボードデバッグ装置、10はマイクロコンピュ
ータ2内のアドレス圧縮部8の出力端子からオンボード
デバッグ装置9に伝送される圧縮データ、11は圧縮デ
ータ10をマイクロコンピュータ2のクロックで毎サイ
クル記録するトレースメモリ、12はトレースメモリ1
1に記録されたデータを読み出して伸張し解析するデバ
ッガである。
【0007】前述の実行情報7,アドレス圧縮部8,圧
縮データ10は最終セットでは不要となるが、プログラ
ムのデバッグ,評価,解析の段階で必要となるため、最
小限の資源で実現する手法が提供されている。
【0008】また、図5はプログラムメモリに格納され
ているプログラムの一例であり、その処理の流れを示す
図である。図5において、S1はプログラムのメイン処
理、S2はプログラムの割り込み処理、S3は転送命令
または演算命令である第1処理、S4は間接分岐命令で
ある第1分岐、S5は転送命令または演算命令である第
2処理、S6は転送命令または演算命令である第3処
理、S7は間接分岐命令である第2分岐、S8は転送命
令または演算命令である第4処理、S9は転送命令また
は演算命令である第5処理、S10は間接分岐命令であ
る第3分岐、S11は転送命令または演算命令である第
6処理、S12は転送命令または演算命令である第7処
理、S13は割り込みから復帰する命令である。
【0009】図6はトレース解析を説明する図であり、
図6において、21は実際のプログラムの流れ、22は
アドレス圧縮部8から出力される圧縮データ10、23
はトレースメモリ11に記録された圧縮データを伸張し
実際のアドレスを解析するトレース解析である。また、
24〜29は処理の流れとして図5の矢印により示す処
理である第1〜第6ステップである。
【0010】この図6を参照しながら図5に示すプログ
ラムを実行した時の実際のプログラムの流れと、図4の
トレースメモリ11に記録される圧縮データ10、およ
びトレース解析の方法を説明する。
【0011】いま、図5においてメイン処理S1からス
タートして、第1処理S3を実行したとき、まず基点と
なるアドレスが必要となる。そのためフルアドレスを数
回に分けてトレースメモリ11へ出力する。次の第1分
岐S4を実行するとき分岐不成立であれば第2処理S5
へ進む。この場合は圧縮データ10としてアドレスは出
力されない。
【0012】また、前述の第1分岐S4が成立すると第
2分岐S7へジャンプしてアドレスが大きく変化する。
間接分岐の場合、第1分岐S4のアドレスとの差分だけ
圧縮データ10として出力される。もし分岐が絶対分岐
命令であれば、ソースコードから飛び先が計算できるた
めアドレスは出力されない。さらに第2分岐S7の間接
分岐が成立した場合、第5処理S9にジャンプするが、
このとき割り込み処理S2が発生した場合、アドレスが
大きく変化する。予期せぬアドレスの変化であるため、
基点を再設定する必要があるために第3分岐S10のフ
ルアドレスが数回に分けてトレースメモリ11へ出力さ
れる。
【0013】第3分岐S10が分岐不成立の場合、第6
処理S11へ進む。分岐不成立の場合、アドレスは順序
良くインクリメントされるためアドレスは出力する必要
はない。次のメインへ戻る命令S13を実行する時は大
きくアドレスに変化が生じるためアドレスが出力され
る。
【0014】なお、実際の圧縮データ10は、マイクロ
コンピュータ2の動作クロックと同じ速度で外部出力さ
れる。
【0015】上述したプログラムの流れにおいて、図6
に示すような工程でトレース解析が行われる。第1ステ
ップ24では、第1処理のフルアドレスが圧縮された状
態で出力される。これは、フルアドレス情報を取り込む
ことで以降のプログラムアドレスの演算の基点とするた
めである。第2ステップ25は第1分岐であるが、前記
第1ステップ24の第1処理で基点アドレスが解ってい
るため、第2ステップ25のアドレスはマイクロコンピ
ュータ2のプログラムカウンタのインクリメンタの分だ
けの変化であることが計算でわかる。したがって、第1
分岐のアドレスは出力されない。
【0016】第1分岐が成立し第2分岐へ分岐が発生す
るとプログラムカウンタのインクリメンタの分だけ変化
する訳ではなく、飛び先である第2分岐のアドレスとし
て第2ステップ25の第1分岐のアドレスとの差分を圧
縮データとして出力する。このとき絶対分岐であるとき
飛び先は、ソースコードから読み出すことができるため
アドレスの出力はされない。
【0017】割り込み処理の発生した第4ステップ27
の第3分岐は、割り込み処理の先頭アドレスである。割
り込みが発生した場合、予期せぬアドレスの変化が伴う
ために、フルアドレスが圧縮された状態で出力され改め
てアドレスの基点の再設定をする。第5ステップ28の
第6処理は分岐を伴わない転送命令または演算命令であ
る。これは分岐不成立の場合と同様にアドレスは順序良
くインクリメントされるため、アドレスは出力する必要
はない。
【0018】第6ステップ29は割り込み処理が終了し
て、再びメイン処理に戻る状態である。この場合もアド
レスは予期せぬアドレスの変化であるため、基点を再設
定するため第5処理のフルアドレスが数回に分けてトレ
ースメモリ11へ出力される。
【0019】また、デバッガ12は、トレースメモリ1
1からの基点アドレスを知り、その差分を計算すること
によって伸張し解析している。
【0020】
【発明が解決しようとする課題】しかしながら、従来の
分岐トレースの課題は、マイクロコンピュータの動作周
波数が高く高速になれば、外部デバイスで構成されるト
レースメモリに圧縮データを伝送することが困難となる
ことから、マイクロコンピュータのクロックを分周して
伝送クロックを遅くして使用し、圧縮データのバンド幅
を増やすことにより実現しなければならず、また、連続
的に分岐が発生すると外部に分岐アドレスを多く出力し
なければならないために、シリコンチップ内部に備えた
トレースデータを蓄積しておく一時バッファがオーバフ
ローするという問題があった。
【0021】本発明は、前記従来技術の問題を解決する
ことに指向するものであり、実行するプログラムの各ス
テップのアドレスと予め定められた複数のアドレスとを
比較して、アドレスの一致を示す信号によってデバッグ
を行うオンボードデバッグシステムおよびオンボードデ
バッグ方法を提供することを目的とする。
【0022】
【課題を解決するための手段】この目的を達成するため
に、本発明に係るオンボードデバッグシステムおよびオ
ンボードデバッグ方法におけるオンボードデバッグシス
テムは、プログラムを実行する手段と、実行するプログ
ラムの各アドレスと予め定められた複数のアドレスとを
比較し、両者が一致した時に設定されたどのアドレスが
一致したかを示す一致信号を生成する手段と、一致信号
によってデバッグを行う手段とを備えたことを特徴とす
る。
【0023】また、オンボードデバッグ方法は、プログ
ラムを実行するステップと、実行するプログラムの各ス
テップのアドレスと予め定められた複数のアドレスとを
比較するステップと、両者が一致した時に設定されたど
のアドレスが一致したかを示す一致信号を生成するステ
ップと、一致信号によってデバッグを行うステップとを
有することを特徴とする。
【0024】前記構成のシステムおよび方法によれば、
実行するプログラムにおいてアドレスやデータのリード
ライト条件に基づくイベントとして予め設定し、そのイ
ベントを符号化したID情報(一致信号)のみを出力し
トレースメモリに記録してトレース解析を実現すること
ができる。
【0025】
【発明の実施の形態】以下、図面を参照して本発明にお
ける実施の形態を詳細に説明する。
【0026】図1は本発明の実施の形態におけるオンボ
ードデバッグシステムの概略構成を示すブロック図であ
る。ここで、前記従来例を示す図4において説明した構
成部材に対応し実質的に同等の機能を有するものには同
一の符号を付してこれを示す。
【0027】図1において、1はターゲットシステム、
2’はマイクロコンピュータ、3はCPU、4はプログ
ラムメモリ、5はアドレスバス、6はデータバス、7は
実行情報、9’はターゲットシステムで実行されるプロ
グラムのデバッグ,評価,解析を行うオンボードデバッ
グ装置、11は後述するID情報をマイクロコンピュー
タ2’のクロックで毎サイクル記録するトレースメモ
リ、12はトレースメモリ11に記録されたデータ(I
D情報)を読み出して伸張し解析するデバッガ、15
は、複数の実行情報7のアドレスを比較して一致したと
き、予め設定されたいずれのアドレスであるかを示す符
号化されたID情報を生成する比較器、16はマイクロ
コンピュー2’内の比較器15の出力端子から出力され
オンボードデバッグ装置9’に伝送するID情報であ
る。
【0028】実行情報7,比較器15,ID情報16は
最終セットの製品では不要となるが、ターゲットシステ
ム1において実行されるプログラムのデバッグ,評価,
解析の段階で必要となるため、最小限の資源で実現す
る。
【0029】また、図2はプログラムメモリに格納され
実行されるプログラムの一例であり、その処理の流れを
示す図である。図2において、S21はプログラムのメ
イン処理、S22はプログラムの割り込み処理、S23
は転送命令または演算命令である第1処理、S24は間
接分岐命令である第1分岐、S25は転送命令または演
算命令である第2処理、S26は転送命令または演算命
令である第3処理、S27は間接分岐命令である第2分
岐、S28は転送命令または演算命令である第4処理、
S29は転送命令または演算命令である第5処理、S3
0は間接分岐命令である第3分岐、S31は転送命令ま
たは演算命令である第6処理、S32は転送命令または
演算命令である第7処理、S33は割り込みから復帰す
る命令である。
【0030】図3は本実施の形態におけるトレース解析
を説明する図である。図3において、31は実際のプロ
グラムの流れ、32は比較器15から出力されるID情
報16、33はトレースメモリ11に記録されたID情
報16に基づき、デバッガ12内のデータベースから参
照して実際のアドレスを解析するトレース解析である。
また、34〜39は処理の流れとして図2の矢印により
示す処理である第1〜第6ステップである。
【0031】以下、本実施の形態について、図3を参照
しながら図2に示すプログラムを実行したときの実際の
プログラムの流れと、図1に示すトレースメモリ11に
記録されるID情報16、およびトレース解析の方法を
説明する。
【0032】ここで、比較器15に予め定められた各処
理におけるアドレスを設定する。図2の例では、第1処
理S23,第1分岐S24,第2処理S25,第3処理
S26,第2分岐S27,第4処理S28,第5処理S
29,第3分岐S30,第6処理S31,第7処理S3
2におけるアドレスを設定する。これらの各処理がマイ
クロコンピュータ2’のCPU3によって実行される
と、CPU3から実行情報7が比較器15に送られる。
前述の設定された各処理のアドレスと実行情報7から得
られるアドレスとの比較において、予め設定のアドレス
と一致したときの一致信号に基づき各処理毎のID情報
16を生成して、トレースメモリ11へ出力する。ま
た、デバッガ12においても、前述の各ID情報16に
対応して、解析段階で必要とする設定情報をデータベー
スに登録しておく。
【0033】本実施の形態においては、ID情報16と
して図2に示すように、第1処理S23にはID1,第
1分岐S24にはID2,第2処理S25にはID3,
第3処理S26にはID4,第2分岐S27にはID
5,第4処理S28にはID6,第5処理S29にはI
D7,第3分岐S30にはID8,第6処理S31には
ID9,第7処理S32にはID10とする。
【0034】いま、メイン処理S21が開始され、第1
処理S23をマイクロコンピュータ2’のCPU3が処
理を実行すると、その実行情報7から比較器15におい
てアドレスの比較が行われ、一致した場合にこれに基づ
く一致信号からID情報(ID1)16を生成しトレー
スメモリ11に対して出力する。デバッガ12は、ID
情報(ID1)16からこのID情報に対応するデータ
ベースに登録された設定情報に基づきトレース解析を行
う。同様に図2の矢印で示す流れの各処理である、図3
に示す第2ステップ35〜第6ステップ39の処理が順
次行われる。
【0035】具体的には、マイクロコンピュータ2’に
よりプログラムを実行中のアドレスは実行情報7として
比較器15において予め設定されたアドレスと比較され
る。ここで、予め設定されたアドレスと一致すると、予
め設定されたどのアドレスと一致したかを示す一致信号
であるID情報16を生成しリアルタイムに出力する。
例えば、図3の実際のプログラムの流れ31のように、
図2の矢印の順で第1処理→第1分岐→第2分岐→第3
分岐→第6処理→第5処理と処理が進んだ場合、トレー
スメモリ11に記録されるID情報はID1→ID2→
ID5→ID8→ID9→ID7となる。デバッガ12
において、各ID情報に対応するデータベースの設定情
報によりトレース解析を行う。
【0036】本実施の形態において、従来の分岐トレー
スと大きく異なる点はアドレスを圧縮して出すのではな
く、少ない情報量となるID情報16を出力しているこ
とが特徴である。トレースメモリ11に記録された一致
信号であるID情報16をデバッガ12で読み出し、予
め設定情報の登録されたデータベースからアドレスやデ
ータ条件を分析することで、トレース解析を実現するこ
とができる。
【0037】
【発明の効果】以上説明したように、本発明によれば、
ターゲットシステムのマイクロコンピュータの動作速度
に依存することなく、少ない端子から出力の情報により
トレース解析をすることができ、さらにリアルタイムに
情報が出力されることから別の測定器を用いて処理時間
も容易に測定できるという効果を奏する。
【図面の簡単な説明】
【図1】本発明の実施の形態におけるオンボードデバッ
グシステムの概略構成を示すブロック図
【図2】プログラムメモリに格納され実行されるプログ
ラムの一例であり、その処理の流れを示す図
【図3】本発明の実施の形態におけるトレース解析を説
明する図
【図4】従来のオンボードデバッグシステムの概略構成
を示すブロック図
【図5】プログラムメモリに格納されているプログラム
の一例であり、その処理の流れを示す図
【図6】従来のトレース解析を説明する図
【符号の説明】
1 ターゲットシステム 2,2’ マイクロコンピュータ 3 CPU 4 プログラムメモリ 5 アドレス 6 データ 7 実行情報 8 アドレス圧縮部 9,9’ オンボードデバッグ装置 10 圧縮データ 11 トレースメモリ 12 デバッガ 15 比較器 16 ID情報 21,31 実際のプログラムの流れ 22 圧縮データ 23,33 トレース解析 24,34 第1ステップ 25,35 第2ステップ 26,36 第3ステップ 27,37 第4ステップ 28,38 第5ステップ 29,39 第6ステップ 32 ID情報

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 プログラムを実行する手段と、実行する
    プログラムの各アドレスと予め定められた複数のアドレ
    スとを比較し、両者が一致した時に設定されたどのアド
    レスが一致したかを示す一致信号を生成する手段と、前
    記一致信号によってデバッグを行う手段とを備えたこと
    を特徴とするオンボードデバッグシステム。
  2. 【請求項2】 プログラムを実行するステップと、実行
    するプログラムの各ステップのアドレスと予め定められ
    た複数のアドレスとを比較するステップと、両者が一致
    した時に設定されたどのアドレスが一致したかを示す一
    致信号を生成するステップと、前記一致信号によってデ
    バッグを行うステップとを有することを特徴とするオン
    ボードデバッグ方法。
JP2001198047A 2001-06-29 2001-06-29 オンボードデバッグシステムおよびオンボードデバッグ方法 Pending JP2003015909A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001198047A JP2003015909A (ja) 2001-06-29 2001-06-29 オンボードデバッグシステムおよびオンボードデバッグ方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001198047A JP2003015909A (ja) 2001-06-29 2001-06-29 オンボードデバッグシステムおよびオンボードデバッグ方法

Publications (1)

Publication Number Publication Date
JP2003015909A true JP2003015909A (ja) 2003-01-17

Family

ID=19035557

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001198047A Pending JP2003015909A (ja) 2001-06-29 2001-06-29 オンボードデバッグシステムおよびオンボードデバッグ方法

Country Status (1)

Country Link
JP (1) JP2003015909A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013073009A1 (ja) * 2011-11-15 2013-05-23 トヨタ自動車株式会社 マイコンシステム、監視マイコン
US9606890B2 (en) 2014-09-26 2017-03-28 International Business Machines Corporation Analysis system, analysis method and program

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013073009A1 (ja) * 2011-11-15 2013-05-23 トヨタ自動車株式会社 マイコンシステム、監視マイコン
US9606890B2 (en) 2014-09-26 2017-03-28 International Business Machines Corporation Analysis system, analysis method and program
US9710351B2 (en) 2014-09-26 2017-07-18 International Business Machines Corporation Analysis system, analysis method and program
US10360384B2 (en) 2014-09-26 2019-07-23 International Business Machines Corporation Analysis systems, analysis method and program
US10963364B2 (en) 2014-09-26 2021-03-30 International Business Machines Corporation Analysis system, analysis method and program

Similar Documents

Publication Publication Date Title
US7058855B2 (en) Emulation interface system
US6145123A (en) Trace on/off with breakpoint register
US6467083B1 (en) Debugging system for computer program, method for checking target program and information storage medium for storing checking program
EP0129017B1 (en) Method and apparatus for modeling systems of complex circuits
US7330809B2 (en) Trace data compression system and trace data compression method and microcomputer implemented with a built-in trace data compression circuit
JP3684831B2 (ja) マイクロコンピュータ、電子機器及びデバッグシステム
US7444553B2 (en) Tracer, tracer embedded processor, and method for operating the tracer
US6820222B2 (en) Apparatus and method for processor power measurement in a digital signal processor using trace data and simulation techniques
JP2003076578A (ja) マイクロコンピュータ及びデバッグシステム並びにトレース情報収集方法
CN110580226A (zh) 操作系统级程序的目标码覆盖率测试方法、系统及介质
JP2006507586A (ja) 埋め込みシステムの解析装置及び方法
EP0530816A2 (en) Microprocessor with cache memory and trace analyzer therefor
CN109783837A (zh) 仿真设备、仿真系统、仿真方法和仿真程序
US7110934B2 (en) Analysis of the performance of a portion of a data processing system
JP2003015909A (ja) オンボードデバッグシステムおよびオンボードデバッグ方法
CN110502433A (zh) 一种计算机软件技术开发调试系统
JP2005222446A (ja) オンボードデバッグ装置および半導体回路装置
JPS6383841A (ja) プログラムテスト可能な計算機中央処理装置
US20020194542A1 (en) Debugging system for semiconductor integrated circuit
JPH10275092A (ja) マイクロプロセッサのトレース情報出力方法
JPH11353205A (ja) トレースメモリ内蔵のプロセッサ
JP4305389B2 (ja) 時間追跡可能メッセージを送信することによるマイクロプロセッサプログラムの監視
US20030152111A1 (en) System for verifying operations of system LSI
KR100557918B1 (ko) 조인트 테스트 액세스 그룹을 이용한 오류수정장치
WO2012076027A1 (en) Method and device for retrieving a reactive behavior of a plc program, and method and device for debugging a plc program