23-12
MPC561/MPC563 Reference Manual
MOTOROLA
Watchpoints and Breakpoints Support
A programmable AND-OR logic structure between the four instruction comparators
results with five outputs, four instruction watchpoints and one instruction breakpoint
A programmable AND-OR logic structure between the four instruction watchpoints
and the four load/store comparators results with three outputs, two load/store
watchpoints and one load/store breakpoint
Five watchpoint pins, three for the instruction and two for the load/store
Two dedicated 16-bit down counters. Each can be programmed to count either an
instruction watchpoint or an load/store watchpoint. Only architecturally executed
events are counted, (count up is performed in case of recovery).
On the fly trap enable programming of the different internal breakpoints using the
Software control is also available.
Watchpoints do not change the timing of the machine
Internal breakpoints and watchpoints are detected on the instruction during
instruction fetch
Internal breakpoints and watchpoints are detected on the load/store during load/store
bus cycles
Both instruction and load/store breakpoints and watchpoints are handled and
reported on retirement. Breakpoints and watchpoints on recovered instructions (as a
result of exceptions, interrupts or miss prediction) are not reported and do not
change the timing of the machine.
Instructions with instruction breakpoints are not executed. The machine branches to
the breakpoint exception routine BEFORE it executes the instruction.
Instructions with load/store breakpoints are executed. The machine branches to the
breakpoint exception routine AFTER it executes the instruction. The address of the
access is placed in the BAR (breakpoint address register).
Load/store multiple and string instructions with load/store breakpoints first finish
execution (all of it) and then the machine branches to the breakpoint exception
routine.
Load/store data compare is done on the load/store, AFTER swap in store accesses
and BEFORE swap in load accesses (as the data appears on the bus).
Internal breakpoints may operate either in masked mode or in non-masked mode.
Both “go to x” and “continue” working modes are supported for the instruction
breakpoints.
23.2.1.1 Restrictions
There are cases when the same watchpoint can be detected more than once during the
execution of a single instruction, e.g. a load/store watchpoint is detected on more than one