バックグラウンド デバッグ モード( BDM ) インターフェースは、組み込みシステムのデバッグを可能にする電子インターフェースです。具体的には、マイクロコントローラのインサーキット デバッグ機能を提供します。デバッグ対象のシステムには、1 本のワイヤと特殊な電子機器が必要です。多くのFreescale Semiconductor製品に搭載されています。バックグラウンド コマンドは、非侵入型コマンドとアクティブ バックグラウンド コマンドの 2 種類に分類されます。非侵入型コマンドは、メモリ アクセス コマンドなど、ユーザー プログラムの実行中に発行できます。[1]
このインターフェースにより、ホストはターゲットを管理および照会できます。ターゲット デバイスには専用のハードウェアが必要です。ホストには特別なハードウェアは必要ありません。単純な双方向I/O ピンで十分です。
I/O信号
BDMがターゲットとの間でデータを通信するために使用する信号は、ホストプロセッサによって開始されます。ホストは伝送ラインを否定し、次に
- ラインを早くアサートして1を出力します。
- 後で行をアサートして0を出力します。
- 出力をトライステートにして、ターゲットがラインを駆動できるようにします。ホストは、入力値として 1 または 0 を感知できます。
次のビット時間の開始時に、ホストは伝送ラインを否定し、プロセスが繰り返されます。各ビットはこのように通信されます。
言い換えれば、今日のソフトウェアおよびハードウェア設計の複雑さが増すにつれて、デバッグに対する新しいアプローチが生まれています。シリコン メーカーは、新しいプロセッサのエミュレーション用に、オンチップ デバッグ機能をますます多く提供しています。
この機能は、バックグラウンド デバッグ モード (BDM)、 JTAG、オンチップ インサーキット エミュレーションなどの名前でさまざまなプロセッサに実装されており、基本的なデバッグ機能をチップ自体に組み込みます。BDM (1 線式インターフェイス) または JTAG (標準 JTAG)デバッグ ポートを使用すると、安定したオンチップ デバッグ サービスを通じてのみマイクロコントローラを制御および監視できます。
このデバッグ モードは、ターゲット システムがクラッシュした場合でも実行され、開発者はクラッシュの原因の調査を継続できます。
マイクロコントローラアプリケーション開発
開発にかかる時間とコストを削減するには、優れた開発ツール環境が重要です。ユーザーは、実際のシステム設定を模倣した条件下でアプリケーション プログラムをデバッグしたいと考えています。そのため、実際のターゲット システムでユーザー プログラムをデバッグする機能が必要です。これは、インサーキット デバッグと呼ばれます。さらに、ほとんどの新しい MCU にはフラッシュ メモリなどの不揮発性メモリが搭載されているため、ターゲット システムでのプログラミング コードも必要です。これは、インサーキット プログラミングと呼ばれます。
インサーキット デバッグとプログラミング要件をサポートするために、HC08ファミリにはモニタ モードがあり、HCS08 と RS08 はバックグラウンド デバッグ モード (BDM) を使用します。HCS08 のバックグラウンド デバッグ ハードウェアは、バックグラウンド デバッグ コントローラ (BDC) とデバッグ モジュール (DBG) で構成されています。RS08 のバックグラウンド デバッグ ハードウェアは、バックグラウンド デバッグ コントローラ (BDC) のみで構成されています。
BDMコマンド
BDM ホストは、ターゲットにパラメータ付きのコマンドを発行できます。一部のコマンドでは、ターゲットのメモリ ブロック、CPU 内の個々のレジスタ、またはターゲットで使用できないレジスタの読み取りまたは書き込みが可能です。
例:
BDM機能
ターゲット パーツによっては、BDM コントローラにハードウェア ブレークポイントレジスタが搭載されている場合があります。レジスタには、メモリ内のアドレスを示す値が保持されます。ターゲット パーツの CPU がメモリ内のその場所にアクセスすると、BDM ハードウェアはターゲット パーツを制御し、プログラムの実行を停止し、バックグラウンド モードで動作を開始できます。
参考文献
- ^ 「HCS08 ファミリーリファレンスマニュアル」 pp. 34–35 . 2024年2月6日閲覧。
外部リンク
- Freescale Semiconductor Inc. MC9RS08KA2 データシート (MC9RS08KA2、Rev. 4.0)
- Freescale Semiconductor Inc. CPU12 リファレンス マニュアル[リンク切れ]
- Freescale Semiconductor Inc. CPU12 リファレンス マニュアル
- Freescale Semiconductor Inc. RS08 コア リファレンス マニュアル[リンク切れ]
- Freescale Semiconductor Inc. RS08 コア リファレンス マニュアル
- Freescale Semiconductor Inc. HCS08 ファミリ リファレンス マニュアル[リンク切れ]
- Freescale Semiconductor Inc. HCS08 ファミリ リファレンス マニュアル
