JP2005301616A - デバッグシステム - Google Patents

デバッグシステム Download PDF

Info

Publication number
JP2005301616A
JP2005301616A JP2004115989A JP2004115989A JP2005301616A JP 2005301616 A JP2005301616 A JP 2005301616A JP 2004115989 A JP2004115989 A JP 2004115989A JP 2004115989 A JP2004115989 A JP 2004115989A JP 2005301616 A JP2005301616 A JP 2005301616A
Authority
JP
Japan
Prior art keywords
break
condition
circuit
recalculation
reset
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
JP2004115989A
Other languages
English (en)
Inventor
Akira Sugawa
明 須川
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.)
Ricoh Co Ltd
Original Assignee
Ricoh 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2004115989A priority Critical patent/JP2005301616A/ja
Publication of JP2005301616A publication Critical patent/JP2005301616A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】 複雑な計算が不要で、イベント情報を取得することなく、ブレーク時に次のブレークポイントを容易に設定することができるデバッグシステムを提供する。
【解決手段】 プログラム実行中に発生する事象に対してブレーク対象を設定、検出してプログラムブレークするデバッグシステムにおいて、プログラム実行中に時間間隔でブレーク条件設定内容を再計算する再計算手段7と、ブレーク条件を再設定するブレーク再設定手段5とを備えた。
【選択図】 図1

Description

本発明は、マイクロコンピュータのデバッグシステムに関する。
デバッグシステムに関連して、例えば特許文献1に記載された技術は、ブレークポイント情報に従ってプログラムの停止、ブレークポイントの無効化、有効化をブレークポイント切替回路で行い、マルチタスク環境の不要なブレークポイントの解除、有効化を行うようにしたものである。
また、被デバッグプログラムの実行履歴を、プログラム実行中に発生したイベント情報を含むイベントトレースからあらかじめ取得して、イベントトレースの中から、所望のイベントを選択してブレークポイントを設定する方法が提案されている(例えば、特許文献2参照)。
特開2000−172532公報 特開2001−34503公報
プログラムのデバッガにおいて、ブレーク条件を設定してプログラム実行し、ブレーク条件に一致した場所でプログラムブレークしてターゲット内部をデバッグして問題解析する。ブレーク場所で問題解決できない場合、次にブレーク条件を設定してプログラム実行して同様の手順でデバッグを行う。このようにデバッグではブレーク条件設定、実行・ブレーク、解析を繰返し行うことが多く問題を特定できるまで時間を要している。一定時間間隔でブレーク対象とする事象が変化する状態では一定時間間隔に変化事象によってブレーク条件を設定することができない。
本発明は、複雑な計算が不要で、イベント情報を取得することなく、ブレーク時に次のブレークポイントを容易に設定することができるデバッグシステムを提供することを目的とする。
上記目的を達成するために、請求項1記載の発明は、プログラム実行中に発生する事象に対してブレーク対象を設定、検出してプログラムブレークするデバッグシステムにおいて、プログラム実行中に時間間隔でブレーク条件設定内容を再計算する再計算手段と、ブレーク条件を再設定するブレーク再設定手段とを備えたデバッグシステムを最も主要な特徴とする。
請求項2記載の発明は、請求項1のデバッグシステムにおいて、プログラム実行中に前記ブレーク条件設定内容の再計算をブレークポイントによりブレーク条件が一致した時に行うことを特徴とする。
請求項3記載の発明は、請求項1のデバッグシステムにおいて、プログラム実行中に前記ブレーク条件設定内容の再計算をターゲット内部の資源をバスモニタして設定した条件と一致した時に行うことを特徴とする。
請求項4記載の発明は、請求項1のデバッグシステムにおいて、プログラム実行中に前記ブレーク条件設定内容の再計算をターゲット外部信号が設定した条件と一致した時に行うことを特徴とする。
請求項5記載の発明は、請求項1乃至4のデバッグシステムにおいて、前記ブレーク条件設定内容の再計算を行う各タイミングにおいて再計算して前記ブレーク条件に再設定した条件データをトレースメモリに記録して、前記ブレーク条件に再設定された条件データを参照可能とすることを特徴とする。
請求項6記載の発明は、請求項5のデバッグシステムにおいて、前記ブレーク条件設定内容の再計算のため、ターゲット内部の資源をバスモニタした情報データをトレースメモリに記録して、前記バスモニタした情報データを参照可能とすることを特徴とする。
請求項7記載の発明は、請求項5、6のデバッグシステムにおいて、再計算の比較判定が複数の設定式と比較式で行われるデバッグシステムを主要な特徴とする。
本発明では、プログラム実行中に発生する事象に対してブレーク対象を設定、検出してプログラムブレークするデバッグシステムにおいて、プログラム実行中に時間間隔でブレーク条件設定内容を再計算する再計算手段と、ブレーク条件を再設定するブレーク再設定手段とを備えたことにより、所期の目的を達成することができる。
以下、図面を参照して、本発明の実施形態を詳細に説明する。
図1は本発明の第1の実施形態に係るデバッグシステムの構成図である。以下、その構成を動作と併せて説明する。
エミュレータ上のマイクロプロセッサ1のプログラムデバッグを行う場合、プログラムブレーク条件をデバッガ2より、ブレーク条件回路3に設定、登録する。プログラム実行するとブレーク判定回路4は、プログラム実行状況とブレーク条件を比較判定して一致する場合、プログラムをブレークしてデバッグを行う。
デバッガ2よりブレーク再設定回路5にブレーク条件再設定の開始条件としての時間情報(時間間隔等)と、再計算の条件を設定する。ブレーク再設定回路5はブレーク再設定開始情報をクロック回路(タイマー回路)6に設定する。また、ブレーク再設定回路5はブレーク条件再設定の再計算情報を再計算回路7に設定する。
デバッガ2でプログラム開始するとブレーク再設定回路5にプログラム開始を信号出力して、ブレーク再設定回路5はクロック回路6にタイマー計測開始を出力する。クロック回路6はタイマー計測して、デバッガ2から設定されたタイマー値と一致した時、再計算回路7に一致信号を出力する。タイマーが再計測するかはデバッガ2より設定され、再計測を開始する。
再計算回路7はクロック回路6からの一致信号でデバッガ2から設定された再計算方法に従ってブレーク条件を再計算する。再計算終了後、再計算回路7はブレーク再設定回路5にブレーク条件再設定条件データを出力する。ブレーク再設定回路5は、再計算回路7からのブレーク条件再設定条件データをブレーク条件回路3に設定する。符号8はメモリ、9はI/Oである。
図2は本発明の第2の実施形態に係るデバッグシステムの構成図である。同じ構成要素には同じ参照番号を付して説明する。デバッガ2よりブレーク再設定回路15にブレーク条件再設定の開始条件としてのブレーク条件と、再計算の条件を設定する。ブレーク再設定回路15はブレーク再設定開始情報をブレーク判定回路14に設定する。また、ブレーク再設定回路15はブレーク条件再設定の再計算情報を再計算回路17に設定する。
デバッガ2でプログラム開始して、ブレーク判定回路14はブレーク条件と一致した時、再計算回路17に一致信号を出力する。再計算回路17はブレーク判定回路14からの一致信号でデバッガ2から設定された再計算方法に従ってブレーク条件を再計算する。
再計算終了後、再計算回路17はブレーク再設定回路15にブレーク条件再設定条件データを出力する。ブレーク再設定回路15は、再計算回路17からのブレーク条件再設定条件データをブレーク条件回路13に設定する。
図3は本発明の第3の実施形態に係るデバッグシステムの構成図である。デバッガ2よりブレーク再設定回路65にブレーク条件再設定の開始条件としてのターゲットのバス状態と、再計算の条件を設定する。ブレーク再設定回路65はブレーク再設定開始情報を内部に設定する。また、ブレーク再設定回路65はブレーク条件再設定の再計算情報を再計算回路67に設定する。
デバッガ2でプログラム開始して、ブレーク再設定回路65はターゲットバス状態を監視して、設定した条件と一致した時、再計算回路67に一致信号を出力する。再計算回路67はブレーク再設定回路65からの一致信号でデバッガ2から設定された再計算方法に従ってブレーク条件を再計算する。
再計算終了後、再計算回路67はブレーク再設定回路65にブレーク条件再設定条件データを出力する。ブレーク再設定回路65は再計算回路67からのブレーク条件再設定条件データをブレーク条件回路63に設定する。
図4は本発明の第4の実施形態に係るデバッグシステムの構成図である。デバッガ2よりブレーク再設定回路35にブレーク条件再設定の開始条件としての外部ターゲット信号状態と、再計算の条件を設定する。ブレーク再設定回路35はブレーク再設定開始情報を内部に設定する。また、ブレーク再設定回路35はブレーク条件再設定の再計算情報を再計算回路37に設定する。外部ターゲット11はターゲットの一部として同期して動作する。
デバッガ2でプログラム開始して、ブレーク再設定回路35は外部ターゲット11の信号状態を監視して、設定した条件と一致した時、再計算回路37に一致信号を出力する。再計算回路37はブレーク再設定回路35からの一致信号でデバッガ2から設定された再計算方法に従ってブレーク条件を再計算する。
再計算終了後、再計算回路37はブレーク再設定回路35にブレーク条件再設定条件データを出力する。ブレーク再設定回路35は再計算回路37からのブレーク条件再設定条件データをブレーク条件回路33に設定する。
図5は本発明の第5の実施形態に係るデバッグシステムの構成図である。デバッガ2よりブレーク再設定回路45にブレーク条件再設定の開始条件と再計算の条件を設定する。ブレーク再設定回路45はブレーク再設定開始情報をクロック回路46、ブレーク判定回路44、内部のいずれかに設定する。また、ブレーク再設定回路45はブレーク条件再設定の再計算情報を再計算回路47に設定する。
デバッガ2でプログラム開始して、クロック回路46によるタイマー判定、ブレーク判定回路44によるブレーク判定、ブレーク再設定回路45によるターゲットバス監視および外部ターゲット11の信号状態の監視を行いその結果、設定した条件のいずれかが一致した時、再計算回路47に一致信号が出力され、再計算回路47は一致信号でデバッガ2から設定された再計算方法に従ってブレーク条件を再計算する。
再計算終了後、再計算回路47はブレーク再設定回路45にブレーク条件再設定条件データを出力する。また、トレースメモリ12にブレーク条件再設定条件データを出力する。トレースメモリ12は再計算回路47からのブレークブレーク条件再設定条件データを記録する。
図6は本発明の第6の実施形態に係るデバッグシステムの構成図である。デバッガ2よりブレーク再設定回路55にブレーク条件再設定の開始条件と再計算の条件を設定する。ブレーク再設定回路55はブレーク再設定開始情報をクロック回路56、ブレーク判定回路54、内部のいずれかに設定する。また、ブレーク再設定回路55はブレーク条件再設定の再計算情報を再計算回路57に設定する。
デバッガ2でプログラム開始して、クロック回路56によるタイマー判定、ブレーク判定回路54によるブレーク判定、ブレーク再設定回路55によるターゲットバス監視および外部ターゲット11の信号状態の監視を行いその結果、設定した条件のいずれかが一致した時、再計算回路57に一致信号が出力され、再計算回路57は一致信号でデバッガ2から設定された再計算方法に従ってブレーク条件を再計算する。
再計算回路57はデバッガ2から設定された再計算方法がターゲット内部情報の場合、バスを監視して該当の情報を記録して計算に使用する。または、バスを介してマイクロプロセッサ1をコントロールしてメモリ8、I/O9の情報を取得して演算に使用する。再計算回路57が再計算のため、記録したバス情報をトレースメモリ12に出力する。トレースメモリ12は再計算回路57からの再計算のために記録したターゲット情報をトレースメモリ12に記録する。
図7は本発明の第7の実施形態に係るデバッグシステムの構成図である。デバッガ2より再計算回路7内の条件値設定回路21に条件式と設定式を対で設定する。比較式判定回路22で比較式を解析して、比較回路23、24、25に比較内容を設定する。
プログラムが実行されるとアドレス、データバス情報がバスモニタ回路26で監視されて比較回路23で比較され、比較情報と一致すると条件選択回路27に一致信号を出力する。条件選択回路27は一致信号タイミングで比較情報を持って条件選択信号を出力する。設定式判定回路28は条件値設定回路21の設定式を選択し、演算回路29はこれを解析し、ブレーク再設定回路5にブレーク条件を設定する。
また、デバッガ2より設定された判定回路30、判定回路31の一致信号をカウンタ32、カウンタ33でカウントする。カウンタ32、カウンタ33は比較回路24、比較回路25で条件値設定回路21より設定された比較値と比較され、比較情報と一致すると条件選択回路27に一致信号を出力する。条件選択回路27は一致信号タイミングで比較情報を持って条件選択信号を出力する。設定式判定回路28は条件値設定回路21の設定式を選択し、演算回路29はこれを解析し、ブレーク再設定回路5にブレーク条件を設定する。
本実施形態のデバッグシステムにおいては、一定時間間隔でブレーク対象とする事象が変化する状態でも一定時間間隔で変化事象によってブレーク条件を設定することが可能となる。
また、デバッグではブレーク条件設定、実行・ブレーク、解析を繰返し行うことが多く問題を特定できるまで時間を要しているが、ブレーク条件と一致した時、ブレーク条件を再度設定することが可能となる。
また、ターゲットのメモリ、I/Oの状態によって、ブレーク条件を再度設定することが可能となる。
また、ターゲットの外部信号状態によって、ブレーク条件を再度設定することが可能となる。
また、プログラム実行中の任意タイミングでブレーク条件を再設定する場合、ブレーク条件に再設定した条件を参照することが可能となる。
また、プログラム実行中に任意タイミングでブレーク条件を再設定する場合、再設定のためにモニタしたターゲット内部資源を参照することが可能となる。
また、プログラム実行中に任意タイミングでブレーク条件を再設定する場合、再設定タイミングが複数条件であるとき、比較判定が複数の設定式と比較式で設定が可能となる。
本発明の第1の実施形態に係るデバッグシステムの構成図である。 本発明の第2の実施形態に係るデバッグシステムの構成図である。 本発明の第3の実施形態に係るデバッグシステムの構成図である。 本発明の第4の実施形態に係るデバッグシステムの構成図である。 本発明の第5の実施形態に係るデバッグシステムの構成図である。 本発明の第6の実施形態に係るデバッグシステムの構成図である。 本発明の第7の実施形態に係るデバッグシステムの構成図である。
符号の説明
5 ブレーク再設定回路(ブレーク再設定手段)、7 再計算回路(再計算手段)

Claims (7)

  1. プログラム実行中に発生する事象に対してブレーク対象を設定、検出してプログラムブレークするデバッグシステムにおいて、プログラム実行中に時間間隔でブレーク条件設定内容を再計算する再計算手段と、ブレーク条件を再設定するブレーク再設定手段とを備えたことを特徴とするデバッグシステム。
  2. 請求項1のデバッグシステムにおいて、プログラム実行中に前記ブレーク条件設定内容の再計算をブレークポイントによりブレーク条件が一致した時に行うことを特徴とするデバッグシステム。
  3. 請求項1のデバッグシステムにおいて、プログラム実行中に前記ブレーク条件設定内容の再計算をターゲット内部の資源をバスモニタして設定した条件と一致した時に行うことを特徴とするデバッグシステム。
  4. 請求項1のデバッグシステムにおいて、プログラム実行中に前記ブレーク条件設定内容の再計算をターゲット外部信号が設定した条件と一致した時に行うことを特徴とするデバッグシステム。
  5. 請求項1乃至4のデバッグシステムにおいて、前記ブレーク条件設定内容の再計算を行う各タイミングにおいて再計算して前記ブレーク条件に再設定した条件データをトレースメモリに記録して、前記ブレーク条件に再設定された条件データを参照可能とすることを特徴とするデバッグシステム。
  6. 請求項5のデバッグシステムにおいて、前記ブレーク条件設定内容の再計算のため、ターゲット内部の資源をバスモニタした情報データをトレースメモリに記録して、前記バスモニタした情報データを参照可能とすることを特徴とするデバッグシステム。
  7. 請求項5、6のデバッグシステムにおいて、再計算の比較判定が複数の設定式と比較式で行われることを特徴とするデバッグシステム。
