![Analog Devices Blackfin ADSP-BF537 Скачать руководство пользователя страница 203](http://html.mh-extra.com/html/analog-devices/blackfin-adsp-bf537/blackfin-adsp-bf537_hardware-reference-manual_2939700203.webp)
ADSP-BF537 Blackfin Processor Hardware Reference
5-65
Direct Memory Access
active queue. The interrupt handler should then pass a message back to
the non-interrupt software indicating the location of the last descriptor
accepted into the active queue. If, on the other hand, the interrupt han-
dler reads its mailbox and finds a
DMAx_CONFIG
value of zero, indicating
there is no more work to perform, then it should pass an appropriate mes-
sage (for example, zero) back to the non-interrupt software indicating that
the queue has stopped. This simple handler should be able to be coded in
a very small number of instructions.
The non-interrupt software which accepts new DMA work requests needs
to synchronize the activation of new work with the interrupt handler. If
the queue has stopped (that is, if the mailbox from the interrupt software
is zero), the non-interrupt software is responsible for starting the queue
(writing the first descriptor’s
DMAx_CONFIG
value to the channel’s
DMAx_
CONFIG
register). If the queue is not stopped, however, the non-interrupt
software must not write the
DMAx_CONFIG
register (which would cause a
DMA error), but instead it should queue the descriptor onto the waiting
queue and update its mailbox directed to the interrupt handler.
Software Triggered Descriptor Fetches
If a DMA has been stopped in
FLOW
=
0
mode, the
DMA_RUN
bit in the
DMAx_IRQ_STATUS
register remains set until the content of the internal
DMA FIFOs has been completely processed. Once the
DMA_RUN
bit clears,
it is safe to restart the DMA by simply writing again to the
DMAx_CONFIG
register. The DMA sequence is repeated with the previous settings.
Similarly, a descriptor-based DMA sequence that has been stopped tem-
porarily with a
FLOW
=
0
descriptor can be continued with a new write to
the configuration register. When the DMA controller detects the
FLOW
=
0
condition by loading the
DMACFG
field from memory, it has already
updated the next descriptor pointer, regardless of whether operating in
descriptor array mode or descriptor list mode.
Содержание Blackfin ADSP-BF537
Страница 42: ...Contents xlii ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 90: ...Development Tools 1 32 ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 138: ...Programming Examples 4 26 ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 340: ...SDC Programming Examples 6 84 ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 606: ...Programming Examples 9 94 ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 660: ...Programming Examples 10 54 ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 720: ...Electrical Specifications 11 60 ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 840: ...Programming Examples 13 42 ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 876: ...Programming Examples 14 36 ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 938: ...Programming Examples 15 62 ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 958: ...Programming Examples 17 12 ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 986: ...Programming Examples 18 28 ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 1162: ...G 26 ADSP BF537 Blackfin Processor Hardware Reference ...
Страница 1218: ...Index I 56 ADSP BF537 Blackfin Processor Hardware Reference ...