Texas Instruments SPRAA56 appendix Modifications to the Base Example

Page 1

Application Report

SPRAA56 – September 2004

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

1

Image 1
Contents RTA Techniques for Performance Measurement Modifications to the Base ExampleViewing Benchmarks in the Instrumented Application References Appendix A. Performance ImpactFigures Important Benchmarks for Video ApplicationsSPRAA56 Base Application OverviewTskInput 1 LOG DSP/BIOS and RF5 Components Used3 TRC 2 STS4 UTL Requirements for Viewing RTA Benchmarks Modifications to the Base ExampleAdding the Control TSK and MBX Communication Splitting the Encode and Decode CELLsTskInput Querying the H.263 Encoder for StatusTskO utput Controlling the Frame Rate Measuring Function Execution Time with the UTL Module RTA Techniques for Performance MeasurementMeasuring End-to-End Latencies Measuring Task Scheduling LatenciesMeasuring the Frame Rate Programmatic Measurement of Total CPU Load Memory Bus Utilization 86,400 B 720*480 = 345,600 B14,400 B External memoryBitrate and Frame Type Methods for Transmitting Measured Performance Data Application-Specific Control via GEL Scripts in CCStudio Viewing Benchmarks in the Instrumented ApplicationRequirements Load the h263loopbackrta.out program Running the ApplicationSPRAA56 Interpreting the Benchmarks Expected Values for the STS Objects Expected and Measured STS Benchmarks Expected Values Delivered to the Message Log Debug ModeControlling the Run-Time Parameters Dynamically Expected and Measured Logged BenchmarksCapture and Display Task Benchmarking ReferencesOverhead of Performance Measurement Techniques Appendix A. Performance ImpactRTA Effects on CPU Load Measured Performance of Benchmarking TechniquesMemory Footprint Details Memory FootprintImportant Notice