4.2. PFT atoms

The PFT architecture uses atoms to indicate waypoint instruction execution. In addition, if you have enabled cycle-accurate tracing, atoms can be used to indicate cycle boundaries.

The atoms that can be generated by a PTM are:

E atom

Indicates that a branch instruction passed its condition code check.

N atom

Indicates that a branch instruction failed its condition code check.

W atom

When cycle-accurate tracing is enabled, indicates a cycle.

Normally, the PTM does not output atoms immediately, but assembles them into atom packets. When the PTM has assembled an atom packet it outputs it into the trace stream:

For details of the atom packets see Atom packet.

In normal operation, the PTM assembles as many atoms as possible into an atom packet, and then outputs that packet. This minimizes the amount of trace data generated. However, some situations require the PTM to output immediately all of the atoms that it has assembled.

In addition, some trace packets imply a PFT atom, and therefore no atom corresponding to the relevant instruction appears in the trace stream. For more information about trace packets see Summary of PFT packets and PFT packet formats.

ISB instructions can be conditional when used in an IT block. From PFTv1.1, the E/N atom used to trace ISBs does not indicate whether the ISB passed or failed the condition code check. Instead, the E/N atom is used to indicate whether the ISB really executed.This applies to all forms of the ISB instruction:

When branch broadcasting is enabled, using bit [8] of the ETMCR, the following trace is generated:

Copyright © 1999-2002, 2004-2008, 2011 ARM. All rights reserved.ARM IHI 0035B