Originally designed as a peripheral bus for desktop PCs, USB has evolved to support a wide range of platforms, including laptops, servers, and embedded systems.


USB Topology: Tiered Star

USB uses a tiered-star topology:

         Host Controller
              │
         Root Hub (Tier 1)
        ┌─────┼─────┐
      Hub    Device  Device
    (Tier 2)
    ┌───┼───┐
 Device Hub  Device
       (Tier 3)
       │
     Device

Topology Limits

Constraint Limit
Maximum tiers (including root) 7
Maximum hubs in a path 5 (between host and device)
Maximum devices on a bus 127 (7-bit address space)
Maximum cable length per segment 5 m (HS/FS), 3 m (SS)

Host Controller Fundamentals

All USB activity is managed by the Host Controller, which serves as the foundation of the USB architecture. Several types of host controllers exist, each supporting different device speeds.

Types of USB Host Controllers

Controller Speeds Supported Notes
UHCI (Universal Host Controller Interface) Low-speed, Full-speed Intel-designed; simpler hardware, more software overhead
OHCI (Open Host Controller Interface) Low-speed, Full-speed Compaq/Microsoft/National Semi; more hardware logic, less driver work
EHCI (Enhanced Host Controller Interface) High-speed (direct) Supports LS/FS via hubs with Transaction Translators (TT)

See also: Host Controller Registers


Host Controller Configurations


USB Speed Grades

Speed Data Rate Introduced Typical Use
Low-speed 1.5 Mbps USB 1.0 Keyboards, mice
Full-speed 12 Mbps USB 1.1 Audio devices, legacy peripherals
High-speed 480 Mbps USB 2.0 Storage, cameras, video
SuperSpeed 5 Gbps USB 3.0 Mass storage, video capture

Transaction Translators (TT)

When a low-speed or full-speed device is connected downstream of a high-speed hub, the hub must contain a Transaction Translator to bridge the speed difference.

The TT converts high-speed split transactions issued by the EHCI controller into the appropriate LS/FS transactions for the downstream device.