JP2006330778A - データトレース装置及びプログラムデバッグ装置 - Google Patents

データトレース装置及びプログラムデバッグ装置 Download PDF

Info

Publication number
JP2006330778A
JP2006330778A JP2005148902A JP2005148902A JP2006330778A JP 2006330778 A JP2006330778 A JP 2006330778A JP 2005148902 A JP2005148902 A JP 2005148902A JP 2005148902 A JP2005148902 A JP 2005148902A JP 2006330778 A JP2006330778 A JP 2006330778A
Authority
JP
Japan
Prior art keywords
trace
memory
trace information
information
processor
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
JP2005148902A
Other languages
English (en)
Inventor
Shusuke Kawasaki
秀典 川崎
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 JP2005148902A priority Critical patent/JP2006330778A/ja
Publication of JP2006330778A publication Critical patent/JP2006330778A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】 本発明の課題は、トレースメモリの容量を増大することなく、デバッグ作業の効率化を図ることができるデータトレース装置及びプログラムデバッグ装置を得ることである。
【解決手段】 メインメモリ9に記憶されたプログラムを順次実行するプロセッサ11と、プロセッサ11の実行結果を一時的に格納するキャッシュメモリ15と、デバッグ用のトレース情報を保存するトレースメモリ13と、プロセッサ11から先に出力されてキャッシュメモリ13に格納された一方のトレース情報とプロセッサから後に出力される他方のトレース情報とを比較するトレース情報比較手段23とを備え、キャッシュメモリ15に格納された一方のトレース情報と、後から出力された他方のトレース情報とが重複する場合には、重複するトレース情報はトレースメモリ13に書き込まないようにしている。
【選択図】 図1

Description

