7.3.7. VMID packets, ETMv3.5

From architecture version 3.5, the VMID packet indicates the Virtual Machine ID of the trace source. This packet consists of a single header byte with a single payload byte.

Figure 7.31 shows the format of a VMID packet.

Figure 7.31. VMID packet

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.

In implementations that support virtualization, the VMID packet is output each time the Virtual Machine ID changes. When tracing instructions, this packet must be output before the first instruction that was executed using the changed VMID is traced. At the latest this must occur immediately after the next ISB or exception entry or return after the instruction which updated the VMID.

When an I-Sync packet occurs, a VMID packet must be output before the next P-header packet. This ensures that trace analysis tools have the complete context before decompressing any instructions.

This packet is only generated if:

When the processor is reset, the Virtual Machine ID is reset to 0. When instruction tracing is enabled, a VMID packet might not be traced if reset to 0. However this can be detected because an exception is traced, indicating the reset exception. When tracing in data-only mode, the VMID packet must be traced.

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