2.7.3. Comparator access size field behavior, in ETMv3.0 and earlier

The access size field is implemented as a size mask on the bottom two bits of the address of the access:

Word data

Bits [1:0] of the access address are masked.

Halfword data

Bit [0] of the access address is masked.

Byte data

No masking is performed.

In general, you must mask bits [1:0] for word quantities, because this causes byte accesses to locations in the word to be traced. See Figure 2.16.

Figure 2.16. Successful match of a byte access with word mask set

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


To catch all possible accesses to a given byte, you must mask bits [1:0] as Figure 2.17 and Figure 2.20 show. This has the side effect of falsely matching accesses to other bytes in the same word, as Figure 2.19 shows.

Where all accesses are by a byte transfer, no masking is necessary, and the comparator matches only if the required byte is accessed. This is shown in Figure 2.18

You must also mask bits [1:0] for halfword quantities that might be accessed as part of the containing word, or only mask bit [0] to avoid matching on accesses to the other halfword in the word.

Unaligned accesses are not supported by these implementations.

Figure 2.17 shows an example of a successful match of word access with word mask set.

Figure 2.17. Successful match of word access with word mask set

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


Figure 2.18 shows a successful match of byte access with word mask set.

Figure 2.18. Successful match of byte access on byte watch with word mask set

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


Figure 2.19 shows an example of an unwanted match with word mask set.

Figure 2.19. Unwanted match of byte access on byte watch with word mask set

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


Figure 2.20 shows an example of a failed match when no mask is used.

Figure 2.20. Failed match with no mask

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


Address range comparison behavior, in ETMv3.0 and earlier

The address in the ETMACVR must be aligned correctly for the access width (word, halfword or byte) indicated by the access size field. See Comparator access size. When this is done, the value of the access size field has no effect on address range comparisons. The address range comparator matches if the base access address is in the range. This means that the low address must be chosen carefully to catch all required accesses, as Figure 2.21 and Figure 2.22 show.

Figure 2.21. Range address successful match, in ETMv3.0 or earlier

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


Figure 2.22 shows a range address failed match.

Figure 2.22. Range address failed match, in ETMv3.0 or earlier

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


Copyright © 1999-2002, 2004-2009, 2011 ARM Limited. All rights reserved.ARM IHI 0014Q
Non-ConfidentialID101211