A base protocol for application-specific trace functions


Icon of a Smart PhoneIcon of a TabletIcon of a laptopIcon of an AutomobileIcon of a cloud with the letters IoT inside.Icon of virtual reality


The MIPI System Trace Protocol (MIPI STPSM) was developed as a generic base protocol that can be shared by multiple, application-specific trace protocols. It was not intended to supplant or replace the highly optimized protocols used to convey data about processor program flow, timing or low-level bus transactions, but rather, STP is designed so that its data streams coexist with these optimized protocols as part of a complete debug system.

The STP protocol is now in its second generation (v2.2), and is backward compatible with the first generation.

MIPI STP includes the following features:

  • A trace stream composed of 4-bit frames
  • Support for merging trace data from up to 65,536 independent data sources (masters)
  • Up to 65,536 independent data channels per master
  • Basic trace data messages that can convey 4-, 8-, 16-, 32-, or 64-bit wide data
  • Time-stamped data packets using one of several timestamp formats including:
    • Gray code
    • Natural binary
    • Natural binary delta
    • Export buffer depth (legacy STPv1 timestamp that requires DTC support)
  • Data packet markers to indicate packet usage by higher-level protocols
  • Flag packets for marking points of interest (for higher-level protocols) in the stream
  • Packets for aligning timestamps from different clock domains
  • Packets for indicating to the DTC the position of a trigger event, which is typically used to control actions in the DTC (e.g., to control trace capture)
  • Packets for cross-synchronization events across multiple STP sources
  • Support for user-defined data packets
  • Facilities for synchronizing the trace stream on bit and message boundaries

MIPI STP is developed by the MIPI Debug Working Group. It is available as v2.2. All MIPI debug and trace specifications, including MIPI STP, are available for download and use by the public and the open source community. Members of the MIPI Alliance enjoy benefits including access to relevant licenses and opportunities to participate in development activities, interoperability workshops and other events. For information about MIPI Alliance membership, visit Join MIPI.