6 use of peripherals – Texas Instruments TMS320 DSP User Manual

Page 24

Advertising
background image

www.ti.com

2.6

Use of Peripherals

Use of Peripherals

Rule 5

Algorithms must characterize their ROM-ability; i.e., state whether or not they are ROM-able.

Obviously, self-modifying Code is not ROM-able. We do not require that no algorithm employ
self-modifying Code; we only require documentation of the ROM-ability of an algorithm. It is also worth
pointing out that if self-modifying Code is used, it must be done "atomically," i.e., with all interrupts
disabled; otherwise this Code would fail to be reentrant.

To ensure the interoperability of eXpressDSP-compliant algorithms, it is important that algorithms never
directly access any peripheral device.

Rule 6

Algorithms must never directly access any peripheral device. This includes, but is not limited to on-chip
DMAs, timers, I/O devices, and cache control registers. Note, however, algorithms can utilize the DMA
resource by implementing the IDMA2 interface on C64x and C5000 devices, and the IDMA3 interface
on C64x+ devices using the EDMA3 controller. See

Chapter 6

for details.

In order for an algorithm to be framework-independent, it is important that no algorithm directly calls any
device interface to read or write data. All data produced or consumed by an algorithm must be explicitly
passed to the algorithm by the client. For example, no algorithm should call a device-independent I/O
library function to get data; this is the responsibility of the client or framework.

24

General Programming Guidelines

SPRU352G – June 2005 – Revised February 2007

Submit Documentation Feedback

Advertising