Debug
ARM DDI 0363G
Copyright © 2006-2011 ARM Limited. All rights reserved.
12-26
ID073015
Non-Confidential
[8:5]
Byte address
select
For breakpoints programmed to match an instruction address, the debugger must write a
word-aligned address to the DBGBVR. You can then use this field to program the breakpoint
so it hits only if certain byte addresses are accessed.
b
If the BRP is programmed for instruction address match:
b0000 = the breakpoint never hits
bxxx1 = the breakpoint hits if the byte at address (DBGBVR &
0xFFFFFFFC
) +0 is accessed
bxx1x = the breakpoint hits if the byte at address (DBGBVR &
0xFFFFFFFC
) +1 is accessed
bx1xx = the breakpoint hits if the byte at address (DBGBVR &
0xFFFFFFFC
) +2 is accessed
b1xxx = the breakpoint hits if the byte at address (DBGBVR &
0xFFFFFFFC
) +3 is accessed
b1111 = the breakpoint hits if any of the four bytes starting at address (DBGBVR &
0xFFFFFFFC
) +0 is accessed.
If the BRP is programmed for instruction address mismatch, the breakpoint hits where the
corresponding instruction address breakpoint does not hit, that is, the range of addresses
covered by an instruction address mismatch breakpoint is the negative image of the
corresponding instruction address breakpoint.
If the BRP is programmed for context ID comparison, this field must be set to b1111.
Otherwise, breakpoint and watchpoint debug events might not be generated as expected.
[4:3]
-
-
[2:1]
S
Supervisor access control. The breakpoint can be conditioned on the mode of the processor:
b00 = User, System, or Supervisor
b01 = Privileged
b10 = User
b11 = any.
[0]
B
Breakpoint enable:
0 = Breakpoint disabled. This is the reset value.
1 = Breakpoint enabled.
a. If DBGBCR[28:24] is not set to b00000, then DBGBCR[8:5] must be set to b1111. Otherwise the behavior is Unpredictable.
In addition, if DBGBCR[28:24] is not set to b00000, then the corresponding DBGBVR bits that are not being included in the
comparison Should Be Zero. Otherwise the behavior is Unpredictable. If this BRP is programmed for context ID comparison,
this field must be set to b00000. Otherwise the behavior is Unpredictable. There is no encoding for a full 32-bit mask but the
same effect of a
break anywhere
breakpoint can be achieved by setting DBGBCR[22] to 1 and DBGBCR[8:5] to b0000.
b. Writing a value to DBGBCR[8:5] so that DBGBCR[8] is not equal to DBGBCR[7] or DBGBCR[6] is not equal to
DBGBCR[5] has Unpredictable results.
Table 12-17 DBGBCR Register bit assignments (continued)
Bits
Name
Function