CHAPTER 6 USB CONTROLLER
360 Preliminary User’s Manual S15543EJ1V0UM
6.6.8 Rx data corruption on Isochronous EndPoint
On Isochronous Rx EndPoint (EP2), one data packet comes per one frame.
If any Isochronous data packet doesn’t come between two SOF packet, it is assumed that Isochronous data is
corrupted.
In the case of corruption, action of USB Controller varies according to Rx Mode.
(a) Rx normal mode
USB Controller sets EP2ND (EndPoint2 No Data) bit (Bit 6) in USB General Status Register 2.
USB Controller doesn’t write any Rx indications.
USB Controller doesn’t write any data to Data Buffer on system memory.
(b) Rx assemble mode
USB Controller sets EP2ND (EndPoint2 No Data) bit (Bit 6) in USB General Status Register 2.
USB Controller writes dummy data to Data Buffer (In fact, USB Controller only increment pointer which addresses
Data Buffer by Max Packet Size. No DMA transfer occurs).
USB Controller writes Rx indications which indicates that received data is corrupted on Isochronous EndPoint.
(c) Rx separate mode
USB Controller sets EP2ND (EndPoint2 No Data) bit (Bit 6) in USB General Status Register 2.
USB Controller writes dummy data to Data Buffer (In fact, USB Controller only increment pointer which addresses
Data Buffer by Max Packet Size. No DMA transfer occurs).
USB Controller writes Rx indications which indicates that received data is corrupted on Isochronous EndPoint.
Example
When USB Controller receives USB Packet in Rx Assemble Mode or Rx Separate Mode, if data corruption occurs
on Isochronous Rx EndPoint (EndPoint4), Data Buffers becomes as Figure 6-25.
Shaded area in following figure is filled by valid data. If USB Controller detects that data is corrupted, next data
must be stored in Data Buffer which keeps area for corrupted data. Corrupted data area is equal to Max Packet Size
of Isochronous Rx EndPoint (EndPoint2).