Packets on the Bus
437
Ethernet and IEEE-1394b. The encoding converts each byte value to a 10-bit
Data Symbol for transmitting. The encoded data has no more than five ones or
zeroes in series and contains equal numbers of ones and zeroes over time. As
with USB 2.0 data, frequent transitions enable the receiver to synchronize with
the transmitted data without requiring a separate clock line. The roughly equal
numbers of transmitted ones and zeroes provide DC balance, which prevents
errors that could occur due to a DC component in the signal. The encoding
also enables error detecting by monitoring the number of received ones and
zeroes over time.
Because the encoded data has more bits than the data being encoded, extra
symbols are available to perform special functions. Data Symbols represent val-
ues from 00h to FFh and Special Symbols perform functions used in framing
data and managing link-level communications.
The SuperSpeed signaling rate, or speed of the bits on the wires in each direc-
tion, is 5 Gbps. The USB 3.0 specification refers to the rate as 5 GT/s
(GigaTransfers per second). The 8b/10b encoding increases the number of bits
to be transmitted by 25%, so 5 Gbps on the bus translates to 4 Gbps, or 500
MB/s, of unencoded data. Framing, error detecting, and other protocols reduce
the theoretical maximum data throughput to around 400 MB/s in each direc-
tion.
SuperSpeed links use low-frequency periodic signaling (LFPS) for exiting
low-power states and performing Warm Resets. The signaling consists of bursts
of a frequency for a specified time and repeat rate. The LFPS frequency is in the
range 10–50 MHz, is easy to generate, and uses little power.
.KPM.C[GT
A SuperSpeed link is the physical and logical connection between two ports.
The physical connection consists of a cable segment and the two ports, or link
partners, the cable connects. The link partners manage the link by communi-
cating via link commands and other signaling on the link when the wires aren’t
carrying other traffic. Each port provides state machines and buffers to manage
the connection and data transfers with the link partner. State machines generate
link commands to acknowledge received header packets, recover from errors,
implement flow control, and manage power on the link. An upstream-facing
port must detect when its link has been idle for 10
µs and send a special link
command to indicate that the port is present. Link commands transmit when
the link isn’t carrying Transaction Packets. Downstream-facing ports detect