USB Frames
Last modified by Microchip on 2023/11/10 11:19
USB data transfers occur through a series of events called transactions. Transactions are conducted within a host-controlled time interval called a frame. The length and frequency of the transactions depend upon the transfer type being used for an endpoint.
The type of transfer which can be sent in a frame and the frame length is defined by the specified speed of the USB.
The four possible USB transfer types allowed are:
- Interrupt
- Bulk
- Isochronous
- Control
Frame Specifications
LOW SPEED Frame size: 1 ms
Supported Transfer Types | Maximum Size of Transfer | Transfers per Frame | Maximum Theoretical Throughput |
---|---|---|---|
Control | 1 | 8 K bytes/sec | |
Interrupt | 1 | 8 K bytes/sec | |
Bulk | - | 0 | - |
Isochronous | - | 0 | - |
FULL SPEED Frame size: 1 ms
Supported Transfer Types | Maximum Size of Transfer | Transfers per Frame | Maximum Theoretical Throughput |
---|---|---|---|
Control | 64 bytes | 1 | 64 kbytes/s |
Interrupt | 64 bytes | 1 | 64 kbytes/s |
Bulk | 64 bytes | Up to 19 | 1.2 Mbytes/s |
Isochronous | 1023 bytes | 1 | 1023 kbytes/s |
HIGH SPEED Frame size: 125 μs
Supported Transfer Types | Maximum Size of Transfer | Transfers per Frame | Maximum Theoretical Throughput |
---|---|---|---|
Control | 64 bytes | 1 | 64 kByte/s |
Interrupt | 1024 bytes | up to 3 | 24 MByte/s |
Bulk | 512 bytes | up to 13 | 53 MByte/s |
Isochronous | 1024 bytes | up to 3 | 24 MByte/s |