
iXPeRiPheRaLMoDuLes7(usB):usBFunCtionContRoLLeR(usB)
s1C33L17teChniCaLManuaL
ePson
iX-1-17
IX
USB
Figure IX.1.4.1.7 illustrates the data flow in IN transfer. The FIFO region for an IN endpoint is connected to the
Port interface. Also, the FIFO region assigned to this endpoint is assumed to be twice as large as the maximum
packet size.
F1
F2
F3
F4
F5
F6
F7
F8
F9
F10
U3
U2
U1
USB
Portwriting
Port
FIFO
FigureIX.1.4.1.7ExampleofDataFlowinINTransfer
(U1) In the first IN transaction, an NAK response is returned since the FIFO has no valid maximum packet
size data.
(U2) Data transfer of the maximum packet size is performed in the second IN transaction.
(U3) Data transfer of the maximum packet size is performed in the third IN transaction.
(F1) The FIFO is blank.
(F2) Port transfer is started and valid data is written into the FIFO. (The PDREQ signal is asserted.)
(F3) As the FIFO still has an available space, Port transfer is continuing.
(F4) Since the FIFO contains valid maximum packet size data, the macro responds to the IN transaction with
data packet transmission. As the transaction is not closed yet, the region from which data are transmitted
is not freed. The FIFO is full, causing Port transfer to stop. (The PDREQ signal is negated.)
(F5) Although data packet transmission in the IN transaction has been completed, the FIFO region is not freed
since the transaction is not closed. Port transfer remains discontinued.
(F6) The FIFO region is freed as the transaction is closed upon reception of an ACK handshake packet.
(F7) As the FIFO now has some available space, Port transfer is resumed. (The PDREQ signal is asserted.)
(F8) The macro responds to an IN transaction and transmits a data packet. Since the FIFO has some available
space, Port transfer continues.
(F9) Although data packet transmission in the IN transaction has been completed, the FIFO region is not freed
since the transaction is not closed. Since the FIFO has some available space, Port transfer continues.
(F10) The FIFO region is freed when the transaction is closed upon reception of an ACK handshake packet.
Although Port transfer pauses as all the available space has been consumed, it is resumed upon closing of
the IN transaction that creates available space.