The USB4 specification is based on the USB 3.2 specification and introduces the Thunderbolt 3 protocol specification. The Thunderbolt 3 protocol is a combination of the DP (full name is DisplayPort) video protocol and the PCIe data protocol.
The USB4 system structure consists of USB4 host and USB4 device, and USB4 devices include USB4 hub and USB4 external device.
The USB4 system structure is designed to meet the needs of multiple protocol transmissions. A total of 7 main features can be abstracted. These 7 main features are introduced one by one below.
Characteristics of USB4 system structure
1. Signaling rate to support high-throughput interconnection
10 Gbps (for the second generation, i.e. USB4 Gen 2) and 20 Gbps (for the third generation, i.e. USB4 Gen 3).
Optional support for Thunderbolt 3 compatible rates of 10.3125 Gbps (applicable to the second generation, i.e. USB4 Gen 2) and 20.625 Gbps (applicable to the third generation, i.e. USB4 Gen 3). The 40Gbps rate is USB4 Gen 3x2, which means two channels of transmission.
2. Hop-by-hop, credit-based traffic control.
Hop-by-hop refers to the Hop-by-Hop data packet forwarding mechanism. This mechanism is illustrated below by transmitting data packets between USB4 hosts, USB4 hubs and USB4 functional devices. The transmission of data packets relies on routers, which are divided into two types: host routers and device routers. The router of the USB4 host is called the host router, and the router of the USB4 hub and USB4 external device is called the device router. Data conversion between the router and the external interface relies on adapters.
In a USB4 host, the connection manager controls the host router and delivers packets to the USB4 hub's device router. At this time, the USB4 hub does not know how the data packet should be processed. The connection manager needs to be informed, and the connection manager specifies the forwarding path. With this process, the USB4 hub will pass the data packet to the USB4 external device.
Transmitting data between multiple routers is to repeat the above process. The transmission between each two adjacent routers needs to be specified through the USB4 host's connection manager in order to be able to transmit. A router is a jumping point, and multiple routers transmit data packets from one jumping point to another. This is the origin of hop-by-hop.
3. Bandwidth management and priority
The router should enable bandwidth arbitration for a given path. Each egress adapter contains a configurable traffic manager that performs bandwidth arbitration and prioritization on all paths through the adapter. The configuration of Traffic Manager is part of the path settings.
Bandwidth arbitration is to deal with the allocation of bandwidth occupied by data such as USB 3.2, DisplayPort, and PCIe.
The "priority" field in the path configuration space is valid for the entire transmission process of the router. It can be used to prioritize between queues in an ingress adapter, between different ingress adapters, between different egress adapters, and between queues within each egress adapter.
Queue: A structure for storing data, similar to queuing. Only deletion operations are allowed at the head of the team and addition operations at the tail are allowed.
The adapter for data input is called the inlet adapter, and the adapter for data output is called the egress adapter.
4. A programming model
Allows the connection manager to initialize and manage the USB4 domain in a manner that is transparent to the tunneling protocol and its software
A domain refers to a collection of interconnected routers controlled by a single connection manager. Tunneling protocol is a protocol that encapsulates different data (such as USB 3.2, DisplayPort and PCIe) together.
5. A time synchronization protocol used to synchronize real-time clocks across one or more USB4 domains
The time synchronization protocol provides a mechanism to highly accurately synchronize the real-time clock and absolute time of connected routers. The real-time clock is organized into a master-slave synchronization hierarchy, with the clock at the top of the hierarchy determining the reference time for the entire mechanism. The figure below shows the transmission between the host router and other routers. "M" is Master, which means master, and "S" is Slave, which means slave. The black rectangle represents the adapter.
6. Error detection, correction and recovery
Mechanisms for error checking and correction enable data to be transmitted accurately.
7. Link-level power management
USB4 only supports USB Type-C interface, VBUS and GND are the power and ground pins respectively. The USB Type-C socket has two pins, CC1 and CC2, which are used for USB PD fast charging protocol communication. The USB Type-C plug has only one CC1 and VCONN, which are only used for USB PD fast charging protocol communication. VCONN is used to power the marked cable, read cable information, confirm the load current, etc. The USB PD protocol also includes the configuration and selection of USB4 data.