Processor exceptions

Depending on implementation options, most ARM processors provide dedicated hardware to enter debug state when a predetermined event occurs.

Most recent ARM processors provide hardware for trapping exceptions. When enabled, the effect is similar to placing a breakpoint on the selected vector table entry. This is called vector catch. However:

When the debug hardware simulates vector catch on earlier ARM processors that do not have vector catch support, it uses a software breakpoint when the vector table is located in RAM.

You must take care when debugging through a system reset. Some hardware targets alter the memory map after reset, so the location of in physical memory containing software breakpoint might not be in the correct reset position. The following warning is output to the your debugger console if debug hardware simulates reset vector catch using an instruction breakpoint:

Warning: A software breakpoint is being used to simulate reset vector catch.
This may fail to be hit if the memory is remapped when a reset occurs.

The exact behavior of the ARM vector catch hardware depends on the processor. ARM9 processors enter debug state only when the specified exception occurs. Other processors, such as ARM11 or older processors that use a breakpoint, enter debug state whenever the instruction at the exception vector is executed, regardless of whether the exception occurs or not.

Show/hideSee also

Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0498D