MIPI Debug Over PCIe
MIPI Debug Over Peripheral Component Interconnect Express (PCIe)
IN DEVELOPMENT by: Debug Working Group
(v1.0 expected adoption in 2025)
A technology for using MIPI debug protocols over PCIe
-
Debug & Trace Portfolio
MIPI Alliance has a portfolio of specifications that can be used to debug components in mobile devices as well as any device that is "smart" or connected, such as an end-point on the Internet of Things (IoT). Components that can be debugged with the tools include application processors, modems, device controllers, power management devices and others.
The debug portfolio includes the "MIPI Debug Over" (MDO) family of specifications, which define how to transmit debug and trace data to and from the debug and test system on functional networks. These specifications map debug capabilities to a particular functional network. Unlike the MIPI Narrow Interface for Debug and Test (NIDnT) specification, the network interface and protocol stack function normally. The MDO family of specifications simply defines how to adapt the various MIPI debug protocols (e.g., MIPI SneakPeek Protocol) so they can co-exist with other network traffic (as normal application layer functions).
All MIPI debug and trace specifications are available for download and use by the public and the open source community. MIPI members enjoy benefits including access to relevant licenses and opportunities to participate in development activities, interoperability workshops and other events.
The MIPI Debug Working Group welcomes contributions to the specification. If your company is a Contributor member, you can join the working group on the MIPI member website. Please contact us if you have any questions or would like additional information about MIPI debug solutions and your question will be forwarded to the working group.
Overview
The Debug Over PCIe (DO-PCIe) specification, part of the MDO family of specifications, describes methods for using the Peripheral Component Interconnect Express (PCIe) link as an interface to transport debug controls and data between a debug and test system (DTS) and a target system (TS). It provides mechanisms to perform debug of a PCIe Endpoint by using the PCIe Link and describes the communication between a DTS and a TS. This communication is used for:
- Basic debug control, such as halt mode debugging of processors within a PCIe Device; and/or
- Tracing, where streams of data are emitted from a TS to be decoded and analyzed in a DTS.
A Debug Over PCIe system contains one or more DTS and one or more TS. TS are PCIe Endpoints including the PCIe Root Complex Integrated Endpoint (RCiEP).
Debug Over PCIe is designed in accordance with revision 6.0.1 of the PCIe specification.
The diagram below shows the standard MIPI debug architecture highlighting the functional area addressed by the Debug Over PCIe specification.
Key Capabilities
MIPI Debug Over PCIe offers key capabilities that make the interface scalable and flexible for use in applications throughout a product's lifecycle:
- Supports solutions designed to revision 2.x through 6.x of the PCIe specification
- Support for co-existence of debug and functional traffic over the PCIe link
- Support for concurrent debug of multiple PCIe devices
- Support for debug events from/to PCIe devices under debug
- Support for advertising debug capabilities in a PCIe device
- Allows debugging of any PCIe device that is addressable in a PCIe topology.
- Support for minimizing PCIe Host intervention and host resource utilization during debug session
- Supports Designated Vendor-Specific Extended Capability (DVSEC Capability) messaging and/or Memory Mapped IO Space to transfer debug data and/or messages
Diagrams & Tables
Debug Capabilities per Adjacent Industries »
(best viewed on desktop)
System Functional/Application Modules (click to enlarge image below)
The diagram below shows the standard MIPI debug architecture highlighting the functional area addressed by the Debug Over PCIe specification.