ADSP-BF537 Blackfin Processor Hardware Reference
5-17
Direct Memory Access
A descriptor describes what kind of operation should be performed next
by the DMA channel. This includes the DMA configuration word as well
as data source/destination address, transfer count, and address modify val-
ues. A DMA sequence controlled by one descriptor is called a work unit.
Optionally, an interrupt can be requested at the end of any work unit by
setting the
DI_EN
bit in the configuration word of the respective
descriptor.
A DMA channel is started in descriptor-based mode by first writing the
32-bit address of the first descriptor into the
DMAx_NEXT_DESC_PTR
register
(or the
DMAx_CURR_DESC_PTR
in case of descriptor array mode) and then
performing a write to the configuration register
DMAx_CONFIG
that sets the
FLOW
field to either
0x04
,
0x6
, or
0x7
and enables the
DMAEN
bit. This causes
the DMA controller to immediately fetch the descriptor from the address
pointed to by the
DMAx_NEXT_DESC_PTR
register. The fetch overwrites the
DMAx_CONFIG
register again. If the
DMAEN
bit is still set, the channel starts
DMA processing.
The
DFETCH
bit in the
DMAx_IRQ_STATUS
register tells whether a descriptor
fetch is ongoing on the respective DMA channel, whereas the
DMAx_CURR_
DESC_PTR
points to the descriptor value that is to be fetched next.
Descriptor List Mode
Descriptor list mode is selected by setting the
FLOW
bit field in the DMA
channel’s
DMAx_CONFIG
register to either
0x6
(small descriptor mode) or
0x7
(large descriptor mode). In this mode multiple descriptors form a
chained list. Every descriptor contains a pointer to the next descriptor.
When the descriptor is fetched, this pointer value is loaded into the
DMAx_
NEXT_DESC_PTR
register of the DMA channel. In large descriptor mode this
pointer is 32 bits wide. Therefore, the next descriptor may reside in any
address space accessible through the DCB and DEB buses. In small
descriptor mode this pointer is just 16 bits wide. For this reason, the next
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 ...