3.10.2. Instructions for controlling the Instrumentation
resources
Both the ARM and Thumb instruction sets reserve twelve instructions
for use as Instrumentation instructions. These instructions are
part of the Debug hint (DBG) part of the NOP‑compatible
hint space. The Thumb and ARM encodings of these instructions are:
| Encoding T1 | ARMv7 (executes as NOP in ARMv6T2) |
DBG<c> #<option>
| |
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|
| 1 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | (1) | (1) | (1) | (1) | 1 | 0 | (0) | 0 | (0) | 0 | 0 | 0 | 1 | 1 | 1 | 1 | Hint |
| Encoding A1 | ARMv7 (executes as NOP in ARMv6K
and ARMv6T2) |
DBG<c> #<option>
| |
| 31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|
| cond | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | (1) | (1) | (1) | (1) | (0) | (0) | (0) | (0) | 1 | 1 | 1 | 1 | Hint |
For more information see the ARM Architecture Reference
Manual.
In the DBG instruction, the value of the Hint
field determines the Instrumentation resource operation.
Hint field encodings for the DBG Instrumentation
instructions
Table 3.11 shows
the hint field encodings for the DBG Instrumentation
instructions. These encodings are the same for the ARM and Thumb‑2
instruction sets.
Table 3.11. Hint field encodings for the Instrumentation instructions
| Hint value | Effect of instruction |
|---|
0x0 | Set Resource 1 |
0x1 | Set Resource 2 |
0x2 | Set Resource 3 |
0x3 | Set Resource 4 |
0x4 | Clear Resource 1 |
0x5 | Clear Resource 2 |
0x6 | Clear Resource 3 |
0x7 | Clear Resource 4 |
0x8 | Pulse Resource 1 |
0x9 | Pulse Resource 2 |
0xA | Pulse Resource 3 |
0xB | Pulse Resource 4 |
Note
The DBG hint instructions are defined in the
ARMv7 architecture specification, see the ARM Architecture Reference
Manual. This Architecture Specification only defines
the twelve field values given in Table 3.11 for use with PTM implementations. These
definitions are the same as those used in version 3.4 of the ETM Architecture
Specification.