エンベデッドシステムスペシャリスト 2015年 午前2 問21
問題文
マイコンのJTAGを利用したデバッグ手法の説明として、適切なものはどれか。
選択肢
ア:ROMにデバッグ対象プログラムを制御するプログラムを格納させておき、PCと当該ROMが搭載されているボードとをシリアル通信で接続して、デバッグを行う。
イ:ROMをモニタプログラム内蔵のRAMに置き換え、デバッグ対象プログラムが格納されたROMを模擬しながらデバッグを行う。
ウ:ボード上のマイコン用のICソケットに当該マイコンを模擬する装置を接続して、デバッグを行う。
エ:マイコンの端子を通して、外部からマイコン内蔵のデバッグ支援機能を操作し、デバッグを行う。(正解)
🔒 解説は解答すると表示されます
JTAGデバッグ【午前2解説】
正解の理由
JTAGを利用するデバッグでは、マイコンに内蔵されたデバッグ支援機能を、JTAG用の端子を通じて外部のデバッガから操作します。プログラムの実行停止や再開、ステップ実行、レジスタの確認などが可能です。
この説明に当てはまるのはエです。マイコンを別の装置で置き換えるのではなく、マイコン自身が備えるデバッグ機能を外部から利用する点がポイントです。
解法ステップ
- 問題文の「JTAGを利用」に注目します。
- JTAGデバッグは、マイコンの端子を介して内部のデバッグ機能にアクセスする方式だと判断します。
- 「マイコン内蔵のデバッグ支援機能を外部から操作する」と説明しているエを選びます。
選択肢別の誤答解説
- ア:ROMにデバッグ用のモニタプログラムを格納し、シリアル通信で操作する方式です。JTAG端子からマイコン内蔵のデバッグ機能を使う方式ではありません。
- イ:ROMをRAMに置き換えて、ROMの動作を模擬しながらデバッグする方式です。JTAGを利用する方法ではありません。
- ウ:マイコンの代わりとなる装置をICソケットに接続してデバッグする方式です。一般にインサーキットエミュレータ(ICE)を用いる方法として説明されます。
- エ:マイコン内蔵のデバッグ支援機能を外部から操作する方式です。JTAGを利用したデバッグの説明として適切です。
よくある誤解
-
JTAGは外部装置でマイコンを置き換える方式だと思う
JTAGでは、基本的にマイコンを置き換えず、マイコン内蔵のデバッグ機能にアクセスします。 -
ROMをRAMに置き換える方式もJTAGデバッグだと思う
ROMの動作を模擬する方法と、JTAG端子を通じてマイコンを制御する方法は別の方式です。 -
シリアル通信によるデバッグをJTAGと混同する
モニタプログラムをシリアル通信で操作する方式もありますが、JTAGを使うデバッグとは区別します。
補足コラム
JTAGは、もともと基板上のICの接続状態などを検査するための規格として普及しました。マイコンのデバッグにも利用され、専用の端子を通じて実行制御や内部状態の確認を行います。実際に利用できる機能は、マイコンやデバッガの仕様によって異なります。
FAQ
JTAGデバッグでは、プログラムを実行しながら状態を確認できますか?
マイコンの機能やデバッガの仕様によります。実行を停止して確認するほか、対応していれば実行中の状態を追跡できる場合もあります。
マイコンの機能やデバッガの仕様によります。実行を停止して確認するほか、対応していれば実行中の状態を追跡できる場合もあります。
JTAGとICEの違いは何ですか?
JTAGはマイコン内蔵のデバッグ機能へアクセスする方式です。一方、ICEはマイコンの動作を模擬する装置を使ってデバッグする方式です。
JTAGはマイコン内蔵のデバッグ機能へアクセスする方式です。一方、ICEはマイコンの動作を模擬する装置を使ってデバッグする方式です。
関連キーワード: JTAG、デバッグ支援機能、モニタプログラム、ROMエミュレータ、インサーキットエミュレータ

\ せっかくなら /
エンベデッドシステムスペシャリストを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

