トレース パネル


プログラムの実行履歴を記録したトレース・データの表示を行います(「2.13 実行履歴の収集」参照)。

トレース・データは,デフォルトで逆アセンブル・テキストとソース・テキストを混合して表示しますが,表示モードを選択することにより,そのどちらか一方のみを表示させることもできます。

プログラムの実行停止後,最新のトレース・データが表示されるよう表示位置を自動更新します。

なお,このパネルは,デバッグ・ツールと接続時のみオープンすることができます。

注意

【E20(JTAG)【RX600シリーズ】】
トレース機能/リアルタイムRAMモニタ機能(RRM機能)は一部排他使用の機能です。

備考

パネル上の各エリアの区切り線をダブルクリックすることにより,該当エリアの内容を省略することなく表示可能な最小幅に変更することができます。

図 A.33

トレース パネル【E1/E20/EZ Emulator【RX200, RX600シリーズ】

図 A.34

トレース パネル【E1/E20/EZ Emulator【RX100シリーズ】

図 A.35

トレース パネル【シミュレータ】

 

ここでは,次の項目について説明します。

[オープン方法]

-

[表示]メニュー→[トレース]を選択

-

エディタ パネル/逆アセンブル パネルにおいて,コンテキスト・メニューの[トレース設定]→[トレース結果の表示]を選択

[各エリアの説明]

(1)

[番号]エリア

トレース・フレームに対応するトレース番号を表示します。

(2)

[時間(h:min:s,ms,μs,ns)]エリア

プログラムの実行開始から,各フレームの命令実行,またはメモリ・アクセスの要因が発生するまでに要した時間を“時間,分,秒,ミリ秒,マイクロ秒,ナノ秒”の単位で表示します。

備考

【シミュレータ】
時間表示を積算値とするか差分値とするかは,プロパティ パネル[デバッグ・ツール設定]タブ上の[トレース]カテゴリ内[トレース・タイム・タグを積算する]プロパティの設定に依存します。

注意 1.

【E1】【E20】【EZ Emulator】
タイム・スタンプ情報をトレース・データに付加するか否かは,プロパティ パネル[デバッグ・ツール設定]タブ上の[トレース]カテゴリ内[タイム・スタンプ出力]プロパティで指定します(「2.13.1 トレース動作の設定をする」参照)。 なお,RX100シリーズでは[タイム・スタンプ出力]プロパティの項目を変更することはできず,タイム・スタンプ情報をトレース・データに付加することはできません。

注意 2.

【E1】【E20】【EZ Emulator】
タイム・スタンプ情報は,プログラム実行開始からの時間ではなく,先頭サイクルを基点とした相対時間を表示します。

注意 3.

【E1】【E20】【EZ Emulator】
タイム・スタンプ情報は,プロパティ パネル[ダウンロード・ファイル設定]タブ上の[トレース] カテゴリ内[トレース・クロック・カウント・ソース[MHz]]プロパティの設定値とマイクロコントローラごとのカウント・ソースでカウントした値によって算出されます。
マイクロコントローラのカウンタの幅は,次のとおりです。
RX600シリーズ:20ビット
RX200シリーズ:24ビット
なお,マイクロコントローラのカウント値がオーバフローした場合,オーバフローの内容を補正したタイム・スタンプ情報が表示されます。
ただし,連続するトレース・フレーム間で2回以上オーバフローが発生した場合,以降のトレース・データには正しいタイム・スタンプ情報が表示されません。





注意 4.

【E1(Serial) / E20(Serial) / EZ Emulator【RX200シリーズ】】
トレース・パネルのタイム・スタンプ情報は,タイマ計測用カウンタを用いています。そのため,イベント パネルにてタイマ計測イベントを設定した場合,期待したタイム・スタンプ情報が表示されません。

注意 5.

トレースのタイム・スタンプ情報のカウント周波数(トレース・クロック・カウント・ソース[MHz])は,マイクロコントローラにより下記のように異なります。

 

