2.8.2. Operation of data value comparators, in ETMv3.2 and earlier

In ETM implementations before ETMv3.3, when the access size is less than the comparison size a comparison is still attempted, with a result that non-valid byte lanes from the data access on the processor are compared with the comparison value. For example, if a word comparison at address 0x2000 is programmed and the processor performs a byte access to address 0x2000, a comparison is attempted. This comparison attempts to compare bits [31:8] of the access with the corresponding bits of the ETMDCVR, despite the fact that these bits of the access are unpredictable.

The way data is presented to the comparators differs between ETMv1 and later versions of the ETM:

In ETMv1

The data value presented to the comparator is the raw data from the data bus. So, for example, if a byte at address 0x2001 is accessed, it is compared with bits [15:8] of the ETMDCVR, and the comparison is masked by bits [15:8] of the ETMDCMR.

This means that you have to consider the bottom two bits of the comparison address, in the ETMACVR, to determine how to program the data value comparator registers.

It is not possible to perform data value comparisons on bytes and halfwords in ranges.

For information about how the lower address bits and the endianness affect the way the ARM processor reads the data bus, see the appropriate memory interface chapter in the Technical Reference Manual or the data sheet for your processor.

In ETMv2 to ETMv3.2

The data presented to the comparator is the data that is actually traced, that is rotated as necessary from its position on the data bus. In this case, if a byte at address 0x2001 is accessed, it is compared using bits [7:0] of the ETMDCVRs and ETMDCMRs.

This means the programming of the data value comparator registers is independent of the value in the ETMACVR.

Note

From ETMv3.1, address comparators support unaligned accesses. However, the comparison address must be aligned in all versions of the ETM versions, including those versions where the address comparators support unaligned accesses.

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