Keil Logo

Code Coverage

Learning Platform

Code coverage identifies your program's execution instruction-by-instruction, ensuring thorough testing of your application. This is an essential requirement for complete software verification and certification. Functional safety standards require code coverage tests for many safety integrity levels.

µVision offers code coverage analysis using simulation models or instruction trace with ULINKpro. Both methods enable µVision to provide a complete code coverage of your program. In continuous integration environments, multiple code coverage runs can be overlayed, so that a complete report for the whole design can be generated. Arm is using this methodology to test the Functional Safety Run-Time System.

Code coverage information in the µVision debugger is displayed in various windows.

Cove Coverage window

The Code Coverage window provides statistics about the executed code.

Code Coverage window

Execution Profiler and markers

The Execution Profiler records timing and execution statistics about instructions for the complete program code. The values are displayed in the µVision editor or Disassembly window. Code execution markers use a color code to identify whether a line of code has been executed, partially executed, or skipped.

Execution profiler and markers

Performance Analyzer

Using instruction trace (on real hardware or models), statistics are collected for the complete program code. The Performance Analyzer displays the information collected by the Execution Profiler. Results are displayed as bar graphs, along with call and time information. The most time consuming modules or functions are displayed at the top of the list.

Performance Analyzer window

Debugging webinar with code coverage


Advanced debug and trace using ULINKpro

The µVision debugger gives you full access to debug and trace of an Cortex-M based system. Trace enables additional debug views such as Logic Analyzer, Event Viewer, Performance Analyzer, Code Coverage, and Instruction Trace. These debug views show the dynamic behavior of your application and let you optimize algorithms or identify sporadic errors. In this webinar, you will learn how to use ULINKpro for advanced debugging and tracing of embedded applications on an NXP's Kinetis K64 MCU.

  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

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.