| |||
| Home > Introduction > Basic principles > How Multi-ICE differs from a debug monitor | |||
A debug monitor, such as the Angel™ debug monitor provided with the ARM Firmware Suite (AFS), is an application that runs on your target hardware in conjunction with your application, and requires target resources (for example, memory, access to exception vectors, and time) to be available.
The EmbeddedICE debug architecture requires almost no resources. Rather than being an application on the board, it works by using:
additional debug hardware within the core, that is, parts that enable the host to communicate with the target
an external interface unit that buffers and translates the core signals into something usable by a host computer.
The EmbeddedICE debug architecture allows debugging to be as non-intrusive as possible:
the target being debugged requires very little special hardware to support debugging
in most cases you do not have to set aside memory for debugging in the system being debugged and you do not have to incorporate special software into the application
execution of the system being debugged is only halted when a breakpoint or watchpoint unit is triggered, or you request that execution is halted.