Motorola DSP56305 User Manual Page 58

  • Download
  • Add to my manuals
  • Print
  • Page
    / 112
  • Table of contents
  • BOOKMARKS
  • Rated. / 5. Based on customer reviews
Page view 57
Using the DMA
Servicing a Peripheral
MOTOROLA Optimizing DSP56300/DSP56600 Applications 4-9
Mx), and the MIPS required to process a fast interrupt for
every 24-bit word transfer.
Using the DMA 3-D Addressing mode to increment the
source address after the basic 3-word transfer—The core is
interrupted only after N words are transmitted to fill the
buffer again. The “cost” is one DMA channel and four offset
registers.
A second DMA transfer defined in another channel
triggered by the end of the basic 3-word transfer—The
second transfer copies data from a buffer to a fixed address
used by the first channel. This option basically splits the
previous option between two DMA channels, thus enabling
the use of simpler addressing modes and freeing common
offset registers. The “cost” is two DMA channels and one
offset register.
The choice of a solution depends on the availability of the relevant
resources in the specific application. This example implements the
second option (using one DMA channel), for feeding the SCI
transmitter. Words for transmission are arranged in a data buffer.
As shown in Figure 4-1 on page 4-10, each word in the buffer
should be written 3 times to the SCI transmit registers so that all 3
bytes are transmitted. After all the buffer is transmitted, the core is
interrupted. This addressing is defined in the 3-D Addressing
mode. The first dimension counter is null (DCOL value 0), so that an
offset 0 (from DOR0) is added after each transfer. The second
dimension is used to increment the address by 1 after 3 transfers
(DOR1). The third dimension is used to count the words in the
buffer.
Note: An offset register is needed for zero offset since the
no-update mode is only for linear counting. Transfer
destination (SCI side) is addressed as a circular 3-word
buffer—after three words, the address is decreased by 3.
Usually a two-dimensional addressing mode is enough for
such addressing, but this example should also be
implemented using 3-D addressing. The reason is the need to
align the offsets needed for the destination with the counter
value as was defined for the source.
Page view 57
1 2 ... 53 54 55 56 57 58 59 60 61 62 63 ... 111 112

Comments to this Manuals

No comments