Starting Chain Loading - Analog Devices SHARC ADSP-214 Series Hardware Reference Manual

Table of Contents

Advertisement

Operating Modes
Listing 2-1. Chain Assignment
R0=0;
dm(CPx)=R0;
/* init DMA control registers */
R2=(TCB1+3) & 0x7FFFF;
R2=bset R2 by 19;
dm(TCB2)=R2;
R2=(TCB2+3) & 0x7FFFF;
R2=bclr R2 by 19;
dm(TCB1)=R2;
dm(CPx)=R2;
Chained DMA operations may only occur within the same chan-
nel. The processor does not support cross-channel chaining.

Starting Chain Loading

A DMA sequence is defined as the sum of the DMA transfers for a single
channel, from when the parameter registers initialize to when the count
register decrements to zero. Each DMA channel has a chaining enable bit
(
) in the corresponding control register.
CHEN
To start the chain, write the internal index address of the first TCB to the
chain pointer register. When chaining is enabled, DMA transfers are initi-
ated by writing a memory address to the chain pointer register. This is also
an easy way to start a single DMA sequence, with no subsequent chained
DMAs.
2-34
www.BDTIC.com/ADI
/* clear CPx register */
/* load IIx address of next TCB
and mask address */
/* set PCI bit */
/* write address to CPx location of
current TCB */
/* load IIx address of next TCB and
mask address*/
/* clear PCI bit */
/* write address to CPx location of
current TCB */
/* write IIx address of TCB1 to CPx
register to start chaining*/
ADSP-214xx SHARC Processor Hardware Reference

Advertisement

Table of Contents
loading

Table of Contents