
ML66525 Family User’s Manual
Chapter 17 USB Control Function
17 - 6
17.3.6
Data Packet Transmission and Reception Procedure During Isochronous
Transfer Mode
Transfer of data is the major function in the isochronous transfermode. When carrying out
isochronous transfer between USB controller and the host, the following packet communications
are carried out via the USB bus for the data transfer of each packet.
(a) Token packet transfer (IN token or OUT token) from the host to USB controller.
(b) Data packet transfer in the desired direction (from the host to the device or from the device
to the host).
In the isochronous transfer mode, there is no handshaking that reports whether or not the packet
transfer was done normally.
The interrupt cause is SOF. Upon receiving this interrupt, CPU writes the packet data into the
transmit FIFO of the EP set for transmission (ISO IN) in the isochronous transfer mode, or reads
out data from the receive FIFO of the EP set for reception (ISO OUT) in the isochronous transfer
mode.
The above procedures of transferring one packet of data are explained below for transmission
and reception separately.
1)
During transmission
The EP for ISO IN has a two-layer FIFO configuration. One FIFO is used for storing the
packet data that is written in by the MCU via the local bus. The other FIFO is used for
transmitting the stored data to the USB bus when an IN token is received. The roles of the
two FIFOs are interchanged when an SOF packet is received.
Upon receiving an SOF interrupt, CPU writes the data to be transmitted during the next
frame into the corresponding transmit FIFO of the EP of USB controller. When the host
transmits an IN token packet, USB controller transmits to the host the packet data written in
the transmit FIFO during one frame before the current frame.
2)
During reception
The EP for ISO OUT has a two-layer FIFO configuration. One FIFO is used for storing the
packet data that is output to the local bus when the MCU reads the received packet data.
The other FIFO is used for storing the packet data received from the USB bus. The roles of
the two FIFOs are interchanged when an SOF packet is received.
Upon receiving an SOF interrupt, CPU reads out the data that has been received during the
previous frame from the corresponding receive FIFO of the EP of USB controller. When
the host transmits an OUT token and a data packet to USB controller, USB controller stores
that received data packet in the receive FIFO, and that data packet is read out by CPU
during the next frame.