beautypg.com

8 rx data corruption on isochronous endpoint – NEC Network Controller uPD98502 User Manual

Page 360

background image

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).