【RX610, RX621, RX62N, RX62T, RX62G グループ】
(1)EXTAL周波数 × 8<= 100 MHz の場合
 トレース・クロック・カウント・ソース[MHz] = EXTAL周波数 × 8
(2)EXTAL周波数 × 8> 100 MHz の場合
 トレース・クロック・カウント・ソース[MHz] = EXTAL周波数 × 4

【RX71M, RX64M, RX630, RX631, RX63N, RX63T グループ】
(1)EXTALまたはPLLをシステムクロック(ICLK)のクロックソースに使用する場合(注)
 (a)SCKCR.ICKを1分周に設定した場合
  トレース・クロック・カウント・ソース[MHz] = 選択クロックソースの1分周
 (b)SCKCR.ICKを1分周以外に設定した場合
  トレース・クロック・カウント・ソース[MHz] = 選択クロックソースの2分周
(2)"EXTALまたはPLLをシステムクロック(ICLK)のクロックソースに使用しない場合
 トレース・クロック・カウント・ソース[MHz] = 選択クロックソースの1分周

【RX210, RX21A, RX220 グループ】
 トレース・クロック・カウント・ソース[MHz] = ICLK(パフォーマンスカウンタを使用)















 

注:ユーザプログラム動作中にシステムクロック(ICLK)のクロックソースを切り替えた場合,トレースのタイム・スタンプ情報のカウントソースも切り替わります。この場合,タイム・スタンプ値の変化分に単純に周波数を乗じても絶対時間にはなりません。

(3)

[行番号/アドレス]エリア

アセンブル命令のアドレス,またはソース・ファイルの行番号を表示します。

表示進数や文字列のエンコードは,ツールバーのボタン,またはコンテキスト・メニューより選択することができます。

表示形式は次のとおりです。

表示行の種類

表示形式

命令(逆アセンブル)

アドレス

ソース・テキスト

ファイル名>#<行番号

ラベル

ポイント・トレース結果

備考

次の実行履歴を表示しないため,行番号は連番にはなりません。

-

CPUレジスタ・アクセス

-

無効フェッチ

(4)

[ソース/逆アセンブル]エリア

収集したトレース・データを次のように表示します。

なお,表示モードの選択により,このエリアに表示される項目は異なります(「(a) 表示モード」参照)。

図 A.36

[ソース/逆アセンブル]エリアの表示内容(デフォルト)

ラベル名

アドレスにラベルが定義されている場合は,ラベル名を表示します。

オフセット値

アドレスにラベルが定義されていない場合は,一番近いラベルからのオフセット値を表示します。

ソース・テキスト

混合表示モードソース表示モードを選択している場合,対応するソース・テキストを表示します。

ただし,デバッグ情報が存在しない箇所を実行した場合は,“デバッグ情報なし”と表示します。

命令(逆アセンブル結果)

混合表示モード逆アセンブル表示モードを選択している場合,対応する命令(逆アセンブル結果)を表示します注。ニモニックは強調表示されます。

トレース・データの取りこぼしがあった場合は,“(LOST)”を表示し,該当行全体をエラー色で表示します(エラー色はオプション ダイアログにおける[全般 - フォントと色]カテゴリの設定に依存)。

 

このエリアは,次の機能を備えています。

(a)

表示モード

ツールバーのボタン,またはコンテキスト・メニューの選択により,次の3つの表示モードを選択することができます。

表示モード

表示内容

混合表示モード

命令(逆アセンブル)/ラベル名/ソース・テキスト(対応するソース行)/データアクセス情報を表示します(デフォルト)。

逆アセンブル表示モード

命令(逆アセンブル)/ラベル名/データアクセス情報を表示します。

ソース表示モード

ソース・テキスト(対応するソース行)を表示します。

ただし,デバッグ情報が存在しない箇所を実行した場合は,“デバッグ情報なし”と表示します。

(b)

ソース行/逆アセンブル行へのジャンプ

