Keil™, An ARM® Company

ARM Development Tools

Real-Time Trace

Real-Time Trace

Cortex-M3 processor based devices offer a new serial wire debug mode, which replaces the JTAG interface with a 2-pin interface while offering new features beyond those offered by standard JTAG.

  • Serial Wire Debug (SWD) provides the same functionality as JTAG plus real-time access to memory without halting the processor and without any target resident code.
  • Serial Wire Viewer (SWV) uses one further pin and provides Real-Time Trace information, enabling you to watch values of variables and see debug messages while your system processor continues running at full speed.

A number of dedicated trace windows in uVision display trace records, state changes and debug messages.

Trace Records

Trace Records windows display the trace information in real-time

Real-Time Trace enables:

  • Data read and write of selected variables and PC values
  • Event counters that show CPU cycle statistics
  • Exception and Interrupt execution with timing statistics
  • Periodic samples of the program counter
  • Trace data be used for timing analysis or simple printf-style debugging

Application Note

Application Note 197 provides full information on using Real-Time Trace (SWV) with a Cortex-M3 based device.

ETM Trace

Some ARM Powered devices also include an Embedded Trace Macrocellâ„¢ (ETM) which enables the download of instruction and data trace from the processor. MDK supports this style of trace with the addition of a third-party trace unit and software plug-in such as Signum JTAGjet-Trace.

Notes Note

  • Real-Time Trace (SWV) is only available in MDK 3.15 or higher.
  • Real-Time Trace is only available with ULINK2 or ULINK-ME.