f your C2000
and C5000
JTAG debugging tools dont 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.
|

|
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. |
|
|