DSP Trace (C2000 & C5000)



NEW DSP TOOL LETS YOU SEE MORE
A JTAG emulator with a trace capability

f your C2000 and C5000 JTAG debugging tools don’t give you run-time visibility into the executing DSP application, Signum Systems offers a great solution with an integrated tool consisting of a JTAG emulator and a real-time program and data trace memory.

The benefits of using real-time trace hardware are numerous and will lead to better implementations, reliability, efficiency and quicker design cycles. Lets just look at some of the things you can do with real-time trace - all without ever stopping your application or changing your code.
 
Program, Data and I/O Flow Visualization
Since the trace buffer has a dedicated memory that captures all activity of the DSP, full real-time visibility into the whereabouts of the running application (including execution from internal memory) is captured and displayed at any time. Once captured, simple visual verification for proper execution path along with any data & I/O activity is possible (see Fig.1). So next time your application breaks on an error condition you will be able to examine the last 256K cycles of the executed code and find the sequence of events that lead to the error.

If tracing all DSP cycles gives you too much detail, you can use any of the available cycle qualifiers to narrow down the information entering the trace memory. For example, checking the IOWr qualifier will pass only the bus cycles that write to I/O devices. Such pre-qualified trace would be able to store for analysis up to 256 KWords of incoming and outgoing data packets at the same time, with cycle accurate time stamp.
 
Detailed Interrupt Activity
Monitoring of interrupt activity in a complex real-time system cannot be simpler with the use of trace buffer. All interrupt activity is shown in the actual sequence of occurrence along with the time of the interrupt, duration and repetition rate.
 
Timing Analysis
Since each bus cycle is recorded with a cycle accurate time, you can determine time of execution, frequency of execution and time between any events without stopping or modifying the running application. In algorithms where processing time is data dependent a single time measurement will never give the real picture. Having trace memory allows to capture many packets of real data to find the worst processing time and system throughput rates with all interrupts active.
 
Data Logging
Capability of capturing 256K of data samples in real-time greatly extends the amount of data available for post analysis and QC. The trace may hold over 5 sec. of 44KHz, 16-bit audio track outside of the application and save it to file for analysis in MatLab® or other software.


Profiling

In a complex real-time application determining which functions are executed frequently is not an easy task, especially when using algorithms linked from libraries or outside sources. Once the application code is finished the Code Profiler Window will be used to provide you with the necessary tools to capture and display the application execution profile. This bar graph representation of the running application will identify any code areas that are executed most frequently (see Fig. 2). With just one click on any green bar, the source window will identify the function responsible for the high activity to allow the user to optimize the function for speed and gain overall system performance.

Even more visibility may be achieved by adding dummy OUT instructions to your code. Such simple code instrumentation will allow you to monitor any internal registers and peripherals in quasi real-time.


TI Third Party Network Member

Related Products:

• • •

All brands and products referred to in this article
are trademarksof their respective holders.

• • •

Signum Systems is an embedded tool
design and consultancy company
in Moorpark, CA.


Hop to top.