コンテキスト・メニューの[ソースへジャンプ]を選択することにより,現在のキャレット位置の行に対応するソース行にキャレットを移動した状態でエディタ パネルがオープンします(すでにオープンしている場合は,エディタ パネルにジャンプ)。

また,同様に[逆アセンブルへジャンプ]を選択することにより,現在のキャレット位置の行のフェッチ・アドレスにキャレットを移動した状態で逆アセンブル パネル(逆アセンブル1)がオープンします(すでにオープンしている場合は,逆アセンブル パネル(逆アセンブル1)にジャンプ)。

(c)

他のパネルとの連動

ツールバーの ボタン,またはコンテキスト・メニューの[ウインドウ連動]→[ソースと連動]/[逆アセンブルと連動]を選択することにより,このパネル上のキャレット位置のアドレスをポインタとして,エディタ パネル/逆アセンブル パネルで対応箇所を連動して表示させることができます(フォーカスの移動は行いません)。

(d)

ポップアップ表示

マウス・カーソルを行に重ねることにより,その行に対応するすべてのエリア(項目)のデータを縦並びにポップアップ表示します。

(e)

トレース・データの保存

[ファイル]メニュー→[名前を付けてトレース・データを保存...]を選択することにより,データ保存 ダイアログをオープンし,このパネルの内容をテキスト・ファイル(*.txt)/CSVファイル(*.csv)に保存することができます。

トレース・データの保存方法についての詳細は,「2.13.9 実行履歴の表示内容を保存する」を参照してください。

(f)

表示の拡大/縮小

トレース パネルにフォーカスがある状態で,メイン・ウインドウのツールバー上にある拡大率のドロップダウン・リストを変更することにより,トレース パネルの表示を拡大/縮小することができます。

また,[Ctrl]キーとマウス・ホイールを組み合わせることでも変更可能です。

-

[Ctrl]キーを押下しながらマウス・ホイールを前方に動かすと,トレース パネルの表示を拡大し,表示が大きく見やすくなります(最大300%)。

-

[Ctrl]キーを押下しながらマウス・ホイールを後方に動かすと,トレース パネルの表示を縮小し,表示が小さくなります(最小50%)。

 

なお,拡大率を変更した状態のパネルをクローズした場合,拡大率は保持されます(再度パネルをオープンする際に,変更した拡大率でオープンします)。

(5)

[アドレス]エリア

メモリ・アクセスの対象アドレスを表示します。

ただし,I/Oレジスタへのアクセスの場合は,アドレスの代わりにI/Oレジスタ名を表示します(アクセスが複数ある場合は次の行に表示)。

表示進数は,ツールバーのボタン,またはコンテキスト・メニューより選択することができます。

(6)

[データ]エリア

アクセスしたデータ値,およびその際のアクセス種別を表示します。

ただし,CPUレジスタ・アクセスは表示しません。

表示進数や文字列のエンコードは,ツールバーのボタン,またはコンテキスト・メニューより選択することができます。

データ値,およびアクセス種別の表示形式は次のとおりです(表示の際の文字色/背景色はオプション ダイアログにおける[全般 - フォントと色]カテゴリの設定に依存)。

表示例(デフォルト)

メモリ・アクセス種別

 

文字色

標準色

リード・アクセス

背景色

薄緑

 

文字色

標準色

ライト・アクセス

背景色

オレンジ

 

【シミュレータ】

文字色

標準色

ベクタ・リード・アクセス

背景色

薄緑

[ツールバー]

 

デバッグ・ツールから最新の情報を取得し,表示を更新します。

ただし,プログラム実行中は無効となります。

 

トレース・メモリをクリア(初期化)し,このパネルの表示もクリアします。

ただし,プログラム実行中は無効となります。

 

プログラム実行中に停止したトレース機能を再開します。

ただし,プログラム停止中,またはトレーサ動作中は無効となります。

 

プログラム実行中にトレース機能を一時的に停止します。

ただし,プログラム停止中,またはトレーサ停止中は無効となります。

 

トレース検索 ダイアログをオープンします。

