Computer Hardware Algorithm Standard User's Guide

Table Of Contents
www.ti.com
1.1 Scope of the Standard
Rules for TMS320C2x
Level 1
Level 2
Level 3
Level 4
Telecom
Rules for TMS320C5x Rules for TMS320C6x
Imaging Audio Automotive Other
Algorithm Component Model
General Programming Guidelines
S C callable
S No hard coded addresses
S Reentrant
S etc.
S Modules
S Generic interfaces
S Packaging
S etc.
S Interrupt usage
S Memory usage
S Register usage
S etc.
S Interrupt usage
S Memory usage
S Register usage
S etc.
S Interrupt usage
S Memory usage
S Register usage
S etc.
S vocoders
S echo cancel
S etc.
S JPEG
S etc.
S coders
S etc.
S etc.
Scope of the Standard
Digital Signal Processors (DSPs) are often programmed like "traditional" embedded microprocessors. That
is, they are programmed in a mix of C and assembly language, they directly access hardware peripherals,
and, for performance reasons, almost always have little or no standard operating system support. Thus,
like traditional microprocessors, there is very little use of commercial off-the-shelf (COTS) software
components for DSPs.
However, unlike general-purpose embedded microprocessors, DSPs are designed to run sophisticated
signal processing algorithms and heuristics. For example, they may be used to detect DTMF digits in the
presence of noise, to compress toll quality speech by a factor of 20, or for speech recognition in a noisy
automobile traveling at 65 miles per hour.
Such algorithms are often the result of many years of doctoral research. However, because of the lack of
consistent standards, it is not possible to use an algorithm in more than one system without significant
reengineering. Since few companies can afford a team of DSP PhDs, and the reuse of DSP algorithms is
so labor intensive, the time-to-market for a new DSP-based product is measured in years rather than in
months.
This document defines a set of requirements for DSP algorithms that, if followed, allow system integrators
to quickly assemble production-quality systems from one or more such algorithms. Thus, this standard is
intended to enable a rich COTS marketplace for DSP algorithm technology and to significantly reduce the
time-to-market for new DSP-based products.
The TMS320 DSP Algorithm Standard defines three levels of guidelines.
Figure 1-1. TMS320 DSP Algorithm Standard Elements
Level 1 contains programming guidelines that apply to all algorithms on all DSP architectures regardless
of application area. Almost all recently developed software modules follow these common sense
guidelines already, so this level just formalizes them.
Level 2 contains rules and guidelines that enable all algorithms to operate harmoniously within a single
system. Conventions are established for the algorithm's use of data memory and names for external
identifiers, for example. In addition, simple rules for how algorithms are packaged are also specified.
10 Overview SPRU352G June 2005 Revised February 2007
Submit Documentation Feedback