Chapter 36 Nexus Development Interface (NDI)
MPC5602P Microcontroller Reference Manual, Rev. 4
Freescale Semiconductor
881
36.10.3 Linked Instruction Address and Data Address Compare Event
Data Address Compare debug events may be ‘linked’ with an Instruction Address Compare event by
setting the DAC1LNK and/or DAC2LNK control bits in DBCR2 to further refine when a Data Address
Compare debug event is generated. DAC1 may be linked with IAC1, and DAC2 (when not used as a mask
or range bounds register) may be linked with IAC3. When linked, a DAC1 (or DAC2) debug event occurs
when the same instruction which generates the DAC1 (or DAC2) ‘hit’ also generates an IAC1 (or IAC3)
‘hit’. When linked, the IAC1 (or IAC3) event is not recorded in the Debug Status register, regardless of
whether a corresponding DAC1 (or DAC2) event occurs, or whether the IAC1 (or IAC3) event enable is
set.
When enabled and execution of a load or store class instruction results in a data access with an address that
meets the criteria specified in the DBCR0, DBCR2, DBCR4, DAC1, DAC2, DVC1, and DVC2 Registers,
and the instruction also meets the criteria for generating an Instruction Address Compare event, a Linked
Data Address Compare debug event occurs. This event can occur and be recorded in DBSR regardless of
the setting of MSR
DE
. The normal DAC1 and DAC2 status bits in the DBSR are used for recording these
events. The IAC1 and IAC3 status bits are not set if the corresponding Instruction Address Compare
register is linked.
Linking is enabled using control bits in DBCR2.
NOTE
Linked DAC events will not be recorded if a load multiple word or store
multiple word instruction is interrupted prior to completion by a critical
input or external input interrupt.
36.10.4 Trap Debug Event
A Trap debug event (TRAP) occurs if Trap debug events are enabled (DBCR0
TRAP
=1), a Trap instruction
(
tw
) is executed, and the conditions specified by the instruction for the trap are met. This event can occur
and be recorded in DBSR regardless of the setting of MSR
DE
. When a Trap debug event occurs, the
DBSR
TRAP
bit is set to ‘1’ to record the debug exception.
36.10.5 Branch Taken Debug Event
A Branch Taken debug event (BRT) occurs if Branch Taken debug events are enabled (DBCR0
BRT
=1) and
execution is attempted of a branch instruction which will be taken (either an unconditional branch, or a
conditional branch whose branch condition is true), and MSR
DE
=1 or DBCR0
EDM
=1. Branch Taken
debug events are not recognized if MSR
DE
=0 and DBCR0
EDM
=0 at the time of execution of the branch
instruction and thus DBSR
IDE
can not be set by a Branch Taken debug event. When a Branch Taken debug
event is recognized, the DBSR
BRT
bit is set to ‘1’ to record the debug exception, and the address of the
branch instruction will be recorded in DSRR0.
36.10.6 Instruction Complete Debug Event
An Instruction Complete debug event (ICMP) occurs if Instruction Complete debug events are enabled
(DBCR0
ICMP
=1), execution of any instruction is completed, and MSR
DE
=1 or DBCR0
EDM
=1. If