本発明は、データトレース装置及びプログラムデバッグ装置に関する。
従来、プログラムのデバッグを行なう場合、レジスタ等のトレース情報を一旦トレースメモリに格納し、トレースメモリに格納したトレース情報をPCのディスプレイで表示させてプログラムをデバッグする方法が知られている。トレースメモリは高速で演算処理させるためにプロセッサと同一基板に設けている。
しかし、トレースメモリをプロセッサと同一基板に設ける場合、トレースメモリのサイズが小さくなり処理容量が限られていた。このため、一度に長時間のトレースを実行することが難しく、トレース範囲の直前部分のデータのみを取得したり、トレース範囲の前後部分のデータのみを取得する等の制限を行なっていた。
一方、特許文献1にはプロセッサと同一基板上にトレースメモリを設けるとともに、基板の外部に別途トレースメモリを設けた技術が開示されている。
特開2001−249823号公報
しかし、特許文献1に記載の従来技術は、トレースメモリを複数設けてあるので、その分コストが高くなると共に不必要な情報も多く残るためデバッグ作業に時間がかかるという問題があった。
本発明は、トレースメモリの容量を増大することなく、デバッグ作業の効率化を図ることができるデータトレース装置及びプログラムデバッグ装置を得ることを目的とする。
前記課題を解決するために、請求項1に記載された発明は、メインメモリに記憶されたプログラムを順次実行するプロセッサと、プロセッサの実行結果を一時的に格納するキャッシュメモリと、デバッグ用のトレース情報を保存するトレースメモリと、プロセッサから先に出力されてキャッシュメモリに格納された一方のトレース情報とプロセッサから後に出力される他方のトレース情報とを比較するトレース情報比較手段とを備え、キャッシュメモリに格納された一方のトレース情報と、後から出力された他方のトレース情報とが重複する場合には、重複するトレース情報はトレースメモリに書き込まないことを特徴とする。
請求項2に記載された発明は、請求項1に記載のトレースメモリに書き込まれたトレース情報に基づいてデバッグを行なうことを特徴とする。
本発明によれば、キャッシュメモリに格納された一方のトレース情報と、後から出力された他方のトレース情報とが重複する場合には、重複するトレース情報をトレースメモリに書き込まないので、トレースメモリ内に同じ内容のトレース情報が格納されない。よって、トレースメモリの容量を増大することなく、デバッグ作業の効率化を図ることができる。
以下に、添付図面を参照して、本発明の実施の形態を詳細に説明する。図1は本発明に係るデータトレース装置を備えたプログラム装置の全体を示すブロック図、図2は図1に示すデータトレース装置を示すブロック図、図3は本発明の実施の形態に係るデータトレース装置の制御動作を示すフローチャートである。
図1に示すように、本発明の実施の形態に係るプログラム装置(プログラムデバッグ装置1)は、デバッグの対象となるターゲット装置3と、ターゲット装置3内にアクセスしてターゲット装置3内のトレース情報を取得するデバッグツール5と、デバッグツール5で取得したトレース情報をディスプレイ上に表示させてプログラムのデバッグを行なうデバッグ用PC7と、トレース情報の解析を行なって後述のメインメモリ9に所望のトレース情報のみを格納するデータトレース部(データトレース装置20)とを備えている。
ターゲット装置3はプログラムを格納したメインメモリ9と、メインメモリ9に格納されたプログラムを実行しトレース情報を出力するプロセッサ11と、プロセッサ11から出力されたトレース情報を格納するトレースメモリ13と、プロセッサ11から出力されたトレース情報を一時的に格納するためのキャッシュメモリ15とを備えている。
次にデータトレース部20について説明する。データトレース部20はトレースを行うトレース情報の範囲を選択するトレース範囲選択部21と、先に出力してキャッシュメモリ15に格納されたトレース情報と後から出力されるトレース情報とを比較するトレース範囲チェック部(トレース情報比較手段)23と、トレースメモリ9を節約するモードと節約しないモードとを判断するトレース動作状態判断部25と、後から出力されるトレース情報を一時的に記憶するトレース情報記憶部27とを備えている。
次に本実施の形態に係るプログラム装置の作用及び効果について図3に示すフローチャートに基づき説明する。データトレース部20においてトレースが開始されると(ステップS1)、トレース範囲選択部21で予め設定された範囲のトレース情報(実行結果A)が取り込まれる(ステップS2)。そして、先に出力された実行結果Aのデータはデータトレース部20からキャッシュメモリ15内に取り込まれる(ステップS3)。次のステップS4において、次のトレース情報(実行結果B)がデータトレース部20内に取り込まれ、トレース動作状態判断部25においてトレースメモリ13が節約モードになっているか否かが判断される(ステップS5)。
ステップS5においてトレースメモリ13を節約するモードになっている場合には、ステップS7に進み、トレースメモリ13を節約するモードになっていない場合には、ステップS6に進む。ステップS6において、実行結果Bはトレースメモリ13に書き込まれる。一方、ステップS7ではトレース範囲チェック部23において、実行結果Aと実行結果Bとが比較される。その結果、実行結果Aと実行結果Bとが一致した場合には、実行結果Bのトレース情報はトレースメモリ13に書き込まず、プロセッサ11から次の実行結果を取得する(ステップS8)。
ステップS7において実行結果Aの情報と実行結果Bの情報とが一致しない場合にはステップS6に進み、実行結果Bの情報はトレースメモリ13に書き込まれる。以上のステップが繰り返されトレースメモリ13内にトレース情報が書き込まれる。トレースメモリ13に書き込まれたトレース情報はデバッグツール5で読み込まれ、取り込んだトレース情報に基づいてプログラムのデバッグが行なわれる。
本発明によれば、キャッシュメモリ15に格納された先に出力された一方のトレース情報と、後から出力された他方のトレース情報とが重複しない場合にのみ、トレース情報をトレースメモリ13に書き込むので、ループ等の繰り返し命令が存在した場合にその重複している命令の箇所はトレースメモリ13に格納されず、トレースメモリ13の無駄な消費を回避できる。よって、トレースメモリ13の容量を増大することなく、デバッグ作業の効率化を図ることができる。
デバッグ作業の効率化により、プログラムの開発時間の短縮化を図ることができる。
なお、本発明は上述した実施の形態に限定されず、その要旨を逸脱しない範囲で種々の変形が可能である。上述の実施の形態では、データトレース部20において実行結果Aの情報と実行結果Bの情報とが同一内容の場合にトレースメモリ13に書き込みを行なわず、次の実行結果を取り込むようにしたが、これに限定されず、実行結果Aの情報と実行結果Bの情報とが一部重複する場合には、その重複する情報のみトレースメモリに書き込まず、重複しない情報についてはトレースメモリ13に書き込むようにしても良い。
本発明に係るプログラム装置の全体を示すブロック図である。 図1に示すデータトレース部を示すブロック図である。 本発明の実施の形態に係るデータトレース部の制御動作を示すフローチャートである。
符号の説明
1 プログラムデバッグ装置
9 メインメモリ
11 プロセッサ
13 トレースメモリ
15 キャッシュメモリ
20 データトレース装置
23 トレース範囲チェック部(トレース情報比較手段)

