ADSP-BF50x Blackfin Processor Hardware Reference
7-57
Direct Memory Access
It is important to remember the meaning of the various fields in the
DMAx_CONFIG
descriptor elements when building a list or array of DMA
descriptors. In particular:
• The lower byte of
DMAx_CONFIG
specifies the DMA transfer to be
performed by the
current
descriptor (for example 2-D inter-
rupt-enable mode)
• The upper byte of
DMAx_CONFIG
specifies the format of the
next
descriptor in the chain. The
NDSIZE
and
FLOW
fields in a given
descriptor do not correspond to the format of the descriptor itself;
they specify the link to the next descriptor, if any.
On the other hand, when the DMA unit is being restarted, both bytes of
the
DMAx_CONFIG
value written to the DMA channel’s
DMAx_CONFIG
register
should correspond to the current descriptor. At a minimum, the
FLOW
,
NDSIZE
,
WNR
, and
DMAEN
fields must all agree with the current descriptor.
The
WDSIZE
,
DI_EN
,
DI_SEL
,
SYNC
, and
DMA2D
fields will be taken from the
DMAx_CONFIG
value in the descriptor read from memory. The field values
initially written to the register are ignored. See
“Initializing Descriptors in
Memory” on page 7-95
in the
“Programming Examples”
section for infor-
mation on how descriptors can be set up.
Descriptor Queue Management
A system designer might want to write a DMA manager facility which
accepts DMA requests from other software. The DMA manager software
does not know in advance when new work requests will be received or
what these requests might contain. The software could manage these
transfers using a circular linked list of DMA descriptors, where each
descriptor’s NDPH and NDPL members point to the next descriptor, and
the last descriptor points back to the first.
The code that writes into this descriptor list could use the processor’s cir-
cular addressing modes (
Ix
,
Lx
,
Mx
, and
Bx
registers), so that it does not
need to use comparison and conditional instructions to manage the
Summary of Contents for EZ-KIT Lite ADSP-BF506F
Page 50: ...Contents l ADSP BF50x Blackfin Processor Hardware Reference ...
Page 92: ...Development Tools 1 30 ADSP BF50x Blackfin Processor Hardware Reference ...
Page 110: ...Interface Overview 3 12 ADSP BF50x Blackfin Processor Hardware Reference ...
Page 236: ...Internal Flash Memory Control Registers 6 92 ADSP BF50x Blackfin Processor Hardware Reference ...
Page 650: ...Programming Examples 15 56 ADSP BF50x Blackfin Processor Hardware Reference ...
Page 804: ...Programming Examples 17 92 ADSP BF50x Blackfin Processor Hardware Reference ...
Page 1194: ...Programming Examples 24 90 ADSP BF50x Blackfin Processor Hardware Reference ...
Page 1256: ...ACM Registers A 50 ADSP BF50x Blackfin Processor Hardware Reference ...
Page 1264: ...Boundary Scan Architecture B 8 ADSP BF50x Blackfin Processor Hardware Reference ...