Port B Priority Queue
high
low
Ch0 Ch2 Ch3 Ch4
Ch8, Ch12
fixed priority
rotational priority
Control Packet 0
Control Packet 1
Control Packet 2
Control Packet 3
Control Packet 4
Control Packet 5
Control Packet 6
Control Packet 7
Control Packet 8
Control Packet 9
Control Packet 10
Control Packet 11
Control Packet 12
Control Packet 13
Control Packet 14
Control Packet 15
1 The above figure illustrates the channel assignments in a system with 16 channels.
This approach can be scaled dependent on the total channels available.
Module Operation
707
SPNU563A – March 2018
Copyright © 2018, Texas Instruments Incorporated
Direct Memory Access Controller (DMA) Module
Figure 20-11. Example Channel Assignments
20.2.6 Data Packing and Unpacking
The DMA controller automatically performs the necessary data packing and unpacking when the read
element size differs from the write element size. Data packing is required when the read element size is
smaller than the write element size; data unpacking is required when the read element size is larger than
the write element size. When the read element size is equal to the write element size, no packing is
performed during read, nor is any unpacking performed during write.
shows an example of data unpacking in which the DMA is used to transfer 128 transmit data
elements to the MibSPI FIFO buffer. In this example, data unpacking is required because the read
element size is 64 while the write element size is 16. The DMA first performs an 64-bit read from the
source into its FIFO buffer. After the 64-bit data is read into the DMA FIFO buffer, it must unpack the data
into four 16-bit data elements before writing out to the destination. Therefore the DMA would need to
perform four 16 bit write operations to the destination.
NOTE:
Examples are shown for big-endian scheme.
NOTE:
In the example in
, to transmit data at the lower bits of the MibSPI, bits 15:0, the
destination address should be incremented by a factor of 2.
NOTE:
1) The element Count (
) refers only to the read element.
2) Data unpacking does not require the DMA request. Once the DMA request is received,
data from Source is moved in to FIFO and unpacking happens until the FIFO is empty.
3) DMA assumes the destination is always ready and will perform write immediately. In case
of data unpacking and Constant Addressing Mode write (
(1 - 0) = 0) the
destination data will be overwritten by next data or next data might be skipped in case the
destination has overflow protection (for example, SCITD register). User should configure
DMA to avoid data unpacking if the Destination is configured as Constant Addressing Mode
write to avoid data loss.