USB 2.0: Highspeed mit 480 MBit/s

Neu: Split Transaction

In einem Mischsystem aus USB-1.x- und USB-2.0-Hardware gilt es, die Busbandbreite möglichst effektiv zu nutzen. Die Phase des Datenaustausches zwischen Hub und einem Full-/Low-Speed-Gerät basiert auf einem sequenziellen Ablauf. Der Transfer ist erst abgeschlossen, wenn das Device seinerseits innerhalb einer definierten Zeitspanne ein Datenpaket übermittelt hat. Der Host-Controller muss währenddessen auf die Antwort des Full-/Low-Speed-Peripheriegerätes warten.

Damit die Zeit bis zur Antwort nicht ungenutzt verstreicht, bedient man sich der so genannten Split Transaction. Sie wird zwischen dem USB-2.0-Host-Controller und einem USB-2.0-Hub initialisiert - sofern der Hub selbst mit USB-1.x-Peripherie verbunden ist.

Die High-Speed-Split-Transaction unterteilt sich in 2 Phasen: Den Beginn der Datenübertragung markiert ein als "start split" bezeichnetes, an die Full-/Low-Speed-Function gesendetes Token. Die Antwort beziehungsweise die Daten des Peripheriegerätes schickt der Hub nicht unmittelbar an den Host, sondern legt sie in einem Puffer ab. Nach senden des "start splits" kann der Host Controller daher zunächst mit anderen High-Speed-Transfers fortfahren, ohne zwingend auf die Antwort des Peripheriegerätes warten zu müssen. Das Ende der Split Transactionindiziert das "complete split"-Token. Der Hub sendet nun die Daten der Full-/Low-Speed-Function an den Host und beendet die Übertragung.