*** Welcome to piglix ***

Background Debug Mode interface


Background debug mode (BDM) interface is an electronic interface that allows debugging of embedded systems. Specifically, it provides in-circuit debugging functionality in microcontrollers. It requires a single wire and specialized electronics in the system being debugged. It appears in many Freescale Semiconductor products.

The interface allows a Host to manage and query a target. Specialized hardware is required in the target device. No special hardware is required in the host; a simple biidirectional I/O pin is sufficient.

The signals used by BDM to communicate data to and from the target are initiated by the host processor. The host negates the transmission line, and then either

At the start of the next bit time, the host negates the transmission line, and the process repeats. Each bit is communicated in this manner.

In other words, the increasing complexity of today’s software and hardware designs is leading to some fresh approaches to debugging. Silicon manufacturers offer more and more on-chip debugging features for emulation of new processors.

This capability, implemented in various processors under such names as background debug mode (BDM), JTAG and on-chip in-circuit emulation, puts basic debugging functions on the chip itself. With a BDM (1 wire interface) or JTAG (standard JTAG) debug port, you control and monitor the microcontroller solely through the stable on-chip debugging services.

This debugging mode runs even when the target system crashes and enables developers to continue investigating the cause of the crash.

A good development tool environment is important to reduce total development time and cost. Users want to debug their application program under conditions that imitate the actual setup of their system. Because of that, the capability to debug a user program in an actual target system is required. This is known as in-circuit debugging. Furthermore, most new MCUs have nonvolatile memory such as flash memory so that programming code on the target system is also required. This is known as in-circuit programming.


...
Wikipedia

...