H8SX:H−UDIシリーズ準備項目および制限事項
1.ユーザ側での準備項目
MCU動作モードは、(6,7)の時にデバッグ機能選択端子「EMLE」をHIGHレベルにした時にデバッグ可能となります。
ユーザプログラムの開始アドレスは、0x400番地以上にして下さい。
メモリマッップ


  ROM終了アドレス 内蔵RAM ファーム使用アドレス 使用ベクタ
H8SX/1527 0x3FFFF 全開放 0xFDA000(4KB) 2
H8SX/1544 0x7FFFF 全開放 0xFF4000(4KB) 1,2
H8SX/1582 0x3FFFF 全開放 0xFDA000(4KB) 2
H8SX/1622 0x3FFFF 全開放 0xFF0000(4KB) 1,2
H8SX/1631(L) 0x3FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1632(L) 0x3FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1633(L) 0x5FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1634(L) 0x7FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1635(L) 0x7FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1638(L) 0xFFFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1642 0x3FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1644 0x7FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1648 0xFFFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1653 0x5FFFF 全開放 0xFF0000(8KB) 1,2
H8SX/1652(M) 0x5FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1655(M) 0x7FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1653R(M) 0x5FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1654R(M) 0x7FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1658R(M) 0xFFFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1664 0x7FFFF 全開放 0xFF0000(4KB) 1,2
H8SX/1663R(M) 0x5FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1664R(M) 0x7FFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1668R(M) 0xFFFFF 全開放 0xFEC000(4KB) 1,2
H8SX/1725/S 0x3FFFF 全開放 0xFDA000(4KB) 1,2
H8SX/1651 なし 全開放 0xFF0000(8KB) なし
H8SX/1651品種は、ROMレス品種です。外付けフラッシュROM/RAM、または内蔵RAM対応になります。
2.使用制限事項
ファーム使用の割り込みベクタは上記の通りでダウンロード時に自動セットされます。
上記表のファーム使用アドレスは、デバッガが使用しています。ユーザはアクセスしないで下さい。
デバッグをするためには、CPUをエミュレーションモードにする必要があります。
エミュレーション−モード遷移の操作でエミュレーションモードにして下さい。
DMAコントローラを動作させているプログラムの場合、バス解放されるまでデバッグ操作できません。
このデバッガは、ソフトH-UDI制御をしています。ルネサス推奨転送クロックは、8MHz〜25MHzになっていますが、ソフト制御のため約1MHzで動作しています。
リセットベクタ値は0x400以上とし、その番地にはスタックポインタ設定の命令を配置することを推奨します。
ただし、CAT専用モードでCAT302を使用される場合は、リセットベクタ値を0x1000以上にして下さい。
「trapa #3」の命令は、ユーザ側で使用しないで下さい。
使用端子は、H-UDI用に占有・共有使用します。(E10A-USBに準拠)
TDI TDO TCK TMS TRST (RST)共有
デバッグ機能選択端子「EMLE」をHIGH(デバッグ)/LOW(実チップ)にする回路は、ユーザ側で準備して下さい。
ターゲットとの接続は、推奨接続参考図をもとに設計して下さい。
デバイス制限としてフラッシュメモリの書き換え回数に制限があります。
フラッシュROMの書き換え可能マットはユーザマットのみです。
3.機能制限事項
レジスタのSP(スタックポインタ)・VBR・EXR・MACH・MACLは、リードオンリです。
スタック解析機能は、コンパイラの特性上使用する事が出来ません。
ソフトウェアパーツの「PUTCH」は、使用する事が出来ません。
ソフトウェアパーツの「ソースブレーク」を有効にした場合は、分岐トレース機能を使用する事が出来ません。
デバッガからのアクセスは、ビックエンディアンのみの対応となります。
4.ブレークの注意事項
実行前ブレーク固定です。
DMAC転送のアドレスモードがシングルアドレスモードの場合は、データアクセスブレークを使用しないで下さい。
不当命令実行の以降は、不定なアドレスでブレークが発生する場合があります。
データブレーク・バス巾32ビットを使用する場合、変数アドレスは4の倍数でないとブレークしません。(-align=4)
ブレーク回数を設定した場合、実行前ブレークとユーザ割り込みが競合しますと実行前ブレーク側が優先されますが、回数を1回多くカウントされてしまうことがあります。正確に計測する必要がある場合は、指定ブレークポイントで割込みが競合しないように割込み禁止等の工夫をして下さい。
5.H8SX/CPU固有の特記事項
【H8SX/1544】
サブクロック動作でのデバッグは出来ません。
【H8SX/1631】
【H8SX/1633】
【H8SX/1635】
内部登録レジシタ名、およびベクタ情報は、「H8SX/1635L」のフル仕様で登録してあります。
【H8SX/1632】
【H8SX/1634】
【H8SX/1638】
内部登録レジシタ名、およびベクタ情報は、「H8SX/1638L」のフル仕様で登録してあります。
【H8SX/1642】
【H8SX/1644】
【H8SX/1648】
内部登録レジシタ名、およびベクタ情報は、「H8SX/1648H」のフル仕様で登録してあります。
内部レジシタ(SUBCKCR)は、リードオンリです。
サブクロック動作でのデバッグは出来ません。
【H8SX/1651】
プログラムエリア(SRAM)がWORD書込みの制限がある場合は、CPU設定「H8SX/1651(WORD)」を指定して下さい。
FROM品種(TC58FVM5T2A)に関しては、添付ソフトと同仕様でしたら使用可能になっています。
他のFROM品種の場合は、一部プログラムを作成・変更する必要があります。
【H8SX/1653】
内蔵フラッシュROMにプログラムを転送する場合は、MD_CK:LOW(クロックモード0)で実施して下さい。
【H8SX/1652(M)】
【H8SX/1655(M)】
内部登録レジシタ名、およびベクタ情報は、「H8SX/1655M」のフル仕様で登録してあります。
内蔵フラッシュROMにプログラムを転送する場合は、MD_CLK:LOW(クロックモード0)で実施して下さい。
【H8SX/1653R(M)】
【H8SX/1654R(M)】
【H8SX/1658R(M)】
内部登録レジシタ名、およびベクタ情報は、「H8SX/1658M」のフル仕様で登録してあります。
内蔵フラッシュROMにプログラムを転送する場合は、MD_CLK:LOW(クロックモード0)で実施して下さい。
【H8SX/1664】
内蔵フラッシュROMにプログラムを転送する場合は、MD_CK:LOW(クロックモード0)で実施して下さい。
内部レジスタ(SUBCKCR)は、リードオンリーです。
サブクロック動作でのデバッグは出来ません。
【H8SX/1663R(M)】
【H8SX/1664R(M)】
【H8SX/1668R(M)】
内部登録レジシタ名、およびベクタ情報は、「H8SX/1668M」のフル仕様で登録してあります。
内部レジスタ(SUBCKCR)は、リードオンリーです。
内蔵フラッシュROMにプログラムを転送する場合は、MD_CLK:LOW(クロックモード0)で実施して下さい。
サブクロック動作でのデバッグは出来ません。
【H8SX/1725/S】
データフラッシュEEPROMへのダウンロード対応はしていません。

