Debug

11.6Debug events

A processor responds to a debug event in one of the following ways:

ignores the debug event

takes a debug exception

enters debug state.

This section describes:

Software debug event

Halting debug event on page 11-40.

Behavior of the processor on debug events on page 11-40

Debug event priority on page 11-40

Watchpoint debug events on page 11-40.

11.6.1Software debug event

A software debug event is any of the following:

A watchpoint debug event. This occurs when:

The data address for a load or store matches the watchpoint value.

All the conditions of the WCR match.

The watchpoint is enabled.

The linked context ID-holding BRP, if any, is enabled and its value matches the context ID in CP15 c13. See Chapter 4 System Control Coprocessor.

The instruction that initiated the memory access is committed for execution. Watchpoint debug events are only generated if the instruction passes its condition code.

A breakpoint debug event. This occurs when:

An instruction was fetched and the instruction address or the CP15 Context ID register c13 matched the breakpoint value.

At the same time the instruction was fetched, all the conditions of the BCR for unlinked context ID breakpoint generation matched the I-side control signals.

The breakpoint is enabled.

The instruction is committed for execution. These debug events are generated whether the instruction passes or fails its condition code.

A BKPT debug event. This occurs when a BKPT instruction is committed for execution. BKPT is an unconditional instruction.

A vector catch debug event. This occurs when:

An instruction was prefetched and the address matched a vector location address. This includes any kind of prefetch, not only the ones because of exception entry.

At the same time the instruction was fetched, the corresponding bit of the VCR was set, that is, the vector catch is enabled.

The instruction is committed for execution. These debug events are generated whether the instruction passes or fails its condition code.

ARM DDI 0363E

Copyright © 2009 ARM Limited. All rights reserved.

11-39

ID013010

Non-Confidential, Unrestricted Access

 

Page 308
Image 308
ARM r1p3, R4F manual Debug events, Software debug event