
IX PERIPHERAL MODULES 7 (USB): USB FUNCTION CONTROLLER (USB)
S1C33E07 TECHNICAL MANUAL
EPSON
IX-1-29
IX
USB
Asynchronous DMA transfer
This macro provides an 8-bit asynchronous DMA transfer function that outputs/inputs data, triggered by the
Data Transfer Request signal PDREQ, Data Transfer Permit signal PDACK and Read-strobe PDRD/Write-
strobe PDWR. This mode only supports the slave functionality, and enables data transfer either in Multi-word
or Single-word mode.
Asynchronous multi-word DMA transfer mode - slave
1) Writing operation
The Port interface starts writing operation in Asynchronous multi-word DMA transfer mode when the following
register settings are established:
DMA_Config_1.SingleWord bit = 0
Direction of the target endpoint = IN
The Port interface starts data transfer on the DMA when 1 is written on the DMA_Control.DMA_Go bit. After
data transfer starts on the DMA, it requests data transfer by asserting PDREQ to the HSDMA (master) if any
available space is found at the connected endpoint. The DMA loads the data and writes them to the endpoint
when PDWR is rising (when the DMA_Config_0.PDRDWR_Level bit is set to 1). When available space is
entirely consumed at the endpoint, the interface negates PDREQ to the HSDMA (master) to reject data transfer.
If any data is set to the DMA_Latency.DMA_Latency[3:0] bit other than 0h, this mode negates PDREQ
once after completing transfer of 4-byte data, and does not assert PDREQ as long as 130 ns
× N (N = DMA_
Latency.DMA_Latency[3:0]).
If the DMA is set to the Countdown mode with DMA_Config_1.CountMode = 1, the DMA completes data
transfer when the DMA_Count_HH, HL, LH and LL registers reach 0000_0000h. To force the DMA to
terminate data transfer, set the DMA_Control.DMA_Stop bit to 1. Note that forced termination of DMA
transfer by writing to this bit may cause loss of data from those being transferred. To avoid it, first terminate the
HSDMA (master) and then terminate the macro's DMA transfer.
PDREQ (O)
#PDREQ (O)
PDACK (I)
PDWR (I)
Data (I)
Data sampling
D0
D1
Dn-1
Dn
Inverted
Figure IX.1.4.3.1 Transfer Waveforms in Asynchronous Multi-Word DMA Transfer Mode - Writing
Providing 1 to the DMA_Config_1.DMA_RcvLimitMode bit enables the RcvLimit mode. The RcvLimit mode
is not available in Countdown mode.
When the DMA is writing asynchronously in RcvLimit mode, up to 16 bytes of data can be received even after
this macro negates PDREQ.
In this mode, PDREQ is negated when the available space is less than 32 bytes at the relevant endpoint as a
result of the DMA's writing operation. However, when PDREQ is negated, 16 bytes of data that have not been
written to the endpoint may exist within the internal circuit. Therefore, up to 16 bytes of data can be received
after PDREQ is negated.
In this mode, PDREQ is negated before the endpoint becomes completely full. If the region set with the
EP{a,b,c,d}StartAdrs register is the same as that set with the EP{a,b,c,d}MaxSize register (Single Buffer), the
endpoint never becomes full, and data cannot be transmitted through USB IN transfer.