次アドレスへ分岐するような意味のない分岐はトレースしません。(ex) bra next next:
6.低消費電力モード状態の注意事項
低消費電力状態では、CPUがスリープ状態ですので解除されるまではファームを実行させるような操作は行わないで下さい。
ディープソフトウェアスタンバイモードに遷移した場合は、デバッガの再立ち上げをして下さい。
7.ウォッチドッグタイマの注意事項
ブレークモード(ファーム起動)中は、ウォッチドッグタイマは停止します。復帰時(ファーム終了)に再開します。
ウォッチドッグタイマ用内部レジスタをデバッガ操作で書き換えても無視します。
8.その他注意事項
ルネサスCの場合は、コンパイラバージョン「6.01.00」以上にして下さい。
GNU/gccの場合は、H8Sモードで作成して下さい。
ユーザプログラム停止中、基板単独でリセットした場合は、デバッガ操作で「Reset」or「RstMon」を実施して下さい。
H8SX内部I/Oレジスタの中には、16,32ビットの指定ビットによるアクセス制限がついている場合があります。
メモリセットコマンド等で内部I/Oレジスタアクセスする場合は、指定ビット長でアクセスして下さい。
指定ビット長以外でアクセスしますと間違った情報を得ることになります。
9.オンザフライ時のCPU停止時間の計測値
コマンド 停止時間 単位(msec)
CPU設定  割込みを使用しない 割込みを使用する  
デバッグI/F H-UDI H-UDI
割込み方式 ブレーク割込み
割込みが使用できる条件 なし
1バイトのメモリアクセス 0.50
1バイト増毎に+0.1ms
(MAX 128byte 13.2ms)
0.25
バイト数に影響されない
全レジスタ 5.00 0.25
個別レジスタ(ERレジスタ) 0.50 0.25
個別レジスタ(CCRレジスタ) 0.50 0.25
個別レジスタ(PCレジスタ) 0.50 0.25
1行の逆アセンブラ 2.00 0.25
DI,EI.IntFlg(割込み系) 5.00 5.00
ブレークポイントの設定 10.00 10.00
ブレークポイントの解除 10.00 10.00
停止時間の計測方法 計測方法なし 計測方法なし
*H8SX/1544 クロックが5.0MHz(x2)時の実測値
<オンザフライ機能使用時の注意事項 割込み方式が「ブレーク割込み」の場合>
BP(ブレークポイント)を張ってる状態で、オンザフライの自動実行とBP停止が同時に発生した場合、自動実行側が優先されます。