Keil Logo Arm Logo

Real-Time Trace and Analysis

MDK-ARM, together with a ULINK adapter, uses the ARM CoreSight technology in Cortex-M based devices to provide advanced real-time debug, trace, and analysis capabilities.

Data and Event Trace

All Cortex-M3 and Cortex-M4 devices provide data and event trace. MDK-ARM provides a number of ways to analyze this information while your system is running:

  • Trace Window - Displays program flow by capturing timestamps, PC samples, exceptions, and Read/Write accesses.
  • Debug Viewer - Displays the printf-style output of the Instrumented Trace (ITM) in a terminal window.
  • Exceptions window - Displays statistical information about program exceptions and interrupts.
  • Event Counters - Display real-time values of specific event counters providing performance indications.
  • Logic Analyzer - Graphically displays variable changes in captured data trace.
  • RTX Event Viewer - display RTX Kernel task switching events and statistics on a time scale.
Data and Event Trace
Data and Event Trace Windows provide information from the running target for
program data, exceptions, variables, and printf-style outputs.

Instruction Trace

Cortex-M devices with ETM provide instruction trace. The Keil ULINKpro streams instruction trace directly to your PC, enabling debugging of historical sequences, execution profiling, performance optimization, and code coverage analysis.

Code Coverage
The virtually unlimited stream of trace information enables MDK to provide complete Code Coverage of your program. Code coverage identifies every instruction that has been executed, ensuring thorough testing of your application. This is an essential requirement for complete software verification and certification.

Code Coverage

Take a look at the video for more information about Code Coverage.

Performance Analysis
ULINKpro allows applications to be run for long periods of time while collecting trace information. This can be used by the Execution Profiler and Performance Analyzer to identify program bottlenecks, optimize your application, and to help locate defects.

Performance Analyzer Window
The Performance Analyzer displays time spent in each part of your program.

Notes Note

  • Real-Time Trace features are only available in MDK 4.02 or higher and are not support by ULINK1.
  • Data and Event trace is available with ULINKpro, ULINK2, or ULINK-ME.
  • Instruction trace is only available with ULINKpro.

Keil logo

Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings