6 debug events, 1 software debug event, Debug events -39 – ARM Cortex R4F User Manual

Page 308

Advertising
background image

Debug

ARM DDI 0363E

Copyright © 2009 ARM Limited. All rights reserved.

11-39

ID013010

Non-Confidential, Unrestricted Access

11.6

Debug 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.1

Software 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.

Advertising
This manual is related to the following products: