SAM3SD8C Atmel Corporation, SAM3SD8C Datasheet - Page 961

no-image

SAM3SD8C

Manufacturer Part Number
SAM3SD8C
Description
Manufacturer
Atmel Corporation
Datasheets
Figure 36-7. Data IN Transfer for Non Ping-pong Endpoint
11090A–ATARM–10-Feb-12
11090A–ATARM–10-Feb-12
USB Bus Packets
TXPKTRDY Flag
(UDP_CSRx)
TXCOMP Flag
(UDP_CSRx)
FIFO (DPR)
Content
Using Endpoints With Ping-pong Attribute
Set by the firmware
Data IN
PID
Prevous Data IN TX
Data IN 1
Interrupt Pending
The use of an endpoint with ping-pong attributes is necessary during isochronous transfer. This
also allows handling the maximum bandwidth defined in the USB specification during bulk trans-
fer. To be able to guarantee a constant or the maximum bandwidth, the microcontroller must
prepare the next data payload to be sent while the current one is being sent by the USB device.
Thus two banks of memory are used. While one is available for the microcontroller, the other
one is locked by the USB device.
Figure 36-8. Bank Swapping Data IN Transfer for Ping-pong Endpoints
When using a ping-pong endpoint, the following procedures are required to perform Data IN
transactions:
Cleared by Hw
Data IN 1
Microcontroller
1 st Data Payload
2 nd Data Payload
3 rd Data Payload
DPR access by the firmware
ACK
PID
Load In Progress
Set by the firmware
Microcontroller Load Data in FIFO
PID
Data IN
Bank 0
Endpoint 1
Bank 1
Endpoint 1
Bank 0
Endpoint 1
Write
NAK
PID
Cleared by Firmware
USB Device
PID
DPR access by the hardware
Data IN
Bank 0
Endpoint 1
Bank 1
Endpoint 1
Bank 0
Endpoint 1
Read
Read and Write at the Same Time
Data is Sent on USB Bus
Data IN 2
Payload in FIFO
Data IN 2
USB Bus
Cleared by Hw
SAM3S8/SD8
SAM3S8/SD8
2 nd Data Payload
3 rd Data Payload
1 st Data Payload
Data IN Packet
Data IN Packet
Data IN Packet
ACK
PID
Cleared by
Firmware
Interrupt
Pending
961
961

Related parts for SAM3SD8C