10.3.5.3 USB Transfer Event Definitions

A transfer is composed of one or several transactions as shown in the table below.

Table 10-7. USB Transfer Events
TransferTransaction
DirectionType
CONTROL (bidirectional)Control Transfer (1)
  • Setup transaction → Data IN transactions → Status OUT transaction
  • Setup transaction → Data OUT transactions → Status IN transaction
  • Setup transaction → Status IN transaction
IN (device toward host)Bulk IN Transfer
  • Data IN transaction → Data IN transaction
Interrupt IN Transfer
  • Data IN transaction → Data IN transaction
Isochronous IN Transfer (2)
  • Data IN transaction → Data IN transaction
OUT (host toward device)Bulk OUT Transfer
  • Data OUT transaction → Data OUT transaction
Interrupt OUT Transfer
  • Data OUT transaction → Data OUT transaction
Isochronous OUT Transfer (2)
  • Data OUT transaction → Data OUT transaction
Note:
  1. Control transfer must use endpoints with one bank and can be aborted using a stall handshake.
  2. Isochronous transfers must use endpoints configured with two or three banks.

An endpoint handles all transactions related to the type of transfer for which it has been configured.

Table 10-8. UDPHS Endpoint Description
Endpoint #MnemonicNb BanksDMAHigh BandwidthMax. Endpoint SizeEndpoint Type
0EPT_01NN64Control
1EPT_13YY1024Ctrl/Bulk/Iso(1)/Interrupt
2EPT_23YY1024Ctrl/Bulk/Iso(1)/Interrupt
3EPT_32YN1024Ctrl/Bulk/Iso(1)/Interrupt
4EPT_42YN512Ctrl/Bulk/Iso(1)/Interrupt
5EPT_52YN512Ctrl/Bulk/Iso(1)/Interrupt
6EPT_62YN512Ctrl/Bulk/Iso(1)/Interrupt
7EPT_72YN512Ctrl/Bulk/Iso(1)/Interrupt
8EPT_81NN512Ctrl/Bulk/Iso(1)/Interrupt
9EPT_91NN512Ctrl/Bulk/Iso(1)/Interrupt
10EPT_101NN512Ctrl/Bulk/Iso(1)/Interrupt
11EPT_111NN512Ctrl/Bulk/Iso(1)/Interrupt
12EPT_121NN512Ctrl/Bulk/Iso(1)/Interrupt
13EPT_131NN512Ctrl/Bulk/Iso(1)/Interrupt
14EPT_141NN512Ctrl/Bulk/Iso(1)/Interrupt
15EPT_151NN512Ctrl/Bulk/Iso(1)/Interrupt
Note:
  1. In Isochronous (Iso) mode, it is preferable that the high bandwidth capability is available.

The size of the internal DPRAM is 16448 bytes, covering the memory need for the endpoints, hence enabling static allocation of the memory for all endpoints.

Suspend and resume are automatically detected by the UDPHS device, which notifies the processor by raising an interrupt.