ETM trace unit functional description
This section describes the functionality of the ETM trace unit.
The following figure shows the main functional blocks of the ETM trace unit.
Figure C4-1 ETM functional blocks
- Core interface
- This block monitors the behavior of the core and generates P0 elements that are essentially executed branches and exceptions traced in program order.
- Trace generation
- The trace generation block generates various trace packets based on P0 elements.
- Filtering and triggering resources
You can limit the amount of trace data generated by the ETM through the process of filtering.
For example, generating trace only in a certain address range. More complicated logic analyzer style filtering options are also available.
The ETM trace unit can also generate a trigger that is a signal to the trace capture device to stop capturing trace.
The trace generated by the ETM trace unit is in a highly-compressed form.
The FIFO enables trace bursts to be flattened out. When the FIFO becomes full, the FIFO signals an overflow. The trace generation logic does not generate any new trace until the FIFO is emptied. This causes a gap in the trace when viewed in the debugger.
- Trace out
- Trace from FIFO is output on the AMBA ATB interface.