
S3C3410X RISC MICROPROCESSOR
DMA
6-3
Starting/Stopping DMA Transfer
The DMA can start its operation of transferring the data when the DMA controller receives the request from the
nDREQ signal through external pin, request from UART, request from SIO, or request from Timer1/3. In case of
data transfer between memories, the DMA can also start its operation when the user write the start bit(Run bit) in
DMA control register. When the entire data transfer specified in DMACNT has been finished, the DMA goes into
the idle mode. If users want to perform another DMA operation, the configuration of DMA operation should be
programmed again. The users can stop the DMA operation before its complete termination. By clearing the start
bit(Run bit), the users can stop the DMA operation even if the specified DMA operation is not finished. When
users stop the DMA operation, there will be interrupt generation which depends on the SI(Stop Interrupt) bit in
DMA control register. If SI bit is 0 in DMA control register, there will be DMA operation stop without the interrupt
generation. If users want to resume the DMA operation, users should re-run the DMA operation by setting the
start bit(RE bit) in DMA control register. To guarantee the complete DMA re-run, users should not change the
DMA configuration before the re-start.
DATA TRANSFER MODE
Single Step Mode
The single step mode is usually used for test or debugging because the bus mastership can be handed over to
other bus master between Read and Write. For the initiation of DMA operation, we need the activation of nDREQ
for each Read and Write cycle and there should be separate activation of nDACK for each Read and Write cycle.
In other word, we need two times DMA request and two times DMA acknowledge for single DMA operation. For
this reason, this kind of DMA operation is too slow and this is only for debugging purpose. During the inactive
period of nXDACK, i.e., between Read and Write cycle, the bus controller re-evaluates the bus priority to
determine the new bus mastership.
When the DMA request signal goes low, the bus controller can indicate the bus allocation for the DMA operation
by lowering the DMA Acknowledge signal if there is not higher priority bus request except this DMA request.
During the first low level period of the DMA Acknowledge signal, there will be a DMA read cycle. After the DMA
read cycle, there will be a rising of the DMA Acknowledge signal to indicate the end of the DMA read cycle.
Simultaneously, the next DMA write cycle will happen if the DMA request signal is still low at the rising edge of
DMA acknowledge. But, if the DMA request signal is already high at the rising edge of DMA acknowledge, the
next DMA write cycle will be delayed to the new coming activation of DMA Request signal. The Single Step Mode
of DMA operation can be initiated by the request from UART or SIO or Timer1/3 as well as nDREQ.
nDREQ
nDACK
RD/WR Cycle
Figure 6-2. External DMA requests (Single Mode)