Memory Transfers; One-Dimensional Transfers (Linear Transfers) - Analog Devices VisualDSP++ 5.0 Service Manual

Visualdsp++ 5.0 device drivers and system for blackfin processors
Table of Contents

Advertisement

Theory of Operation
callback service handle is provided, all callbacks for the stream use
the deferred callback service to defer callback processing until after
hardware interrupt time.

Memory Transfers

Once a memory stream has been opened, the client can submit jobs to the
stream using the
functions. Linear (one-dimensional) memory transfers use the former
function; two-dimensional transfers use the latter function. The same
stream can be used for one-dimensional and two-dimensional transfers, so
a client can schedule a one-dimensional transfer on a given stream, and
can then schedule a two-dimensional transfer on that same stream.
Note that a memory stream supports only one transfer at a time. If one
transfer is in progress and another transfer is requested, these functions
return an error code indicating the stream is in use. If queuing of memory
transfers is required, this can be accomplished by using the channel-based
method of controlling DMA.

One-Dimensional Transfers (Linear Transfers)

One-dimensional (linear) transfers are handled by calling the
adi_dma_MemoryCopy()
function, the client provides the following parameters:
• The stream handle. This is the value provided to the client during
the
adi_dma_MemoryOpen()
• The destination starting address into whichdata is copied
• The source starting address from which data is copied
• The width of each element (in bytes) to be copied. The DMA
manager uses this value to schedule 8-, 16-, or 32-bit transfers.
6-8
adi_dma_MemoryCopy
function. When calling the
function.
VisualDSP++ 5.0 Device Drivers and System
Services Manual for Blackfin Processors
and/or
adi_dma_MemoryCopy2D
adi_dma_MemoryCopy()

Advertisement

Table of Contents
loading

Table of Contents