Two-Dimensional DMA
When using linear DMA, data is moved in a one-dimensional (linear)
fashion. This is the most common type of transfer, where n elements of
"
" width are moved from one location, or taken in through a device
w
to another memory location, or out through a device.
Two-dimensional DMA is a convenient feature that allows data to be
transferred in a non-linear fashion. This is especially useful in video
applications. Two-dimensional DMA supports arbitrary row (
column (
XCount
values (
YModify
When using channel DMA, descriptors are used to define the parameters
for the transfer. When using memory streams, the
data type is used to define the parameters for the transfer.
For example, suppose you want to retrieve a 16 x 8 block of bytes (
from a video frame buffer (
and store it in a separate memory area (data) for processing.
frame[6][6]
After the data has been processed, the values are then copied back to the
original location.
Figure 6-4
illustrates the area of the frame to process.
VisualDSP++ 5.0 Device Drivers and System
Services Manual for Blackfin Processors
) sizes up to 64K x 64K elements, as well as row modify
) and column modify values up to +/- 32K bytes.
) of size N x M pixels at location
frame
DMA Manager
) and
YCount
ADI_DMA_2D_TRANSFER
data
)
6-29
Need help?
Do you have a question about the VisualDSP++ 5.0 and is the answer not in the manual?