5.6 Watchpoint setup
This section describes how to enable a single watchpoint compare result to be correctly configured at the watchpoint and transferred over the DTB to the DEM, where it can potentially cause a DBGWATCHTRIGREQ assertion.
To enable a watchpoint, complete the following procedure:
Set up the DEM output:
In the Active DSM register, active_dsm, write the XP ID
of the XP driving the signals, for precise event timing.
Write to the Trigger Control register, trigger_ctl, to
select which DTB bits are included in the DBGWATCHTRIGREQ
In the Timer Value register, timer_val, write the delay
between the DTB event and the assertion of DBGWATCHTRIGREQ, if
Set up the DWM in the XP:
In the Debug and Trace Configuration register,
dt_config, select watchpoint 0 or 1 and which DTB bit to drive on the XP
originating the DTB event. You must do this on all intervening XPs to
ensure that driving and pass-through are as required at the DEM.
In the Debug and Trace Interface Select register,
- XP device port 0 or 1.
type. This can be REQ,
- Direction, either transmit or receive, on which
the watchpoint compare is active.
In the Debug and Trace Comparison Low Value * register,
dt_cmp_val*_l, and the Debug and Trace Comparison High Value * register,
dt_cmp_val*_h, write the value for fields to be compared in the
In the Debug and Trace Comparison Low Mask * register,
dt_cmp_mask*_l, or the Debug and Trace Comparison High Mask * register,
dt_cmp_mask*_h register, write the mask to determine which flit-fields
are compared in the watchpoint.
In the Debug and Trace Control register, dt_control,
set up snapshotting of flit contents on watchpoint match, if
Enable the watchpoint or trigger:
Write to the trigger_ctl register to enable DBGWATCHTRIGREQ
Write to the dt_control register to enable the relevant
watchpoints for all XPs, starting at XP5 and progressing in a clockwise
When a DTB event occurs:
Trigger indication is delivered by DBGWATCHTRIGREQ.
The responder reads the Trigger Status register,
trigger_status, to identify which DTB bits contributed to the DBGWATCHTRIG
The responder reads out the flit information stored in
the dt_cmp_val*_l and dt_cmp_val*_h registers. This is the first flit
that triggered the watchpoint match.