イベント パネル


エディタ パネル/逆アセンブル パネルウォッチ パネル上で設定したイベントの詳細情報の表示,設定状態の有効/無効の切り替え,および削除などを行います(「2.17 イベントの管理」参照)。

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

備考 1.

イベントの設定に関しては,「2.17.6 イベント設定に関する留意事項」を参照してください。

備考 2.

解析ツールの関数 パネル/変数 パネルで設定したイベントもこのパネルで管理します。

備考 3.

ツールバーの ,または[Ctrl]キーを押下しながらマウス・ホイールを前後方に動かすことにより,本パネルの表示を拡大/縮小することができます。

備考 4.

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

図 A.28

イベント パネル

 

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

[オープン方法]

-

[表示]メニュー→[イベント]を選択

-

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

[各エリアの説明]

(1)

[名前]エリア

現在設定されているイベント名を次の形式で一覧表示します。

備考

ツールバーのボタンの選択により,表示するイベント種別を限定することができます(「[ツールバー]」参照)。

(a)

チェック・ボックス

イベントの設定状態を表示/変更します。

なお,イベントの設定状態を変更すると,対応してイベント・マークも変化します。

 

有効状態

指定されている条件の成立で,対象となるイベントが発生します。

チェックを外すことにより,イベントを無効状態にすることができます。

 

無効状態

指定されている条件が成立しても,対象となるイベントは発生しません。

チェックすることにより,イベントを有効状態にすることができます。

 

保留状態

指定されている条件が,デバッグ対象のプログラムでは設定することができません。

チェック・ボックスを操作することはできません。

備考 1.

タイマ計測イベントを有効状態にするためには,タイマ開始イベントとタイマ終了イベントの両方の設定が必要となります。

備考 2.

Run-Breakタイマ・イベントを無効状態/保留状態にすることはできません。

備考 3.

無条件トレース・イベントとトレース・イベントにおける有効/無効状態の設定は,排他制御となります。このため,ビルトイン・イベントである無条件トレース・イベントは,デフォルトで有効状態で設定されていますが,トレース開始イベント/トレース終了イベントのいずれかが設定されると同時に自動的に無効状態に変更され,トレース・イベント(トレース開始イベント/トレース終了イベントを1つにまとめたイベント)が有効状態になります。
また逆に,設定されているトレース・イベントを無効状態にすると,自動的に無条件トレース・イベントが有効状態となります。

(b)

イベント・マーク

イベント・マークは,イベントの種別を示すとともに,現在の設定状態を示します。

表示されるイベント・マークとその意味は次のとおりです。

表 A.8

イベント・マーク

イベント種別

有効状態

無効状態

保留状態

備考

ハードウエア・ブレーク

 

 

 

ハードウエア・ブレーク・ポイントを含む

ソフトウエア・ブレーク

 

 

 

ソフトウエア・ブレーク・ポイントを含む

関数の先頭へのブレーク

 

 

 

解析ツールにより設定可能なブレーク・イベント

変数のアクセス・ブレーク

 

 

 

無条件トレース

 

 

Run-Breakタイマ

 

トレース

 

 

 

イベント パネルでのみ表示

 

トレース開始

 

 

 

エディタ パネル/逆アセンブル パネルでのみ表示

トレース終了

 

 

 

タイマ計測

 

 

 

イベント パネルでのみ表示

 

タイマ開始

 

 

 

エディタ パネル/逆アセンブル パネルでのみ表示

タイマ終了

 

 

 

パフォーマンス計測

 

 

 

イベント パネルでのみ表示

 

パフォーマンス計測開始

 

 

 

エディタ パネル/逆アセンブル パネルでのみ表示

パフォーマンス計測終了

 

 

 

ポイント・トレース

 

 

 

Printfイベント

 

 

 

上記イベントの複数設定

注1

注2

注3

エディタ パネル/逆アセンブル パネルでのみ表示

注 1.

複数のイベントの中で,1つでも有効状態のイベントがある場合

注 2.

複数のイベントの中で,有効状態のイベントがなく,1つでも無効状態のイベントがある場合

