This chapter describes the properties and capabilities of the various features available through the On-Chip Debug framework deployed on this device - also known as Debug SS.
The On-Chip Debug framework enables various Debug and Trace use-cases, including:
- JTAG Tooling – Access to on-chip debug resources is supported by an IEEE 1149.1 (JTAG) compliant interface that is supported by an Arm® CoreSight™ DAP JTAG-DP.
- Self-Hosted Tooling – code running on programmable cores within the device is able to use on-chip debug resources to enable embedded tooling solutions.
- PCB-level interconnect testing – IEEE 1149.1 and IEEE 1149.6 compliant Boundary Scan supports product level integration testing
- Stop Mode debugging – Debug of embedded processors is supported using various mechanisms that can halt the pipeline of a CPU. Breakpoints (Software and Hardware), Watchpoints, Cross-Triggering, and On-demand (e.g. user requested) halt request mechanisms may be supported based on the capabilities of a given processor.
- Debug-aware Peripherals – Peripheral awareness of processor execution state allows safe suspension of peripheral operation. Supported by select peripherals.
- Synchronized Debug – Wide deployment of Cross-Triggering allows multiple processors and/or debug elements to be grouped together to process various actions based on a common event occurrence.
- Processor Trace – Support for the generation of a trace stream with the encoding of processor state that may include some combination of program flow, timing details (execution and stall), and memory references (address and/or data) with the goal of facilitating processor state reconstruction for debug purposes.
- Software Messaging Trace – Support for software messaging trace where embedded code running within the device can be instrumented to use memory writes to send important debug information to a trace stream.
- Trace Correlation (through timestamping) – Support for the correlation of different trace streams is enabled through the use of a common global timestamp that is distributed to supported trace sources.
- Trace data movement – Trace data movement on chip is supported using standard Arm ATB trace infrastructure components. Concurrent use of the trace bus by multiple trace sources is supported, with each trace source identifiable through a unique ID. An Arm® CoreSight™ Trace Router supports sending a trace stream off-chip (TPIU), to dedicated memory on-chip (ETB), or broadcasted to both (TPIU + ETB).
- The trace buffer used for trace data movement is ARM CSETB 32KB. Refer to ARM CSETB TRM for more details.
- On-Chip trace collection via dedicated buffer – An on-chip trace buffer is supported by logic that implements capturing trace data until either the memory fills (stop-on-full, system-bridge) or continuously until a request to stop is received (circular buffer). Interleaving of multiple trace streams is made possible through the use of a standardized encoding that embeds trace data along with the corresponding trace source ID.
- Trace export over TPIU – Trace data is exported over device LVCMOS pins using a standard protocol that embeds trace data along with the corresponding trace source ID.