R01UH0823EJ0100 Rev.1.00
Page 946 of 1823
Jul 31, 2019
RX23W Group
32. USB 2.0 Host/Function Module (USBc)
32.3.9
Isochronous Transfers (PIPE1 and PIPE2)
The USB has the following functions for isochronous transfers.
Notification of isochronous transfer error information
Interval counter (specified by the PIPEPERI.IITV[2:0] bits)
Isochronous IN transfer data setup control (IDLY function)
Isochronous IN transfer buffer flush function (specified by the PIPEPERI.IFIS bit)
32.3.9.1
Error Detection in Isochronous Transfers
The USB has a function for detecting the error information described below, so that when errors occur in isochronous
transfers, they can be controlled by software.
show the priority in which errors are
confirmed and the interrupts generated corresponding to errors.
(a) PID errors
If the PID of the received packet is illegal.
(b) CRC errors and bit stuffing errors
If an error occurs in the CRC of the received packet or the bit stuffing is illegal.
(c) Maximum packet size exceeded
The data of the received packet is larger than the specified maximum packet size.
(d) Overrun and underrun errors
When the host controller is selected
When the buffer memory is full at the token sending timing in the IN (receiving) direction.
When there is no data to be sent in the buffer memory at the token sending timing in the OUT (transmitting)
direction.
When the function controller is selected
When there is no data to be sent in the buffer memory at the token receiving timing in the IN (transmitting)
direction.
When the buffer memory is full at the token receiving timing in the OUT (receiving) direction.
(e) Interval errors
An interval error is generated on any of the following conditions when the function controller is selected.
During an isochronous IN transfer, an IN token could not be received in the interval frame.
During an isochronous OUT transfer, an OUT token could not be received in the interval frame.
Table 32.22
Error Detection When a Token is Received
Detection
Priority
Error
Generated Interrupt and Status
1
PID errors
No interrupts are generated in both cases when the host controller is selected and the
function controller is selected (ignored as a corrupted packet).
2
CRC errors and bit stuffing
errors
No interrupts generated in both cases when the host controller is selected and the
function controller is selected (ignored as a corrupted packet).
3
Overrun and underrun errors
An NRDY interrupt is generated to set the FRMNUM.OVRN flag to 1 in both cases when
the host controller is selected and function controller is selected.
When the function controller is selected, a zero-length packet is transmitted in response
to IN token. However, no data packets are received in response to OUT token.
4
Interval errors
An NRDY interrupt is generated when the function controller is selected. It is not
generated when the host controller is selected.