Specifications

Table Of Contents
ARM Debugger 2 0 A R M S p e c i f i c I m p l e m e n t a t i o n s
©1989-2014 Lauterbach GmbH
ARM Specific Implementations
Breakpoints
Software Breakpoints
If a software breakpoint is used, the original code at the breakpoint location is patched by a breakpoint code.
While software breakpoints are used one of the two ICE breaker units is programmed with the breakpoint
code (on ARM7 and ARM9, except ARM9E variants). This means whenever a software breakpoint is set
only one ICE unit breakpoint is remaining for other purposes. There is no restriction in the number of
software breakpoints.
On-chip Breakpoints for Instructions
If on-chip breakpoints are used, the resources to set the breakpoints are provided by the CPU. For the ARM
architecture the on-chip breakpoints are provided by the “ICEbreaker” unit. on-chip breakpoints are usually
needed for instructions in FLASH/ROM.
With the command MAP.BOnchip <range> it is possible to tell the debugger where you have ROM / FLASH
on the target. If a breakpoint is set into a location mapped as BOnchip one ICEbreaker unit is automatically
programmed.
On-chip Breakpoints for Data
To stop the CPU after a read or write access to a memory location on-chip breakpoints are required. In the
ARM notation these breakpoints are called watchpoints. A watchband may use one or two ICEbreaker units.
The number of on-chip breakpoints for data accesses can be extended by using the ETM Address and Data
comparators. Refer to ETM.ReadWriteBreak.