
ADSP-BF59x Blackfin Processor Hardware Reference
5-61
Direct Memory Access
One possible procedure is:
1. Write to
DMAx_NEXT_DESC_PTR
2. Write to
DMAx_CONFIG
with
•
FLOW
= 0x8
•
NDSIZE
≥
0xA
•
DI_EN
= 0
•
DMAEN
= 1
3. Automatically fetched
DMACFG
has
•
FLOW
= 0x0
•
NDSIZE
= 0x0
•
SYNC
= 1 (for transmitting DMAs only)
•
DI_EN
= 1
•
DMAEN
= 1
4. In the interrupt routine, repeat step 2. The
DMAx_NEXT_DESC_PTR
is
updated by the descriptor fetch.
To avoid polling of the
DMA_RUN
bit, set the
SYNC
bit in case of
memory read DMAs (DMA transmit or MDMA source).
If all
DMACFG
fields in a descriptor chain have the
FLOW
and
NDSIZE
fields set
to zero, the individual DMA sequences do not start until triggered by soft-
ware. This is useful when the DMAs need to be synchronized with other
events in the system, and it is typically performed by interrupt service rou-
tines. A single MMR write is required to trigger the next DMA sequence.
Especially when applied to MDMA channels, such scenarios play an
important role. Usually, the timing of MDMAs cannot be controlled (see
Summary of Contents for ADSP-BF59x Blackfin
Page 64: ...Development Tools 1 22 ADSP BF59x Blackfin Processor Hardware Reference...
Page 74: ...Processor Specific MMRs 2 10 ADSP BF59x Blackfin Processor Hardware Reference...
Page 244: ...Programming Examples 6 40 ADSP BF59x Blackfin Processor Hardware Reference...
Page 700: ...Programming Examples 16 78 ADSP BF59x Blackfin Processor Hardware Reference...
Page 738: ...Boundary Scan Architecture B 8 ADSP BF59x Blackfin Processor Hardware Reference...