表記

値の表示形式を変更する次のボタンを表示します。

ただし,プログラム実行中は無効となります。

 

 

このパネル上の値を16進数で表示します(デフォルト)。

 

このパネル上の値を10進数で表示します。

 

このパネル上の値を8進数で表示します。

 

このパネル上の値を2進数で表示します。

 

選択している行に連動してエディタ パネルをスクロールします。

 

選択している行に連動して逆アセンブル パネルをスクロールします。

 

表示モードを混合表示モードにします(デフォルト)。

ただし,プログラム実行中は無効となります。

 

表示モードを逆アセンブル表示モードにします。

ただし,プログラム実行中は無効となります。

 

表示モードをソース表示モードにします。

ただし,プログラム実行中は無効となります。

[[ファイル]メニュー(トレース パネル専用部分)]

トレース パネル専用の[ファイル]メニューは次のとおりです(その他の項目は共通)。

ただし,プログラム実行中はすべて無効となります。

トレース・データを保存

トレース・データの内容を前回保存したテキスト・ファイル(*.txt)/CSVファイル(*.csv)に保存します(「(e) トレース・データの保存」参照)。

なお,起動後に初めてこの項目を選択した場合は,[名前を付けてトレース・データを保存...]の選択と同等の動作となります。

名前を付けてトレース・データを保存...

トレース・データの内容を指定したテキスト・ファイル(*.txt)/CSVファイル(*.csv)に保存するために,データ保存 ダイアログをオープンします(「(e) トレース・データの保存」参照)。

[[編集]メニュー(トレース パネル専用部分)]

トレース パネル専用の[編集]メニューは次のとおりです(その他の項目はすべて無効)。

ただし,プログラム実行中はすべて無効となります。

コピー

選択している行の内容を文字列としてクリップ・ボードにコピーします(複数行選択不可)。

検索...

トレース検索 ダイアログをオープンします。

[コンテキスト・メニュー]

トレース・クリア

トレース・メモリをクリア(初期化)し,このパネルの表示もクリアします。

ただし,プログラム実行中は無効となります。

トレース開始

プログラム実行中に停止したトレース機能を再開します。

ただし,プログラム停止中,またはトレーサ動作中は無効となります。

トレース停止

プログラム実行中にトレース機能を一時的に停止します。

ただし,プログラム停止中,またはトレーサ停止中は無効となります。

検索...

トレース検索 ダイアログをオープンします。

ただし,プログラム実行中は無効となります。

コピー

選択している行の内容を文字列としてクリップ・ボードにコピーします(複数行選択不可)。

ただし,プログラム実行中は無効となります。

混合表示

表示モードを混合表示モードにします。

ただし,プログラム実行中は無効となります。

逆アセンブル表示

表示モードを逆アセンブル表示モードにします。

ただし,プログラム実行中は無効となります。

ソース表示

表示モードをソース表示モードにします。

ただし,プログラム実行中は無効となります。

表記

表示進数を指定するために,次のカスケード・メニューを表示します。

ただし,プログラム実行中は無効となります。

 

16進数

このパネル上の値を16進数で表示します(デフォルト)。

10進数

このパネル上の値を10進数で表示します。

8進数

このパネル上の値を8進数で表示します。

2進数

このパネル上の値を2進数で表示します。

ウインドウ連動

他のパネルとの連動を行うために,次のカスケード・メニューを表示します。

 

ソースと連動

選択している行に連動してエディタ パネルをスクロールします。

逆アセンブルと連動

選択している行に連動して逆アセンブル パネルをスクロールします。

逆アセンブルへジャンプ

選択している行のフェッチ・アドレスにキャレットを移動した状態で,逆アセンブル パネル(逆アセンブル1)がオープンします。

ソースへジャンプ

選択している行に対応するソース行にキャレットを移動した状態で,エディタ パネルがオープンします。

メモリへジャンプ

選択している行に対応するメモリ値にキャレットを移動した状態で,メモリ パネルがオープンします。