注 3.

複数のイベントのすべてが保留状態の場合

(c)

イベント名

イベント名として,イベント種別とID番号を表示します。

ID番号は,イベント種別ごとに0001からの番号が自動的に付与されます(一度設定したイベントを削除した場合でもID番号の振り直しは行いません)。

表示されるイベント種別は次のとおりです。

表 A.9

イベント種別

イベント種別

説明

ハードウエア・ブレーク

(ブレーク注1

デバッグ・ツールが,プログラム実行中にブレーク条件を逐次確認し,条件を満たした際にプログラムをブレークさせるイベントです。

→「2.9.3 任意の場所で停止する(ブレークポイント)」参照

→「2.9.4 任意の場所で停止する(ブレーク・イベント)」参照

→「2.9.5 変数/I/Oレジスタへのアクセスで停止する」参照

ソフトウエア・ブレーク

(ブレーク注1

ブレークさせるアドレスの命令コードをブレーク用の命令に書き換え,その命令を実行した際にプログラムをブレークさせるイベントです。

→「2.9.3 任意の場所で停止する(ブレークポイント)」参照

関数の先頭へのブレーク

解析ツールの関数一覧パネルより設定されるハードウエア・ブレーク(実行系)です。

変数のアクセス・ブレーク

解析ツールの変数一覧パネルより設定されるハードウエア・ブレーク(アクセス系)です。

無条件トレース

プログラムの実行開始と同時に自動的にトレース・データを収集し,実行停止とともにトレース・データの収集を停止します。

このイベントは,ビルトイン・イベント注2であるため,削除することはできません(デフォルトで有効状態で設定されています)。

→「2.12.2 実行停止までの実行履歴を収集する」参照

Run-Breakタイマ

プログラムの実行開始と同時に自動的にプログラムの実行時間の計測を開始し,実行停止とともに実行時間の計測を終了します。このイベントは,ビルトイン・イベント注2であるため,削除することはできません(デフォルトで有効状態で設定されています)。

→「2.13.1 実行停止までの実行時間を計測する」参照

トレース

トレース開始イベント,およびトレース終了イベントにより設定された条件を満たした際に,トレース・データの収集を開始/終了するイベントです(トレース開始イベント/トレース終了イベントのいずれかが設定されると表示されます)。

→「2.12.3 任意区間の実行履歴を収集する」参照

タイマ計測n

タイマ開始イベント,およびタイマ終了イベントにより設定された条件を満たした際に,プログラムの実行時間の計測を開始/終了するイベントです(タイマ開始イベント/タイマ終了イベントのいずれかが設定されると表示されます)。

なお,“n”は,設定したタイマのチャネル番号を示します。

→「2.13.2 任意区間の実行時間を計測する」参照

パフォーマンス計測n

パフォーマンス計測イベント,およびパフォーマンス計測イベントにより設定された条件を満たした際に,パフォーマンス計測を開始/終了するイベントです(パフォーマンス計測開始イベント/パフォーマンス計測終了イベントのいずれかが設定されると表示されます)。

なお,“n”は,設定したパフォーマンス計測イベントのチャネル番号を示します。

→「2.14.1 任意区間のパフォーマンス計測をする」参照

ポイント・トレース

プログラムの実行により,指定した変数/I/Oレジスタにアクセスした際に,その情報をトレース・メモリに記録するイベントです。

→「2.12.4 条件を満たしたときのみの実行履歴を収集する」参照

Printfイベント

プログラムの実行を任意の箇所で一瞬停止させたのち,ソフトウエア処理によりprintfコマンドを実行させるイベントです(アクション・イベント)。

→「2.16.1 printfを挿入する」参照

注 1.

マウスのワンクリック操作により設定されたブレークポイント(「2.9.3.1 ブレークポイントを設定する」参照)は,“ブレーク”と表示します。

注 2.

デバッグ・ツールにデフォルトで設定されているイベントです。

(2)

[詳細情報]エリア

各イベントに関する詳細情報を表示します。

表示される情報の内容は,イベント種別によって異なります。

イベント種別ごとの詳細情報の見方は次のとおりです。

表 A.10

イベント種別ごとの詳細情報

イベント種別

表示内容注1

ハードウエア・ブレーク

(発生条件:実行系)

表示形式1

PE> <発生条件> <ファイル名#行番号> <アドレス

表示例

CPU1 実行前 main.c#39 0x100

CPU1 実行後 sub.c#100 0x200

CPU1 実行前 ー 0x300

CPU1 実行 main.c#39 0x300 【シミュレータ】

表示形式2

PE> <発生条件> <シンボル+オフセット> <アドレス

表示例

CPU1 実行前 funcA + 0x10 0x100

CPU1 実行後 funcB + 0x20 0x200

CPU1 実行前 ー 0x300

ハードウエア・ブレーク

(発生条件:アクセス系)

表示形式1

PE> <発生条件> <ファイル名#変数名> <アドレス(範囲)> <比較条件> <比較値

表示例

CPU1 リード main.c#variable1 0x100 - 0x101 == 0x5

CPU1 ライト sub.c#variable2 0x200 - 0x200 == 0x7

CPU1 リード/ライト sub2.c#variable3 0x300 - 0x303 == 0x8

表示形式2

PE> <発生条件> <ファイル名#関数名#変数名> <アドレス範囲)> <比較条件> <比較値

表示例

CPU1 リード main.c#func1#variable1 0x100 - 0x101 == 0x10

表示形式3

PE> <発生条件> <変数名> <アドレス範囲)> <比較条件> <比較値

表示例

CPU1 ライト variable1 0x100 - 0x101 == 0x10

ソフトウエア・ブレーク

表示形式1

発生条件> <ファイル名#行番号> <アドレス

表示例

実行前 main.c#40 0x102

実行前 sub.c#101 0x204

表示形式2

発生条件> <シンボル+オフセット> <アドレス

表示例

実行前 funcA + 0x12 0x102

無条件トレース

表示形式

表示例

Run-Breakタイマ

表示形式

総実行時間:<総実行時間

表示例

総実行時間 : 1000ms

総実行時間 : OVERFLOW

トレース

(発生条件:実行系)

表示形式

開始/終了の総数 : <トレース開始トレース終了イベントの総数注2

PE> <開始終了> <トレース開始トレース終了の詳細情報

表示例

開始/終了の総数 : 4

-

CPU1 開始 実行後 main.c#100 0x300

-

CPU1 開始 実行後 funcA + 0x100 0x300

-

CPU1 終了 実行後 main.c#200 0x100

-

CPU1 終了 実行後 funcA + 0x10 0x100

タイマ計測n

(発生条件:実行系)

表示形式

総実行時間:<総実行時間 > 開始/終了の総数 : <タイマ開始タイマ終了イベントの総数注2

-

総実行時間> <パスカウント> <平均実行時間> <最大行時間> <最小実行時間

-

PE> <開始終了> <タイマ開始タイマ終了の詳細情報

表示例

総実行時間: 10ms 開始/終了の総数: 4

-

総実行時間: 10ms パスカウント: 5 平均実行時間: 2ms
最大実行時間: 4ms 最小実行時間: 1ms

-

CPU1 開始 実行後 main.c#100 0x300

-

CPU1 開始 実行後 funcA + 0x30 0x100

-

CPU1 終了 実行後 main.c#100 0x300

-

CPU1 終了 実行後 funcA + 0x50 0x100

パフォーマンス計測n

(発生条件:実行系)

表示形式

パフォーマンス計測モード> <パフォーマンス計測結果> <パフォーマンス計測開始パフォーマンス計測終了イベントの総数

-

PE> <開始終了> <パフォーマンス計測開始終了の詳細情報

表示例

全命令実行回数 カウント:10 開始/終了の総数: 2

-

CPU1 開始 実行後 main.c#100 0x300

-

CPU1 終了 実行後 main.c#100 0x300

パフォーマンス計測n

(発生条件:アクセス系)

表示形式1

パフォーマンス計測モード> <パフォーマンス計測結果> <パフォーマンス計測開始パフォーマンス計測終了イベントの総数

-

PE> <開始終了> <発生条件> <ファイル名#変数名> <アドレス(変数の範囲)> <比較条件記号> <比較値

表示例1

全命令実行回数 カウント:10 開始/終了の総数: 2

-

CPU1 開始 リード main.c#variable1 0x100 - 0x101 == 0x5

-

CPU1 終了 ライト sub.c#variable2 0x200 - 0x200 == 0x7

表示形式2

パフォーマンス計測モード> <パフォーマンス計測結果> <パフォーマンス計測開始パフォーマンス計測終了イベントの総数

-

PE> <開始終了> <発生条件> <ファイル名#関数名#変数名> <アドレス(変数の範囲)> <比較条件記号> <比較値

表示例2

全命令実行回数 カウント:10 開始/終了の総数: 2

-

CPU1 開始 リード main.c#func1#variable1 0x100 - 0x101 == 0x10

-

CPU1 終了 ライト main.c#func1#variable1 0x100 - 0x101 == 0x10

表示形式3

パフォーマンス計測モード> <パフォーマンス計測結果> <パフォーマンス計測開始パフォーマンス計測終了イベントの総数

-

PE> <開始終了> <発生条件> <変数名> <アドレス(変数の範囲)> <比較条件記号> <比較値

表示例3

全命令実行回数 カウント:10 開始/終了の総数: 2

-

CPU1 開始 リード variable1 0x100 - 0x101 == 0x10

-

CPU1 終了 ライト variable1 0x100 - 0x101 == 0x10

ポイント・トレース

(発生条件:アクセス系)

表示形式1

PE> <発生条件> <変数名> <変数のアドレス>

表示例

CPU1 リード variable1 0x100

表示形式2

PE> <発生条件> <ファイル名#変数名> <変数のアドレス>

表示例

CPU1 ライト sub.c#variable2 0x200

表示形式3

PE> <発生条件> <ファイル名#関数名#変数名> <変数のアドレス

表示例

CPU1 リード/ライト sub.c#func1#variable3 0x300

Printfイベント

(アクション・イベント)

表示形式

発生条件> <ファイル名#行番号> <アドレス> <Printイベントの設定

表示例

実行前 main.c#39 0x100 aaa, bbb, ccc

実行後 sub.c#100 0x200 aaaの結果の表示: aaa

注 1.

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

PE

マルチコアの場合はコア名称を表示します。

シングルコアの場合は何も表示しません。

発生条件

次の条件のいずれか1つを表示します。

【Full-spec emulator】【E1】【E20】

実行系 : 実行前,実行後

アクセス系 : リード,ライト,リード/ライト

【シミュレータ】

実行系 : 実行

アクセス系 : リード,ライト,リード/ライト

ファイル名#行番号

ソース・ファイル名とソース・ファイル中の行番号を表示します。表示形式はウォッチ式のスコープ指定式と同等です。

複数のロード・モジュール・ファイルをダウンロードしている場合では,<ロード・モジュール名$ファイル名#行番号>を表示します。

なお,逆アセンブル パネルで設定されたイベントでは,次の場合,行番号をシンボル+オフセット形式で表示します。

-

行情報があり,指定されたイベント設定位置が行情報の先頭でない場合

-

行情報がなく,シンボル情報がある場合

また,次の場合は,行番号を“ー”で表示します。

-

行情報がなく,シンボル情報がない場合

変数名

ソース・ファイル中の変数名を表示します。表示形式はウォッチ式のスコープ指定式と同等です。

比較条件

比較の条件(==)を表示します。比較値が指定されなかった場合は表示しません。

比較値

比較値を表示します。比較値が指定されなかった場合は表示しません。

アドレス

指定された変数の,メモリ領域中の開始アドレス-終了アドレスを表示します(16進数表記固定)。

開始終了

詳細情報の内容が,開始イベントか終了イベントかを表示します。

パスカウント

タイマのパスカウントを表示します。

なお,タイマ・オーバフロー発生時(「2.13.3 測定可能時間」参照),または不正な値の場合は“OVERFLOW”を表示します。

また,未計測の場合は,“未計測”を表示します。

総実行時間

タイマの総実行時間の測定結果を表示します。

単位は,ns/μs/ms/s/min/clockのいずれか1つが表示されます(ただし,“min”の場合は"s"も同時に表示)。

なお,タイマ・オーバフロー発生時(「2.13.3 測定可能時間」参照),または不正な値の場合は“OVERFLOW”を表示します。

また,未計測の場合は,“未計測”を表示します。

平均実行時間

タイマの平均実行時間の測定結果を表示します。

単位は,ns/μs/ms/s/min/clockのいずれか1つが表示されます(ただし,“min”の場合は"s"も同時に表示)。

なお,タイマ・オーバフロー発生時(「2.13.3 測定可能時間」参照),または不正な値の場合は“OVERFLOW”を表示します。

また,未計測の場合は,“未計測”を表示します。

最大実行時間

タイマの最大実行時間の測定結果を表示します。

単位は,ns/μs/ms/s/min/clockのいずれか1つが表示されます(ただし,“min”の場合は"s"も同時に表示)。

なお,タイマ・オーバフロー発生時(「2.13.3 測定可能時間」参照),または不正な値の場合は“OVERFLOW”を表示します。

また,未計測の場合は,“未計測”を表示します。

最小実行時間

タイマの最小実行時間の測定結果を表示します。

単位は,ns/μs/ms/s/min/clockのいずれか1つが表示されます(ただし,“min”の場合は"s"も同時に表示)。

なお,タイマ・オーバフロー発生時(「2.13.3 測定可能時間」参照),または不正な値の場合は“OVERFLOW”を表示します。

また,未計測の場合は,“未計測”を表示します。

Printイベントの設定

アクション・イベント ダイアログ上で指定した,出力文字列変数式を表示します。

パフォーマンス計測モード

パフォーマンス計測モードを表示します。

パフォーマンス計測詳細設定ダイアログで設定したモードを表示します。

パフォーマンス計測結果

パフォーマンス計測結果を表示します。

パフォーマンス計測詳細設定 ダイアログ【Full-spec emulator】【E1】【E20】でパフォーマンス計測モードに“クロックサイクル数”,“割り込み処理中ではない時間”,“DI/EIによる割り込み禁止時間”を設定した場合はサイクル数を表示し,その他の場合はカウント数を表示します。

注 2.

この行をクリックすることにより,下行の詳細情報を表示します。

(3)

[コメント]エリア

設定されている各イベントに対して,ユーザが自由にコメントを入力できるエリアです。

コメントの入力は,コメントを入力したいイベントを選択後,このエリアをクリックするか,またはコンテキスト・メニューの[コメントの編集]を選択したのち,任意のテキストをキーボードから直接入力します([Esc]キーの押下で編集モードをキャンセルします)。

コメントを編集したのち,[Enter]キーの押下,または編集領域以外へのフォーカスの移動により,編集を完了します。

なお,コメントは最大256文字まで入力することができ,使用中のユーザの設定として保存されます。

[ツールバー]

 

選択しているイベント,およびイベント条件を削除します。

ただし,ビルトイン・イベント(無条件トレース・イベント/Run-Breakタイマ・イベント)を削除することはできません。

 

ハードウエア・ブレーク関連のイベントを表示します(デフォルト)。

 

【Full-spec emulator】【E1】【E20】

ソフトウエア・ブレーク関連のイベントを表示します(デフォルト)。

 

トレース関連のイベントを表示します(デフォルト)。

 

タイマ関連のイベントを表示します(デフォルト)。

 

パフォーマンス計測関連のイベントを表示します(デフォルト)。

 

アクション・イベント関連(Printfイベント)を表示します(デフォルト)。

 

ビルトイン・イベント関連(無条件トレース・イベント/Run-Breakタイマ・イベント)を表示します(デフォルト)。

 

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

 

選択しているイベントが設定されているアドレスに対応する逆アセンブル結果にキャレットを移動した状態で,逆アセンブル パネル(逆アセンブル1)がオープンします。

 

選択しているイベントが設定されているアドレスに対応するメモリ値にキャレットを移動した状態で,メモリ パネル(メモリ1)がオープンします。

トレース・イベント/タイマ計測イベント/ビルトイン・イベント(無条件トレース・イベント/Run-Breakタイマ・イベント)以外のイベントが対象となります。

[[編集]メニュー(イベント パネル専用部分)]

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

削除

選択しているイベント,およびイベント条件を削除します。

ただし,ビルトイン・イベント(無条件トレース・イベント/Run-Breakタイマ・イベント)を削除することはできません。

すべて選択

このパネルに表示されているすべてのイベントを選択状態にします。

検索...

検索・置換 ダイアログを[一括検索]タブが選択状態でオープンします。

置換...

検索・置換 ダイアログを[一括置換]タブが選択状態でオープンします。

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

有効化

選択しているイベントを有効状態にします。

ただし,選択しているイベントがすでに有効状態の場合は無効となります。

無効化

選択しているイベントを無効状態にします。

ただし,選択しているイベントがすでに無効状態の場合は無効となります。

削除

選択しているイベントを削除します。

ただし,ビルトイン・イベント(無条件トレース・イベント/Run-Breakタイマ・イベント)を削除することはできません。

すべて選択

現在表示しているすべてのイベントを選択状態にします。

表示選択

表示するイベント種別を限定するために,次のカスケード・メニューを表示します。

デフォルトでは,すべての項目が選択されています。

 

ハードウエア・ブレーク

ハードウエア・ブレーク関連のイベントを表示します。

ソフトウエア・ブレーク

ソフトウエア・ブレーク関連のイベントを表示します。

タイマ

タイマ関連のイベントを表示します。

パフォーマンス計測

パフォーマンス計測関連のイベントを表示します。

トレース

トレース関連のイベントを表示します。

アクション・イベント

アクション・イベント(Printfイベント)を表示します。

ビルトイン・イベント

ビルトイン・イベント(無条件トレース・イベント/Run-Breakタイマ)を表示します。

タイマ設定

タイマ関連の設定をするために,次のカスケード・メニューを表示します。

ただし,タイマ関連のイベントを選択している場合のみ有効です。

 

タイマの初期化

選択しているイベント(Run-Breakタイマ・イベントを除く)で使用するタイマを初期化します。

ナノ秒表示

選択しているイベントのタイマ結果をナノ秒(ns)単位で表示します。

マイクロ秒表示

選択しているイベントのタイマ結果をマイクロ秒(μs)単位で表示します。

ミリ秒表示

選択しているイベントのタイマ結果をミリ秒(ms)単位で表示します。

秒表示

選択しているイベントのタイマ結果を秒(s)単位で表示します。

分表示

選択しているイベントのタイマ結果を分(min)単位で表示します。

クロック表示

選択しているイベントのタイマ結果をクロック(clock)単位で表示します。

パフォーマンス計測の初期化

選択しているイベントで使用するパフォーマンス計測を初期化します。

メモリへジャンプ

選択しているイベントが設定されているアドレスに対応するメモリ値にキャレットを移動した状態で,メモリ パネル(メモリ1)がオープンします。

逆アセンブルへジャンプ

選択しているイベントが設定されているアドレスに対応する逆アセンブル結果にキャレットを移動した状態で,逆アセンブル パネル(逆アセンブル1)がオープンします。

ソースへジャンプ

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

条件の編集...

選択しているアクション・イベント(Printfイベント)を編集するために アクション・イベント ダイアログをオープンします。

コメントの編集

選択しているイベントのコメントを編集モードにします。

すでにコメントが存在する場合は,その文字列のすべてを選択状態にします。

トレース・イベント/タイマ計測イベント/ビルトイン・イベント(無条件トレース・イベント/Run-Breakタイマ・イベント)以外のイベントが対象となります。