13.3 ETM functional description

Describes the functional blocks of the ETM.

The following figure shows the main functional blocks of the ETM.
Figure 13-1 ETM functional blocks
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.

The ETM blocks are:
Processor interface
This block monitors the behavior of the processor and generates P0 elements that are essentially executed instructions 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 filter the ETM trace such as configuring it to trace only in certain address ranges. More complicated logic analyzer style filtering options are also available.
The ETM can also generate a trigger that is a signal to the trace capture device to stop capturing trace.
FIFO
The trace generated by the ETM 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 synchronous AMBA Advanced Trace Bus (ATB) interface.
Syncbridge
The ATB interface from the trace out block goes through two slices of the CoreSight SoC ATB Syncbridge IP.
See the ARM® AMBA® 3 ATB Protocol Specification for information about the ATB protocol.
Non-ConfidentialPDF file icon PDF versionARM 100095_0002_04_en
Copyright © 2014-2016 ARM. All rights reserved.