How Realmonitor Works; User Manual - Philips LPC2101 User Manual

Table of Contents

Advertisement

Philips Semiconductors
Volume 1

21.3.4 How RealMonitor works

In general terms, the RealMonitor operates as a state machine, as shown in
RealMonitor switches between running and stopped states in response to packets
received by the host or due to asynchronous events on the target. RMTarget supports the
triggering of only one breakpoint, watchpoint, stop, or semihosting SWI at a time. There is
no provision to allow nested events to be saved and restored. So, for example, if the user
application has stopped at one breakpoint and another breakpoint occurs in an IRQ
handler, RealMonitor enters a panic state. No debugging can be performed after
RealMonitor enters this state.
A debugger such as the ARM eXtended Debugger (AXD) or other RealMonitor aware
debugger, that runs on a host computer, can connect to the target to send commands and
receive data. This communication between host and target is illustrated in
The target component of RealMonitor, RMTarget, communicates with the host component,
RMHost, using the Debug Communications Channel (DCC), which is a reliable link whose
data is carried over the JTAG connection.
While the user application is running, RMTarget typically uses IRQs generated by the
DCC. This means that if the user application also wants to use IRQs, it must pass any
DCC-generated interrupts to RealMonitor.
To allow nonstop debugging, the EmbeddedICE-RT logic in the processor generates a
Prefetch Abort exception when a breakpoint is reached, or a Data Abort exception when a
watchpoint is hit. These exceptions are handled by the RealMonitor exception handlers
that inform the user, by way of the debugger, of the event. This allows user application to
continue running without stopping the processor. RealMonitor considers user application
to consist of two parts:

User manual

SWI abort
RUNNING
Fig 68. RealMonitor as a state machine
a foreground application running continuously, typically in User, System, or SVC mode
a background application containing interrupt and exception handlers that are
triggered by certain events in user system, including:
– IRQs or FIQs
– Data and Prefetch aborts caused by user foreground application. This indicates an
error in the application being debugged. In both cases the host is notified and the
user application is stopped.
Rev. 01 — 12 January 2006
undef
stop
STOPPED
go
UM10161
Chapter 21: RealMonitor
Figure
SWI abort
undef
PANIC
Figure
© Koninklijke Philips Electronics N.V. 2006. All rights reserved.
68.
67.
256

Advertisement

Table of Contents
loading

This manual is also suitable for:

Lpc2103Lpc2102

Table of Contents