Application Report
SPRAA56 – September 2004
1
DSP/BIOS Real-Time Analysis (RTA) and Debugging
Applied to a Video Application
Brian Jeff DSP Field Software Applications
Arnie Reynoso Software Development Systems
ABSTRACT
DSP/BIOS and the Reference Frameworks allow developers to non-intrusively instrument
real-time applications. The software provided with this application note applies real-time
analysis (RTA) services to a working application—a H.263 encode/decode loopback
example for the TMS320DM642 evaluation module. The software demonstrates
techniques for benchmarking and controlling video software. It also introduces a service to
programmatically measure CPU and TSK loading. Debugging and troubleshooting
techniques for real-time applications, using Code Composer Studio, is also discussed.
Contents
1
Important Benchmarks for Video Applications.......................................................................... 2
2
Base Application Overview ......................................................................................................... 3
2.1
DSP/BIOS and RF5 Components Used.................................................................................. 5
2.2
Requirements for Viewing RTA Benchmarks.......................................................................... 7
3
Modifications to the Base Example............................................................................................. 7
3.1
Splitting the Encode and Decode CELLs ................................................................................ 8
3.2
Adding the Control TSK and MBX Communication................................................................. 8
3.3
Querying the H.263 Encoder for Status .................................................................................. 9
3.4
Controlling the Frame Rate................................................................................................... 10
4
RTA Techniques for Performance Measurement..................................................................... 11
4.1
Measuring Function Execution Time with the UTL Module ................................................... 11
4.2
Measuring Task Scheduling Latencies ................................................................................. 12
4.3
Measuring End-to-End Latencies.......................................................................................... 12
4.4
Measuring the Frame Rate................................................................................................... 13
4.5
Simulating High CPU Load Stress Conditions with Dummy NOP Loads............................... 14
4.6
Programmatic Measurement of Total CPU Load................................................................... 14
4.7
Memory Bus Utilization......................................................................................................... 15
4.8
Bitrate and Frame Type........................................................................................................ 17
4.9
Methods for Transmitting Measured Performance Data........................................................ 18
4.10
Application-Specific Control via GEL Scripts in CCStudio..................................................... 19
5
Viewing Benchmarks in the Instrumented Application ........................................................... 19
5.1
Requirements....................................................................................................................... 19
5.2
Running the Application........................................................................................................ 20
5.3
Interpreting the Benchmarks................................................................................................. 22
5.4
Controlling the Run-Time Parameters Dynamically............................................................... 25
6
References.................................................................................................................................. 26
Appendix A. Performance Impact..................................................................................................... 27
A.1
Overhead of Performance Measurement Techniques........................................................... 27
A.2
RTA Effects on CPU Load .................................................................................................... 27
A.3
Memory Footprint ................................................................................................................. 28