Computer Hardware Algorithm Standard User's Guide
Table Of Contents
- Table of Contents
- Preface
- 1 Overview
- 2 General Programming Guidelines
- 3 Algorithm Component Model
- 3.1 Interfaces and Modules
- 3.1.1 External Identifiers
- 3.1.2 Naming Conventions
- 3.1.3 Module Initialization and Finalization
- 3.1.4 Module Instance Objects
- 3.1.5 Design-Time Object Creation
- 3.1.6 Run-Time Object Creation and Deletion
- 3.1.7 Module Configuration
- 3.1.8 Example Module
- 3.1.9 Multiple Interface Support
- 3.1.10 Interface Inheritance
- 3.1.11 Summary
- 3.2 Algorithms
- 3.3 Packaging
- 3.1 Interfaces and Modules
- 4 Algorithm Performance Characterization
- 5 DSP-Specific Guidelines
- 6 Use of the DMA Resource
- 6.1 Overview
- 6.2 Algorithm and Framework
- 6.3 Requirements for the Use of the DMA Resource
- 6.4 Logical Channel
- 6.5 Data Transfer Properties
- 6.6 Data Transfer Synchronization
- 6.7 Abstract Interface
- 6.8 Resource Characterization
- 6.9 Runtime APIs
- 6.10 Strong Ordering of DMA Transfer Requests
- 6.11 Submitting DMA Transfer Requests
- 6.12 Device Independent DMA Optimization Guideline
- 6.13 C6xxx Specific DMA Rules and Guidelines
- 6.14 C55x Specific DMA Rules and Guidelines
- 6.15 Inter-Algorithm Synchronization
- A Rules and Guidelines
- B Core Run-Time APIs
- C Bibliography
- D Glossary
![](/manual/texas-instruments/tms320-dsp/computer-hardware-algorithm-standard-users-guide/images/img-36.png)
www.ti.com
Packaging
If multiple versions of the same component are provided by a single vendor, the different versions must be
in different libraries (as described above) and these libraries must be named as follows:
<module><vers>_<vendor>_<variant>.1<arch>
where <variant> is the name of the variant of the module (containing characters from the set[a-z0-9]).
Debug variants should have variant names that begin with the characters "debug." If there is only one
release version of a component from a vendor, there is no need to add a variant suffix to the library name.
Suppose, for example, that TI supplies one debug and one release version of the FIR module for the
C62xx architecture. In this case, the library file names would be "fir_ti_debug.l62" and "fir_ti.l62".
To avoid having to make changes to source Code, only one header file must suffice for all variants
supplied by a vendor. Since different algorithm implementations can be interchanged without recompilation
of client programs, it should not be necessary to have different "debug" versus "release" definitions in a
module's header. However, a vendor may elect to include vendor specific extensions that do require
recompilation. In this case, the header should assume that the symbol _DEBUG is defined for debug
compilations and not defined for release compilations.
Rule 18
If a module’s header includes definitions specific to a “debug” variant, it must use the symbol _DEBUG
to select the appropriate definitions. _DEBUG is defined for debug compilations and only for debug
compilations.
Algorithm Component Model36 SPRU352G – June 2005 – Revised February 2007
Submit Documentation Feedback