UM10237_2 © NXP B.V. 2008. All rights reserved.
User manual Rev. 02 — 19 December 2008 748 o f 792
1. Features
Remark: RealMonitor is a configurable software module which enables real time debug.
RealMonitor is developed by ARM Inc. Information presented in this chapter is taken from
the ARM document RealMonitor Target Integration Guide (ARM DUI 0142A). It applies to
a specific configuration of RealMonitor software programmed in the on-chip ROM boot
memory of this device.
Allows user to establish a debug session to a currently running system without halting
or resetting the system.
Allows user time-critical interrupt code to continue executing while other user
application code is being debugged.
2. Applications
Real time debugging.
3. Description
RealMonitor is a lightweight debug monitor that allows interrupts to be serviced while user
debug their foreground application. It communicates with the host using the DCC (Debug
Communications Channel), which is present in the EmbeddedICE logic. RealMonitor
provides advantages over the traditional methods for debugging applications in ARM
systems. The traditional methods include:
Angel (a target-based debug monitor).
Multi-ICE or other JTAG unit and EmbeddedICE logic (a hardware-based debug
solution).
Although both of these methods provide robust debugging environments, neither is
suitable as a lightweight real-time monitor.
Angel is designed to load and debug independent applications that can run in a variety of
modes, and communicate with the debug host using a variety of connections (such as a
serial port or ethernet). Angel is required to save and restore full processor context, and
the occurrence of interrupts can be delayed as a result. Angel, as a fully functional
target-based debugger, is therefore too heavyweight to perform as a real-time monitor.
Multi-ICE is a hardware debug solution that operates using the EmbeddedICE unit that is
built into most ARM processors. To perform debug tasks such as accessing memory or
the processor registers, Multi-ICE must place the core into a debug state. While the
processor is in this state, which can be millions of cycles, normal program execution is
suspended, and interrupts cannot be serviced.
RealMonitor combines features and mechanisms from both Angel and Multi-ICE to
provide the services and functions that are required. In particular, it contains both the
Multi-ICE communication mechanisms (the DCC using JTAG), and Angel-like support for
UM10237
Chapter 35: LPC24XX RealMonitor
Rev. 02 — 19 December 2008 User manual