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: