Concepts
The General USB Process
Packets in More Detail
Packets are a block of information with a defined data structure. The packet is the lowest level of the USB transfer hierarchy describing the physical layer of the interface. If you were to monitor D+ and D- you would see the packet fields:
General
Packet Identifier Address Endpoint Data Frame number
CRC
Token Packet format:
SOF Packet format:
| Field | PID | Address | Endpoint | CRC |
|
|
|
|
|
|
|
|
| Bits | 8 | 7 | 4 | 5 |
|
|
|
|
|
|
| |
| Field | PID | Frame Number | CRC |
| |
|
|
|
|
|
|
|
| Bits | 8 |
| 11 | 5 |
|
|
|
|
|
|
|
|
Software –
Data Packet format: | Field | PID | Data | CRC |
|
|
|
|
|
| |
Bits | 8 | 16 |
| ||
|
| ||||
|
|
|
|
|
|
Handshake Packet format: | Field |
| PID |
|
|
|
|
|
|
| |
Bits |
| 8 |
|
| |
|
|
|
| ||
|
|
|
|
|
|
CRC covers everything in the packet with the exception of the PID which has its own error checking mechanism.