Programming Model
5-58
ADSP-BF537 Blackfin Processor Hardware Reference
read DMA, the final memory read data will have been safely received in
the DMA’s FIFO; for memory write DMA, the DMA unit will have
received an acknowledge from L1 memory or the EBIU that the data has
been written.
The following examples show methods of synchronizing software with
several different styles of DMA.
Single-buffer DMA Transfers
Synchronization is simple if a peripheral’s DMA activity consists of iso-
lated transfers of single buffers. DMA activity is initiated by software
writes to the channel’s control registers. The user may choose to use a sin-
gle descriptor in memory, in which case the software only needs to write
the
DMAx_CONFIG
and the
DMAx_NEXT_DESC_PTR
registers. Alternatively, the
user may choose to write all the MMR registers directly from software,
ending with the write to the
DMAx_CONFIG
register.
The simplest way to signal completion of DMA is by an interrupt. This is
selected by the
DI_EN
bit in the
DMAx_CONFIG
register, and by the necessary
setup of the system interrupt controller. If it is desirable not to use an
interrupt, the software can poll for completion by reading the
DMAx_IRQ_
STATUS
register and testing the
DMA_RUN
bit. If this bit is zero, the buffer
transfer has completed.
Continuous Transfers Using Autobuffering
If a peripheral’s DMA data consists of a steady, periodic stream of signal
data, DMA autobuffering (
FLOW = 1
) may be an effective option. Here,
DMA is transferred from or to a memory buffer with a circular addressing
scheme, using either one- or two-dimensional indexing with zero proces-
sor and DMA overhead for looping. Synchronization options include:
• 1D, interrupt-driven—software is interrupted at the conclusion of
each buffer. The critical design consideration is that the software
must deal with the first items in the buffer before the next DMA
Summary of Contents for Blackfin ADSP-BF537
Page 42: ...Contents xlii ADSP BF537 Blackfin Processor Hardware Reference ...
Page 90: ...Development Tools 1 32 ADSP BF537 Blackfin Processor Hardware Reference ...
Page 138: ...Programming Examples 4 26 ADSP BF537 Blackfin Processor Hardware Reference ...
Page 340: ...SDC Programming Examples 6 84 ADSP BF537 Blackfin Processor Hardware Reference ...
Page 606: ...Programming Examples 9 94 ADSP BF537 Blackfin Processor Hardware Reference ...
Page 660: ...Programming Examples 10 54 ADSP BF537 Blackfin Processor Hardware Reference ...
Page 720: ...Electrical Specifications 11 60 ADSP BF537 Blackfin Processor Hardware Reference ...
Page 840: ...Programming Examples 13 42 ADSP BF537 Blackfin Processor Hardware Reference ...
Page 876: ...Programming Examples 14 36 ADSP BF537 Blackfin Processor Hardware Reference ...
Page 938: ...Programming Examples 15 62 ADSP BF537 Blackfin Processor Hardware Reference ...
Page 958: ...Programming Examples 17 12 ADSP BF537 Blackfin Processor Hardware Reference ...
Page 986: ...Programming Examples 18 28 ADSP BF537 Blackfin Processor Hardware Reference ...
Page 1162: ...G 26 ADSP BF537 Blackfin Processor Hardware Reference ...
Page 1218: ...Index I 56 ADSP BF537 Blackfin Processor Hardware Reference ...