Trace-based Debugging (CTS)


The embedded tools company
Requirements
Forward and backward debugging of traced program section
High-level analysis
Filling the trace gaps


Picture
  Highlights
Allows re-debuggging of a traced program section
Provides forward and backward debugging capabilities
High-level language trace display including all local variables
Timing and function nesting display
Has the ability to fill most trace gaps caused by the limited bandwidth of trace port
 
  Introduction
In the past it was necessary to spend a lot of time analysing the trace listing in order to find out which instructions, data or system states had caused malfunctioning of the target system.



Now Trace-based Debugging - CTS for short - allows the user to recreate the state of the target system at a selected point based on the information sampled in the trace buffer. From this starting point the program steps previously recorded in real-time in the trace memory can be debugged again in TRACE32 PowerView GUI.


Doc
Download full document
cts.pdf
( 132k)



TOP

Requirements


    Standard Trace-based Debugging requires:

    • Continuous instruction flow trace
    • Continuous data flow trace (at least read accesses)
TOP

Forward and backward debugging of traced program section


    Any record in the trace can be selected as starting point for Trace-based Debugging.





    As soon as the starting point is selected TRACE32 reconstructs in its GUI the context of the target system as it was when the instruction at the
    starting point was executed.





    When the reconstruction is finished the program steps previously recorded in real-time in the trace memory can be debugged again in TRACE32 PowerView.




    The following debugging commands are available for forward debugging:

    • Single step
    • Step over call
    • Go to the next instruction
    • Go to the end of the current function
    • Return to the caller function


    The following debugging commands are available for backward debugging:

    • Single step back
    • Step back over call
    • Go to the entry of the current function
TOP

High-level analysis


    Trace display including all local variable



    The fact that TRACE32 can reconstruct the register and memory contents for any trace sampling points allows the user to display a full high-level language trace including all register and stack variables.



    Function nesting display





    Function run-time timing display



TOP

Filling the trace gaps


    If more trace information is generated than the trace interface can output, trace information can be lost. The result are trace gaps
    (TARGET FIFO OVERFLOWs).



    The Trace-based Debugging technology enables TRACE32 to fill in most of these gaps. These records are marked as "s"ynthetically reconstructed (exes instead of exec in the example above).




Copyright © 2016 Lauterbach GmbH, Altlaufstr.40, D-85635 Höhenkirchen-Siegertsbrunn, Germany  Impressum
The information presented is intended to give overview information only.
Changes and technical enhancements or modifications can be made without notice. Report Errors
Last generated/modified: 28-Jan-2016