Claims (2)

  1. メインメモリに記憶されたプログラムを順次実行するプロセッサと、プロセッサの実行結果を一時的に格納するキャッシュメモリと、デバッグ用のトレース情報を保存するトレースメモリと、プロセッサから先に出力されてキャッシュメモリに格納された一方のトレース情報とプロセッサから後に出力される他方のトレース情報とを比較するトレース情報比較手段とを備え、キャッシュメモリに格納された一方のトレース情報と、後から出力された他方のトレース情報とが重複する場合には、重複するトレース情報はトレースメモリに書き込まないことを特徴とするデータトレース装置。
  2. 請求項1に記載のトレースメモリに書き込まれたトレース情報に基づいてデバッグを行なうことを特徴とするプログラムデバッグ装置。

JP2005148902A 2005-05-23 2005-05-23 データトレース装置及びプログラムデバッグ装置 Pending JP2006330778A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005148902A JP2006330778A (ja) 2005-05-23 2005-05-23 データトレース装置及びプログラムデバッグ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005148902A JP2006330778A (ja) 2005-05-23 2005-05-23 データトレース装置及びプログラムデバッグ装置

Publications (1)

Publication Number Publication Date
JP2006330778A true JP2006330778A (ja) 2006-12-07

Family

ID=37552439

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005148902A Pending JP2006330778A (ja) 2005-05-23 2005-05-23 データトレース装置及びプログラムデバッグ装置

Country Status (1)

Country Link
JP (1) JP2006330778A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010205128A (ja) * 2009-03-05 2010-09-16 Denso Wave Inc ロボット制御システム
JP2010211555A (ja) * 2009-03-11 2010-09-24 Meidensha Corp プログラマブルコントローラのデータトレース方法
JP2013168188A (ja) * 2013-06-04 2013-08-29 Denso Wave Inc ロボット制御のログ取得システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010205128A (ja) * 2009-03-05 2010-09-16 Denso Wave Inc ロボット制御システム
JP2010211555A (ja) * 2009-03-11 2010-09-24 Meidensha Corp プログラマブルコントローラのデータトレース方法
JP2013168188A (ja) * 2013-06-04 2013-08-29 Denso Wave Inc ロボット制御のログ取得システム

Similar Documents

Publication Publication Date Title
US8370810B2 (en) Debugging device and debugging method
JP5523872B2 (ja) プログラムの動的分析方法及びその装置
RU2015151131A (ru) Загрузка парциальной ширины, зависящая от режима, в процессорах с регистрами с большим числом разрядов, способы и системы
JP2003131902A (ja) ソフトウェアデバッガ、システムレベルデバッガ、デバッグ方法、及びデバッグプログラム
JP2008047124A (ja) コンピュータグラフィックスデータの処理方法とその処理装置
JP2006330778A (ja) データトレース装置及びプログラムデバッグ装置
JP2006092029A (ja) マイクロコンピュータ及びトレース制御方法
JP3892873B2 (ja) プログラマブルコントローラ
TW200719141A (en) Flash memory access method and circuit of an embedded system
JP2013161484A (ja) 再構成可能コンピューティング装置、その第1メモリ制御器及び第2メモリ制御器、並びにそのデバッギング用のトレースデータを処理する方法
JP2785606B2 (ja) パイプライン処理方式コンピュータ用プログラムのデバッガ
JP2006107004A (ja) トレース制御回路、マイクロプロセッサ及びトレース制御方法
JP2012190137A (ja) エミュレータ装置
JPH07281924A (ja) トレース装置及びこれを備えたエミュレータ
JP2006031248A (ja) 関数呼び出しをフックしてログを生成するソフトウェア評価システム
JP2853647B2 (ja) デバッガ付きインタプリタへの機能付加方式
JP6294142B2 (ja) 被演算データ読み出しのための外部メモリアクセスが発生しないプログラマブルコントローラ
JP2000057012A (ja) トレース装置
JPH04328644A (ja) デバッグ支援装置
JPH05108404A (ja) デバツガシステム
JPH08171505A (ja) 半導体装置
JP5993687B2 (ja) ワンチッププロセッサ
JP2006301776A (ja) デュアルポートramへのプログラム書き込み回路
JPH02181236A (ja) デバッグ装置
JPH11194956A (ja) 演算処理装置のデバッグ方法および演算処理装置