SWRU626 December 2025 CC3501E , CC3551E
The DMA supports unaligned address access and unaligned job size (not multiplication of word size) when 32 bits word is used.
The following table describes the supported un-align transactions:
| Job Start Address | Job Size | Transactions |
|---|---|---|
| Aligned | Aligned | All DMA transactions are address and word aligned. |
| Aligned | Unaligned | All DMA transactions will be address and word aligned however the last transfer will be < word. |
| Unaligned | Aligned | The first DMA transactions will be address un-aligned and <
word. The last DMA transactions will be address aligned and < word. All other DMA transactions will be address and word aligned. |
| Unaligned | Unaligned | The first DMA transactions will be address un-aligned and <
word. The last DMA transactions might be address aligned and < word. All other DMA transactions will be address and word aligned. |
For example: Address aligned, Job Size Aligned
Start address 0x0, Job size 16 bytes
| DMA Transaction | Job Address | Byte 0 | Byte 1 | Byte 2 | Byte 3 |
|---|---|---|---|---|---|
| 1 | 0x0 | First byte | |||
| 2 | 0x4 | ||||
| 3 | 0x8 | ||||
| 4 | 0xC | Last byte (16) |
In this example the job size and address are all aligned.
For example: Address aligned, Job Size Un-Aligned
Start address 0x0, Job size 13 bytes
| DMA Transaction | Job Address | Byte 0 | Byte 1 | Byte 2 | Byte 3 |
|---|---|---|---|---|---|
| 1 | 0x0 | First byte | |||
| 2 | 0x4 | ||||
| 3 | 0x8 | ||||
| 4 | 0xC | Last byte (13) |
In this example the job size and address are all aligned.
For example: Address un-aligned, Job Size Un-Aligned
Start address 0x1, Job size 14 bytes
| DMA Transaction | Job Address | Byte 0 | Byte 1 | Byte 2 | Byte 3 |
|---|---|---|---|---|---|
| 1 | 0x0 | First byte | |||
| 2 | 0x4 | ||||
| 3 | 0x8 | ||||
| 4 | 0xC | Last byte (14) |
In this example the job size and address are un aligned. Both first and last transaction are unaligned (<word)
For example: Address un-aligned, Job Size Un-Aligned
Start address 0x1, Job size 15 bytes
| DMA Transaction | Job Address | Byte 0 | Byte 1 | Byte 2 | Byte 3 |
|---|---|---|---|---|---|
| 1 | 0x0 | First byte | |||
| 2 | 0x4 | ||||
| 3 | 0x8 | ||||
| 4 | 0xC | Last byte (15) |
In this example the job size and address are un aligned. However last transaction is aligned.