JP2004115989A 2004-04-09 2004-04-09 デバッグシステム Pending JP2005301616A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004115989A JP2005301616A (ja) 2004-04-09 2004-04-09 デバッグシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004115989A JP2005301616A (ja) 2004-04-09 2004-04-09 デバッグシステム

Publications (1)

Publication Number Publication Date
JP2005301616A true JP2005301616A (ja) 2005-10-27

Family

ID=35333080

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004115989A Pending JP2005301616A (ja) 2004-04-09 2004-04-09 デバッグシステム

Country Status (1)

Country Link
JP (1) JP2005301616A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009116815A (ja) * 2007-11-09 2009-05-28 Denso Corp 検査システム及びプログラム

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62121556A (ja) * 1985-11-21 1987-06-02 Nec Corp トレ−スメモリ内蔵情報処理装置
JPS62264340A (ja) * 1986-05-13 1987-11-17 Toshiba Corp デバツグ装置
JPS6464041A (en) * 1987-09-04 1989-03-09 Yokogawa Electric Corp Debugging device
JPH01201740A (ja) * 1988-02-08 1989-08-14 Matsushita Electric Ind Co Ltd マイクロプロセッサトレース装置
JPH02284238A (ja) * 1989-04-25 1990-11-21 Nec Corp プログラムデバグ装置
JPH0340143A (ja) * 1989-07-07 1991-02-20 Nec Corp パイプライン方式計算機におけるデバッグ方式
JPH04350734A (ja) * 1991-05-28 1992-12-04 Nec Corp 電子計算機
JPH05108407A (ja) * 1991-10-15 1993-04-30 Nec Corp 計算機用プログラムのデバツクシステム
JPH05282175A (ja) * 1992-03-31 1993-10-29 Nec Corp プログラムディバッガ
JPH07121399A (ja) * 1993-10-25 1995-05-12 Matsushita Electric Ind Co Ltd オブジェクト指向プログラムのデバッグシステム
JPH09185526A (ja) * 1996-01-08 1997-07-15 Mitsubishi Electric Corp デバッグ装置
JPH09319592A (ja) * 1996-05-30 1997-12-12 Nec Corp マイクロコンピュータ
JPH10105434A (ja) * 1996-09-30 1998-04-24 Hitachi Ltd エミュレータ
JP2003263340A (ja) * 2002-03-11 2003-09-19 Ricoh Co Ltd デバッグ装置

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62121556A (ja) * 1985-11-21 1987-06-02 Nec Corp トレ−スメモリ内蔵情報処理装置
JPS62264340A (ja) * 1986-05-13 1987-11-17 Toshiba Corp デバツグ装置
JPS6464041A (en) * 1987-09-04 1989-03-09 Yokogawa Electric Corp Debugging device
JPH01201740A (ja) * 1988-02-08 1989-08-14 Matsushita Electric Ind Co Ltd マイクロプロセッサトレース装置
JPH02284238A (ja) * 1989-04-25 1990-11-21 Nec Corp プログラムデバグ装置
JPH0340143A (ja) * 1989-07-07 1991-02-20 Nec Corp パイプライン方式計算機におけるデバッグ方式
JPH04350734A (ja) * 1991-05-28 1992-12-04 Nec Corp 電子計算機
JPH05108407A (ja) * 1991-10-15 1993-04-30 Nec Corp 計算機用プログラムのデバツクシステム
JPH05282175A (ja) * 1992-03-31 1993-10-29 Nec Corp プログラムディバッガ
JPH07121399A (ja) * 1993-10-25 1995-05-12 Matsushita Electric Ind Co Ltd オブジェクト指向プログラムのデバッグシステム
JPH09185526A (ja) * 1996-01-08 1997-07-15 Mitsubishi Electric Corp デバッグ装置
JPH09319592A (ja) * 1996-05-30 1997-12-12 Nec Corp マイクロコンピュータ
JPH10105434A (ja) * 1996-09-30 1998-04-24 Hitachi Ltd エミュレータ
JP2003263340A (ja) * 2002-03-11 2003-09-19 Ricoh Co Ltd デバッグ装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009116815A (ja) * 2007-11-09 2009-05-28 Denso Corp 検査システム及びプログラム
JP4661854B2 (ja) * 2007-11-09 2011-03-30 株式会社デンソー 検査システム及びプログラム

