SLAU847D October 2022 – May 2024 MSPM0L1105 , MSPM0L1106 , MSPM0L1227 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2228 , MSPM0L2228-Q1
The DMA controller has six addressing modes. The addressing mode for each DMA channel is independently configurable. For example, channel 0 can transfer between two fixed addresses, while channel 1 transfers between two blocks of addresses. The addressing modes are shown in Figure 5-2.
The addressing modes are:
Addressing modes 1-4 shown above are simply configured with the DMASRCINCR and DMADSTINCR control bits. The DMASRCINCR bits select if the source address is incremented, decremented, or unchanged after each transfer. The DMADSTINCR bits select if the destination address is incremented, decremented, or unchanged after each transfer.
Addressing modes 5 and 6 shown above are also configured with the DMASRCINCR and DMADSTINCR control bits along with the help of additional parameters such as DMAEM for leveraging the extended modes of the DMA. Refer to Section 5.2.4.1 and Section 5.2.4.2 for more details on how to properly configure and use the DMA in Fill Mode and Table Mode.
Transfers can be byte to byte, short word to short word, word to word, long word to long word, or any combination of the four. When transferring (short or long) word to byte, only the lower byte of the source data transfers. When transferring (long) word to short word, only the lower short word of the source data transfers. When transferring byte to (short or long) word, the upper bytes of the destination word is cleared when the transfer occurs. When transferring short word to (long) word, the upper short word is cleared when the transfer occurs. When transferring word to long word, the upper word is cleared. There is no packing or unpacking support by combining several source byte transfers to one single destination (short) word or the reverse.