User's Manual

Table Of Contents
R01UH0823EJ0110 Rev.1.10 Page 386 of 1852
Nov 30, 2020
RX23W Group 18. DMA Controller (DMACA)
18.8 Usage Notes
18.8.1 DMA Transfer to Peripheral Modules
In DMA transfer to a peripheral module, the ACT bit in DMSTS of DMACm may be cleared to 0 (DMAC transfer
suspended) during the period from the beginning of the final data write to the end of the peripheral bus access.
18.8.2 Access to the Registers during DMA Transfer
The DMSAR, DMDAR, DMCRA, DMCRB, DMTMD, DMINT, DMAMD, DMOFR, and DMCSL registers of
DMACm must not be accessed while the ACT bit in DMSTS of the same channel is set to 1 (DMAC active state) or the
DTE bit in DMCNT of the same channel is set to 1 (DMA transfer enabled).
18.8.3 DMA Transfer to Reserved Areas
DMA transfer to the reserved areas is prohibited. If such an access is made, transfer results are not guaranteed. For
details on the reserved areas, see section 4, Address Space.
18.8.4 Interrupt Request by the DMA Activation Source Flag Control Register (DMCSL)
at the End of each Transfer
While the DMACm.DMCSL.DISEL bit is 1, an interrupt is issued to the CPU at the end of each transfer that has been
activated by one DMA request. Unlike the transfer end interrupt that the DMAC outputs or the escape end interrupt, the
interrupt of this type is issued to the CPU at the end of DMA transfer without clearing the interrupt flag of the DMAC
activation source to 0 by changing the interrupt request destination to the CPU. In this case, since the interrupt flag is not
cleared to 0 at the end of DMAC transfer, it should be cleared to 0 by the CPU interrupt routine.
The interrupt flag is cleared when the CPU interrupt is accepted.
For the change of the settings on the interrupt flag or the interrupt request destination, see section 15, Interrupt
Controller (ICUb). For the DMACm.DMCSL.DISEL bit setting, see section 18.2.12, DMA Activation Source Flag
Control Register (DMCSL).
18.8.5 Setting of DMAC Activation Source Select Register of the Interrupt Controller
(ICU.DMRSRm)
The DMAC activation source select register (ICU.DMRSRm) should be set while the DMA transfer enable bit
(DMACm.DMCNT.DTE) is cleared to 0 (DMA transfer is disabled). Moreover, the DTC activation enable register
(ICU.DTCERm) that corresponds to the same vector number that has been set by the ICU.DMRSRm register should not
be set to 1. For details on the ICU.DTCERn and ICU.DMRSRm, see section 15, Interrupt Controller (ICUb).
18.8.6 Suspending or Restarting DMA Activation
To suspend a DMA activation request, write 0 to the interrupt enable bit for the activation source (ICU.IERn.IENj bit).
To restart the DMA transfer, write 1 to the ICU.IERn.IENj bit with the setting shown in section 18.3.7, Activating the
DMAC.