|
H−デバッガ AH7000には多くの便利な機能が備わっています。
より使いやすい、便利なデバッガを目指し、H−デバッガは進化しました。
|
|
標準機能
・メモリセット
・メモリダンプ
・メモリフィル
・ダンプ基数変更
・10 <-> 16進変換表示
・レジスタアクセス
・ウオッチ表示
・シンボル表示
|
・ブートロード
・シンボル読込
・ダウンロード
・アップロード
・べリファイ
・プログラム実行
・プログラム強制ブレイク
・ブレークポイント設定・解除
・逆アセンブル表示
・Cソース表示
|
・トレース実行
・ステップ実行
・Cトレース実行
・Cステップ実行
・フラッシュROMライタ
・割込み禁止/許可
・ログ記録開始/終了
・CPU設定
・ターゲットのリセット
・バージョン表示
|
拡張機能
▲インスペクト機能、評価/変更窓
|
|
|
|
● |
構造体、ローカル変数、配列、ポインタ、キャスト演算子も表示可能です。(Ver.3.00以上対応)
コンパイラによって制限があります。
構造体の参照例
|
● |
変数をマウスでポイントするだけで、変数の値を表示するインスペクト機能 |
● |
評価/変更窓では、値の変更も自由に可能。この窓は変数上でマウスのダブルクリックによっても開き、操作が非常に簡単 |
|
|
▲メモリ内容のグラフ表示
|
・ |
メモリ内容をグラフ表示します。最大65536要素 |
・ |
ダンプ画面に指定したシンボル/アドレスが先頭になります。 |
・ |
対応する変数タイプ
[char,short,long,long long,float,double,long double]
|
・ |
[and]は、データにMaskが必要な場合に指定します。 |
・ |
[signed(Twos.)]は、データを2の補数処理します。
[signed(Offset.)]は、データをオフセット処理します。
[unsigned]は、データをunsigned処理します。
|
・ |
[bit]は、データがオフセットの場合にオフセット位置を指定します。
例) bit[24]0x80_0000になります。
|
|
▲ローダとアプリケーション(SH7262/4/6/7に限る)
|
・ |
ブートモード1/3に対応したシリアルフラッシュロムへのローダとアプリケーションを書込むツールになります。 |
・ |
シリアルフラッシュロム用ライタープログラムを指定します。 |
・ |
シリアルフラッシュロムに記憶させるローダプログラムを指定します。 |
・ |
シリアルフラッシュロムに記憶させるアプリケーションプログラムを指定します。 |
・ |
「書込み開始」ボタンをクリックするだけで、全て自動でシリアルフラッシュロムに書き込みます。 |
|
▲オンザフライ機能
オンザフライとは、ターゲットのプログラム実行中にコマンドを発行した場合、ターゲットのプログラムを一時停止させ、情報を取得したのちターゲットを実行させることを自動でする機能のことです。
これはH-debuggerがターゲットの状態を取得するために必要な時間であり、この停止時間はコマンドによって下表のように異なります。
コマンド |
停止時間 単位(msec) |
CPU設定 |
割込みを使用しない |
割込みを使用する |
デバッグI/F |
クロック同期 |
クロック同期 |
調歩同期 |
割込み方式 |
− |
受信割込み |
受信割込み |
割込みが使用できる条件 |
− |
ワークエリア固定番地方式
ユーザ側が割込み許可状態
[PUTCH]を使用しない |
ワークエリア固定番地方式
ユーザ側が割込み許可状態
[PUTCH]を使用しない |
1バイトのメモリアクセス |
0.80
1バイト増毎に+0.05ms
(MAX 128byte 7.7ms)
|
0.02
バイト数に影響されない |
0.10
バイト数に影響されない |
全レジスタ |
5.00 |
0.02 |
0.10 |
個別レジスタ(ERレジスタ) |
0.50 |
0.02 |
0.10 |
個別レジスタ(CCRレジスタ) |
0.50 |
0.02 |
0.10 |
個別レジスタ(PCレジスタ) |
0.50 |
0.02 |
0.10 |
1行の逆アセンブラ |
2.00 |
0.02 |
0.10 |
DI,EI.IntFlg(割込み系) |
5.00 |
5.00 |
8.00 |
ブレークポイントの設定 |
10.00 |
10.00 |
16.00 |
ブレークポイントの解除 |
10.00 |
10.00 |
16.00 |
停止時間の計測方法 |
[NMI]のLow巾 |
計測方法なし |
計測方法なし |
*H8S/2633 クロックが19.6608MHz時の実測値 |
|
▲リアルタイムバストレース機能(H8S/2426,2456グループに限る)
|
1024ステップのリアルタイムバストレース機能が追加されました。(一部のCPU品種に限ります) |
|
▲プロファイル表示機能(TOPPERS/OSEK)
|
TOPPERS/OSEK用のプロファイル機能です。システムTick単位でTaskのRunning状態を計測します。
|
|
▲ダンプエディット機能
|
・ |
Data部で、マウスクリックをしますと、直接数値入力モードになります。
|
・ |
↑↓→←キーにて移動でき、右上にアドレスとシンボルが表示されます。 |
|
▲シンボル表示
|
登録シンボルを各カテゴリ別、及び、ユニット別に参照することができます。 |
|
・ |
登録されているシンボルのアドレスを表示します。
|
・ |
カテゴリ別に選択可能(全部・関数・変数・ETC・MOD)
|
・ |
シンボル表示順をアドレス/名前/UNIT順に選択できます
|
・ |
指定したシンボル名/UNIT名/DIR名のみ抽出します。
|
・ |
カテゴリ関数指定時にシンボル部をダブルクリックするとCView表示します。
|
・ |
カテゴリ変数指定時にシンボル部をダブルクリックするとDump表示します。
|
・ |
シンボル部でマウス右クリックのプルダウンメニューにて各表示先を自由に選択できます。
|
|
▲Watchでデータ変更する機能
|
Watch16ポイントまで設定でき、ブレーク履歴との組み合わせにより、4Kステップ記憶しています。 |
|
・ |
ワンクリックで最新設定全項目が復活します。
|
・ |
Data部で、ダブルクリック又はリターンをしますと、直接数値入力モードになります。
|
・ |
周期サンプルにチェックをしますと、プログラム動作中に周期的にオンザフラ機能によりターゲットの情報を取得表示します。 |
・ |
Watchポイントは、最大16ポイントです。 |
|
▲ブレーク履歴機能
|
デバッグ中にブレーク(停止)したアドレスの全レジスタとWatch情報を4Kステップ分記憶しトレース風に表示します。 |
|
・ |
B[0]が最新のブレーク情報になります。
B[-4095]4Kステップ前のブレーク情報です。 |
・ |
B[x]の位置でダブルクリックしますとCviewにソース表示をします。 |
・ |
ブレーク履歴情報のC/Asm表示の選択ができます。 |
・ |
カーソル位置の記憶したレジスタとWatch情報を表示します。 |
・ |
ブレーク履歴の検索ができます。 |
・ |
ブレーク履歴情報をファイル保存できます。 |
|
▲外部RAMへダウンロードする機能
|
・ |
内蔵フラッシュROM以外にロケートされたプロジェクトファイルをダウンロードする場合、左画面のようなメッセージが表示され、ロード先を選択します。
・内蔵ROMと外部RAMへのダウンロード
・外部RAMのみへのダウンロード(ROMエリアはベリファイ実施)
|
・ |
RAMのみを選択した場合、外部RAMへのバイトアクセスが可能状態になっていることが条件になります。(H8SX/1651は除く) |
・ |
RAM上でのデバッグについてはこちらを参照して下さい。 |
|
▲ターゲット接続テストツール
|
ターゲットとの信号確認および波形計測を容易にする為、H-debuggerからの出力/入力信号を個別に操作出来るようにしました。
<出力/入力仕様>
CPU設定により、オープンドレイン/バッファ出力が使用
している方式に自動で切り替わります。(選択不可)
<出力状態選択>
・LOW
・HIGH
・2secパルス(信号名により周波数は異なります。)
以上、3パターンの選択が出来ます。 |
▲Mix表示機能
|
CソースラインとアセンブラのMix表示が可能になりました。
|
▲メモリフィル/検索
|
・ |
指定メモリアドレスからサイズ分パターンをセットします。【FILL】 |
・ |
指定メモリアドレスからサイズ分パターンを検索します。【FIND】
EQU:イコールパターン検索 NOT:ノットパターン検索
|
・ |
メモリアクセスビットを指定します。【Access】
char:8bit short:16bit long:32bit
|
・ |
モニタ使用RAMエリアに干渉した場合は、補正します。【FILL】 |
|
▲メモリコピー
|
・ |
サイズ【Size】 |
・ |
メモリアクセスビットを指定します。【Access】
char:8bit short:16bit long:32bit
|
|
▲プログラムコード分析のメモリ先選択
トレース/ステップ/逆アセンブラ表示等のプログラムコード分析時にメモリ先を選択することができます。
メモリ先 |
設定・表示項目 |
原理 |
長所/短所 |
PC側メモリ |
擬似
(PcMemory)
|
ダウンロード実施時、PC機側にターゲットと同じメモリ空間を作成し、プログラムエリアのみ擬似対応する。
(環境設定にて設定)
|
<長所>
・情報取得時の速度が向上する。
・ターゲット実行時の情報取得時にオンザフライ機能等によるターゲットの停止頻度が減少する。
<短所>
・ダウンロードを実施しないと、この機能は使用することができない。 |
ターゲット側メモリ |
実体
(TargetMemory)
|
常時ターゲット側のメモリから通信により取得する。
(環境設定にて設定)
|
<長所>
・実メモリである。
・ダウンロードをしなくても常時可能である。
<短所>
・情報取得時が通信経由の為、速度が低下する。
・ターゲット実行時の情報取得は オンザフライ機能によりターゲット側が一時停止する。 |
▲レジスタPC周期サンプリング&ログ記録
レジスタPCの値を周期的にサンプリング可能にしました。
サンプリング値はログ記録のONにより、ファイルへ書き込みが行うことが出来ます。
これにより、プログラムが暴走した時にも、後からPC値の解析を行うことが可能であり、デバッグが効率良く行うことが出来ます。
周期時間は、WindowsPC機の能力により影響を受けますが、だいたい50〜200ms/サンプルです。
AH7000から出力しているNMI信号を測定することにより正確な周期が計測できます。
▲ソースブレーク機能&標準出力機能
Cソース行にブレーク文を記述することにより、ブレークポイントを無制限に設定できます。
Cソースの修正をすること無くソースブレークポイントの通過・停止の設定ができます(16ポイントまで)。17ポイント以上記述した場合は、その超過したポイントでは無条件に停止します。
又、Cソース行に標準出力文「PUTCH(char a)」を直接ソース行に記述することにより、ローカル変数等のデバッガ情報表示をPUTCH窓に表示させることができます。詳細はこちら
▲HEXファイルの分割ツール
|
内蔵フラッシュROMエリアを超過したHEXファイルを内蔵FROMエリア用と超過外部エリア用にHEXファイルを分割する。
|
|
▲MCU別デバッガ仕様一覧表示
|
CPUとモニタワークエリアの方式に対応した、デバッグに必要な情報がCPU事に一覧表示されます。モニタワークエリアの方式の詳細は「解説テキスト」を御覧下さい。
・ |
内蔵フラッシュROMのサイズ表示 |
・ |
内蔵RAMのスタート番地及びサイズの表示 |
・ |
モニタが使用する内蔵フラッシュROMの範囲を表示 |
・ |
モニタが使用する内蔵RAMと使用スタック数の表示 |
・ |
デバッグ方式と使用SCI番号の表示 |
・ |
リセット時のソフトタイマの推奨/不要の表示 |
・ |
ハード/ソフトブレークポイント数の表示 |
・ |
使用ベクターの表示 |
・ |
その他 |
|
▲シミュレーション機能(オフライン操作)
|
シミュレーション機能(オフライン操作)を有効にした場合のDEF全体画面です。 |
|
・ |
ターゲット基板が無い状態でも簡易なデバッグが可能です。
空間(2)をターゲット側にマッピング指定することにより、I/Oをエミュレーションすることが可能になりました。ただし、プログラム動作は、PCメモリ上でのシミュレーション動作の為、内部I/Oより割込み要求があっても割込み動作はしません。割込みシミュレーション操作で対応して下さい。 |
・ |
ブレーク設定は8点まで可能です。(データブレーク8点) |
・ |
割込みの擬似発生機能を搭載しています。
(プライオリティ判定機能有り SH-2/割込みモード2時のみ対応) |
・ |
最新4Kステップ分の実行履歴と全レジスタ内容とメモリアクセス履歴(最終8ポイント)を記憶しています。 |
・ |
PBC無タイプのCPUデバッグ時にシミュレーション機能が役立ちます。
|
・ |
シミュレーションについてはこちらを参照して下さい。
|
|
シミュレーション機能(オフライン操作)をする場合、環境設定が必要です。
<ファイルメニュー>−<オフライン環境設定>をクリックする。
・ |
空間(1)の設定 最大32Mバイトまでです。(開始アドレスは固定)
|
・ |
ベクタをファーム用途用に書き換えしたくない場合は、「チェック」します。 |
・ |
空間(M1)の設定 最大32Mバイトまでです。 |
・ |
空間(M2)の設定 最大32Mバイトまでです。 |
・ |
空間(2)の設定 最大32Mバイトまでです。(終了アドレスは固定) |
・ |
空間(1)<空間(M1)<空間(M2)<空間(2)の関係になります。
|
・ |
空間(2)エリアをエミューレートする場合は、「チェック」します。 |
・ |
H8/300Hシリーズに限り、メモリ空間を指定します。 |
・ |
設定範囲外をアクセスしても無視させたい場合は、「チェック」します。 |
|
▲SCI調歩同期のBRR値計算ツール
|
SCIの調歩同期における各ボーレート(BPS)のBRR設定値と誤差(%)を計算する。
<ヘルプ>−<SCI調歩同期BRR値計算>をクリックする。
・ |
[BRR計算式]を選択します。[2パターン]
|
・ |
計算に必要な[n][0〜3]を選択します。 |
・ |
周辺クロック[PΦ]を選択します。 |
・ |
PLL等の逓倍が必要な品種は指定します。 |
・ |
BPS最終項目の「スカイブルー」部分は、Key入力可能なセルです。BPS一覧に無い場合は、ここにKey入力して下さい。 |
・ |
誤差[Margin(%)]の赤文字表示は、±2.0%の範囲外を示します。 |
|
▲外部エディタJump機能及びMakeの起動
|
View画面より、外部エディタとMakeの起動が可能になりました。
<オプションメニュー>−<環境設定>−<Mode>をクリックする。
・ |
外部エディタを使用する場合は設定が必要です。説明は「こちら」です。 |
・ |
Makeを使用する場合は設定が必要です。説明は「こちら」です。 |
|
▲ASCIIコード表示機能
|
ASCIIコード表を表示します。(ちょっとしたツールです。)
|
|
|
|