DMAC
9.3 Functional Description of the DMAC
9
<When transfer size = 8 bits>
<When transfer size = 16 bits>
Transfer count
Transfer address
Transfer count
Transfer address
1
2
H'0080 1000
H'0080 1001
H'0080 1002
|
1
2
H'0080 1000
H'0080 1002
H'0080 1004
|
3
3
|
|
31
32
H'0080 101E
H'0080 101F
31
32
H'0080 103C
H'0080 103E
↓
↓
↓
↓
1
2
|
H'0080 1000
1
2
|
H'0080 1000
H'0080 1001
|
H'0080 1002
|
Figure 9.3.4 Example of How Addresses Are Incremented in 32-channel Ring Buffer Mode
9.3.10 End of DMA and Interrupt
In normal mode, DMA transfer is terminated by an underflow of the transfer count register. When transfer fin-
ishes, the transfer enable bit is cleared to "0" and transfers are thereby disabled. Also, an interrupt request is
generated at completion of transfer. However, if interrupt requests on any channel have been masked by the
DMA Interrupt Request Mask Register, no interrupt requests are generated on that channel.
During ring buffer mode, the transfer count register operates in free-run mode, and transfer continues until the
transfer enable bit is cleared to "0" (to disable transfer). In this case, therefore, no interrupt requests are gener-
ated at completion of DMA transfer. Nor are these DMA transfer-completed interrupt requests are generated
even when transfer in ring buffer mode is terminated by clearing the transfer enable bit.
9.3.11 Each Register Status after Completion of DMA Transfer
When DMA transfer is completed, the status of the source and destination address registers becomes as fol-
lows:
(1) Address fixed
• The values set in the address registers before DMA transfer started remain intact (fixed).
(2) Address incremental
• For 8-bit transfer, the values of the address registers are the last transfer address + 1.
• For 16-bit transfer, the values of the address registers are the last transfer address + 2.
The transfer count register at completion of DMA transfer is in an underflow state (H’FFFF). Therefore, before
another DMA transfer can be performed, the transfer count register must be set newly again, except when trying
to perform transfers 65,536 times (H’FFFF).
32180 Group User’s Manual (Rev.1.0)
9-37