In order to realize the 480 Mbps bus operation for USB 2.0, a change in electrical specifications was necessary, but without sacrificing compatibility with USB 1.x. Furthermore, a change in protocol was required to allow 12/1.5 Mbps transfers to coexist with 480 Mbps transfers. The new specification also resolves issues that were evident in USB 1.x.

USB 2.0 is designed to allow data communication at 480 Mbps while maintaining compatibility with USB 1.x.
When a full/low-Speed device is connected to a port on the host, the port will operate at 12/1.5 Mbps. When a high-Speed device is attached, the port will operate at 480 Mbps. In these cases, there is no special procedure necessary to use high-Speed capable devices and full/low-Speed devices concurrently. However, when a full/low-Speed device is connected to a USB 2.0 hub, the hub must at the least be able to convert from 480 Mbps upstream packets to 12 Mbps or 1.5 Mbps full/low-Speed downstream packets, or from 12 Mbps or 1.5 Mbps full/low-Speed downstream packets to 480 Mbps upstream packets. Since the protocol for the USB 1.x device cannot be modified, the response time will not be improved even if the upstream is operating at 480 Mbps. The full/low-Speed device will still occupy the bus for the same amount of time, meaning that the improved rate of 480 Mbps cannot be used effectively.

 

Data transfer at 480 Mbps

 

To remedy the situation, a new transfer method called "split transaction" has been defined for USB 2.0. Split transactions can only be used between USB 2.0 hubs, and cannot be used by other function controllers. Each split transaction is composed of 2 transactions: a "start-split" that indicates the beginning of a transfer, and a "complete-split" that notifies the transfer result to the host. The host no longer needs to await response for the full/low-Speed transfer, and can hence make effect use of the greater bandwidth provided by USB 2.0.

 

Split Transaction : IN Token

 

Split Transaction : OUT Token

 

Split Transaction : Frame