Similar Documents

Publication Publication Date Title
US7870437B2 (en) Trace data timestamping
US20100306602A1 (en) Semiconductor device and abnormality detecting method
JPH06139107A (ja) ブレイクアドレス検出回路
US20100281298A1 (en) Monitoring Device
US9489287B2 (en) Breaking code execution based on time consumption
JP2005301616A (ja) デバッグシステム
US20060048011A1 (en) Performance profiling of microprocessor systems using debug hardware and performance monitor
CN110647467B (zh) 基于单步异常的目标码覆盖率测试方法、系统及介质
CN115454686A (zh) 一种信息处理方法及装置、存储介质
US11294787B2 (en) Apparatus and method for controlling assertion of a trigger signal to processing circuitry
JP2006323726A (ja) モニタプログラムおよびリアルタイムトレースシステム
JP3002341B2 (ja) ロジックアナライザ
CN113704088B (zh) 一种进程追溯方法、进程追溯系统及相关装置
US9606850B2 (en) Apparatus and method for tracing exceptions
TWI566179B (zh) 用於基本輸入輸出系統之除錯訊息輸出方法及電腦程序產品
JP3068578B2 (ja) インサーキットエミュレータおよび飽和演算処理方法
US20050120348A1 (en) Method of determining information about the processes which run in a program-controlled unit during the execution of a program by the program-controlled unit
Scherer et al. Measurement based software execution tracing in HIL (Hardware In the Loop) tests
JP2016091278A (ja) Icチップ
JP2004151846A (ja) 暴走検出装置
JPH0426138B2 (ja)
JP2008310756A (ja) マイクロコンピュータ、デバッグシステム、デバッグ方法
JPS63289654A (ja) プログラム分岐命令モニタ方式
JPH02272947A (ja) 障害監視方式
JP2003015909A (ja) オンボードデバッグシステムおよびオンボードデバッグ方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070326

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20070405

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090526

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090727

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100608