USB4 Logical Layer CTS Rev 1.10 - CLEAN
USB4 Logical Layer CTS Rev 1.10 - CLEAN
USB4 Logical Layer CTS Rev 1.10 - CLEAN
Revision: 1.10
Copyright © 2023, USB Implementers Forum, Inc.
USB Type-C™, USB-C™ and USB4™ are trademarks of the Universal Serial Bus Implementers Forum (USB-IF).
Thunderbolt™ is a trademark of Intel Corporation. All product names are trademarks, registered trademarks, or
service marks of their respective owners.
2
Revision History:
3
4
Contents
Introduction ...................................................................................................................................................................8
Terminology ..................................................................................................................................................................9
Assertions .................................................................................................................................................................... 10
Reserved Fields and Values .................................................................................................................................... 11
Chapter 1 ............................................................................................................................................................. 11
Router Assertions .................................................................................................................................................... 12
Chapter 4 ............................................................................................................................................................. 12
Chapter 8 ............................................................................................................................................................. 63
Chapter 13 ........................................................................................................................................................... 65
Re-timer Assertions ................................................................................................................................................. 74
Chapter 4 ............................................................................................................................................................. 74
Chapter 6 ............................................................................................................................................................. 86
Test Requirements ....................................................................................................................................................... 92
Hardware ................................................................................................................................................................. 92
Timing ..................................................................................................................................................................... 92
Product .................................................................................................................................................................... 92
USB4 Mode Test Setups.............................................................................................................................................. 93
Notes and Best Practices ......................................................................................................................................... 93
Host ......................................................................................................................................................................... 93
AN_HOST_DFP1 ............................................................................................................................................... 93
AN_HOST_DFP2 ............................................................................................................................................... 94
EX_HOST_DFP1 ............................................................................................................................................... 94
EX_HOST_DFP2 ............................................................................................................................................... 95
DC_HOST_DFP1 ............................................................................................................................................... 95
Hub .......................................................................................................................................................................... 96
AN_HUB_UFP1 ................................................................................................................................................. 96
EX_HUB_UFP1 ................................................................................................................................................. 96
AN_HUB_DFP1 ................................................................................................................................................. 97
EX_HUB_DFP1 ................................................................................................................................................. 97
EX_HUB_DFP2 ................................................................................................................................................. 98
DC_HUB_UFP1 ................................................................................................................................................. 98
DC_HUB_DFP1 ................................................................................................................................................. 99
Peripheral Device .................................................................................................................................................. 100
5
AN_DEV_UFP1 ............................................................................................................................................... 100
EX_DEV_UFP1................................................................................................................................................ 100
DC_DEV_UFP1 ............................................................................................................................................... 101
TBT3-Compatibility Mode Test Setups .................................................................................................................... 101
Host ....................................................................................................................................................................... 101
AN_HOST_ DFP1—TBT3_01......................................................................................................................... 101
Hub ........................................................................................................................................................................ 103
AN_HUB_UFP1—TBT3_01 ........................................................................................................................... 103
AN_HUB_DFP1—TBT3_03 ........................................................................................................................... 103
Peripheral Device .................................................................................................................................................. 104
AN_DEV_UFP1—TBT3_01 ............................................................................................................................ 104
Subroutines ................................................................................................................................................................ 105
Router Enumeration Procedure ............................................................................................................................. 105
Lane Bonding Initiation Procedure ....................................................................................................................... 105
Configuration Space Reset Procedure ................................................................................................................... 105
Router Assembly Reset Procedure ........................................................................................................................ 106
Host Router ....................................................................................................................................................... 106
Device Router ................................................................................................................................................... 106
Router Assembly Connect Procedure .................................................................................................................... 107
Router Assembly Disconnect Procedure ............................................................................................................... 107
Loopback Path Setup............................................................................................................................................. 107
Loopback Path Teardown...................................................................................................................................... 108
Initiate Read From SB Register Space .................................................................................................................. 108
Initiate Write to SB Register Space ....................................................................................................................... 108
USB4 Mode Tests – No Exerciser ............................................................................................................................. 110
Background Checks .............................................................................................................................................. 110
Sideband Channel Background Check .............................................................................................................. 110
Lane 0/Lane 1 Background Check .................................................................................................................... 112
Test Descriptions ................................................................................................................................................... 113
USB4 Mode Tests – Exerciser Required ................................................................................................................... 165
Background Checks .............................................................................................................................................. 165
Sideband Channel Background Check .............................................................................................................. 165
Lane 0/Lane 1 Background Check .................................................................................................................... 167
Test Descriptions ................................................................................................................................................... 168
TBT3-Compatibility Tests – No Exerciser ................................................................................................................ 201
Background Checks .............................................................................................................................................. 201
6
Sideband Channel Background Check .............................................................................................................. 201
Lane 0/Lane1 Background Check ..................................................................................................................... 203
Test Descriptions ................................................................................................................................................... 204
7
Introduction
The tests in this specification verify that the Logical Layer of Router in a Router Assembly is compliant with the
USB4™ Specification. If the Router Assembly contains one or more On-Board Re-timers, additional tests verify
that the Logical Layer of the Re-timer(s) in the Router Assembly are compliant the USB4 Re-timer Specification.
8
Terminology
The following table describes the terms used in this document.
Compliance Device A KG USB4 Device that is capable of performing Transport Layer Packet loopback.
The KG USB4 Device is configured by USB4 CV (when USB4 CV is upstream of the
UUT) or the Exerciser (when the Exerciser is upstream of the UUT). Unless specified
otherwise, the Compliance Device is configured as an ordinary KG USB4 Device. See
the USB4 Connection Manager Guide for more information on how a USB4 Device is
configured.
Exerciser The compliance test tool (hardware and software) that implements USB4 Port
functionality and the behavior required for compliance testing.
KG USB4 Device “Known Good” USB4 Device. A USB4 Device that is known to be compliant with the
USB4 Specification.
KG USB4 Host “Known Good” USB4 Host. A USB4 Host that is known to be compliant with the USB4
Specification.
PUT Port Under Test. The USB4 Port on a UUT that is the test point for compliance testing.
USB4 CV USB4 Command Verifier software. The software that runs compliance tests and
analyzes the results.
USB4 Product Refers to a USB4 host, USB4 hub, and/or USB4 device. Includes silicon, reference
platforms, and end product.
UUT Unit Under Test. The Router Assembly that is being tested for compliance.
VIF Vendor Information File. File provided by UUT vendor that provides information about
the characteristics and capabilities of the UUT.
9
Assertions
Compliance criteria are provided as a list of assertions that describe specific characteristics or behaviors that must be
met. Each assertion provides a reference to the USB4™ specification or other documents from which the assertion
was derived. In addition, each assertion provides a reference to the specific test description(s) where the assertion is
tested.
Assertion#: Unique identifier for each spec requirement. The identifier is in the form
USB4_SPEC_SECTION_NUMBER#X, where X is a unique integer for a requirement in that section.
Test #: A label for a specific test description in this specification that tests this requirement. Test # can have one of
the following values:
NT This item is not explicitly tested in a test description. Items can be labeled NT for several reasons –
including items that are not testable, not important to test for interoperability, or are indirectly tested
by other operations performed by the compliance test.
X.X This item is covered by the test described in test description X.X in this specification.
Test descriptions provide a high level overview of the tests that are performed to check the compliance criteria. The
descriptions are provided with enough detail so that a reader can understand what the test does. The descriptions do
not describe the actual step-by-step procedure to perform the test.
10
Reserved Fields and Values
Chapter 1
The following Table presents the USB4 Specification Chapter 1 asserts regarding reserved fields and values.
1.7#1 BC A transmitter shall not use a value in this specification that is marked as
“Rsvd”.
1.7#2 TD 4.052 The target of a Transaction shall ignore a Transaction that has any of its
defined fields set to an Rsvd value and proceed as if the Transaction was never
received.
1.7#3 TBD A transmitter shall not use a value in this specification that is marked as
“Rsvd”.
1.7#4 TBD The target of an Ordered Set shall ignore an Ordered Set that has any of its
defined fields set to an Rsvd value and proceed as if the Ordered Set was never
received.
1.7#6 TD 4.052 A receiver shall ignore any fields that are marked “Rsvd”.
11
Router Assertions
Chapter 4
The following Table presents the USB4 Specification Chapter 4 asserts.
4 Logical Layer
4.1.1 Transactions
4.1.1.1 Symbols
4.1.1.1#1 IOP A Sideband Channel shall encode all transmitted Symbols using the 10-bit
Start/Stop encoding scheme as follows: A Start bit (logical 0b), Eight bits of
payload, and A Stop bit (logical 1b).
4.1.1.2#1 IOP The symbols within a transaction shall be sent in ascending order.
4.1.1.2#2 IOP The bits within a symbol shall be sent in the order from bit 0 to bit 7.
4.1.1.2.1 LT Transactions
4.1.1.2.1#1 BC An LT Transaction shall consist of the three Symbols described in Table 4-1.
4.1.1.2.1#2 NT Within a LSE Symbol: Bit 5 (LSELane) shall be 0b (for Lane 0) or 1b (for
Lane 1).
4.1.1.2.1#3 BC Within a LSE Symbol: Bit 5 (LSELane) shall be set to 0b when issuing an
LT_LRoff Transaction.
4.1.1.2.1#4 BC Within a LSE Symbol: Bits [7:6] (StartLT) shall be set to 10b.
4.1.1.2.1#5 TD 4.027 The recipient of an LT Transaction shall verify that the CLSE Symbol payload
is a bitwise complement of the LSE Symbol payload.
4.1.1.2.1#6 TD 4.027 An LT Transaction that fails this check shall be dropped and no further action
shall be taken on its behalf.
4.1.1.2.2 AT Transactions
4.1.1.2.2#2 BC The number of Data Symbols (n) in an AT Transaction shall not exceed 66.
4.1.1.2.2#3 NT Within a STX Symbol for an AT Transaction: Bit 0 (CmdNotResp) shall be set
to 0b for an AT Response or 1b for an AT Command.
12
4.1.1.2.2#4 BC Within a STX Symbol: Bit 1 (ReturnBounce) shall be set to 0b.
4.1.1.2.2#5 BC Within a STX Symbol for an AT Transaction: Bit 2 (Recipient) shall be set to
1b.
4.1.1.2.2#6 BC Within a STX Symbol for an AT Transaction: Bit 3 (Bounce) shall be set to
0b.
4.1.1.2.2#7 BC Within a STX Symbol for an AT Transaction: Bit 4 (Responder) shall be set to
0b.
4.1.1.2.2#8 BC Within a STX Symbol for an AT Transaction: Bits [7:6] (StartAT) shall be set
to 00b.
4.1.1.2.2#9 BC A Router that receives an AT Command with the Recipient bit set to 1b shall
respond with an AT Response.
4.1.1.2.3 RT Transactions
4.1.1.2.3.1#1 BC A Broadcast RT Transaction shall have the format shown in Table 4-5.
4.1.1.2.3.1#2 NT Within a STX Symbol for a Broadcast RT Transaction: Bits [7:6] (StartRT)
shall be set to 01b.
4.1.1.2.3.1#3 NT Within a STX Symbol for a Broadcast RT Transaction: Bit 5 (Broadcast) shall
be set to 1b.
4.1.1.2.3.1#4 BC Within a STX Symbol for a Broadcast RT Transaction: Bits [4:1] (Index) shall
be set to 0.
TD 4.005
13
4.1.1.2.3.2 Addressed RT Transaction
4.1.1.2.3.2#1 BC An Addressed RT Transaction shall have the format shown in Table 4-9.
4.1.1.2.3.2#3 NT Within a STX Symbol for an Addressed RT Transaction: Bits [7:6] (StartRT)
shall be set to 01b.
4.1.1.2.3.2#5 NT Within a STX Symbol for an Addressed RT Transaction: Bits [4:1] (Index) in
an Addressed RT Command shall be set to 0 if the target of the Transaction is
the first Router or Re-timer that receives the Transaction.
4.1.1.2.3.2#6 NT Else, shall be set to the Re-timer Index of the Re-timer that is the target of the
Command.
4.1.1.2.3.2#8 NT A Router that receives an Addressed RT Command with the Index field set to
0 shall respond with an Addressed RT Response.
4.1.1.2.3.2#9 TD 4.001 A Router shall not respond to Addressed RT Commands with a non-zero
Index field.
4.1.1.2.4#2 TD 4.028 When a receiver receives two or more leading DLE symbols it shall discard
the extra leading DLE symbols and process the received LT Transaction as if
only one leading DLE symbol was received
4.1.1.2.4#6 BC Only the STX and Data Symbols shall be used in CRC calculation.
14
4.1.1.2.4#7 BC The CRC shall be calculated in increasing Symbol order, starting with the
STX Symbol.
4.1.1.2.4#8 BC Within each Symbol, CRC shall be calculated from bit[7] to bit[0].
4.1.1.2.4#9 BC The CRC shall be calculated using the following rules: Width: 16; Poly:
8005h; Init: FFFFh; RefIn: True; RefOut: True; XorOut: 0000h.
4.1.1.2.5#1 IOP A Router shall process AT Commands and AT Responses arriving from the
Link Partner or Re-timer in the order received.
4.1.1.2.5#3 TD 4.004 A Router shall not send an AT Command or Addressed RT Command while it
is waiting for a response for either a previously sent AT Command or a
previously sent Addressed RT Command.
4.1.1.2.5.1 AT Commands
15
4.1.1.2.6#4 TD 4.029 An AT Response or an RT Response shall not be sent in response to such a
sequence.
4.1.1.3#1 NT A Router shall maintain one SB Register Space per USB4 Port.
4.1.1.3.1#3 IOP For a Write Command, COMMAND_DATA register Contents shall appear
least significant byte first.
4.1.1.3.1#5 IOP For a Read Response, RESPONSE_DATA register contents shall appear low-
ordered byte first.
16
4.1.1.3.1#11 IOP When a Router receives an AT Command or an RT Command, it shall process
the AT or RT Command according to Table 4-14 and in the order listed: All
other read operations, perform the Read Command and send a Read Response
with the contents of the register being accessed in the RESPONSE_DATA
field.
4.1.1.3.2#1 NT When the Pending bit in a USB4 Port Capability is set to 1b, a Router shall: If
the Target field in the USB4 Port Capability is set to 000b, the Router shall
issue an access to the SB Register Space of the Port.
4.1.1.3.2#2 NT The Router shall access the register identified in the Address field in the USB4
Port Capability.
17
4.1.1.3.2#3 NT The Router shall access the number of bytes indicated in the Length field.
4.1.1.3.2#4 NT If the WnR field is set to 0b, the Router shall read from the SB Register Space.
4.1.1.3.2#5 NT If the WnR field is set to 1b, the Router shall write to the SB Register Space.
4.1.1.3.2#6 NT The Router shall write the contents from the Data DWs in the USB4 Port
Capability.
4.1.1.3.2#8 NT When the Pending bit in a USB4 Port Capability is set to 1b, a Router shall: If
the Target field in the USB4 Port Capability is set to 001b, the Router shall
send an AT Command on the Sideband Channel of the Port to access the SB
Register Space of the Link Partner.
4.1.1.3.2#9 NT The AT Command shall have the following contents: The REG field shall be
set to the contents of the Address field in the USB4 Port Capability.
4.1.1.3.2#10 NT The AT Command shall have the following contents: The LEN field shall be
set to the contents of the Length field in the USB4 Port Capability.
4.1.1.3.2#11 NT The AT Command shall have the following contents: The WnR field shall be
set to the contents of the WnR field in the USB4 Port Capability.
4.1.1.3.2#12 NT The AT Command shall have the following contents: If the WnR field is set to
1b, the COMMAND_DATA Symbols shall contain the contents from the
Data DWs in the USB4 Port Capability. Register contents shall appear least
significant byte first.
4.1.1.3.2#13 NT When the Pending bit in a USB4 Port Capability is set to 1b, a Router shall: If
the Target field in the USB4 Port Capability is set to 010b, the Router shall
send an Addressed RT Command on the Sideband Channel of the Port to
access the SB Register Space of a Re-timer on the Link.
4.1.1.3.2#14 NT The Addressed RT Command shall have the following contents: The Index
field in an Addressed RT Command shall be set to the contents of the Re-timer
Index in the USB4 Port Capability.
4.1.1.3.2#15 NT The Addressed RT Command shall have the following contents: The REG
field in an Addressed RT Command shall be set to the contents of the Address
field in the USB4 Port Capability.
4.1.1.3.2#16 NT The Addressed RT Command shall have the following contents: The LEN
field in an Addressed RT Command shall be set to the contents of the Length
field in the USB4 Port Capability.
4.1.1.3.2#17 NT The Addressed RT Command shall have the following contents: The WnR
field in an Addressed RT Command shall be set to the contents of the WnR
field in the USB4 Port Capability.
18
4.1.1.3.2#18 NT The Addressed RT Command shall have the following contents: If the WnR
field in an Addressed RT Command is set to 1b, the COMMAND_DATA
Symbols shall contain the contents from the Data DWs in the USB4 Port
Capability. Register contents shall appear least significant byte first.
4.1.1.3.2#21 TD 4.004 When a response to a local access is ready or when a Response Transaction is
received, the Router shall update the USB4 Port Capability as follows: The No
Response bit is updated.
4.1.1.3.2#24 TD 4.004 The Router shall then set the Pending bit in the USB4 Port Capability to 0b.
4.1.1.3.3#1 TD 4.003 A Write operation to a field with the RO access type shall have no effect.
4.1.1.3.3#2 NT A Read operation to a field with the RO access type shall return a meaningful
value.
4.1.1.3.3#3 NT A field with the RW access type shall be capable of both Read operation and
Write operation.
4.1.1.3.3#4 NT The value read from a field with RW access type shall reflect the last value
written to it unless the field was reset in the interim.
4.1.1.3.3#6 TD 4.005 The SB Register Space registers shall have the structure and fields described
in Table 4-17.
4.1.1.3.3#7 NT Registers not listed in Table 4-17 are undefined and shall not be used.
4.1.1.3.3#8 TD 4.005 The Vendor ID Low field shall contain the same value as the lower byte of the
Vendor ID field in Router Configuration Space.
4.1.1.3.3#9 TD 4.005 The Vendor ID High field shall contain the same value as the higher byte of
the Vendor ID field in Router Configuration Space.
19
4.1.1.3.3#10 TD 4.005 The Product ID Low field shall contain the same value as the lower byte of the
Device ID field in Router Configuration Space.
4.1.1.3.3#11 TD 4.005 The Product ID High field shall contain the same value as the higher byte of
the Device ID field in Router Configuration Space.
4.1.1.3.3#12 CH8 A Router shall write the Completion Metadata (if any) to the Metadata field
after executing a Port Operation.
4.1.1.3.3#13 TD 4.005 The Enabling Decision (Lane 0) field shall indicate whether or not Lane 0 is
enabled during Lane Initialization: 0b = Adapter is in CLd state and 1b = Lane
is Enabled.
4.1.1.3.3#14 TD 4.005 The Enabling Decision (Lane 1) field shall indicate whether or not Lane 1 is
enabled during Lane Initialization: 0b = Adapter is in CLd state and 1b = Lane
is Enabled.
4.1.1.3.3#15 TD 4.005 A Router shall set the Enabling Request (Lane 0) bit to 0b when the Lane
Disable bit in the USB4 Adapter Configuration Capability for Lane 0 is 1b.
Otherwise this bit shall be set to 0b.
4.1.1.3.3#16 NT A Lane 1 Adapter shall not request enabling unless the Lane 0 Adapter
requests enabling.
4.1.1.3.3#17 NT Deprecated.
4.1.1.3.3#18 NT A Router shall set the Enabling Request (Lane 1) bit to 0b when the Lane
Disable bit in the USB4 Adapter Configuration Capability for Lane 1 is 1b.
Otherwise this bit shall be set to 1b. Otherwise this bit shall be set to 1b.
4.1.1.3.3#19 NT A USB4 Port shall only set the Gen 3 Support bit to 1b if all of the following
are true: The Port supports Gen 3 speeds; All On-Board Re-timers connected
between the Port and the cable support Gen 3 speeds; The Port implements
both a Lane 0 Adapter and a Lane 1 Adapter; The Target Link Speed field in
the Lane Adapter Configuration Capability is 1100b.
4.1.1.3.3#21 NT A USB4 Port shall set the RS-FEC Request (Gen 2) bit to the same value as
the Request RS-FEC Gen 2 bit in the USB4 Port Capability.
4.1.1.3.3#22 NT A USB4 Port shall set the RS-FEC Request (Gen 3) bit to the same value as
the Request RS-FEC Gen 3 bit in the USB4 Port Capability.
4.1.1.3.3#23 TD 4.005 The USB4 Sideband Channel field shall be set to 1b.
4.1.1.3.3#24 TD 4.005 A USB4 Port shall only set the TBT3-Compatible Speeds Supported bit to 1b
if all On-Board Re-timers connected between the Router and the cable support
TBT3-compatible speeds.
4.1.1.3.3#25 TD 4.005 Bit 2 through 7 of byte 2 in the Link Configuration register are 0 (reserved).
20
4.1.1.3.3#26 TD 4.005 The Clock Switch Done (Lane 0) bit shall be set to the value of the Rx Locked
(Lane 0) bit.
4.1.1.3.3#27 TD 4.005 The Clock Switch Done (Lane 1) bit shall be set to the value of the Rx Locked
(Lane 1) bit.
4.1.1.3.3#28 CH8 A Router shall write the Completion Data (if any) to the Data field after
executing a Port Operation.
4.1.2#1 IOP The Sideband Channel shall initialize each Lane independently.
4.1.2#2 IOP Initialization shall occur for all enabled USB4 Ports on a Router.
4.1.2.1#1 NT A USB4 Port shall not continue on to Phase 2 until it has obtained the
connection information described in this section.
4.1.2.1#2 NT A USB4 Port shall not proceed to Phase 2 if the Link is not USB4.
4.1.2.1.1#1 IOP When a Router detects a reverse insertion on a USB Type-C connector, it shall
perform Lane Reversal in the USB4 Port that faces the reversed connector.
4.1.2.1.1#3 IOP The Router shall swap the designation of Lane 0 and Lane 1 and shall
associate the Lane 0 Adapter with the updated Lane 0 and the Lane 1 Adapter
with the updated Lane 1.
4.1.2.1.1#4 IOP If there are no On-Board Re-timers between Router and the USB Type-C
connector, the Router shall swap its SBTX and SBRX lines facing the
connector.
4.1.2.2#1 TD 4.005 After completion of phase 1, a Host Router shall initiate Router detection by
driving SBTX to logic high on all of its Downstream Facing Ports.
4.1.2.2#2 TD 4.005 When a Device Router detects a logic high on SBRX of its Upstream Facing
Port for tConnectRx time, it shall drive SBTX to logic high on all of its USB4
Ports.
21
4.1.2.2#3 NT After a USB4 Port drives its SBTX to logic high and detects a logic high on its
SBRX for tConnectRx time, it shall set its Link Initialization in Progress bit to
1b, then transition to Phase 3 of Lane Initialization.
4.1.2.3#1 TD 4.005 During phase 3, Router A shall read the Link Configuration Register (register
12) of Router B using AT Transactions.
4.1.2.3#2 TD 4.005 Router A shall issue at least one more register read to Router B in order to
avoid a tATTimeout delay at the Link Partner.
4.1.2.3#4 TD 4.005 (Enabling) If Enabling Request = 1b in the SB Register Space of the Ports of
both Router A and Router B, Router A shall: set the local Enabling Decision
bit for the Lane to 1b.
4.1.2.3#5 NT (Enabling) Else, Router A shall not initialize the Lane. The Lane shall remain
in CLd state.
4.1.2.3#6 TD 4.005 (Enabling) Else, Router A shall set the local Enabling Decision bit for the
Lane to 0b.
4.1.2.3#7 TD 4.005 (Dual-Lane) Router A shall set the Bonding Enabled bit in the USB4 Port
Capability to 1b if all of the following are true: The USB4 Ports of Router A
and Router B both have the Enabling Request bit set to 1b for both Lanes of
the USB4 Port; The USB4 Ports of Router A and Router B both support Lane
bonding (i.e. the Bonding Support bit is 1b in the SB Register Space of the
Ports on both sides of the Lane).
4.1.2.3#8 TD 4.005 (Dual-Lane) Otherwise, Router A shall set Bonding Enabled bit to 0b.
4.1.2.3#9 IOP (Speed) Router A shall operate at Gen 3 Lane speed if all of the following are
true: The Ports on both sides of the Lane support Gen 3 (Gen 3 Support is set
to 1b); The cable over which Router A and Router B are communicating
supports Gen 3.
4.1.2.3#10 IOP (Speed) Otherwise, Router A shall operate at Gen 2 Lane Speed.
4.1.2.3#11 TD 4.005 (Speed) Router A shall set the Current Link Speed field in the USB4 Adapter
Configuration Capability to reflect whether it is operating at Gen 2 or Gen 3
Lane speed.
4.1.2.3#12 IOP (RS-FEC) At Gen 2 speed, Router A shall enable RS-FEC if both sides of the
Link request it (i.e. the RS-FEC Request (Gen 2) bit is set to 1b in the SB
Register Space of both the local USB4 Port and its Link Partner).
4.1.2.3#14 TD 4.005 (RS-FEC) For Gen 2 speed, Router A shall set the RS-FEC Enabled (Gen 2)
bit in the USB4 Port Capability to reflect whether it is operating with RS-FEC.
22
4.1.2.3#15 IOP (RS-FEC) For Gen 3 speed, shall enable RS-FEC if both sides of the Link
request it (i.e. the RS-FEC Request (Gen 3) bit is set to 1b in the SB Register
Space of both the local USB4 Port and its Link Partner).
4.1.2.3#17 TD 4.005 (RS-FEC) For Gen 3 speed, Router A shall set the RS-FEC Enabled (Gen 3)
bit in the USB4 Port Capability to reflect whether it is operating with RS-FEC.
4.1.2.4#1 TD 4.005 (Step 1) Router A shall send a Broadcast RT Transaction every tLaneParams
with the parameter values in Table 4-18.
TD 4.031
4.1.2.4#2 TD 4.005 (Step 1) Router A shall continue sending Broadcast RT Transactions until all
of the following conditions are true, then continue to step 2): At least
TD 4.031
tLTPhase4 time has passed from completion of Phase 2; Router A has sent
Broadcast RT Transactions at least twice; Router A has received a Broadcast
RT Transaction from Router B.
4.1.2.4#3 TD 4.005 (Step 2) Router A shall activate the transmitter on each enabled Lane at the
selected speed and shall send SLOS1.
4.1.2.4#4 TD 4.005 (Step 3) After its transmitter is transmitting a valid signal, Router A shall then
send an LT_Resume Transaction for each enabled Lane in the USB4 Port and
shall set to 1b the Tx Active bit in the Tx Status byte of the TxFFE Register in
the SB Register Space to indicate that it has started transmission on the target
Lane.
4.1.2.4#5 TD 4.005 (Step 3) The LSELane field in the LT_Resume Transaction shall equal the
Lane number associated with the transmitter.
4.1.2.5#1 TD 4.005 Router A’s transmitter shall perform the transmitter flow in the symmetric
equalization flow defined in Section 4.1.2.5.1.1.
4.1.2.5#2 TD 4.005 A Router shall use Addressed RT Transactions with the Index field set to 0 to
access the SB Register Space of the adjacent component, which can be either
an On-Board Re-timer, a Cable Re-timer, or Router B.
4.1.2.5#3 TD 4.005 Router B’s receiver shall perform the receiver flow in the symmetric
equalization flow defined in Section 4.1.2.5.1.2.
4.1.2.5#4 TD 4.005 The Router shall use Addressed RT Transactions with the Index field set to 0b
to access the SB Register Space of the adjacent component, which can be
either an On-Board Re-timer, a Cable Re-timer, or Router A.
4.1.2.5#5 TD 4.005 A Router shall set the Clock Switch Done bit to 1b in the SB Register space of
the Ports of a USB4 Port after all of the USB4 Port’s receivers complete the
equalization flow.
23
4.1.2.5.1 Phase 5 – Symmetric TxFFE Negotiation
4.1.2.5.1.1#1 NT (Step 1) The transmitter shall start with the following default values in the Tx
Status byte of the TxFFE register: Tx Active bit = 1b; Request Done bit = 0b.
4.1.2.5.1.1#2 TD 4.005 (Step 2) The transmitter shall read the Rx Status & TxFFE Request byte of the
receiver.
4.1.2.5.1.1#3 TD 4.005 (Step 3) On reception of a Response from the receiver, The transmitter shall
do the following: If Rx Locked = 1, then negotiation is complete and no
further TxFFE negotiation steps are taken; Else, if New Request = 0, the
receiver has not provided a new request yet. The transmitter shall retry step 2
within tPollTXFFE of receiving the Response; Else, this is a new request to
update TxFFE parameters. Continue on to step 4.
4.1.2.5.1.1#4 TD 4.005 (Step 4) The transmitter shall update its transmitter parameters based on the
new parameters in the received Response.
4.1.2.5.1.1#5 TD 4.005 (Step 4) The transmitter shall update its Tx Status byte with the following
values: TxFFE Setting = the index (from 16 possible values) loaded above to
the TxFFE configuration configured at the transmitter; Request Done = 1b.
4.1.2.5.1.1#6 TD 4.005 (Step 5) The transmitter shall read the Rx Status & TxFFE Request byte of the
receiver.
4.1.2.5.1.1#7 TD 4.005 (Step 6) On reception of a Response from the receiver, the transmitter shall do
the following: If New Request = 1, the receiver is still trying to lock on a
previous request. The transmitter shall retry step 5 within tPollTXFFE of
receiving the Response; Else, the transmitter shall set the Request Done bit in
the Tx Status byte to 0b, and return to step 2.
4.1.2.5.1.2#1 NT (Step 1) The receiver shall start with the following default values in the Rx
Status & TxFFE Request byte of the TxFFE register: Rx Locked bit = 0b; New
Request bit = 1b; Rx Active bit = 0b.
4.1.2.5.1.2#2 TD 4.005 (Step 2) The receiver shall read the transmitter’s Tx Status byte.
4.1.2.5.1.2#3 TD 4.005 (Step 3) On reception of a Response from the transmitter, the receiver shall do
the following: If Tx Active = 1b, then enable the receiver, set Rx Active to 1b,
and continue on to Step 4; Else, repeat step 2 within tPollTXFFE of receiving
the Response.
4.1.2.5.1.2#4 TD 4.005 (Step 4) The receiver shall evaluate its receiver behavior and shall set the Rx
Locked bit to 1b if equalization is complete.
4.1.2.5.1.2#5 TD 4.005 (Step 5) The receiver shall do the following: If Rx Locked = 1, then TXFFE
negotiation is complete and no further negotiation steps are taken.
24
4.1.2.5.1.2#6 TD 4.005 (Step 5) The receiver shall do the following: If Rx Locked = 0, the receiver
shall: Select a new set of TxFFE parameters and set the TxFFE Request field
to the index of the selected set of TXFFE parameters; Set the New Request bit
to 1b; Continue with the steps below.
4.1.2.5.1.2#7 TD 4.005 (Step 6) The receiver shall read the transmitter’s Tx Status byte.
4.1.2.5.1.2#8 TD 4.005 (Step 7) On reception of a Response from the transmitter, the receiver shall do
the following: If (Tx Active = 1b) AND (Request Done = 1b) AND (TxFFE
Setting = value of TxFFE request in the local Rx Status & TxFFE Request
byte), then continue on to Step 8.
4.1.2.5.1.2#9 TD 4.005 (Step 7) On reception of a Response from the transmitter, the receiver shall do
the following: If (Tx Active = 0b) OR (Request Done = 0b) OR (TxFFE
Setting != value of TxFFE request in the local Rx Status & TxFFE Request
byte), repeat step 5 within tPollTXFFE of receiving the Response.
4.1.2.5.1.2#10 NT (Step 8) The receiver shall evaluate its receiver behavior and set the Rx
Locked bit to 1b if equalization is complete.
4.1.2.5.1.2#11 TD 4.005 (Step 9) The receiver shall set the New Request bit to 0b.
4.1.2.5.1.2#12 TD 4.005 (Step 10) The receiver shall read the transmitter’s Tx Status byte by sending a
read Command to the transmitter that targets its TxFFE register.
4.1.2.5.1.2#13 TD 4.005 (Step 11) On reception of a Response from the transmitter, the receiver shall
do the following: If (Tx Active = 1b) and (Request Done = 0b), then go to
Step 4.
4.1.2.5.1.2#14 TD 4.005 (Step 11) On reception of a Response from the transmitter, the receiver shall
do the following: If (Tx Active = 0b) or (Request Done = 1b), repeat Step 9
within tPollTXFFE of receiving the Response.
4.2.1.1 Disabled
4.2.1.1.1#1 TD 4.006 An Adapter shall enter this state from Training state or CL0 state when the
Lane Disable bit in the Lane Adapter Configuration Capability is set to 1b.
4.2.1.1.1#2 TD 4.006 A Lane Adapter shall set the Plugged bit to 0b upon transitioning to Disabled
state.
25
4.2.1.1.2 Behavior in State
4.2.1.1.3#1 NT An Adapter shall exit this state when the Lane Disable bit in the Lane Adapter
Configuration Capability is set to 0b
4.2.1.1.3#2 NT A disabled Adapter shall stay in the Disabled state for a minimum of
tDisabled.
4.2.1.1.3#3 NT If the Lane Disable bit is set to 0b less than tDisabled after sending the
LT_Fall Transaction, the Adapter shall not transition to the CLd state until
tDisabled has elapsed.
4.2.1.2 CLd
4.2.1.2.1#1 NT An Adapter shall enter this state on any of the following events: Router power
on.
4.2.1.2.1#2 NT An Adapter shall enter this state on any of the following events: The USB4
Port is disconnected and Lane Disable bit in the Lane Adapter Configuration
Capability is set to 0b.
4.2.1.2.1#3 NT An Adapter shall enter this state on any of the following events: Router enters
Sleep state.
4.2.1.2.1#4 NT In addition to the events listed above, a Lane Adapter that is not the Upstream
Adapter shall enter this state on any of the following events: Adapter exits
from the Disabled state.
4.2.1.2.1#5 NT In addition to the events listed above, a Lane Adapter that is not the Upstream
Adapter shall enter this state on any of the following events: Adapter receives
an LT_Fall Transaction.
4.2.1.2.2#1 NT A Lane Adapter that enters this state due to a disconnect shall enter Lane
Initialization starting from Phase 1.
4.2.1.2.2#2 TD 4.007 A Lane Adapter that enters this state from the Disabled State performs Lane
Initialization after the Lane is enabled. The Lane Adapter shall start Lane
Initialization from Phase 4. The USB4 Port shall maintain any state acquired
in Phases 1 through 3 of previous Lane Initialization.
4.2.1.2.2#3 NT A Lane Adapter that enters this state due to the Router entering Sleep state
performs Lane Initialization after a Wake event. The Lane Adapter shall start
Lane Initialization from Phase 2.
4.2.1.2.2#4 TD 4.033 A Lane Adapter that enters this state due to Link training timeout shall
perform Lane Initialization starting from Phase 1
26
4.2.1.2.2#5 NT Deprecated.
4.2.1.2.2#6 NT Deprecated.
4.2.1.2.2#7 NT Deprecated.
4.2.1.2.3#1 NT A Lane Adapter shall exit this state when the Lane’s High-Speed transmitter is
transmitting (completion of Phase 4 of Lane Initialization) and its receiver is
enabled.
4.2.1.2.3#2 TD 4.009 After exiting the CLd state, a Lane Adapter shall transition to the
Training.LOCK1 state.
4.2.1.3 Training
4.2.1.3.1#1 NT A Lane Adapter shall enter this state on any of the following events: After
exiting the CLd state.
4.2.1.3.1#2 TD 4.040 A Lane Adapter shall enter this state on any of the following events: When
recovering from a USB4 Link error.
TD 4.041
4.2.1.3.1#3 TD 4.010 A Lane Adapter shall enter this state on any of the following events: After
exiting the CL2 or CL1 states.
TD 4.011
TD 4.012
TD 4.013
4.2.1.3.2#1 TD 4.009 A Lane Adapter shall follow the Training Sub-state machine described in
Figure 4-9 with the behavior described in Table 4-19 and the sub-state
TD 4.032
transitions described in Table 4-20.
TD 4.033
4.2.1.3.2#2 NT If the transition to Training state is from CLx state, the sub-state transitions
shall occur within tTrainingTransition time from receiving the last bit of the
relevant Symbols.
27
4.2.1.3.3 Exit from State
4.2.1.3.3#1 TD 4.009 A Lane Adapter that transitions from CLd state to Training state shall
complete training and transition to the CL0 state within tTrainingAbort1 after
entering the Training state.
4.2.1.3.3#2 NT If the Adapter does not transition to CL0 state within tTrainingAbort1, the
Router shall initiate a Disconnect by driving SBTX to a logical low state for
tDisconnectTx.
4.2.1.3.3#3 TD 4.040 A Lane Adapter that transitions from a state other than CLd to Training state
shall complete training and transition to the CL0 state within tTrainingAbort2
after entering the Training state.
4.2.1.3.3#4 TD 4.033 If the Adapter does not transition to CL0 state within tTrainingAbort2, the
Router shall initiate a Disconnect by driving SBTX to a logical low state for
tDisconnectTx.
4.2.1.3.3#5 TD 4.006 A Hot Plug Event Packet shall be sent on transition to CL0 state if the Adapter
is part of a Downstream Facing Port and it entered Training state from a CLd
state.
4.2.1.3.3#6 TD 4.009 A Lane Adapter shall set the Plugged bit to 1b when it transitions from the
Training state to the CL0 state.
4.2.1.3.4#1 IOP When operating in Gen 2 mode with RS-FEC encoding disabled, SLOS shall
be encoded using 64b/66b encoding.
4.2.1.3.4#2 IOP When operating in Gen 2 mode with RS-FEC encoding enabled, SLOS that
are not RS-FEC encoded shall be encoded using 128b/132b encoding.
4.2.1.3.4#3 IOP When operating in Gen 3 mode, SLOS that are not RS-FEC encoded shall be
encoded using 128b/132b encoding.
4.2.1.3.4#4 IOP The SLOS1 and SLOS2 shall not be scrambled, and the scrambler shall not
advance upon receive/transmit.
4.2.1.3.4#5 TD 4.009 When transmitting SLOS1 or SLOS2 using 64b/66b encoding, a Router shall
transmit all 32 SLOS Symbols in their entirety.
4.2.1.3.4#6 TD 4.009 When using 128b/132b encoding, a Router shall transmit all 16 SLOS
Symbols in their entirety.
4.2.1.3.5#1 NT A TS1 Ordered Set and a TS2 Ordered Set shall have the structure in Table 4-
25.
28
4.2.1.3.5#2 TD 4.036 Bits 63:59 (Rsvd) of a TS1 or TS2 Ordered Set shall be ignored by a receiver.
4.2.1.3.5#3 TD 4.009 Bits 58:56 (Lane Bonding Target) of a TS1 or TS2 Ordered Set shall be set
according to the value of the Target Link Width field of the USB4 Adapter
Configuration Capability: 000b – Establish two single-Lane Links and 001b –
Establish a dual-lane Link. All other values are reserved and shall not be used.
4.2.1.3.5#4 TD 4.009 Bits 55:48 (Lane Number) of a TS1 or TS2 Ordered Set shall be set to match
the Lane number: 00h - Lane 0 and 01h - Lane 1. All other values are reserved
and shall not be used.
4.2.1.3.5#5 TD 4.009 Bits 47:32 (Rsvd) of a TS1 or TS2 Ordered Set shall be ignored by a receiver.
TD 4.036
4.2.1.3.5#6 BC Bits 31:29 (Rsvd) of a TS1 or TS2 Ordered Set shall be set to 0 by a
transmitter.
4.2.1.3.5#7 TD 4.036 Bits 31:29 (Rsvd) of a TS1 or TS2 Ordered Set shall be ignored by a receiver.
4.2.1.3.5#8 TD 4.009 A Transmitter shall set bits 28:26 (Lane Bonding Target 2) of a TS1 or TS2
Ordered Set to match the Lane Bonding Target field.
4.2.1.3.5#9 TD 4.036 Bits 28:26 (Lane Bonding Target 2) of a TS1 or TS2 Ordered Set shall be
ignored by a receiver.
4.2.1.3.5#10 TD 4.036 Bits 25:16 (Rsvd) of a TS1 or TS2 Ordered Set shall be ignored by a receiver.
4.2.1.3.5#11 TD 4.009 Bits 9:0 (SCR) of a TS1 or TS2 Ordered Set shall be set to 00 1111 0010b to
indicate that Ordered Set contents are scrambled.
4.2.1.4 CL0
4.2.1.4.1#1 TD 4.005 A Lane Adapter shall enter this state upon any of the following events:
Successful completion of Lane training.
TD 4.009
4.2.1.4.1#2 TD 4.009 A Lane Adapter shall enter this state upon any of the following events:
Successful completion of Lane Bonding.
4.2.1.4.1#3 TD 4.014 A Lane Adapter shall enter this state upon any of the following events: Exit
from CL0s state
TD 4.015
4.2.1.4.3#1 NT A Lane Adapter shall exit this state after one of the following occurs: Adapter
Disable.
29
4.2.1.4.3#2 NT A Lane Adapter that exits this state due to an Adapter disable shall transition
to either the Disabled state or the CLd state as defined in Section 4.4.6.
4.2.1.4.3#3 NT A Lane Adapter shall exit this state after one of the following occurs: Adapter
disconnect. An Adapter that exits this state due to a disconnect event shall
transition to the CLd state.
4.2.1.4.3#4 NT A Lane Adapter shall exit this state after one of the following occurs:
Reception of an LT_Fall Transaction. The Adapter shall transition to the CLd
state.
4.2.1.4.3#5 TD 4.040 A Lane Adapter shall exit this state after one of the following occurs:
Transition to Training state when: An error event occurs that transitions the
TD 4.041
Lane Adapter to the Training.LOCK1 state.
4.2.1.4.3#6 TD 4.032 A Lane Adapter shall exit this state after one of the following occurs:
Transition to Training state when: Reception of any 2 SLOS Symbols in a row
TD 4.033
transitions the Lane Adapter either to the Training.LOCK1 sub-state or to the
Training.LOCK2 sub-state.
4.2.1.4.3#7 NT A Lane Adapter shall exit this state after one of the following occurs:
Transition to CL0s, CL1, or CL2 states.
4.2.1.4.3#8 TD 4.009 A Lane Adapter shall exit this state after one of the following occurs:
Transition to Lane Bonding state when either: The Lane Bonding bit in the
TD 4.010
USB4 Adapter Configuration Capability Register of either Adapter in the
TD 4.011 USB4 Port is set to 1b.
TD 4.014
TD 4.015
4.2.1.4.3#9 TD 4.010 A Lane Adapter shall exit this state after one of the following occurs:
Transition to Lane Bonding state when either: 3 TS1 Ordered Sets are received
in a row.
4.2.1.4.3#10 NT A Lane Adapter shall not exit this state to enter Lane Bonding state while it is
sending a Transport Layer Packet.
4.2.1.4.3#11 NT The Adapter shall complete sending the packet before entering Lane Bonding
state.
4.2.1.5.1#1 TD 4.009 A Lane Adapter shall enter this state from CL0 state on any of the following
events: The Lane Bonding bit in the Lane Adapter Capability Register of
either Adapter in the USB4 Port is set to 1b.
4.2.1.5.1#2 TD 4.009 An Adapter shall enter this state from CL0 state on any of the following
events: Three TS1 Ordered Sets are received in a row.
30
4.2.1.5.2 Behavior in State
4.2.1.5.2#1 TD 4.009 A Lane Adapter shall follow the Lane Bonding sub-state machine described in
Figure 4-10 with the behavior described in Table 4-26 and the state transitions
TD 4.034
described in Table 4-27.
4.2.1.5.2#2 NT In TS1 state, transmitter shall send back-to-back TS1 Ordered Sets.
4.2.1.5.2#3 NT In TS2 state, transmitter shall send back-to-back TS2 Ordered Sets.
4.2.1.5.3#1 TD 4.009 A Lane Adapter shall exit this state as defined in Table 4-27.
4.2.1.5.3#2 TD 4.009 A Lane Adapter that exits this state due to successful completion shall
transition to the CL0 state.
4.2.1.5.3#3 TD 4.009 A Lane Adapter that transitions to CL0 state shall continue sending TS2
Ordered Sets until the other Adapter enters CL0 state.
4.2.1.5.3#4 NT A Lane Adapter that exits this state due to unsuccessful completion (i.e.
Transitions 2, 4, and 5 in Table 4-27) shall transition to the Training.LOCK2
sub-state
4.2.1.6#1 NT When a Lane Adapter supports CLx states, it shall enter or reject a CLx state
as described in Section 4.2.1.6.2.
4.2.1.6#2 NT When a Lane Adapter does not support CLx states, it shall reject entry to CLx
state as described in Section 4.2.1.6.2.
4.2.1.6.1#1 NT Bits 9:0 (SCR) in a CL2_REQ Ordered Set payload shall be set to 00 1111
0010b to indicate that the Ordered Set contents are scrambled.
4.2.1.6.1#2 NT Bits 9:0 (SCR) in a CL1_REQ Ordered Set payload shall be set to 00 1111
0010b to indicate that the Ordered Set contents are scrambled.
4.2.1.6.1#3 TD 4.010 Bits 9:0 (SCR) in a CL2_ACK Ordered Set payload shall be set to 00 1111
0010b to indicate that the Ordered Set contents are scrambled.
TD 4.011
4.2.1.6.1#4 TD 4.012 Bits 9:0 (SCR) in a CL1_ACK Ordered Set payload shall be set to 00 1111
0010b to indicate that the Ordered Set contents are scrambled.
TD 4.013
4.2.1.6.1#5 TD 4.014 Bits 9:0 (SCR) in a CL0s_ACK Ordered Set payload shall be set to 00 1111
0010b to indicate that the Ordered Set contents are scrambled.
TD 4.015
31
4.2.1.6.1#6 TD 4.010 Bits 9:0 (SCR) in a CL_NACK Ordered Set payload shall be set to 00 1111
0010b to indicate that the Ordered Set contents are scrambled.
TD 4.011
TD 4.012
TD 4.013
4.2.1.6.1#7 NT Bits 9:0 (SCR) in a CL_OFF Ordered Set payload shall be set to 00 1111
0010b to indicate that the Ordered Set contents are scrambled.
4.2.1.6.1.1#1 NT A CL_WAKE1.X Ordered Set shall not be scrambled, and the scrambler shall
not advance upon receive/transmit.
32
4.2.1.6.1.2#6 NT When operating in Gen 2 mode and RS-FEC encoding is enabled, a
CL_WAKE2.X Ordered Set has the structure of an SLOS2 with 128b/132b
Encoding and the following modifications: Bits [63:56] of an odd numbered
Symbol payload shall be the logical inverse of CXh, where “X” is the
hexadecimal index from the last CL_WAKE1.X Ordered Set received.
4.2.1.6.1.2#7 NT When operating in Gen 3 mode, a CL_WAKE2.X Ordered Set has the
structure of an SLOS2 with 128b/132b Encoding and the following
modifications: Bits [127:120] of an even numbered Symbol payload shall be
CXh, where “X” is the hexadecimal index from the last CL_WAKE1.X
Ordered Set received.
4.2.1.6.1.2#8 NT When operating in Gen 3 mode, a CL_WAKE2.X Ordered Set has the
structure of an SLOS2 with 128b/132b Encoding and the following
modifications: Bits [127:120] of an odd numbered Symbol payload shall be
the logical inverse of CXh, where “X” is the hexadecimal index from the last
CL_WAKE1.X Ordered Set received.
4.2.1.6.1.2#9 TD 4.011 A CL_WAKE2.X Ordered Set shall not be scrambled, and the scrambler shall
not advance upon receive/transmit.
TD 4.013
4.2.1.6.2#1 TD 4.010 (Requesting Port) The request Ordered Set shall be sent back-to-back until a
response Ordered Set is received from the Link Partner.
TD 4.011
TD 4.012
TD 4.013
4.2.1.6.2#2 NT (Requesting Port) An Adapter shall send CL2_REQ Ordered Sets when its
USB4 Port does not assert any objections to enter CL2 state.
4.2.1.6.2#3 NT (Requesting Port) An Adapter shall send CL1_REQ Ordered Sets when its
USB4 Port asserts an objection to enter CL2 state but does not assert any
objections to enter CL1 state.
4.2.1.6.2#5 NT (Requesting Port) If the Requesting Port asserts an objection after the Lane
Adapter has sent a request Ordered Set, the Lane Adapter shall ignore the
objection until the Lane Adapter is either in a CLx state or receives a
CL_NACK Ordered Set.
33
4.2.1.6.2#6 NT (Responding Port) A Lane Adapter shall reject a request to enter a Low Power
state when all of the following are true: The Adapter has already sent a request
to enter the same low power state; and The PM Secondary bit in the Lane 0
Adapter and/or the Lane 1 Adapter of the Responding Port is set to 0b.
4.2.1.6.2#7 TD 4.010 The Lane Adapter shall send CL_NACK Ordered Sets for as long as it
receives the request Ordered Set from the Link Partner.
TD 4.011
TD 4.012
TD 4.013
4.2.1.6.2#8 NT A Lane Adapter that receives a CL1_REQ Ordered Set after it has sent a
CL2_REQ Ordered Set, shall accept the request by responding with
CL1_ACK Ordered Sets. The Adapter shall stop sending CL2_REQ Ordered
Sets.
4.2.1.6.2#9 NT A Lane Adapter that receives a CL2_REQ Ordered Set after it has sent a
CL1_REQ Ordered Set, shall not respond to the request and shall continue
sending CL1_REQ Ordered Sets.
4.2.1.6.2#10 TD 4.010 Else, if the Responding Port does not assert an objection to enter CL2 state, it
shall respond to CL2_REQ Ordered Sets with a CL2_ACK Ordered Set.
TD 4.011
4.2.1.6.2#11 TD 4.012 Else, if the Responding Port does not assert an objection to enter CL1 state, it
shall respond to CL2_REQ or CL1_REQ Ordered Sets with a CL1_ACK
TD 4.013
Ordered Set. .
4.2.1.6.2#12 TD 4.014 Else, if the CL0s Enable bit is set to 1b in the Lane 0 Adapter of the
Responding Port and the Responding Port can meet the timing of both
TD 4.015
tCL0sEntry and tCL0sExit, a Lane Adapter shall respond to a request to enter
a Low Power state with a CL0s_ACK Ordered Set. The CL0s_ACK Ordered
Set shall be sent 16 times.
4.2.1.6.2#13 TD 4.010 Else, a Lane Adapter shall respond to a request to enter a Low Power state
with CL_NACK Ordered Sets within a time which is lesser than (𝑡𝐶𝐿0𝑠𝐸𝑛𝑡𝑟𝑦
TD 4.011
+ 𝑡𝐶𝐿0𝑠𝐸𝑥𝑖𝑡). The CL_NACK Ordered Sets shall be sent 16 times.
TD 4.012
TD 4.013
4.2.1.6.2#14 TD 4.010 The Adapter shall resume regular CL0 operation in the transmit direction once
it stops sending the CL_NACK Ordered Sets.
TD 4.011
TD 4.012
TD 4.013
4.2.1.6.2#15 NT If the Responding Port asserts an objection after the Lane Adapter has sent a
CLx_ACK response Ordered Set, but before the transition to CLx state is
complete, the Lane Adapter shall ignore the objection until it transitions to the
CLx state.
34
4.2.1.6.2#16 NT A Lane Adapter shall stop sending a request to enter a Low Power state when
it receives a response Ordered Set from the Link Partner.
4.2.1.6.2#18 TD 4.010 (Requesting Port) The first CL_OFF Ordered Set shall be sent within
tCLxResponse after detection of the response.
TD 4.011
TD 4.012
TD 4.013
4.2.1.6.2#20 TD 4.010 (Requesting Port) If the response is a CL_NACK Ordered Set, the Adapter
shall not send another CL2_REQ Ordered Set or CL1_REQ Ordered Set for
TD 4.011
tCLxRetry after receiving the CL_NACK Ordered Set.
TD 4.012
TD 4.013
4.2.1.6.2#21 TD 4.010 (Requesting Port) If the response is a CL_NACK Ordered Set, all Lane
Adapters in the Requesting Port shall resume regular CL0 operation.
TD 4.011
TD 4.012
TD 4.013
4.2.1.6.2#22 NT If the Requesting Port detects Link errors in the direction of the Link Partner
before receiving a response Ordered Set from the Link Partner, it shall: Stop
sending the request to enter a Low Power state.
4.2.1.6.2#23 NT If the Requesting Port detects Link errors in the direction of the Link Partner
before receiving a response Ordered Set from the Link Partner, it shall:
Transition its Lane Adapters to the Training.LOCK1 sub-state and send the
first SLOS within tCLxResponse of detecting the Link error.
4.2.1.6.2#24 NT In the Requesting Port, a Lane Adapter shall do the following after sending
375 CL_OFF Ordered Sets: 1. Shut down its transmitter within tTxOff time.
4.2.1.6.2#25 TD 4.010 In the Requesting Port, a Lane Adapter shall do the following after sending
375 CL_OFF Ordered Sets: 2. Transition state as follows: If the response from
TD 4.011
the Link Partner was CL2_ACK, transition to CL2 state.
35
4.2.1.6.2#26 TD 4.012 In the Requesting Port, a Lane Adapter shall do the following after sending
375 CL_OFF Ordered Sets: 2. Transition state as follows: If the response from
TD 4.013
the Link Partner was CL1_ACK, transition to CL1 state.
4.2.1.6.2#27 NT In the Requesting Port, a Lane Adapter shall do the following after sending
375 CL_OFF Ordered Sets: 2. Transition state as follows: If the response from
the Link Partner was CL0s_ACK, transition to CL0s state.
4.2.1.6.2#28 NT In the Requesting Port, a Lane Adapter shall do the following after sending
375 CL_OFF Ordered Sets: 3. Enable exit from CLx state as follows: If the
response from the Link Partner was CL2_ACK or CL1_ACK, wait
tEnterLFPS1 time after the state transition in Step 2), then enable transmission
and detection of Low Frequency Periodic Signaling (LFPS).
4.2.1.6.2#29 NT In the Requesting Port, a Lane Adapter shall do the following after sending
375 CL_OFF Ordered Sets: 3. Enable exit from CLx state as follows: If the
response from the Link Partner was CL0s_ACK, wait tEnterLFPS4 time after
the state transition in Step 2), then enable transmission of Low Frequency
Periodic Signaling (LFPS).
4.2.1.6.2#30 TD 4.010 In the Responding Port, a Lane Adapter shall shut down its receiver after
receiving a CL_OFF Ordered Set. If the Adapter sent CL0s_ACK Ordered
TD 4.011
Sets, it shall also transition to the CL0s state.
TD 4.012
TD 4.013
TD 4.014
TD 4.015
4.2.1.6.2#31 NT In the Responding Port, The Adapter shall then enable exit from the Low
Power state as follows: If the Adapter sent CL2_ACK or CL1_ACK, wait
tEnterLFPS2 time after shutting down the receiver, then enable transmission
and detection of Low Frequency Periodic Signaling (LFPS).
4.2.1.6.2#32 NT In the Responding Port, The Adapter shall then enable exit from the Low
Power state as follows: If the Adapter sent CL0s_ACK, wait tEnterLFPS5,
then enable detection of Low Frequency Periodic Signaling (LFPS).
4.2.1.6.2#33 NT Deprecated.
4.2.1.6.2#34 NT Deprecated.
4.2.1.6.2#35 NT Deprecated.
4.2.1.6.2#36 NT Deprecated.
4.2.1.6.2#37 NT Deprecated.
36
4.2.1.6.2#38 TD 4.037 A Lane Adapter may transition to Training.LOCK1 sub-state as a result of
Logical Layer errors during the entry to Low Power state with the following
exceptions: After sending the first CL2_ACK, CL1_ACK, or CL0s_ACK
Ordered Set, a Lane Adapter shall not enter Training state as a result of
Logical Layer errors in its receivers.
4.2.1.6.2#40 NT After sending a CL_NACK Ordered Set, a port shall be able to meet
tCL0sEntry and tCL0sExit requirements within tCLxSetup, and shall keep
meeting these timing requirements for a duration of tCLxAccept.
4.2.1.6.2#41 Else, if the Responding Port does not assert an objection to enter CL2 state:
The first CL2_ACK shall be sent within tCLxRequest after receiving the
request.
4.2.1.6.2#42 TD 4.010 Else, if the Responding Port does not assert an objection to enter CL2 state:
The CL2_ACK Ordered Set shall be sent 375 times.
TD 4.011
4.2.1.6.2#43 NT Else, if the Responding Port does not assert an objection to enter CL2 state:
After the last CL2_ACK, the Responding Port shall shut down its transmitter
within tTxOff time.
4.2.1.6.2#44 Else, if the Responding Port does not assert an objection to enter CL1 state:
The first CL1_ACK shall be sent within tCLxRequest after receiving the
request.
4.2.1.6.2#45 TD 4.012 Else, if the Responding Port does not assert an objection to enter CL1 state:
The CL1_ACK Ordered Set shall be sent 375 times.
TD 4.013
4.2.1.6.2#46 Else, if the Responding Port does not assert an objection to enter CL1 state:
After the last CL1_ACK, the Responding Port shall shut down its transmitter
within tTxOff time.
4.2.1.6.2#47
4.2.1.6.2#48
4.2.1.6.2#49
4.2.1.6.2#50
4.2.1.6.2#51
4.2.1.6.2#52
37
4.2.1.6.3 Objections
4.2.1.6.3#1 TD 4.010 A USB4 Port shall assert an objection to enter CL2 state if: The CL2 Support
bit in the Lane 0 Adapter is 0.
TD 4.011
4.2.1.6.3#2 NT A USB4 Port shall assert an objection to enter CL2 state if: The CL2 Enable
bit in the Lane 0 Adapter is 0b.
4.2.1.6.3#3 NT A USB4 Port shall assert an objection to enter CL2 state if: There is a
Transport Layer Packet to be sent over the USB4 Port.
4.2.1.6.3#4 NT A USB4 Port shall assert an objection to enter CL2 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a PCIe Adapter’s Routing
Table and the PCIe Adapter is not in PCIe L1 state.
4.2.1.6.3#5 NT A USB4 Port shall assert an objection to enter CL2 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of the Upstream PCIe
Adapter’s Routing Table, and either the No-Snoop Latency value or the Snoop
Latency value in the last LTR Message transmitted upstream is smaller than
the sum of the CL2 entry and exit latency.
4.2.1.6.3#6 NT A USB4 Port shall assert an objection to enter CL2 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a Downstream PCIe
Adapter’s Routing Table, and either the No-Snoop Latency value or the Snoop
Latency value in the last LTR Message received by the Downstream PCIe
Adapter is smaller than the sum of the CL2 entry and exit latency.
4.2.1.6.3#7 NT A USB4 Port shall assert an objection to enter CL2 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a DP IN Adapter’s Routing
Table.
4.2.1.6.3#8 NT A USB4 Port shall assert an objection to enter CL2 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a DP OUT Adapter’s
Routing Table and a Packet is issued from the DP OUT Adapter.
4.2.1.6.3#9 NT A USB4 Port shall assert an objection to enter CL2 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a USB3 Adapter's Routing
Table and the USB3 link between the USB3 Adapter and the internal USB3
device is not in U2 or U3 state.
4.2.1.6.3#10 NT A USB4 Port shall assert an objection to enter CL2 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a USB3 Adapter's Routing
Table, the USB3 link between the USB3 Adapter and the internal USB3
device is in U2 state, and CL2 entry is disabled in U2 state.
4.2.1.6.3#11 NT A USB4 Port shall assert an objection to enter CL2 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a USB3 Adapter's Routing
Table, the USB3 link between the USB3 Adapter and the internal USB3
device is in U3 state, and CL2 entry is disabled in U3 state.
38
4.2.1.6.3#12 NT A USB4 Port shall assert an objection to enter CL2 state if: Entry to CL2 state
would delay a pending Time Sync handshake. This objection shall be asserted
until the Time Sync handshake is complete.
4.2.1.6.3#13 NT (Host Routers Only) A USB4 Port shall assert an objection to enter CL2 state
if: The Lane 0 Adapter is referenced in an Egress Adapter field of a Host
Interface Adapter’s Routing Table, whose Path corresponds to a Transmit
Descriptor Ring that disables CL2 entry.
4.2.1.6.3#14 NT (Host Routers Only) A USB4 Port shall assert an objection to enter CL2 state
if: The Lane 0 Adapter is referenced in an Egress Adapter field of a Host
Interface Adapter’s Routing Table and the Host Interface has a Packet to send
over the Adapter.
4.2.1.6.3#15 NT (Device Routers Only) One of its Ports is in the process of CL0s, CL1 or CL2
exit flow.
4.2.1.6.3#16 TD 4.012 A USB4 Port shall assert an objection to enter CL1 state if: The CL1 Support
bit in the Lane 0 Adapter is 0b.
TD 4.013
4.2.1.6.3#17 NT A USB4 Port shall assert an objection to enter CL1 state if: The CL1 Enable
bit in the Lane 0 Adapter is 0b.
4.2.1.6.3#18 NT A USB4 Port shall assert an objection to enter CL1 state if: There is a
Transport Layer Packet to be sent over the USB4 Port.
4.2.1.6.3#19 NT A USB4 Port shall assert an objection to enter CL1 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a PCIe Adapter’s Routing
Table and the PCIe Adapter is not in PCIe L1 state.
4.2.1.6.3#20 NT A USB4 Port shall assert an objection to enter CL1 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of the Upstream PCIe
Adapter’s Routing Table, and either the No-Snoop Latency value or the Snoop
Latency value in the last LTR Message transmitted upstream is smaller than
the sum of the CL1 entry and exit latency.
4.2.1.6.3#21 NT A USB4 Port shall assert an objection to enter CL1 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a Downstream PCIe
Adapter’s Routing Table, and either the No-Snoop Latency value or the Snoop
Latency value in the last LTR Message received by the Downstream PCIe
Adapter is smaller than the sum of the CL1 entry and exit latency.
4.2.1.6.3#22 NT A USB4 Port shall assert an objection to enter CL1 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a DP IN Adapter’s Routing
Table.
4.2.1.6.3#23 NT A USB4 Port shall assert an objection to enter CL1 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a DP OUT Adapter’s
Routing Table and a Packet is issued from the DP OUT Adapter.
39
4.2.1.6.3#24 NT A USB4 Port shall assert an objection to enter CL1 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a USB3 Adapter's Routing
Table and the USB3 link between the USB3 Adapter and the internal USB3
device is not in U2 or U3 state.
4.2.1.6.3#25 NT A USB4 Port shall assert an objection to enter CL1 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a USB3 Adapter's Routing
Table, the USB3 link between the USB3 Adapter and the internal USB3
device is in U3 state, and CL1 entry is disabled in USB U3 state.
4.2.1.6.3#26 NT A USB4 Port shall assert an objection to enter CL1 state if: The Lane 0
Adapter is referenced in an Egress Adapter field of a USB3 Adapter's Routing
Table, the USB3 Adapter is in USB U3 state, and CL1 entry is disabled in
USB U3 state.
4.2.1.6.3#27 NT A USB4 Port shall assert an objection to enter CL1 state if: Entry to CL1 state
would delay a pending Time Sync handshake.
4.2.1.6.3#28 NT (Host Routers Only) A USB4 Port shall assert an objection to enter CL1 state
if: The Lane 0 Adapter is referenced in an Egress Adapter field of a Host
Interface Adapter’s Routing Table, whose Path corresponds to a Transmit
Descriptor Ring that disables CL1 entry.
4.2.1.6.3#29 NT (Host Routers Only) A USB4 Port shall assert an objection to enter CL1 state
if: The Lane 0 Adapter is referenced in an Egress Adapter field of a Host
Interface Adapter’s Routing Table and the Host Interface has a Packet to send
over the Adapter.
4.2.1.6.3#30 NT (Device Routers Only) One of its Ports is in the process of CL0s, CL1 or CL2
exit flow.
4.2.1.6.4#1 NT While in CL2 state, the transmitter shall be in electrical idle. Lane common
mode voltages shall be maintained.
4.2.1.6.4#2 TD 4.012 While in CL1 state, the transmitter shall be in electrical idle. Lane common
mode voltages shall be maintained.
TD 4.013
4.2.1.6.4#3 TD 4.014 While in CL0s state, the transmitter at the requesting USB4 Port shall be in
electrical idle. Lane common mode voltages shall be maintained.
TD 4.015
4.2.1.6.4#4 NT Receiver termination shall be maintained in CL0s CL1, and CL2 states.
4.2.1.6.5#1 TD 4.016 A Lane Adapter shall initiate transition out of CL2, CL1, or CL0s state when:
An objection is set in the USB4 Port that would have prevented the Adapter
from entering the low power state.
40
4.2.1.6.5#2 NT A Lane Adapter shall initiate transition out of CL2, CL1, or CL0s state when:
The Adapter is in CL0s state and a CL2_REQ Ordered Set or a CL1_REQ
Ordered Set is received from the Link Partner.
4.2.1.6.5#3 NT A Lane Adapter shall initiate transition out of CL2, CL1, or CL0s state when:
The Adapter is in CL0s state and it detects Link errors that cause the Adapter
to transition to Training state.
4.2.1.6.5#4 NT A Lane Adapter shall initiate transition out of CL2, CL1, or CL0s state when:
The Adapter is in a CL1 state or a CL2 state and it is referenced in an Egress
Adapter field of a Lane Adapter’s Routing Table and the other Adapter’s
receiver is exiting from CL0s, CL1, or CL2 states.
4.2.1.6.5#5 NT A Lane Adapter shall initiate transition out of CL2, CL1, or CL0s state when:
The Adapter is in CL0s state and it is referenced in an Egress Adapter field of
a Lane Adapter’s Routing Table and the other Adapter’s receiver is exiting
from CL0s, CL1, or CL2 states.
4.2.1.6.5.1#1 TD 4.014 The USB4 Port initiating exit from CL0s state shall: 1. Send a Low Frequency
Periodic Signaling (LFPS) burst on all Lanes for the duration of at least 16
TD 4.015
LFPS cycles.
TD 4.016
4.2.1.6.5.1#2 TD 4.016 The USB4 Port initiating exit from CL0s state shall: 2. Return to Electrical
Idle for tPreData.
4.2.1.6.5.1#3 TD 4.016 The USB4 Port initiating exit from CL0s state shall: 3. Start transmitting
SLOS1 on each Lane of the USB4 Port. Any received CL_WAKE Ordered
Sets shall be ignored.
4.2.1.6.5.1#4 TD 4.016 The USB4 Port initiating exit from CL0s state shall: 4. On detection of 2 back-
to-back TS2 Ordered Sets, stop sending SLOS1 and send at least 16 TS2
Ordered Sets.
4.2.1.6.5.1#5 TBD The first TS2 Ordered Set shall be sent within tTrainingTransition after
detection of the second TS2 Ordered Set.
4.2.1.6.5.1#6 NT Before transmitting the first TS2 Ordered Sets: The scrambler shall load a new
seed; Activate RS-FEC; Enable SSC if SSC is disabled.
4.2.1.6.5.1#7 TBD If the receiver did not detect 2 back-to-back TS2 Ordered Sets within
tTrainingAbort2 time after the transmitter started sending SLOS1 it shall
initiate a Disconnect by driving SBTX to a logical low state for
tDisconnectTx.
4.2.1.6.5.1#8 TD 4.016 The USB4 Port initiating exit from CL0s state shall: 5. Transition to CL0
state.
41
4.2.1.6.5.1#9 TD 4.016 If the USB4 Port operated as a Dual-Lane Link prior to entry to CL0s state,
the USB4 Port shall resume operation as a Dual-Lane Link independent of the
setting of the TS2 Ordered Sets. A de-skew Ordered Set shall be sent. The
scrambler shall load a new seed.
4.2.1.6.5.1#10 NT If the Router initiated exit from CL0s state due to receiving CL1_REQ or
CL2_REQ Ordered Sets, then the Router shall not send any Transport Layer
Packets before responding to the request Ordered Sets according to the rules in
Section 4.2.1.6.2 or with CL_NACK. The Router shall resume regular CL0
operation once it stops sending CL_NACK Ordered Sets.
4.2.1.6.5.1#11 TD 4.014 Upon detecting 2 LFPS cycles, a Lane Adapter in CL0s state shall: 1. Enable
the receiver to start bit and symbol synchronization not earlier than
TD 4.015
tCLxIdleRx after the last LFPS cycle received. An Adapter shall complete
Symbol lock within tWarmUpCL0s time from the reception of the first LFPS
cycle.
4.2.1.6.5.1#12 TD 4.014 Upon detecting 2 LFPS cycles, a Lane Adapter in CL0s state shall: 2. On
reception of 3 back-to-back CL_WAKE1.X Ordered Set Symbols by the Lane
TD 4.015
0 Adapter, transmit at least 8 CL_WAKE2.X Ordered Set Symbols on each
enabled Lane of the USB4 Port.
4.2.1.6.5.1#14 NT If the Router initiated exit from CL0s state by sending CL1_REQ or
CL2_REQ Ordered Sets, then the Router shall continue sending the Ordered
Sets instead of sending Transport Layer Packets. The Router shall not send
any Transport Layer Packets after sending the first CL1_REQ or a CL2_REQ
Ordered Set.
4.2.1.6.5.1#15 TD 4.014 Upon detecting 2 LFPS cycles, a Lane Adapter in CL0s state shall: 3. On
detection of 3 back-to-back SLOS Symbols by all enabled Adapters of the
TD 4.015
USB4 Port, transmit 16 TS2 Ordered Sets in each enabled Lane of the USB4
Port
4.2.1.6.5.1#16 TD 4.014 Upon detecting 2 LFPS cycles, a Lane Adapter in CL0s state shall: 4. On
detection of 2 back-to-back TS2 Ordered Sets, transition to CL0 state: If the
TD 4.015
Router initiated exit from CL0s state by sending CL1_REQ or CL2_REQ
Ordered Sets, then the Router shall continue to send the Ordered Sets. The
Router shall not send any Transport Layer Packets before completing the CLx
entry flow.
4.2.1.6.5.1#17 TD 4.038 Upon detecting 2 LFPS cycles, a Lane Adapter in CL0s state shall: 4. On
detection of 2 back-to-back TS2 Ordered Sets, transition to CL0 state: If the
Adapter does not detect 2 back-to-back TS2 Ordered Sets in tTS2Timeout
from transmitting TS2 Ordered Sets, the Lane Adapters in the Port shall enter
the Training state.
42
4.2.1.6.5.1#18 TBD In order to limit the CL0s exit time to 245µs, a Router shall comply with the
following equation: tWarmUpCL0s = 6 x tWakeResponse +
tTrainingTransition < 80 µs.
4.2.1.6.5.1#19 NT If the Link is operating at Gen 2 speed, the Adapter may transmit a
partial CL_WAKE2.X Ordered Set in order to send the required
number of CL_WAKE2.X Ordered Set Symbols. Otherwise, the Wake
Ordered Set shall be transmitted in its entirety.
4.2.1.6.5.2 Exit Flow from CL1 or CL2 State (No Re-timers on the Link)
4.2.1.6.5.2#1 TD 4.016 The USB4 Port initiating exit from CL1 or CL2 state shall: 1. Send a Low
Frequency Periodic Signaling (LFPS) burst on each Lane until the receiver
TD 4.010
detects LFPS.
TD 4.012
4.2.1.6.5.2#2 TBD If the receiver did not detect LFPS after tTrainingAbort2 time the Router shall
initiate a Disconnect by driving SBTX to a logical low state for
tDisconnectTx.
4.2.1.6.5.2#3 NT The USB4 Port initiating exit from CL1 or CL2 state shall: 2. Return to
Electrical Idle for tPreData.
4.2.1.6.5.2#4 TD 4.016 The USB4 Port initiating exit from CL1 or CL2 state shall: 3. Start
transmitting SLOS1 on the Lane.
TD 4.010
TD 4.012
4.2.1.6.5.2#5 TD 4.016 The USB4 Port initiating exit from CL1 or CL2 state shall: 4. Enable the
receiver to start bit and symbol synchronization not earlier than tCLxIdleRx
TD 4.010
after the last LFPS cycle received. A Lane Adapter shall complete Symbol
TD 4.012 lock within tRxLock time.
4.2.1.6.5.2#6 TD 4.016 The USB4 Port initiating exit from CL1 or CL2 state shall: 5. Transition the
Lane Adapter to Training.LOCK1 sub-state.
TD 4.010
TD 4.012
4.2.1.6.5.2#7 NT On transition to the TS1 sub-state, the USB4 Port shall enable SSC if SSC is
disabled.
4.2.1.6.5.2#8 TD 4.010 Upon detecting 2 LFPS cycles, a Lane Adapter in CL1 or CL2 state shall: 1.
Send a Low Frequency Periodic Signaling (LFPS) burst on the Lane for the
TD 4.012
duration of at least 5 LFPS cycles and for no more than tLFPSDuration. If the
Lane Adapter is in CL1 state, the first LFPS shall be sent within
tWarmUpCL1 after receiving the first LFPS cycle. If the Lane Adapter is in
CL2 state, the first LFPS shall be sent within tWarmUpCL2 after receiving the
first LFPS cycle.
4.2.1.6.5.2#9 NT Upon detecting 2 LFPS cycles, a Lane Adapter in CL1 or CL2 state shall: 2.
Return to Electrical Idle for tPreData.
43
4.2.1.6.5.2#10 TD 4.010 Upon detecting 2 LFPS cycles, a Lane Adapter in CL1 or CL2 state shall: 3.
Start transmitting SLOS1 on the Lane.
TD 4.012
4.2.1.6.5.2#11 TD 4.010 Upon detecting 2 LFPS cycles, a Lane Adapter in CL1 or CL2 state shall: 4.
Enable the receiver to start bit and symbol synchronization not earlier than
TD 4.012
tCLxIdleRx after the last LFPS cycle received. A Lane Adapter shall complete
Symbol lock within tRxLock time.
4.2.1.6.5.2#12 TD 4.010 Upon detecting 2 LFPS cycles, a Lane Adapter in CL1 or CL2 state shall: 5.
Transition to Training.LOCK1 sub-state.
TD 4.012
4.2.1.6.5.2#13 NT On transition to the TS1 sub-state, the USB4 Port shall enable SSC if SSC is
disabled
4.2.1.6.5.3 Exit Flow from CL1 or CL2 State (Re-timers on the Link)
4.2.1.6.5.3#1 TD 4.016 The USB4 Port initiating exit from CL1 or CL2 state shall: 1. Send a Low
Frequency Periodic Signaling (LFPS) burst on each Lane until its receiver
detects LFPS.
4.2.1.6.5.3#2 TBD If the receiver did not detect LFPS after tTrainingAbort2 time the Router shall
initiate a Disconnect by driving SBTX to a logical low state for
tDisconnectTx.
4.2.1.6.5.3#3 TD 4.016 The USB4 Port initiating exit from CL1 or CL2 state shall: 2. Return to
Electrical Idle for tPreData.
4.2.1.6.5.3#4 TD 4.016 The USB4 Port initiating exit from CL1 or CL2 state shall: 3. Start
transmitting SLOS1 on the Lane.
4.2.1.6.5.3#5 TD 4.016 The USB4 Port initiating exit from CL1 or CL2 state shall: 4. Enable the
receiver to start bit and symbol synchronization not earlier than tCLxIdleRx
after the last LFPS cycle received. A Lane Adapter shall complete Symbol
lock within tRxLock time.
4.2.1.6.5.3#6 TD 4.016 The USB4 Port initiating exit from CL1 or CL2 state shall: 5. Upon reception
of 3 back-to-back CL_WAKE1.X Ordered Set Symbols, start transmitting
CL_WAKE2.X Ordered Set Symbols on the Lane. The Adapter shall ignore
any received CL_WAKE2.Y (where Y is any value) Symbols interleaved with
CL_WAKE1.X Ordered Set SymbolCL_WAKE1.X Ordered Set Symbols
when it determines the reception of back-to-back CL_WAKE1.X Ordered Set
SymbolCL_WAKE1.X Ordered Set Symbols.
4.2.1.6.5.3#7 TD 4.016 The USB4 Port initiating exit from CL1 or CL2 state shall: 6. Upon reception
of 7 back-to-back CL_WAKE2.X Ordered Set Symbols or 7 back-to-back
SLOS Symbols, transition the Adapter to Training.LOCK1 sub-state within
tWakeResponse time.
4.2.1.6.5.3#8 NT On transition to the TS1 sub-state, the USB4 Port shall enable SSC if SSC is
disabled.
44
4.2.1.6.5.3#9 TD 4.011 Upon detecting 2 LFPS cycles, a Lane Adapter in CL1 or CL2 state shall: 1.
Send a Low Frequency Periodic Signaling (LFPS) burst on the Lane for the
TD 4.013
duration of at least 5 LFPS cycles and for no more than tLFPSDuration. If the
Lane Adapter is in CL1 state, the first LFPS shall be sent within
tWarmUpCL1 after receiving the first LFPS cycle. If the Lane Adapter is in
CL2 state, the first LFPS shall be sent within tWarmUpCL2 after receiving the
first LFPS cycle.
4.2.1.6.5.3#10 TD 4.011 Upon detecting 2 LFPS cycles, a Lane Adapter in CL1 or CL2 state shall: 2.
Return to Electrical Idle for tPreData.
TD 4.013
4.2.1.6.5.3#11 TD 4.011 Upon detecting 2 LFPS cycles, a Lane Adapter in CL1 or CL2 state shall: 3.
Start transmitting SLOS1 on the Lane.
TD 4.013
4.2.1.6.5.3#12 TD 4.011 Upon detecting 2 LFPS cycles, a Lane Adapter in CL1 or CL2 state shall: 4.
Enable the receiver to start bit and symbol synchronization not earlier than
TD 4.013
tCLxIdleRx after the last LFPS cycle received. An Adapter shall complete
Symbol lock within tRxLock time.
4.2.1.6.5.3#13 TD 4.011 Upon detecting 2 LFPS cycles, a Lane Adapter in CL1 or CL2 state shall: 5.
Upon reception of 3 back-to-back CL_WAKE1.X Ordered Set Symbols, start
TD 4.013
transmitting CL_WAKE2.X Ordered Set Symbols on the Lane. The Adapter
shall ignore any received CL_WAKE2.Y (where Y is any value) Symbols
interleaved with CL_WAKE1.X Ordered Set Symbols when it determines the
reception of back-to-back CL_WAKE1.X Ordered Set Symbols.
4.2.1.6.5.3#14 TD 4.011 Upon detecting 2 LFPS cycles, a Lane Adapter in CL1 or CL2 state shall: 6.
Upon reception of 7 back-to-back CL_WAKE2.X Ordered Set Symbols or 7
TD 4.013
back-to-back SLOS Symbols, transition to Training.LOCK1 sub-state.
4.2.1.6.5.3#15 TD 4.011 On transition to the TS1 sub-state, the USB4 Port shall enable SSC if SSC is
disabled.
TD 4.013
4.2.2#1 IOP A USB4 Link shall operate as either a Single-Lane Link or a Dual-Lane Link.
4.2.2.1#1 NT A USB4 Port shall transition from one single-Lane Link to two single-Lane
Links when the Lane 1 Adapter is enabled.
4.2.2.2#1 TD 4.005 A USB4 Port shall transition its Lane Adapters to the Lane Bonding state
when all of the following are true: Both Ports are in the Bonding state; The
Supported Link Widths field of both Ports is set to x2 support or more; The
Target Link Width field of both Ports is set to establish a dual-Lane Link.
45
4.2.2.2#2 TD 4.005 The Logical Layer shall transition to a Dual-Lane Link when the following
conditions are met: Both Adapters have transitioned successfully to CL0 state
within tBonding time after sending the first TS1 Ordered Set with Lane
Bonding Target set to 001b ; Link Partner has responded with the following
value in all TS1 and TS2 Ordered Sets on both Lanes (Lane Bonding Target is
set to 001b).
4.2.2.2#3 TD 4.005 If Lane bonding is successful, then a Router shall set the Adapter State field in
the Lane Adapter Configuration Capability of the Lane 0 Adapter to CL0.
4.2.2.2#4 TD 4.005 If Lane bonding is successful, then a Router shall set the Negotiated Link
Width field in the Lane Adapter Configuration Capability of the Lane 0
Adapter to indicate a USB4 Link width of x2.
4.2.2.2#5 TD 4.005 If Lane bonding is successful, then a Router shall send a Hot Plug Event
Packet with the UPG bit set to 1b for the Lane 1 Adapter in the Downstream
Facing Port.
4.2.2.2#6 TD 4.035 If one of the Lane Adapters is not in CL0 tBonding time after entry to the
Lane Bonding state, the Router shall initiate a Disconnect by driving SBTX to
a logical low state for tDisconnectTx.
4.2.2.2#7 TD 4.020 The Adapters of a dual-Lane Link operate in CL0 state in tandem with the
following dependencies: Any Ordered Set sent on the Link shall be sent
simultaneously on both Lanes within the permitted transmit skew.
4.2.2.2#8 BC The Adapters of a dual-Lane Link operate in CL0 state in tandem with the
following dependencies: When either Adapter of a dual-Lane Link transitions
to one of the Training sub-states, the other Adapter in the USB4 Port shall
transition to the same Training sub-state.
4.2.2.2.1#1 TD 4.040 When an Adapter that is part of a dual-Lane Link enters Training state, the
other Adapter in the USB4 Port shall enter Training state as well.
TD 4.041
4.2.2.2.1#2 TD 4.009 The Logical Layer shall resume dual-Lane Link operation if both Ports meet
the transition conditions in Step 6 of the Training state machine in Table 4-20
within tTrainingAbort2 time.
4.2.2.2.1#3 TD 4.009 The Adapter that transitions to the CL0 state first shall send TS2 Ordered Sets
until the other Adapter in the USB4 Port exits the training state.
4.2.2.4 Transition from Two Single-Lane Links to One Single Lane Link
4.2.2.4#1 TD 4.006 A USB4 Port shall transition from two Single-Lane Links to one Single-Lane
Link when one of its Adapters transitions to the Disabled state.
46
4.2.3 Logical Layer Link States
4.3#1 IOP If RS_FEC encoding is off, bytes received from the Transport Layer shall be
encoded with either 64b/66b encoding (Gen 2) or 128b/132b encoding (Gen 3)
4.3.1#1 IOP If a USB4 Link operates as a dual-Lane Link, then distribution of Transport
Layer bytes among the Lanes shall alternate as depicted in Figure 4-13.
4.3.2.1#1 NT A Symbol may contain either Transport Layer bytes or Ordered Set, but shall
not contain both
4.3.3#1 IOP Ordered Set shall have the structure depicted in Table 4-35.
4.3.3#2 IOP For 64b/66b encoding, an Ordered Set Symbol shall contain a single copy of
the Ordered Set payload and 2 Sync Bits.
4.3.3#3 IOP For 128b/132b encoding, an Ordered Set Symbol shall contain two copies of
the Ordered Set (i.e. 64 bits followed by a second copy of the same 64 bits)
and 4 Sync Bits.
4.3.4#1 IOP Bit Swap of Transport Layer bytes and of Ordered Sets payload delivered to
the scrambler in the order that they are transmitted on the wire.
4.3.4.1#1 IOP If RS-FEC is off, all Symbols shall be transmitted Sync Bits first.
4.3.4.1#2 IOP Sync Bits shall be sent in the order of most significant bit to least significant
bit.
4.3.4.1#3 IOP Transport Layer bytes or Ordered Sets shall be transmitted after the Sync Bits.
4.3.4.2#1 IOP The payload within a Data Symbol shall be transmitted from left to right as
depicted in Figure 4-18.
4.3.4.2#2 IOP Within each byte of payload, individual bits shall be transmitted from bit 0 to
bit 7.
47
4.3.4.3 Ordered Set Symbol Payload
4.3.4.3#1 IOP When an Ordered Set is longer than 64 bits (i.e. SLOS, CL_WAKE1.X,
CL_WAKE2.X), it cannot fit into the payload of one Symbol, and shall be
divided into multiple Symbol payloads.
4.3.4.3#2 IOP The Ordered Set shall be transmitted in increasing Symbols, starting with
Symbol 0.
4.3.4.3#3 IOP Within a Symbol payload, the bytes in an Ordered Set shall be transmitted
from left to right as depicted in Figure 4-19.
4.3.4.3#4 IOP Within each byte, individual bits shall be transmitted from bit 0 to bit 7.
4.3.5 Scrambling
4.3.5#1 IOP Scrambling shall be performed according to the rules in Table 4-36.
4.3.5#2 IOP Scrambling and de-scrambling are performed by passing the encoded bits
through an Additive LFSR with a polynomial of G(X) = X^23 + X^21 + X^16
+ X^8 + X^5 + X^2 + 1.
4.3.5#3 IOP The most significant bit of the LFSR is XORed with the data stream on a per-
bit basis. The data stream is scrambled in the order that it is sent on wire.
4.3.5#4 IOP The scrambler shall load a new seed on the following transitions: 1. Transition
from LOCK2 sub-state to TS1 sub-state in the Training state; Initial value is
1F EEDDh.
4.3.5#5 IOP The scrambler shall load a new seed on the following transitions: 2. On exit
from CL0s state, before the Adapter initiating exit transmits the first TS2
Ordered Set in the direction exiting electrical idle; Initial value is 1F EEDDh.
4.3.5#6 IOP The scrambler shall load a new seed on the following transitions: 3. On
transition from any state to CL0 when going to a dual-Lane Link; When
exiting CL0s state, a new seed shall be loaded only in the direction exiting
electrical idle; Initial value on the Lane 0 is 1D BFBCh; Initial value on the
Lane 1 is 06 07BBh; The per-Lane seeds are used, starting with the first byte
after the de-skew Ordered Set.
4.3.5#8 IOP Any single-bit errors in the SRC field shall be corrected. If the SCR field
contains an uncorrectable error, the Logical Layer reports an OSE error.
4.3.6 RS-FEC
4.3.6#2 IOP Each block of 194 bytes shall be generated in the following manner: Transport
Layer bytes and Ordered Sets are grouped into 16-byte (128 bit) Symbol
payloads. Each Symbol payload may contain either one or more Ordered Set
or Transport Layer bytes, but shall not contain both.
48
4.3.6#3 IOP Each block of 194 bytes shall be generated in the following manner: When
operating at Gen 2 speed, the 16-byte Ordered Set Symbol payload shall
contain: For a SLOS Ordered Set, 128 bits of the Ordered Set.
4.3.6#4 IOP Each block of 194 bytes shall be generated in the following manner: When
operating at Gen 2 speed, the 16-byte Ordered Set Symbol payload shall
contain: For all other Ordered Sets, two 64-bit Ordered Sets.
4.3.6#5 IOP When only one Ordered Set needs to be sent, the second Ordered Set shall be a
SKIP Ordered Set. See Section 4.4.3 for the structure of a SKIP Ordered Set.
4.3.6#6 IOP Each block of 194 bytes shall be generated in the following manner: When
operating at Gen 3 speed, the 16-byte Ordered Set Symbol payload shall
contain: For a SLOS Ordered Set, 128 bits of the Ordered Set.
4.3.6#7 IOP Each block of 194 bytes shall be generated in the following manner: When
operating at Gen 3 speed, the 16-byte Ordered Set Symbol payload shall
contain: For all other Ordered Sets, two copies of the Ordered Set (i.e. 64 bits
followed by a second copy of the same 64 bits).
4.3.6#8 IOP Each block of 194 bytes shall be generated in the following manner: The RS-
FEC encoder is fed with twelve 16-byte Symbol payloads plus 2 bytes of Sync
Bits. Each Symbol is allocated a single Sync Bit, indicating whether it
contains Transport Layer bytes (Sync Bit = 0b) or Ordered Set (Sync Bit =
1b).
4.3.6#9 IOP The 2 bytes of Sync Bits contain 12 active bits (one per 16-byte Symbol) and 4
reserved bits.
4.3.6#10 IOP Sync Bits shall be delivered to the encoder in order that they will be sent to the
wire, from bit 15 to bit 0. The active Sync Bits reside in bits[11:0] of the
Word. The Sync Bit corresponding to the oldest 16-byte Symbol resides in bit
0 if the Sync Bits.
4.3.6#11 IOP The 12 active bits are XORed with 333h before being fed to the RS-FEC
encoder. The XORed value is the value seen on the wire.
4.3.6#12 IOP Each block of 194 bytes shall be generated in the following manner: The RS-
FEC encoder generates 4 bytes of redundancy bits (P3 to P0). P3 is the first
byte to be sent on the wire and P0 is the last. Within each byte, bits are sent in
descending order where bit 7 is sent first and bit 0 is sent last.
4.3.6#13 TD 4.039 The RS-FEC decoder shall correct a received block with up to two 1-byte
errors anywhere in the block.
4.3.6#14 NT An error in a received block that is detectable and uncorrectable shall cause an
RDE error.
4.3.6#15 TBD When operating at Gen 2 speed, the 16-byte Ordered Set Symbol payload shall
contain: When a DESKEW Ordered Set is placed first in a 16-byte payload,
the second Ordered Set shall be SKIP.
49
4.3.6.1 RS_FEC Activation and Deactivation
4.3.6.1#1 IOP If RS-FEC is enabled during Phase 3 of Lane Initialization, then an Adapter
shall activate RS-FEC encoding in the following cases: In Training state,
immediately following the last transmitted SLOS2 and before sending the first
TS1 Ordered Set.
4.3.6.1#2 IOP If RS-FEC is enabled during Phase 3 of Lane Initialization, then an Adapter
shall activate RS-FEC encoding in the following cases: During exit from CL0s
state, immediately before sending the first TS2 Ordered Set.
4.3.6.1#3 IOP A START_RS_FEC bit sequence shall be sent prior to activating RS-FEC
encoding on the Lane.
4.3.6.1#4 IOP The bit sequence shall not be scrambled and shall not advance the scrambler
LFSR.
4.3.6.1#5 IOP The START_RS_FEC bit sequence shall be sent with bit[31] first on the wire.
4.3.6.1#6 IOP During exit from CL0s state, the START_RS_FEC bit sequence shall only be
sent in the direction exiting electrical idle.
4.3.6.1#7 IOP The bit following the START_RS_FEC bit sequence shall be the first bit to be
RS-FEC encoded.
4.3.6.1#8 IOP If RS-FEC encoding is activated, a USB4 Port shall deactivate RS-FEC
encoding on a Lane in the following cases: When to Training state, after
transmitting n SLOS1 Symbols in LOCK1 sub-state with RS-FEC on, where
32=<n<=64 in Gen 2 and 16=<n<=32 in Gen 3.
4.3.6.1#9 IOP If RS-FEC encoding is activated, a USB4 Port shall deactivate RS-FEC
encoding on a Lane in the following cases: Entry to Disabled state.
4.3.6.1#10 IOP If RS-FEC encoding is activated, a USB4 Port shall deactivate RS-FEC
encoding on a Lane in the following cases: Entry to CLd state.
4.3.6.1#11 IOP If RS-FEC encoding is activated, a USB4 Port shall deactivate RS-FEC
encoding on a Lane in the following cases: Entry to CL0s state, in the
direction entering low power state.
4.3.6.1#12 IOP If RS-FEC encoding is activated, a USB4 Port shall deactivate RS-FEC
encoding on a Lane in the following cases: Entry to CL2 or CL1 states.
4.3.6.1#13 IOP If RS-FEC encoding is activated, a USB4 Port shall deactivate RS-FEC
encoding on a Lane in the following cases: Entry to Training.LOCK2 sub-
state.
4.3.6.2 Pre-Coding
4.3.6.2#1 IOP If pre-coding is on, then before each bit is sent on the wire, it shall be XOR’ed
with the bit sent before it, using the value of the bit after it was coded.
50
4.3.6.2#2 IOP Pre-coding shall be turned on with the first bit that is RS_FEC encoded.
4.3.6.2#3 IOP Pre-coding shall be turned off with the first bit that is not RS_FEC encoded.
4.4.1#1 BC When an Adapter transitions to CL0 state, the first transmitted bytes after the
last TS2 Ordered Set shall be either a Transport Layer header, an Idle Packet
or any Ordered Set other than SLOS, TS1 or TS2.
4.4.1#2 BC For a dual-Lane Link, the first transmitted bytes after the last TS2 Ordered Set
shall be a de-skew Ordered Set followed by either a Transport Layer header,
an Idle Packet or any Ordered Set other than SLOS, TS1 or TS2.
4.4.2#1 TD 4.040 A Router shall support the Ordered Set Errors (OSE) error case.
4.4.2#2 TD 4.040 When a Router supports an error case, it shall do so as described in this
section.
4.4.2#3 TD 4.040 A Router shall support the same error cases on all Lane Adapters.
4.4.2#4 TD 4.040 When an Adapter supports an error case, it shall support that error case in all
Adapter states unless specified otherwise.
4.4.2#9 TD 4.040 If an Adapter reports Ordered Set Errors, when it receives 2 back-to-back
Symbols that contain an Ordered Set that is not defined in this specification
and/or have an uncorrectable error in the SRC field, it shall go to
Training.LOCK1 sub-state.
51
4.4.2#10 TD 4.040 If an Adapter reports Ordered Set Errors, when it receives 2 back-to-back
Symbols that are not part of an Ordered Set defined in this specification and/or
TD 4.041
have an uncorrectable error in the SRC field, it shall set the OSE bit in the
Logical Layer Errors field to 1b.
4.4.2#11 TD 4.040 If an Adapter reports Ordered Set Errors, when it receives 2 back-to-back
Symbols that are not part of an Ordered Set defined in this specification and/or
TD 4.041
have an uncorrectable error in the SRC field, if the OSE bit in the Logical
Layer Errors Enable field is 1b, the Router shall send a Notification Packet
with Event Code = ERR_LINK to the Connection Manager.
4.4.2#12 TD 4.040 If an Adapter reports Ordered Set Errors, when it receives 2 back-to-back
Symbols that are not part of an Ordered Set defined in this specification and/or
TD 4.041
have an uncorrectable error in the SRC field, if the OSE bit in the Logical
Layer Errors Enable field is 0b, the Router shall not send a Notification
Packet.
4.4.2#13 NT If an Adapter reports Timeout Errors, when an Adapter entered Training state
from either CL0, CL1, or CL2 state and did not transition to CL0 state within
tTrainingError after sending the first SLOS1.
4.4.2#14 NT If an Adapter reports Timeout Errors, when an Adapter does not transition
from Training state to CL0 state within tTrainingError after achieving Symbol
alignment, it shall set the TE bit in the Logical Layer Errors field to 1b.
4.4.2#15 TD 4.042 If an Adapter reports Timeout Errors, when an Adapter does not transition
from Training state to CL0 state within tTrainingError after achieving Symbol
alignment, if the TE bit in the Logical Layer Errors Enable field is 1b, the
Router shall send a Notification Packet with Event Code = ERR_LINK to the
Connection Manager.
4.4.2#16 TD 4.042 If an Adapter reports Timeout Errors, when an Adapter does not transition
from Training state to CL0 state within tTrainingError after achieving Symbol
alignment, if the TE bit in the Logical Layer Errors Enable field is 0b, the
Router shall not send a Notification Packet.
4.4.2#17 NT If an Adapter reports Elastic Buffer Errors, when the elastic buffer is full, it
shall: go to Training.LOCK1 sub-state.
4.4.2#18 NT If an Adapter reports Elastic Buffer Errors, when the elastic buffer is full, it
shall set the EBE bit in the Logical Layer Errors field to 1b.
4.4.2#19 NT If an Adapter reports Elastic Buffer Errors, when the elastic buffer is full, if
the EBE bit in the Logical Layer Errors Enable field is 1b, the Router shall
send a Notification Packet with Event Code = ERR_LINK to the Connection
Manager (see Section 6.5).
4.4.2#20 NT If an Adapter reports Elastic Buffer Errors, when the elastic buffer is full, if
the EBE bit in the Logical Layer Errors Enable field is 0b, the Router shall not
send a Notification Packet.
52
4.4.2#21 NT If an Adapter reports De-skew Buffer Errors, when skew is too large resulting
in overflow in the de-skew buffer, it shall set the DBE bit in the Logical Layer
Errors field to 1b.
4.4.2#22 NT If an Adapter reports De-skew Buffer Errors, when skew is too large resulting
in overflow in the de-skew buffer, if the DBE bit in the Logical Layer Errors
Enable field is 1b, the Router shall send a Notification Packet with Event Code
= ERR_LINK to the Connection Manager.
4.4.2#23 NT If an Adapter reports De-skew Buffer Errors, when skew is too large resulting
in overflow in the de-skew buffer, if the DBE bit in the Logical Layer Errors
Enable field is 0b, the Router shall not send a Notification Packet.
4.4.2#24 NT If an Adapter reports RS-FEC decoder errors, when the RS-FEC decoder
identifies an uncorrectable error, it shall turn off RS-FEC in both directions of
the Link.
4.4.2#25 NT If an Adapter reports RS-FEC decoder errors, when the RS-FEC decoder
identifies an uncorrectable error, it shall set the RDE bit in the Logical Layer
Errors field to 1b.
4.4.2#26 NT If an Adapter reports RS-FEC decoder errors, when the RS-FEC decoder
identifies an uncorrectable error, if the RDE bit in the Logical Layer Errors
Enable field is 1b, the Router shall send a Notification Packet with Event Code
= ERR_LINK to the Connection Manager.
4.4.2#27 NT If an Adapter reports RS-FEC decoder errors, when the RS-FEC decoder
identifies an uncorrectable error, if the RDE bit in the Logical Layer Errors
Enable field is 0b, the Router shall not send a Notification Packet.
4.4.2#28 NT If an Adapter reports RX Sync Timeout, if, while in LOCK1 sub-state of the
Training state, the receiver cannot lock on Sync Bits for an implementation-
specific period of time, it shall remain in LOCK1 sub-state.
4.4.2#29 NT If an Adapter reports RX Sync Timeout, if, while in LOCK1 sub-state of the
Training state, the receiver cannot lock on Sync Bits for an implementation-
specific period of time, it shall set the RST bit in the Logical Layer Errors
field to 1b.
4.4.2#30 NT If an Adapter reports RX Sync Timeout, if, while in LOCK1 sub-state of the
Training state, the receiver cannot lock on Sync Bits for an implementation-
specific period of time, if the RST bit in the Logical Layer Errors Enable field
is 1b, the Router shall send a Notification Packet with Event Code =
ERR_LINK to the Connection Manager.
4.4.2#31 NT If an Adapter reports RX Sync Timeout, if, while in LOCK1 sub-state of the
Training state, the receiver cannot lock on Sync Bits for an implementation-
specific period of time, if the RST bit in the Logical Layer Errors Enable field
is 0b, the Router shall not send a Notification Packet.
53
4.4.3 Clock Compensation and SKIP
4.4.3#1 IOP A receiver shall drop any received SKIP Ordered Sets and shall be capable of
operating in the absence of any SKIP Ordered sets.
4.4.3#2 IOP A Transmitter shall not send SKIP Ordered Sets while the Adapter is in the
Training.LOCK1 or Training.LOCK2 sub-states.
4.4.3#3 IOP A SKIP Ordered Set shall have the structure defined in Table 4-39.
4.4.3#4 IOP SCR – Shall be set to 11 0000 1101b to indicate that the Ordered Set contents
are not scrambled.
4.4.4#1 TD 4.043 A Router shall operate with skew defined in Section 3.5.1 between the
receiving Lanes of a Link when measured at the USB Type-C connector.
4.4.4#2 NT A transmitter shall not introduce skew more than defined in Section 3.4.1.
4.4.4#3 TD 4.009 A single de-skew Ordered Set shall be sent on each Lane after both Adapters
transition (from any state) to CL0 state, and the USB4 Port in Dual-Lane Link
mode.
4.4.4#4 TD 4.009 When exiting CL0s state, a de-skew Ordered Set shall only be sent in the
direction exiting electrical idle.
4.4.4#5 TBD When a Port operates at Gen 3 speed, the De-Skew Ordered Set shall be
transmitted twice. Otherwise it shall be transmitted once.
4.4.4#6 TD 4.009 A de-skew Ordered Set shall be sent simultaneously on both Lanes within the
permitted transmit skew
4.4.4#7 TD 4.009 A de-skew Ordered Set shall be sent on both Lanes in the same locations
within the Symbol.
4.4.4#8 TD 4.009 The de-skew Ordered Set shall be the first bytes sent after the TS2 Ordered
Sets.
4.4.4#9 TD 4.009 TS2 Ordered Sets shall be transmitted on a Lane in CL0 state until the de-
skew Ordered Set is sent.
4.4.4#10 NT SCR in the De-Skew Ordered Set payload shall be set to 00 1111 0010b to
indicate that the Ordered Set contents are scrambled.
54
4.4.5 Disconnect
4.4.5.1.1#1 TD 4.017 The Router with the disconnected Port shall: Drive SBTX to a logical low
state on all USB4 Ports for tDisconnectTx.
4.4.5.1.1#2 TD 4.017 The Router with the disconnected Port shall: Transition to the Uninitialized
Unplugged state.
4.4.5.1.1#3 CH6 The following events initiate a disconnect as defined in this section: Router
Hot Unplug.
4.4.5.1.1#4 CH6 The following events initiate a disconnect as defined in this section:
Downstream Facing Port Reset where the Link Partner is an Upstream Facing
Port.
4.4.5.1.1#5 NT The following events initiate a disconnect as defined in this section: The
Domain enters Sleep state, the USB4 Port is Configured bit in a USB4 Port is
set to 0b, and the Link Partner is an Upstream Facing Port.
4.4.5.1.1#6 TBD The following events initiate a disconnect as defined in this section: The Link
Partner failed to train the Link before the defined timeout.
4.4.5.1.1#7 TBD The following events initiate a disconnect as defined in this section: The Lane
bonding did not complete before the defined timeout.
4.4.5.1.3#1 NT When an Upstream Facing Port receives an LT_LRoff transaction and the
Enter Sleep bit in the Router Configuration Space is set to 0b, the Port is
disconnected. The disconnected Port shall send an LT_LRoff Transaction.
4.4.5.1.3#2 NT The Router with the disconnected Port shall: Drive SBTX to a logical low
state on all USB4 Ports for tDisconnectTx.
4.4.5.1.3#3 NT The Router with the disconnected Port shall: Transition to the Uninitialized
Unplugged state.
4.4.5.1.3#4 NT The following events shall initiate a disconnect as defined in this section: The
Domain enters Sleep state, in the Downstream Facing Port of the Link Partner
the USB4 Port is Configured bit is 0b and the Enable Wake on Connect bit of
the USB4 Port is 1b.
55
4.4.5.2 Downstream Port Disconnect
4.4.5.2.1#1 TD 4.018 When a Downstream Facing Port detects SBRX at logical low state for
tDisconnectRx and its Lane Disable bit in the Lane 0 Adapter Configuration
Capability is set to 0b, the Port is disconnected and shall: Send an LT_LRoff
Transaction.
4.4.5.2.1#2 TD 4.018 When a Downstream Facing Port detects SBRX at logical low state for
tDisconnectRx and its Lane Disable bit in the Lane 0 Adapter Configuration
Capability is set to 0b, the Port is disconnected and shall: Discard any
Transport Layer Packets received from the Ingress Port(s) on the Router.
4.4.5.2.1#3 TD 4.018 When a Downstream Facing Port detects SBRX at logical low state for
tDisconnectRx and its Lane Disable bit in the Lane 0 Adapter Configuration
Capability is set to 0b, the Port is disconnected and shall: Transition its
Adapters to the CLd state
4.4.5.2.1#4 NT The Router with the disconnected Port shall continue to send flow control
Packets on the Ingress Port(s) for Transport Layer Packets that the
disconnected Port discarded.
4.4.5.2.1#5 NT Flow control credit counts shall be updated as if the discarded packets were
dequeued and forwarded to the Egress Adapter.
4.4.5.2.1#6 TD 4.018 The Router shall do the following for each enabled Lane Adapter in the
disconnected Port: Send the Connection Manager a Hot Plug Event Packet
with the UPG bit set to 1b.
4.4.5.2.1#7 TD 4.006 The Router shall do the following for each enabled Lane Adapter in the
disconnected Port: Load the following fields in the Adapter Configuration
TD 4.018
Space with their default values: Basic Configuration Registers: Link Credits
Allocated; TMU Adapter Configuration Capability: Inter-Domain Time
Initiator, EnableUniDirectionalMode; Lane Adapter Configuration Capability:
Target Link Width, CL0s Enable, CL1 Enable, CL2 Enable, Lane Bonding.
4.4.5.2.1#8 NT The Router shall do the following for each enabled Lane Adapter in the
disconnected Port: Load the TxFFE register in the SB Register Space with its
default values.
4.4.5.2.2#1 NT When a Downstream Facing Port receives an LT_LRoff Transaction, the Lane
Disabled bit in the Lane 0 Adapter Configuration Capability is set to 0b, and
the Enter Sleep bit in the Router Configuration Space is set to 0b, the Port is
disconnected and shall: Send an LT_LRoff Transaction.
4.4.5.2.2#2 NT When a Downstream Facing Port receives an LT_LRoff Transaction and the
Enter Sleep bit in the Router Configuration Space is set to 0b, the Port is
disconnected and shall: Discard any Transport Layer Packets received from
the Ingress Port(s) on the Router.
56
4.4.5.2.2#3 NT When a Downstream Facing Port receives an LT_LRoff Transaction and the
Enter Sleep bit in the Router Configuration Space is set to 0b, the Port is
disconnected and shall: Transition its Adapters to the CLd state.
4.4.5.2.2#4 NT The Router with the disconnected Port shall continue to send flow control
Packets on the Ingress Port(s) for Transport Layer Packets that the
disconnected Port discarded.
4.4.5.2.2#5 NT Flow control credit counts shall be updated as if the discarded packets were
dequeued and forwarded to the Egress Adapter.
4.4.5.2.2#6 NT The Router shall do the following for each enabled Lane Adapter in the
disconnected Port: Send the Connection Manager a Hot Plug Event Packet
with the UPG bit set to 1b.
4.4.5.2.2#7 NT The Router shall do the following for each enabled Lane Adapter in the
disconnected Port: Load the following fields in Adapter Configuration Space
with their default values: Basic Configuration Registers: Link Credits
Allocated; TMU Adapter Configuration Capability: Inter-Domain Time
Initiator, EnableUniDirectionalMode; Lane Adapter Configuration Capability:
Target Link Width CL0s Enable CL1 Enable CL2 Enable Lane Bonding.
4.4.5.2.2#8 NT The Router shall do the following for each enabled Lane Adapter in the
disconnected Port: Load the TxFFE register in SB Register Space with its
default values.
4.4.5.2.2#9 NT The Router shall do the following for each enabled Lane Adapter in the
disconnected Port: Start Lane Initialization from Phase 2.
4.4.6#1 NT After the Lane Disable bit in its Upstream Adapter is set to 1b, a Router shall:
1. Send an LT_Fall Transaction to the Link Partner of the Upstream Facing
Port to signal transition to the Disabled state.
4.4.6#2 NT After the Lane Disable bit in its Upstream Adapter is set to 1b, a Router shall:
2. Drive SBTX to a logical low state on all USB4 Ports for tDisconnectTx.
4.4.6#3 NT After the Lane Disable bit in its Upstream Adapter is set to 1b, a Router shall:
3. Transition to the Uninitialized Unplugged state.
4.4.6#4 NT After the Lane Disable bit in its Upstream Adapter is set to 1b, a Router shall:
4. Start Lane Initialization from Phase 1.
4.4.6#5 NT After the Lane Disable bit in its Upstream Adapter is set to 1b, a Router shall:
5. After detecting a Router on the Upstream Facing Port, transition to the
Uninitialized Plugged state.
57
4.4.6.2 Disabled Adapter is not the Upstream Adapter
4.4.6.2.1#1 NT After the Lane Disable bit in the Adapter Configuration Space of the Lane
Adapter is set to 1b, the Router shall: 1. Send an LT_Fall Transaction to the
Link Partner of the Upstream Facing Port to signal transition to the Disabled
state.
4.4.6.2.1#2 NT After the Lane Disable bit in the Adapter Configuration Space of the Lane
Adapter is set to 1b, the Router shall: 2. Send a Hot Plug Event Packet for the
disabled Adapter with the UPG bit set to 1b to the Connection Manager.
4.4.6.2.1#3 TD 4.006 After the Lane Disable bit in the Adapter Configuration Space of the Lane
Adapter is set to 1b, the Router shall: 3. Transition the Adapter to the Disabled
State.
4.4.6.2.1#4 NT After the Lane Disable bit in the Adapter Configuration Space of the Lane
Adapter is set to 1b, the Router shall: 4. If the Router detects that SBRX of the
disabled Adapter transitions to a low logical state for more than
tDisconnectRx, the Router shall perform the disconnect flow defined in
Section 4.4.5.2.1.
4.4.6.2.1.1#1 TD 4.007 If the Link Partner of the disabled Adapter is not the Upstream Adapter, it
shall do the following upon receiving the LT_Fall Transaction: 1. Send a Hot
Plug Event Packet with the UPG bit set to 1b to the Connection Manager.
4.4.6.2.1.1#2 TD 4.006 If the Link Partner of the disabled Adapter is not the Upstream Adapter, it
shall do the following upon receiving the LT_Fall Transaction: 2. Load the
TD 4.007
following fields in the Adapter Configuration Space of the Adapter with their
default values: Basic Configuration Registers: Link Credits Allocated; TMU
Adapter Configuration Capability: Inter-Domain Time Initiator; USB4 Port
Configuration Capability: Target Link Width CL0s Enable CL1 Enable CL2
Enable Lane Bonding.
4.4.6.2.1.1#3 NT If the Link Partner of the disabled Adapter is not the Upstream Adapter, it
shall do the following upon receiving the LT_Fall Transaction: 3. Transition to
the CLd state.
4.4.6.2.1.2#1 TD 4.007 If the Link Partner of the disabled Adapter is the Upstream Adapter, it shall do
the following upon receiving the LT_Fall Transaction: 1. Drive SBTX to a
logical low state on all USB4 Ports for tDisconnectTx.
4.4.6.2.1.2#2 TD 4.007 If the Link Partner of the disabled Adapter is the Upstream Adapter, it shall do
the following upon receiving the LT_Fall Transaction: 2. Transition to the
Uninitialized Unplugged state.
58
4.4.6.2.1.2#3 NT If the Link Partner of the disabled Adapter is the Upstream Adapter, it shall do
the following upon receiving the LT_Fall Transaction: 3. Transition to the
Uninitialized Plugged state as a result of detecting SBRX driven high.
4.4.6.2.1.2#4 TD 4.007 If the Link Partner of the disabled Adapter is the Upstream Adapter, it shall do
the following upon receiving the LT_Fall Transaction: 4. Start lane
Initialization from Phase 1.
4.4.7#1 NT When a Router receives a Time Sync Notification Ordered Set (TSNOS) it
shall generate a time stamp.
4.4.7#2 NT The Time Sync Notification Ordered Set shall have the structure in Table 4-
41.
4.4.7#3 NT SCR in the Time Sync Notification Ordered Set payload shall be set to 11
0000 1101b to indicate that the Ordered Set contents are not scrambled.
4.5.1#1 NT Deprecated.
4.5.1#3 NT (Host Router) A Router shall enter sleep state when the Enter Sleep bit is set to
1b and one of the following sleep events occur: The Router receives an
implementation-specific signal indicating entry to Sleep state.
4.5.1#4 CH11 (Device Router) A Router shall enter sleep state when the Enter Sleep bit is set
to 1b and one of the following sleep events occur: The Router tunnels PCIe
traffic and receives a PERST Active Tunneled Packet on the Upstream Facing
Port.
4.5.1#5 NT (Device Router) A Router shall enter sleep state when the Enter Sleep bit is set
to 1b and one of the following sleep events occur: The Router receives an
LT_LRoff Transaction on the Sideband Channel of an Upstream Facing Port.
4.5.1#6 NT A Router shall not enter sleep state unless the Enter Sleep bit is set to 1b
before a sleep event occurs.
4.5.1#7 NT After the Enter Sleep bit is set to 1b, the Router shall complete any pending
transactions on the Sideband Channel.
4.5.1#8 NT When the Router is ready for the sleep event it shall set the Sleep Ready bit to
1b.
59
4.5.1#9 NT After a sleep event occurs, the Router shall do the following for each USB4
Port: If the USB4 Port is inter-Domain bit is 0b and the USB4 Port is
Configured bit is 0b, perform a disconnect by driving its SBTX line low for
tDisconnectTx. If the Enable Wake on Connect bit of the USB4 Port is 1b, the
USB4 Port shall drive its SBTX line high after tDisconnectTx.
4.5.1#10 NT After a sleep event occurs, the Router shall do the following for each USB4
Port: If the USB4 Port is inter-Domain bit is 1b and the Enable Wake on inter-
Domain bit is set to 0b, perform a disconnect by driving its SBTX line low for
tDisconnectTx.
4.5.1#11 CH11 After a sleep event occurs, the Router shall do the following for each USB4
Port: Else: If the Router supports PCIe Tunneling, send at least 3 PERST
Active Tunneled Packets on all Downstream PCIe Adapters that have the Path
Enable bit set to 1b.
4.5.1#12 NT After a sleep event occurs, the Router shall do the following for each USB4
Port: Else: Send an LT_LRoff Transaction on the Sideband Channel within
tLRoffResponse from detecting the sleep event.
4.5.1#13 NT After a sleep event occurs, the Router shall do the following for each USB4
Port: Else: If the USB4 Port is Inter-Domain bit is 0b and the USB4 Port is
Configured bit is 1b, wait for an LT_LRoff Transaction on the Sideband
Channel, unless an LT_LRoff Transaction was already received from the time
the Enter Sleep bit was set to 1b.
4.5.1#14 NT After a sleep event occurs, the Router shall do the following for each USB4
Port: Else: Transition the Adapters to CLd state.
4.5.2#1 NT On entry to sleep state, a Router shall restore all Configuration Spaces to their
default values.
4.5.2#2 NT If the Enter Sleep bit is set to 1b, a Router shall retain a copy of the state
information listed in Table 4-42 separate from Configuration Space.
4.5.2#3 NT If a USB4 Port has the USB4 Port is inter-Domain state set to 1b, then the
USB4 Port shall ignore any Transactions received on the Sideband Channel
while in Sleep state.
4.5.3#1 NT A Router shall issue a Wake on Connect if the Enable Wake on Connect bit of
a USB4 Port is set to 1b, the USB4 Port is Configured bit is 0b, the USB4 Port
is Inter-Domain bit is set to 0b, and it detects either of the following after the
Enter Sleep bit is set to 1b and it detects either of the following: A connection
on the USB Type-C connector attached to the USB4 Port.
4.5.3#2 NT A Router shall issue a Wake on Connect if the Enable Wake on Connect bit of
a USB4 Port is set to 1b, the USB4 Port is Inter-Domain bit is set to 0b, and it
detects either of the following: SBRX is at logic high on the USB4 Port for
tConnectRx.
60
4.5.3#3 IOP A Router shall issue a Wake on Disconnect event if the Enable Wake on
Disconnect bit of a USB4 Port is set to 1b, the USB4 Port is Inter-Domain bit
is set to 0b, the USB4 Port is Configured bit is set to 1b, and the Router
detects either of the following after the Enter Sleep bit is set to 1b: A
disconnect on the USB Type-C connector attached to the USB4 Port.
4.5.3#4 IOP A Router shall issue a Wake on Disconnect event if the Enable Wake on
Disconnect bit of a USB4 Port is set to 1b, the USB4 Port is Inter-Domain bit
is set to 0b, the USB4 Port is Configured bit is set to 1b, and the Router
detects either of the following after the Enter Sleep bit is set to 1b: SBRX is at
logic low on the USB4 Port for tDisconnectRx.
4.5.3#5 IOP A Router shall issue a Wake on Inter-Domain event if the Enable Wake on
Inter-Domain bit is set to 1b, the USB4 Port is Inter-Domain bit is set to 1b,
and the Router detects either of the following after the Enter Sleep bit is set to
1b: A disconnect on the USB Type-C connector attached to the USB4 Port.
4.5.3#6 IOP A Router shall issue a Wake on Inter-Domain event if the Enable Wake on
Inter-Domain bit is set to 1b, the USB4 Port is Inter-Domain bit is set to 1b,
and the Router detects either of the following after the Enter Sleep bit is set to
1b: SBRX is at logic low on the USB4 Port for tDisconnectRx.
4.5.3#7 CH11 A Router shall issue a Wake on PCIe event if the Enable Wake on PCIe bit is
set to 1b, and it detects a PCIe Wake event from any connected PCIe Endpoint
or Switch after a Sleep Event occurs.
4.5.3#8 CH11 A Router shall issue a Wake on USB3 event if the Enable Wake on USB3 bit
is set to 1b, and it detects a USB Wake event from any connected USB device
after a Sleep Event occurs.
4.5.3#9 IOP A Router shall issue a Wake on USB4 event if the USB4 Port is inter-Domain
bit is set to 0b, the USB4 Port is Configured bit is set to 1b, and the Router
detects at least one transition of SBRX to logical low for tWake time after a
Sleep Event occurs.
4.5.3#10 TBD A Router shall issue a Wake on DP event if the Enable Wake on DP bit is set
to 1b, and it detects an HPD change or reception of an HPD IRQ after a Sleep
Event occurs.
4.5.3#11 TBD A Host Router shall issue a Wake by Host System when it detects an
implementation-specific wake indication from the host system.
4.5.4.1#1 NT When a Router detects a disconnect on the UFP, it shall exit sleep state
61
4.5.4.2 Wake on USB4 Event
4.5.4.2#1 IOP A Router shall assert SBRX to logical low for tWake time to indicate a Wake
on USB4 event.
4.5.4.2#2 NT After detecting a wake event, a Router shall: 1. issue a Wake on USB4 event
on all connected USB4 Ports by asserting SBTX to logical low for tWake
time.
4.5.4.2#3 NT After detecting a wake event, a Router shall: 2. begin Lane Initialization on all
connected USB4 Ports.
4.5.4.2#4 NT The transmitting USB4 Port shall retry the Transactions as defined in Section
4.1.1.2.5.
4.5.4.2#5 NT After detecting a wake event, the Router shall: 3. for every Adapter that
reaches CL0 state, send a Hot Plug Event Packet to the Connection Manager
with the UPG bit set to 0b.
62
Chapter 8
8 Configuration Spaces
8.2.2.3#21 TD 4.005 The Negotiated Link Width field shall indicate the negotiated Link width (xN –
corresponding to N Lanes).
8.2.2.4#21 NT An Adapter shall set the Router Detected bit to 1b when the USB4 Port detects
a connected Router.
8.2.2.4#22 NT An Adapter shall set the Router Detected bit to 0b upon a disconnect.
8.2.2.4#23 NT An Adapter shall set the Wake on Connect Status bit to 1b after a wake event is
generated by the USB4 Port as a result of a connect to the USB4 Port.
8.2.2.4#24 NT The Wake on Connect Status bit shall not be set to 1b unless the Enable Wake
on Connect bit is 1b.
8.2.2.4#25 NT The Wake on Connect Status bit shall be set to 0b on entry to sleep.
8.2.2.4#26 NT An Adapter shall set the Wake on Disconnect Status bit to 1b after a wake event
is generated by the USB4 Port as a result of a disconnect from the USB4 Port.
8.2.2.4#27 NT The Wake on Disconnect Status bit shall not be set to 1b unless the Enable
Wake on Disconnect bit is 1b.
8.2.2.4#28 NT The Wake on Disconnect Status bit shall be set to 0b on entry to sleep.
8.2.2.4#29 NT An Adapter shall set the Wake on USB4 Wake Status bit to 1b after a wake
event is generated by the USB4 Port as a result of a USB4 Wake.
8.2.2.4#30 NT The Wake on USB4 Wake Status bit shall not be set to 1b unless the Enable
Wake on USB4 Wake bit is 1b.
8.2.2.4#31 NT The Wake on USB4 Wake Status bit shall be set to 0b on entry to sleep.
8.2.2.4#32 NT An Adapter shall set the Wake on Inter-Domain Status bit to 1b after a wake
event is generated by the USB4 Port as a result of an inter-Domain Wake.
63
8.2.2.4#33 NT The Wake on Inter-Domain Status bit shall not be set to 1b unless the Enable
Wake on inter-Domain bit is 1b.
8.2.2.4#34 NT The Wake on Inter-Domain Status bit shall be set to 0b on entry to sleep.
64
Chapter 13
The following Table presents the USB4 Specification Chapter 13 asserts.
13.2.1.1#1 IOP A Router shall implement a bidirectional Sideband Channel when attached
directly to a bidirectional Cable Re-timer.
13.2.1.1#2 IOP A Router shall implement a unidirectional Sideband Channel when not
attached directly to a bidirectional Cable Re-timer.
13.2.1.1#3 IOP A Router that is connected directly to a bidirectional Re-timer shall support
concurrent reception of Transactions on SBTX and on SBRX.
13.2.1.1#4 NT A Router shall drive its SBTX for up to 2 bit times after the last Stop bit of an
AT Command.
13.2.1.2 Transactions
13.2.1.2.1 LT Transactions
13.2.1.2.1#1 IOP A Router shall support the additional LT Transaction types defined in Table
13-2.
13.2.1.2.2 AT Transactions
13.2.1.2.2#1 BC The structure of the STX Symbol within an AT Transaction shall be as defined
in Table 13-3.
13.2.1.2.2#3 BC Bit 4 in the STX symbol (Responder) shall be set to 0b in all other cases.
13.2.1.2.2#5 BC Bit 2 in the STX symbol (Recipient): For an AT Response: shall be set to 1b
65
13.2.1.2.2#6 NT A Router shall not send an AT Command that targets Register 13 of a Re-
timer or Router SB Register Space unless the Re-timer or Router is directly
attached to it.
13.2.1.2.2.1#2 TD 13.1.001 A Router shall set the Bounce bit to 1b and the ReturnBounce bit to 1b to
target a Cable Re-timer that is adjacent to the Router’s Link Partner.
13.2.1.2.2.1#3 TD 13.1.001 A Router that receives an AT Transaction with the Bounce bit set to 1b and the
ReturnBounce bit to 1b shall set the Bounce bit to 0b, then forward the AT
Transaction towards its adjacent Cable Re-timer.
13.2.1.2.2.1#4 TD 13.1.001 A Router that receives an AT Response with the Bounce bit set to 1b and the
ReturnBounce bit to 0b shall set the Bounce bit to 0b, then forward the AT
Response to its Link Partner.
13.2.1.2.3 RT Transactions
13.2.1.2.3#1 BC Byte 2 in a Broadcast RT Transaction shall have the format in Table 4-7 with
the changes in Table 13-4.
13.2.1.3#1 13.002 A Router shall support the additional registers and register fields in Table 13-5
and Table 13-6.
13.2.1.3#2 TBD A TBT3 Router may respond to a read from Register 12 with either 2 or 3
bytes. In the case of a 2-byte response, a Router shall infer that USB4
Sideband Channel Support is 0b and TBT3-Compatible Speeds Support is 1b.
13.2.1.4.1#1 IOP A Router shall not continue on to Phase 2 until it has obtained the connection
information described in this section and in Section 4.1.2.1.
13.2.1.4.1#2 IOP If TBT3 Mode is established on the Link, a Router shall proceed with Lane
Initialization as defined in Section 4.1.2 with the changes defined in this
chapter.
13.2.1.4.2#1 IOP Router shall decide the Lane attributes using the decision criteria in Table 4-18
with the changes defined in Table 13-7.
13.2.1.4.2#2 IOP Router A shall enable RS-FEC if at least one side of the Link requests it (i.e.
the RS-FEC Request (Gen 2) bit is set to 1b in the SB Register Space of the
local USB4 Port and/or its Link Partner).
66
13.2.1.4.2#3 IOP Otherwise, RS-FEC shall not be enabled.
13.2.1.4.2#4 IOP Router A shall set the RS-FEC Enabled (Gen 2) bit in the USB4 Port
Capability to reflect whether it is operating with RS-FEC.
13.2.1.4.2#6 TD 13.1.003 Else, the Sideband Channel of Router A shall operate as a USB4 Sideband
Channel.
13.2.1.4.3#1 TD 13.1.003 Router A shall do the following for each enabled Lane to indicate that it is
ready to start transmission on a given Lane:
13.2.1.4.3#2 TD 13.1.003 If the Router Assembly for Router A does not include any On-Board Re-
timers, and if operating at Gen 2 speed, Router A shall send an LT_Gen_2
Transaction for each enabled Lane every tLaneParams.
13.2.1.4.3#3 TD 13.1.003 Router A shall continue sending LT_Gen_2 Transactions until all of the
following are true, then continue to Step 2: At least tLTPhase4 time has passed
from completion of Phase 2; Router A has sent LT_Gen_2 Transactions at
least twice; Router A has received an LT_Gen_2 Transaction from Router B.
13.2.1.4.3#4 TD 13.1.003 If the Router Assembly for Router A does not include any On-Board Re-
timers, and if operating at Gen 3 speed, Router A shall send an LT_Gen_3
Transaction for each enabled Lane every tLaneParams.
13.2.1.4.3#5 TD 13.1.003 Router A shall continue sending LT_Gen_3 Transactions until all of the
following are true, then continue to Step 2: At least tLTPhase4 time has passed
from completion of Phase 2; Router A has sent LT_Gen_3 Transactions at
least twice; Router A has received an LT_Gen_3 Transaction from Router B.
13.2.1.4.3#6 TD 13.1.003 If the Router Assembly for Router A includes one or more On-Board Re-
timers, and if operating at Gen 2 speed, Router A shall send a Broadcast RT
Transaction every tLaneParams.
13.2.1.4.3#7 TD 13.1.003 The Broadcast RT Transaction shall have the parameter values in Table 4-18.
13.2.1.4.3#8 TD 13.1.003 Router A shall also send an LT_Gen_2 Transaction for each enabled Lane.
67
13.2.1.4.3#9 TD 13.1.003 Router A shall continue sending the Broadcast RT and LT_Gen_2
Transactions until all of the following conditions are true: At least tLTPhase4
time has passed from completion of Phase 2; Router A has sent LT_Gen_2
Transactions at least twice; Router A has received an LT_Gen_2 Transaction
from Router B.
13.2.1.4.3#10 TD 13.1.003 If the Router Assembly for Router A includes one or more On-Board Re-
timers, and if operating at Gen 3 speed, Router A shall send a Broadcast RT
Transaction every tLaneParams.
13.2.1.4.3#11 TD 13.1.003 The Broadcast RT Transaction shall have the parameter values in Table 4-18.
13.2.1.4.3#12 TD 13.1.003 Router A shall also send an LT_Gen_3 Transaction for each enabled Lane.
13.2.1.4.3#13 TD 13.1.003 Router A shall continue sending the Transactions until all of the following
conditions are true: At least tLTPhase4 time has passed from completion of
Phase 2; Router A has sent LT_Gen_3 Transactions at least twice; Router A
has received an LT_Gen_3 Transaction from Router B.
13.2.1.4.4#2 TD 13.1.003 (Transmitter) If Router A connects to a Cable Re-timer: Router A’s transmitter
shall perform the Primary Partner flow in the Asymmetric TxFFE Parameter
Negotiation with a transmitting Primary Partner defined in Section
13.2.1.4.4.1.
13.2.1.4.4#5 TD 13.1.003 (Receiver) If Router B connects to an On-Board Re-timer, then Router B’s
receiver shall perform the receiver flow in the symmetric equalization flow
defined in Section 4.1.2.5.1.
13.2.1.4.4#6 TD 13.1.003 (Receiver) When a receiver’s equalization flow is complete on a Lane, the
Router shall set the Lane’s Clock Switch Done bit to 1b
13.2.1.4.4#7 TD 13.1.003 (Receiver) If Router B connects to a Cable Re-timer, then Router B’s receiver
shall perform the Primary Partner flow in the Asymmetric TxFFE Parameter
Negotiation with a Receiving Primary Partner defined in Section 13.2.1.4.4.2.
68
13.2.1.4.4#8 TD 13.1.003 (Receiver) If Router B either connects directly to Router A or connects to an
On-Board Re-timer in the Router Assembly of Router A, then Router B’s
receiver shall perform the receiver flow in the symmetric equalization flow
defined in Section 4.1.2.5.1.
13.2.1.4.4.1 Phase 5 – Asymmetric TxFFE Parameter Negotiation with a Transmitting Primary Partner
13.2.1.4.4.1#1 TD 13.1.003 1) The transmitter shall start with the TX Active bit set to 1b (default value) in
the Tx Status byte of the TxFFE register
13.2.1.4.4.1#2 TD 13.1.003 2) The transmitter shall send an AT Transaction with a write Command to the
receiver that sets the Tx Active bit to 1b in the Partner Tx Status byte in the
TxFFE register
13.2.1.4.4.1#3 TD 13.1.003 3) The transmitter shall read the local Rx Status & TxFFE Request byte from
the receiver.
13.2.1.4.4.1#4 NT Deprecated.
13.2.1.4.4.1#5 TD 13.1.003 4) If Rx Locked = 1b, then negotiation is complete and no further TxFFE
negotiation steps shall be taken.
13.2.1.4.4.1#6 TD 13.1.003 4) Else if New Request = 0b and TxFFE Request is the same as the previous
TxFFE Request, the receiver has not provided a new request yet. The Router
shall go to Step 3. The Router shall perform Step 3 within tPollTXFFE of
receiving the AT Response.
13.2.1.4.4.1#7 TD 13.1.003 4) Else, this is a new request to update TxFFE parameters. Continue on to
Step 5.
13.2.1.4.4.1#8 TD 13.1.003 5) The transmitter shall update its transmitter parameters based on the new
parameters received in the AT Response
13.2.1.4.4.1#9 TD 13.1.003 5) If both Lane Adapters in the Port are enabled and have not yet completed
TxFFE negotiation, both transmitters must complete Step 5 before continuing
to Step 6. If the other Lane Adapter has not yet completed Step 5, the
transmitter shall wait for the other Lane to finish Step 5 before continuing to
Step 6.
13.2.1.4.4.1#10 TD 13.1.003 6) The transmitter shall inform the receiver that it has updated to new
parameters by sending an AT Transaction with a write Command to the
receiver targeting its Partner Tx Status byte in the TxFFE register with the
following contents: Tx Active = 1b; TxFFE Setting = value received in Step 4.
13.2.1.4.4.1#11 TD 13.1.003 7) The transmitter shall read the local Rx Status & TxFFE Request byte from
the receiver.
13.2.1.4.4.1#12 NT Deprecated
69
13.2.1.4.4.1#13 TD 13.1.003 8) If New Request = 1b and TxFFE Request is the same as the previous
TxFFE Request, the Router shall return to and perform Step 7 within
tPollTXFFE of receiving the AT Response.
13.2.1.4.4.2 Phase 5 – Asymmetric TxFFE Parameter Negotiation with a Receiving Primary Partner
13.2.1.4.4.2#1 TD 13.1.003 1) The receiver shall start with the following default values in the Rx Status &
TxFFE Request byte of the TxFFE register: Rx Locked = 0b; New Request bit
= 0b; Rx Active bit = 0b.
13.2.1.4.4.2#2 TD 13.1.003 2) The receiver shall read the Local Tx Status byte of the transmitter.
13.2.1.4.4.2#3 TD 13.1.003 2) On reception of an AT Response from the transmitter, the receiver shall do
the following: If Tx Active = 1b (i.e. the transmitter is transmitting), then
enable the receiver, set Rx Active to 1b, and go to Step 3. Else, repeat Step 2
within tPollTXFFE of receiving the AT Response.
13.2.1.4.4.2#4 TD 13.1.003 3) The receiver shall evaluate its receiver behavior. If equalization is
complete, the receiver shall set the Rx Locked field to 1b.
13.2.1.4.4.2#5 TD 13.1.003 4) The receiver shall do the following: If Rx Locked = 1, then go to Step 5.
Else, go to Step 6
13.2.1.4.4.2#7 TD 13.1.003 6) The receiver shall select a new set of TxFFE parameters.
13.2.1.4.4.2#8 TD 13.1.003 7) The receiver shall write the Partner Rx Status & TxFFE Request byte at the
transmitter as follows: If the Transmitting Primary Partner finished TxFFE on
both Lanes, then the receiver sends an AT Command with a write Command
targeting the Partner Rx Status & TxFFE Request byte of the TxFFE register of
the transmitter. Else, the receiver will wait for the next AT Command with a
write Command to the TxFFE Register from the Transmitting Primary Partner
and use it to write the Partner Rx Status & TxFFE Request byte of the TxFFE
register of the transmitter. The AT command shall write to following values
to the following fields: New Request = 1b; Rx Active = 1b; TxFFE Request =
index of selected set of TxFFE parameters.
13.2.1.4.4.2#9 TD 13.1.003 8) The receiver shall wait for a write Response indicating the transmitter is
using the new requested TxFFE settings.
13.2.1.4.4.2#10 TD 13.1.003 9) The receiver shall evaluate its receiver behavior. If equalization is
complete, the receiver shall set the Rx Locked field to 1b.
70
13.2.1.4.4.2#11 TD 13.1.003 10) The receiver shall write the Partner Rx Status & TxFFE Request byte at the
transmitter as follows: If the Transmitting Primary Partner finished TxFFE on
both Lanes, then the receiver sends an AT Command with a write Command
targeting the Partner Rx Status & TxFFE Request byte of the TxFFE register of
the transmitter.
13.2.1.4.4.2#12 TD 13.1.003 10) The receiver shall write the Partner Rx Status & TxFFE Request byte at the
transmitter as follows: Else, the receiver will wait for the next AT Command
with a write Command to the TxFFE Register from the Transmitting Primary
Partner and use it to write the Partner Rx Status & TxFFE Request byte of the
TxFFE register of the transmitter. The AT Command shall write to following
values to the following fields: New Request = 0b; Rx Active = 1b; Rx Locked
= updated value
13.2.1.4.4.2#13 TD 13.1.003 11) The receiver shall do the following: If Rx Locked = 1, then go to Step 5.
Else, go to Step 6.
13.2.2.1.1#1 NT Deprecated.
13.2.2.1.1#2 NT Deprecated.
13.2.2.1.1#3 NT Deprecated.
13.2.2.1.1#4 NT Deprecated.
13.2.2.1.1#5 NT Deprecated.
13.2.2.1.1#6 NT Deprecated.
13.2.2.2#1 IOP When operating in TBT3 mode, TS1 and TS2 Ordered Sets shall have the
format shown in Table 4-25 with the changes in Table 13-8.
13.2.2.2#2 IOP Lane Bonding Target 2. Transmitter shall either set this value to match the
Lane Bonding Target field or shall set this value to 001b.
13.2.3.1#1 IOP When TBT3 Mode is established on the Link, a USB4 Port shall support the
transitions described in Section 4.2.2 with the following changes:
71
13.2.3.1#2 TD 13.1.004 For a Device Router that supports TBT3 Mode on its Upstream Facing Port,
all USB4 Ports shall support operation with two Single-Lane Links.
13.2.3.2 Pre-Coding
13.2.4#1 NT If bits 15:12 in the Connection Manager USB4 Version field in the Router
Configuration Space are 0b (indicating a TBT3 Connection Manager), a
Router shall support Sleep and Wake per Section 4.5 with the changes defined
in this section.
13.2.4.1#1 NT After the Enter Sleep bit is set to 1b in all Ports, a Device Router shall do the
following for each USB4 Port: Transition the USB4 Adapters to CLd state.
13.2.4.1#2 NT After the Enter Sleep bit is set to 1b in all Ports, a Device Router shall do the
following for each USB4 Port: If any of the following conditions apply, the
USB4 Port shall go through disconnect: For Lane 0 in a USB4 Port: The Lane
0 is Inter-Domain bit is 0b and the Lane 0 Configured bit is 0b; The Lane 0 is
Inter-Domain bit is 1b and the Inter-Domain Disconnect on Sleep bit is set to
1b.
13.2.4.1#3 NT Deprecated.
13.2.4.2#1 NT A Device Router shall retain a copy of the state information listed in Table
13-9 separate from Configuration Space.
13.2.4.2#2 NT If the USB4 Port is disconnected while in Sleep state, then the internal Lane 0
is Inter-Domain state, Lane 0 Configured state, Lane 1 is Inter-Domain state,
and Lane1 Configured state listed in Table 13-9 shall all transition to 0b.
13.2.4.2#3 NT Deprecated.
13.2.4.3#1 NT A Device Router shall support all of the wake events listed in the Enable
Wake Events field of the USB4 Port Region in the Vendor Specific Extended
6 Capability of the Router Configuration Space.
13.2.4.4#1 NT A Device Router shall not start Lane Initialization for Lane 0 until the Start
Link Initialization bit is set to 1b, if either of the following is true on exit from
sleep: The Lane 0 Configured state is set to 0b; The Lane 0 is Inter-Domain bit
is 1b.
72
13.2.4.4#2 NT A Device Router shall not start Lane Initialization for Lane 1 until the Start
Link Initialization bit is set to 1b, if either of the following is true on exit from
sleep: The Lane 1 Configured state is set to 0b; The Lane 1 is Inter-Domain bit
is 1b.
73
Re-timer Assertions
Chapter 4
The following Table presents the USB4 Re-timer Specification Chapter 4 asserts.
4. Logical Layer
4#2rt NT The USB4 Ports on a Re-timer shall have the same number of Lane Adapters
and shall support the same capabilities.
4.1.1 Transactions
4.1.1#1rt IOP When forwarding Transactions from an SBRX input to an SBTX output, a Re-
timer shall maintain the order of Transactions as received on the SBRX input.
4.1.1.1 LT Transactions
4.1.1.1#1rt IOP A Re-timer shall support LT Transactions as defined in the USB4 Base
Specification with the following changes:
4.1.1.1#2rt IOP When a Re-timer receives an LT Transaction, it shall forward the Transaction to
its other USB4 Port.
4.1.1.2 AT Transactions
4.1.1.3 RT Transactions
74
4.1.1.3.1 Broadcast RT Transaction
4.1.1.3.1#2rt TD 4.005 The Re-timer shall then forward the Broadcast RT Transaction.
4.1.1.3.1#5rt TD 4.005 When a Re-timer forwards a Broadcast Transaction, it shall set the SSCalways
bit to 0b to indicate that the Re-timer supports exiting CLx state with SSC
turned off.
4.1.1.3.2#1rt NT When sending an Addressed RT Command, a Re-timer shall set the Index field
to 0.
4.1.1.3.2#2rt IOP When a Re-timer receives an Addressed RT Command with the Index field set
to 0, it shall process the Command and send a response as described in the
USB4 Base Specification. The Re-timer shall not forward the Transaction.
75
4.1.1.3.2#7rt TD 4.001 When a Re-timer receives an Addressed RT Transaction on its Cable-Facing
USB4 Port with an Index field that does not match its Cable-Facing Index, it
shall forward the RT Transaction without sending a response.
4.1.1.3.2#8rt IOP If the Index field in the Addressed RT Transaction is 0, then the Re-timer shall
consume the Addressed RT Response.
4.1.1.3.2#9rt IOP If the Index field in the Addressed RT Transaction is not 0, the Re-timer shall
forward the Addressed RT Response.
4.1.1.4#1rt IOP A Re-timer shall maintain the SB Register Space defined in Table 4-1.
4.1.1.4#3rt NT Read/Write. A field with this access type shall be capable of both Read
Commands and Write Commands. The value read from this field shall reflect
the last value written to it unless the field was reset in the interim.
4.1.1.4#4rt NT Reserved. Reserved for future implementation. A Write Command to this field
shall have no effect.
4.1.1.4#5rt NT Reserved with Non-Zero Value. Reserved for future implementation. A Write
Command to this field shall have no effect. A read shall return the specified
value.
4.1.1.4#6rt IOP The SB Register Space registers shall have the structure and fields described in
Table 4-3.
4.1.2#1rt NT A Re-timer shall perform Lane Initialization as described in the USB4 Base
specification with the modifications described in this section.
4.1.2.1#1rt IOP An On-Board Re-timer shall also determine whether or not there is a reverse
insertion at the USB Type-C connector.
4.1.2.1#2rt NT A Re-timer shall not continue on to Phase 2 until it has obtained the connection
information listed above.
4.1.2.1#3rt NT A Re-timer shall not proceed to phase 2 unless USB4 Mode is established on
the Link.
4.1.2.1.1#1rt IOP When necessary to correct for Lane mismatch, Lane reversal shall take place in
phase 1.
76
4.1.2.1.1#2rt IOP An On-Board Re-timer that is adjacent to the USB Type-C connector shall swap
its SBTX and SBRX lines facing the connector.
4.1.2.1.1#3rt IOP An On-Board Re-timer shall swap its designation of Lane 0 and Lane 1 in both
USB4 Ports.
4.1.2.2#1rt TD 4.005 When a Re-timer detects a logic high on SBRX of one USB4 Port for
tConnectRx time, it shall drive SBTX on the other USB4 Port to logic high.
4.1.2.2#2rt IOP The Re-timer shall then begin forwarding Transactions on the Sideband
Channel in this direction.
4.1.2.2#3rt IOP After both USB4 Ports detect a logic high on SBRX and drive SBTX high, the
Re-timer shall transition to phase 4 of Lane Initialization.
4.1.2.4#1rt IOP When a Re-timer receives a Broadcast RT Transaction it shall update its Link
parameters to match the Link parameters in the Transaction.
4.1.2.4#2rt IOP When a Re-timer detects an LT_Resume Transaction on any USB4 Port, it shall
transition to phase 5.
4.1.2.5#1rt NT Upon entry to phase 5, a receiver shall perform the receiver flow for symmetric
TxFFE negotiation as defined in the USB4 Base Specification.
4.1.2.5#2rt TD 4.005 The Re-timer shall use RT Transactions (with the Index field set to 0b) to access
the SB Register Space of the adjacent USB4 Port.
4.1.2.5#3rt NT When the Rx Active bit for a receiver is set to 1b, the Re-timer shall turn on the
Corresponding Transmitter and shall start transmitting CL_WAKE1.X Ordered
Set Symbols, where X is the Re-timer Index assigned by the Router that is the
target of the CL_WAKE1.X Ordered Set Symbols.
4.1.2.5#4rt NT The transmitter shall use a locally generated, non-SSC clock to transmit the
CL_WAKE1.X Ordered Set Symbols.
4.1.2.5#5rt NT The Corresponding Transmitter shall then perform the transmitter flow for
symmetric TxFFE negotiation as defined in the USB4 Base Specification.
4.1.2.5#6rt NT The Re-timer shall use Addressed RT Transactions (with the Index field set to
0b) to access the SB Register Space of the adjacent USB4 Port.
77
4.1.2.5#7rt TD 4.005 A transmitter shall stop using the local clock and shall start using the recovered
clock from the Corresponding Receiver when all of the following are true: The
Re-timer has completed TxFFE negotiation for all transmitters in that USB4
Port and all their Corresponding Receivers; and The Clock Switch Done bit for
Lane 0 of the adjacent USB4 Port is 1b.
4.1.2.5#8rt TD 4.005 After a transmitter switches to using the receiver clock, it shall forward the bit
stream it receives from the Corresponding Receiver instead of transmitting its
locally-generated CL_WAKE1.X Ordered Set Symbols.
4.1.2.5#9rt TD 4.005 The Re-timer shall set the Clock Switch Done bit in the Corresponding Receiver
to 1b.
4.1.2.5#10rt NT During the transition from local clock to receiver clock, the Re-timer shall meet
the SSC_SLEW_RATE requirement as specified in the USB4 Base
Specification. The transition may or may not take place on Symbol boundary.
4.2#1rt NT A Re-timer Channel shall support the following states: CLd state, Bit Lock
state, Forwarding state, CL0s, CL1, CL2 states.
4.2.1 CLd
4.2.1.1#1rt NT A Re-timer Channel shall transition to the CLd state when any of the following
occur: The Re-timer is first powered on.
4.2.1.1#2rt NT A Re-timer Channel shall transition to the CLd state when any of the following
occur: The Re-timer detects a disconnect event (i.e. SBRX transitions to logical
low on any USB4 Port for more than tDisconnectRx time).
4.2.1.1#3rt NT A Re-timer Channel shall transition to the CLd state when any of the following
occur: The SBRX of both Re-timer USB4 Ports are at logical high and both
USB4 Ports receive an LT_LRoff Transaction within tLROff of each other.
4.2.1.1#4rt NT A Re-timer Channel shall transition to the CLd state when any of the following
occur: The Re-timer Channels for Lane 0 shall also transition to CLd state when
the Re-timer receives an LT_Fall Transaction on any USB4 Port with LSELane
field set to 0b.
4.2.1.1#5rt NT A Re-timer Channel shall transition to the CLd state when any of the following
occur: The Re-timer Channels for Lane 1 shall also transition to CLd state when
the Re-timer receives an LT_Fall Transaction on any USB4 Port with LSELane
field set to 1b.
4.2.1.1#6rt NT A Re-timer Channel that transitions to CLd state due to an LT_Fall Transaction
shall maintain any Lane state acquired in phase 1 and phase 2 of the previous
Lane Initialization.
78
4.2.1.2 Behavior in State
4.2.1.2#1rt NT The Re-timer Channels for Lane 0 shall start Lane Initialization when the Re-
timer receives a Broadcast RT Transaction on any USB4 Port with the Lane0
Enabled bit set to 1b.
4.2.1.2#2rt NT The Re-timer Channels for Lane 1 shall start Lane Initialization when the Re-
timer receives a Broadcast RT Transaction on any USB4 Port with the Lane1
Enabled bit set to 1b.
4.2.1.3#1rt NT A Re-timer Channel shall exit this state when its transmitter is transmitting and
its receiver is enabled.
4.2.1.3#2rt NT After exiting the CLd state, a Re-timer Channel shall transition to the Bit Lock
state.
4.2.2.1#1rt NT A Re-timer Channel shall enter this state when it exits the CLd state.
4.2.2.3#1rt NT A Re-timer Channel shall exit this state after its receiver achieves bit lock and
its transmitter is transmitting the bit stream received by its receiver.
4.2.2.3#2rt NT After exiting the Bit Lock state, a Re-timer Channel shall transition to the
Forwarding state.
4.2.3 Forwarding
4.2.3.1#1rt NT A Re-timer Channel shall enter this state upon successful completion of receiver
lock.
4.2.3.2#1rt NT When a Re-timer Channel is in Forwarding state, it shall forward traffic from its
receiver to its transmitter.
4.2.3.2#2rt NT A Re-timer shall forward traffic regardless of whether or not it receives Logical
Layer Symbols.
79
4.2.3.2#3rt NT A Re-timer Channel shall not modify the logical level of a bit. A Re-timer
Channel shall neither add nor discard any bits.
4.2.3.3#1rt NT A Re-timer Channel shall only exit this state after one of the following occurs:
Transition to CLd state.
4.2.3.3#2rt NT A Re-timer Channel shall only exit this state after one of the following occurs:
Transition to CL0s, CL1, or CL2 states.
4.2.4.1#2rt NT The initial value of CL2_ACK Counter shall be the number of CL2_ACK
Ordered Set Symbols that were already forwarded.
4.2.4.1#4rt NT The initial value of CL1_ACK Counter shall be the number of CL1_ACK
Ordered Set Symbols that were already forwarded.
4.2.4.1#5rt NT While the receiver is shut down and the Channel still in Forwarding state, the
transmitter shall transmit a DC balanced signal and may use a local clock
without SSC.
4.2.4.1#6rt NT When the CL2_ACK Counter reaches a count of tEnterCLx, the Re-timer Lane
Adapter shall: Transition the Re-timer Channel in the direction forwarding the
CL2_ACK Ordered Sets to a CL2 state.
4.2.4.1#7rt NT When the CL2_ACK Counter reaches a count of tEnterCLx, the Re-timer Lane
Adapter shall: Reset the CL2_ACK Counter.
4.2.4.1#8rt NT When the CL2_ACK Counter reaches a count of tEnterCLx, the Re-timer Lane
Adapter shall: Transition the Re-timer Channel transmitter to electrical idle
within tTxOff time from expiration of the CL2_ACK Counter.
4.2.4.1#9rt NT When the CL2_ACK Counter reaches a count of tEnterCLx, the Re-timer Lane
Adapter shall: Wait tEnterLFPS1, then enable detection of Low Frequency
Periodic Signaling (LFPS).
4.2.4.1#10rt NT While the receiver is shut down and the Channel still in Forwarding state, the
transmitter shall transmit a DC balanced signal and may use local clock without
SSC.
80
4.2.4.1#11rt NT When the CL1_ACK Counter reaches a count of tEnterCLx, the Re-timer Lane
Adapter shall: Transition the Re-timer Channel in the direction forwarding the
CL1_ACK Ordered Sets to a CL1 state.
4.2.4.1#12rt NT When the CL1_ACK Counter reaches a count of tEnterCLx, the Re-timer Lane
Adapter shall: Reset the CL1_ACK Counter.
4.2.4.1#13rt NT When the CL1_ACK Counter reaches a count of tEnterCLx, the Re-timer Lane
Adapter shall: Transition the Re-timer Channel transmitter to electrical idle
within tTxOff time from expiration of the CL1_ACK Counter.
4.2.4.1#14rt NT When the CL1_ACK Counter reaches a count of tEnterCLx, the Re-timer Lane
Adapter shall: Wait tEnterLFPS1, then enable detection of Low Frequency
Periodic Signaling (LFPS).
4.2.4.1#16rt NT The initial value of CL_OFF Counter shall be the number of CL_OFF Ordered
Set Symbols that were already forwarded.
4.2.4.1#17rt NT While the receiver is shut down and the Channel still in Forwarding state, the
transmitter shall transmit a DC balanced signal and may use local clock without
SSC.
4.2.4.1#18rt NT When the CL_OFF Counter reaches a count of tEnterCLx, the Re-timer Lane
Adapter shall: Transition the Re-timer Channel in the direction forwarding the
CL_OFF Ordered Sets to a low power state as follows: If CL2_ACK Ordered
Sets were detected during the entry flow, transition to CL2 state; If CL1_ACK
Ordered Sets were detected during the entry flow, transition to CL1 state; If
CL0s_ACK Ordered Sets were detected during the entry flow, transition to
CL0s state.
4.2.4.1#19rt NT When the CL_OFF Counter reaches a count of tEnterCLx, the Re-timer Lane
Adapter shall: Reset the CL_OFF Counter.
4.2.4.1#20rt NT When the CL_OFF Counter reaches a count of tEnterCLx, the Re-timer Lane
Adapter shall: Transition the Re-timer Channel transmitter to electrical idle
within tTxOff time from expiration of the CL_OFF Counter.
4.2.4.1#21rt NT When the CL_OFF Counter reaches a count of tEnterCLx, the Re-timer Lane
Adapter shall: Wait tEnterLFPS1, then enable detection of Low Frequency
Periodic Signaling (LFPS).
4.2.4.1#22rt NT A Re-timer Lane Adapter shall respond to Logical Layer Errors as defined in
Section 4.3.1.
81
4.2.4.1#24rt NT The Re-timer Lane Adapter shall also reset the CL2_ACK Counter and the
CL1_ACK Counter to zero.
4.2.4.2#1rt TD 4.011 While a Re-timer Channel is in CL2 state, its transmitter shall be in electrical
idle. Lane common mode voltages shall be maintained.
4.2.4.2#2rt TD 4.013 While a Re-timer Channel is in CL1 state, its transmitter shall be in electrical
idle. Lane common mode voltages shall be maintained.
4.2.4.2#3rt TD 4.015 While a Re-timer Channel is in CL0s state, its transmitter shall be in electrical
idle. Lane common mode voltages shall be maintained.
4.2.4.3.1#1rt NT When a Re-timer detects an LFPS burst on one of its receivers, the Re-timer
shall: Send a Low Frequency Periodic Signaling (LFPS) burst from the
Corresponding Transmitter. The duration of the LFPS burst shall be at least 16
LFPS cycles and no more than tLFPSDuration.
4.2.4.3.1#2rt NT When a Re-timer detects an LFPS burst on one of its receivers, the Re-timer
shall: Return the Corresponding Transmitter to Electrical Idle for tPreData.
4.2.4.3.1#3rt TD 4.015 When a Re-timer detects an LFPS burst on one of its receivers, the Re-timer
shall: Enable the receiver to start calibration. The Re-timer shall not enable the
receiver until at least tIdleRx after the last LFPS cycle was received.
4.2.4.3.1#4rt NT When a Re-timer detects an LFPS burst on one of its receivers, the Re-timer
shall: Start sending CL_WAKE1.X Ordered Set Symbols from the
Corresponding Transmitter, where X is the Re-timer Index assigned by the
Router that is the target of the CL_WAKE1.X Ordered Set Symbols. The Re-
timer shall transmit the Symbols using a locally generated, non-SSC, clock.
4.2.4.3.1#6rt NT The transition shall happen only after bit lock is achieved by all Re-timer
Channels that are in CL0s state.
4.2.4.3.1#7rt TD 4.015 Each Re-timer Channel in CL0s state shall transition to Forwarding state. From
this point on, a Re-timer Channel shall forward the bit stream it receives from
the Lane and stop generating CL_WAKE1.X Ordered Set Symbols.
4.2.4.3.1#8rt NT During the transition from local clock to receiver clock, the Re-timer shall meet
the SSC_SLEW_RATE requirement as specified in the USB4 Base
Specification.
82
4.2.4.3.2 CL1/CL2 Exit
4.2.4.3.2.1 Phase 1
4.2.4.3.2.1#1rt TD 4.011 When a Re-timer detects an LFPS burst of 2 cycles on one of its Lane Adapters,
it shall do the following: 1. Send LFPS as follows: The Lane Adapter that
TD 4.013 detected the LFPS shall send LFPS for at least 5 LFPS cycles and no more than
tLFPSDuration.
4.2.4.3.2.1#2rt NT When a Re-timer detects an LFPS burst of 2 cycles on one of its Lane Adapters,
it shall do the following: 1. Send LFPS as follows: The Corresponding Adapter
shall send LFPS until it detects LFPS.
4.2.4.3.2.1#3rt NT When a Re-timer detects an LFPS burst of 2 cycles on one of its Lane Adapters,
it shall do the following: 2. Enable the receivers for the Lane Adapter and its
Corresponding Adapter.
4.2.4.3.2.1#4rt TD 4.011 The Re-timer shall wait at least tIdleRx after a Lane Adapter stops detecting
LFPS before enabling the receiver for that Lane Adapter.
TD 4.013
4.2.4.3.2.1#5rt TD 4.011 For each Adapter, after the last LFPS is transmitted, transition the transmitter to
Electrical Idle for tPreData. Then, start transmitting CL_WAKE1.X Ordered Set
TD 4.013 Symbols, where X is the index of the Re-timer provided by the Router that is
the target of the CL_WAKE1.X Ordered Set Symbols.
4.2.4.3.2.1#6rt NT The Re-timer shall transmit the Symbols using a locally generated, non-SSC,
clock.
4.2.4.3.2.2 Phase 2
4.2.4.3.2.2#2rt NT CL_WAKE1 Symbols received by the Port shall not be transmitted while the
Port is in toggling mode.
4.2.4.3.2.3 Phase 3
83
4.2.4.3.2.3#2rt NT A Re-timer Channel shall ignore any received CL_WAKE1.Y (where Y is any
value) Symbols interleaved with CL_WAKE2.X Ordered Set Symbols when it
determines the reception of back-to-back CL_WAKE2.X Ordered Set Symbols.
4.2.4.3.2.3#3rt NT The transition shall happen only after bit lock is achieved by both active
receivers in the Re-timer Channel performing the transition.
4.2.4.3.2.3#4rt TD 4.011 Each Re-timer Channel performing the transition shall transition to Forwarding
state. From this point on, the Re-timer Channel shall forward the bit stream it
TD 4.013 receives from the Lane and stop generating CL_WAKE1.X Ordered Set
Symbols.
4.2.4.3.2.3#5rt NT During the transition from local clock to receiver clock, the Re-timer Channel
shall meet the SSC_SLEW_RATE requirement as specified in the USB4 Base
Specification.
4.2.4.3.3#1rt NT A Re-timer shall meet the following timing requirements during exit from CL0,
CL1, or CL2 states:
4.2.4.3.3#2rt TD 4.011 A receiver shall complete Symbol lock within tCLxLock of receiving SLOS or
CL_WAKE1.X Ordered Set Symbols.
TD 4.013
TD 4.015
4.3#1rt NT To track entry into CLx states and to participate in exit from CLx states, a Re-
timer shall decode Ordered Sets received on its Lane Adapters as defined in the
USB4 Specification.
4.3.1#1rt NT Table 4-4 lists the error cases that a Re-timer shall support along with how that
error shall be handled.
4.3.1#2rt NT If Lane Adapter detects 3 SLOS in Forwarding state with RS-FEC on or Lane
Adapter detects 15 SLOS in Forwarding state with RS-FEC off, it is a SLOS
Detection Error. If RS-FEC decoding is on, turn-off RS-FEC decoding on this
Lane in both USB4 Ports and perform Symbol lock on received SLOS
84
4.4 Timing Parameters
85
Chapter 6
The following Table presents the USB4 Re-timer Specification Chapter 6 asserts.
6#1rt NT A Cable Re-timer shall support the requirements defined in this chapter.
6.2.1#1rt NT This section defines the additional Sideband Channel behavior that a Re-timer
shall implement when operating in a TBT3-Compatible that uses a TBT3-
Compatible Sideband Channel
6.2.1.1.1#1rt IOP A Cable Re-timer shall implement a unidirectional behavior when the Sideband
Channel operates in TBT3-Compatible mode.
6.2.1.1.2#2rt IOP When the Re-timer is adjacent to a Thunderbolt Cable Re-timer, it shall operate
as a bidirectional Re-timer on its Cable-Facing USB4 Port. The Router-Facing
USB4 Port shall operate as a unidirectional Re-timer.
6.2.1.1.2#3rt IOP When the Re-timer is not adjacent to a Thunderbolt Cable Re-timer, it shall
operate as a unidirectional Re-timer on both USB4 Ports.
6.2.1.1.2#4rt IOP An On-Board Re-timer that is not adjacent to a USB Type-C connector shall
implement unidirectional behavior on both USB4 Ports.
86
6.2.1.2 Transactions
6.2.1.2.1 LT Transactions
6.2.1.2.1#1rt IOP A Re-timer shall forward an LT_Resume Transaction received on one USB4
Port to its other USB4 Port.
6.2.1.2.1#2rt IOP A Cable Re-timer shall forward an LT_Resume2 Transaction received on its
Router-Facing USB4 Port to its Cable-Facing USB4 Port.
6.2.1.2.1#3rt IOP A Re-timer shall forward a received LT_Gen_2 Transaction to its other USB4
Port.
6.2.1.2.1#4rt IOP A Re-timer shall forward a received LT_Gen_3 Transaction to its other USB4
Port.
6.2.1.2.2 AT Transactions
6.2.1.2.2.1#1rt NT A Cable Re-timer shall support the Bounce mechanism as defined in the USB4
Specification.
6.2.1.2.2.1#3rt NT A Cable Re-timer shall respond to a received AT Command that has the
Recipient bit set to 0b and the Bounce bit set to 0b.
6.2.1.2.2.1#4rt NT Else, it shall forward the received AT Command to its other USB4 Port.
6.2.1.2.2.2#2rt It shall forward other received AT Commands to its other USB4 Port.
6.2.1.2.2.2#4rt It shall not forward the AT Response to its other USB4 Port.
6.2.1.2.2.2#5rt It shall forward other received AT Responses to its other USB4 Port.
6.2.1.2.3 RT Transactions
6.2.1.2.3#1rt NT An On-Board Re-timer that is adjacent to a USB Type-C connector shall not
forward Broadcast RT Transactions towards the cable.
87
6.2.1.2.4 SB Register Space
6.2.1.2.4#1rt TBD The SB Register Space of a Re-timer shall have the additional fields described
in Table 6-1 and Table 6-2.
6.2.1.3.2#3rt NT If, on any USB4 Port, a Cable Re-timer detects LT_Resume for Lane 0 before it
detects at least one LT_Gen_2 Transaction or LT_Gen_3 Transaction for Lane
1, then the Re-timer shall keep the Lane 1 Adapters in both USB4 Ports in the
CLd state and shall not proceed with Lane Initialization.
6.2.1.3.2#4rt IOP When a Re-timer detects LT_Resume on any Lane of any USB4 Port, it shall
transition to phase 5.
6.2.1.3.3#1rt IOP Table 6-3 lists which TxFFE negotiation flows a transmitter or receiver shall
perform in phase 5.
6.2.1.3.3#2rt NT An On-Board Re-timer Lane Adapter that is not adjacent to a USB Type-C
connector shall turn on its transmitter when the Rx Active bit of its
Corresponding Receiver is set to 1b.
6.2.1.3.3#3rt NT An On-Board Re-timer Lane Adapter that is not adjacent to a USB Type-C
connector: It shall start transmitting CL_WAKE1.X Ordered Set Symbols,
where X is the Re-timer Index assigned by the Router that is the target of the
CL_WAKE1.X Ordered Set Symbols.
6.2.1.3.3#4rt NT An On-Board Re-timer Lane Adapter that is not adjacent to a USB Type-C
connector: The transmitter shall use a locally generated, non-SSC clock to
transmit the CL_WAKE1.X Ordered Set Symbols.
6.2.1.3.3#5rt NT An On-Board Re-timer Lane Adapter that is not adjacent to a USB Type-C
connector: It shall then set the Tx Active bit for the Lane Adapter to 1b.
6.2.1.3.3#6rt NT A Re-timer adjacent to a USB Type-C connector shall set the Clock Switch
Done bit to 1b in a Router-Facing Adapter when all receivers in Router-Facing
Adapters complete TxFFE negotiation.
88
6.2.1.3.3#7rt NT Once the Clock Switch Done bit is set to 1b, a transmitter adjacent to a USB
Type-C connector that is turned on shall forward the bit stream it receives from
the Corresponding Receiver using a recovered clock.
6.2.1.3.3#8rt NT When all of the following are true, a transmitter that is not adjacent to a USB
Type-C connector shall stop using the local clock, shall start using the
recovered clock from the Corresponding Receiver, and shall forward the bit
stream it receives from the Corresponding Receiver: In the transmitter’s USB4
Port, TxFFE negotiation is complete between all transmitters and their Adjacent
Receivers; In the USB4 Port opposite the transmitter’s USB4 Port, TxFFE
negotiation is complete between all receivers and their Adjacent Transmitter;
The Clock Switch Done bit for Lane 0 of the transmitter’s adjacent USB4 Port is
1b.
6.2.1.3.3#9rt NT A Re-timer adjacent to a Router shall set the Forward Switch Done bit to 1b in a
Lane Adapter of a Cable-Facing USB4 Port when transmitter of the Lane
Adapter is using the receiver clock from the Corresponding Receiver.
6.2.1.3.3#10rt NT A Re-timer shall set the Forward Switch Done bit to 1b in a Lane Adapter if the
Forward Switch Done bit is set to 1b in the adjacent USB4 Port of the
Corresponding Receiver.
6.2.1.3.3#11rt NT When the Forward Switch Done bit is set to 1b in an adapter adjacent to a USB
Type-C connector, the Lane Adapter shall turn on its transmitter, if it has not
done so already. It shall then set the Tx Active bit to 1b and perform TxFFE
Parameter Negotiation.
6.2.1.3.3#13rt NT A Cable Re-timer shall set the Tx Active bit to 1b in a Router-Facing Adapter
when the Lane Adapter is transmitting the bit stream received by a Lane
Adapter at the other end of the Cable, and transmission uses the recovered clock
from the Lane Adapter at the other end of the Cable.
Receiver flow:
6.2.1.3.3.1#1rt IOP The steps that the receiver shall perform to complete negotiation are listed
below:
6.2.1.3.3.1#2rt NT 1) The receiver shall set the following initial values on entry to Phase 5: Local
Rx Status & TxFFE Request byte of the TxFFE register: Rx Locked bit = 0b;
TxFFE Request field = index of an initial set of TXFFE parameters; Rx Active
bit =0b; New Request bit = 0b; Partner Tx Status byte of the TxFFE register: Tx
Active bit = 0b; Request Done bit = 0b.
89
6.2.1.3.3.1#3rt NT 2) The receiver shall evaluate the value of the Tx Active bit in the Partner Tx
Status byte of the TxFFE register: If Tx Active = 1b (i.e. the transmitter is
transmitting), then the receiver shall enable the receiver, set Rx Active bit to 1b,
and continue to Step 3.
6.2.1.3.3.1#4rt NT 2) The receiver shall evaluate the value of the Tx Active bit in the Partner Tx
Status byte of the TxFFE register: Else, repeat Step 2 within tPollTxFFE.
6.2.1.3.3.1#5rt NT 3) The receiver shall evaluate its behavior. If equalization is complete, the
receiver shall set the Rx Locked field in the Local Rx Status & TxFFE Request
byte to 1b
6.2.1.3.3.1#6rt NT 4) The receiver shall do the following: If the Rx Locked bit is set to 1b,
negotiation is complete and no further TxFFE negotiation steps shall be taken.
6.2.1.3.3.1#7rt NT 4) The receiver shall do the following: Else: TxFFE Request field shall be set to
the index of a selected set of TXFFE parameters; New Request bit shall be set to
1b to indicate the receiver is providing a new TxFFE index.
6.2.1.3.3.1#8rt NT 5) Continue to Step 6 only after sending a read Response with the updated
values of its TxFFE Register.
6.2.1.3.3.1#11rt NT 7) The receiver shall evaluate its receiver behavior. If equalization is complete,
the receiver shall set the Rx Locked field in the Local Rx Status & TxFFE
Request byte to 1b.
6.2.1.3.3.1#12rt NT 8) The receiver shall set the New Request field in the Local Rx Status & TxFFE
Request byte to 0b.
Transmitter flow:
6.2.1.3.3.2#1rt IOP The steps that the transmitter shall perform to complete negotiation are listed
below:
6.2.1.3.3.2#2rt NT 1) The transmitter shall set the following initial values on entry to Phase 5:
Local Tx Status byte of the TxFFE register: Tx Active bit = 1b; Request Done bit
= 0b; TxFFE Setting field = index of an initial set of TxFFE parameters;
Partner Rx Status & TxFFE Request byte of the TxFFE register: New Request
bit = 0b.
90
6.2.1.3.3.2#3rt NT 2) On reception of an AT Command with a write Command targeting the
Partner Rx Status & TxFFE Request byte of the TxFFE register, the transmitter
shall: If (New Request = 0b), repeat Step 2.
6.2.1.3.3.2#5rt NT 3) Load one of 16 predefined TxFFE configurations that matches the TxFFE
Request field of the received AT Command.
6.2.1.3.3.2#6rt NT 4) Send an AT Response to indicate the transmitter is using the new TxFFE
request.
91
Test Requirements
Hardware
Vendor provides the Unit Under Test (UUT) in a reference system for testing. The reference system must expose
one USB Type-C™ connector per USB4™ Port. The USB Type-C connector is the test point for the UUT.
For a USB4 host:
• Reference system must be x64-based, run Windows 10
• Host Router must be PCIe-based
• The Reference System must include a way to connect to the Analyzer/Exerciser through a controller that is
separate from the USB4 controller. This is to allow the Analyzer/Exercise hardware and software to operate
concurrently on the same system with USB4 CV while USB4 CV controls the USB4 hardware.
Note: In the future, will expand host testing to other OS and architectures.
Timing
Exerciser adds additional time to simulate 2 Cable Re-timers and 2 On-Board Re-timers (worst case latency) on the
Link between Exerciser and UUT. The total roundtrip latency is calculated as follows:
Total Latency = 2 (# of Re-timers) (individual Re-timer Latency)
Product
The Vendor Info File (VIF) is used in conjunction with test software to indicate RUT product implementation. This
file can be generated using the following tool:
http://www.usb.org/developers/tools/#PDFile
https://www.usb.org/document-library/usb-vendor-info-file-generator-version-2010
92
USB4 Mode Test Setups
This section defines the test setups for a Router Assembly that is part of a USB4™ host, hub, or device. The test
setups in this section are used for the USB4 Mode Tests.
A USB4-Based Dock is tested as a USB4 hub.
Host
This section describes the test setups for a Router Assembly that is part of a USB4 host. The Port Under Test (PUT)
is highlighted in each figure.
AN_HOST_DFP1
• A Compliance Device is connected to the DFP of the UUT
• USB4 CV is installed on the Host System with the UUT
• A USB4 Analyzer is connected between the UUT and Compliance Device
Host System
HI Adapter
UUT
D U
Router Re-timer Re-timer F F Compliance Device
P USB4 P
93
AN_HOST_DFP2
• A KG USB4 host is connected to the UUT
• USB4 CV is installed on the Host System with the UUT
• A USB4 Analyzer is connected between the UUT and KG USB4 Host
EX_HOST_DFP1
• The Exerciser is connected to the UUT
• Unless specified otherwise, the Exerciser is in USB4 device mode and presents as UFP
• USB4 CV is installed on the Host System with the UUT
Host System
USB4 CV
HI Adapter UUT
D
Router Re-timer Re-timer F Exerciser
P USB4
94
EX_HOST_DFP2
• The Exerciser is connected to the UUT
• Unless specified otherwise, the Exerciser is in USB4 device mode and presents as UFP
• USB4 CV is installed on a separate system (Test System) than the UUT
• The Test System connects to the Exerciser via a separate connection
Test System
USB4 CV
Host System
UUT
D
Router Re-timer Re-timer F Exerciser
P USB4
DC_HOST_DFP1
• A Compliance Device is connected to the DFP of the UUT
• USB4 CV is installed on the Host System with the UUT
• Test steps that require an Analyzer are skipped
Host System
USB4 CVC
HI Adapter
UUT
D U
Router Re-timer Re-timer F F Compliance Device
P USB4 P
95
Hub
This section describes the test setups for a Router Assembly that is part of a USB4 hub. The Port Under Test (PUT)
is highlighted in each figure.
AN_HUB_UFP1
• A KG USB4 Host is connected to the UUT
• USB4 CV is installed on the KG Host System
• A USB4 Analyzer is connected between the UUT and Compliance Device
KG USB4 Host
USB4 CV Analyzer
EX_HUB_UFP1
• The Exerciser is connected to the UUT
• Exerciser is configured as a USB4 DFP
USB4 CV
UUT
Exerciser D U
F
P
F Re-timer Re-timer Router
USB4 P
96
AN_HUB_DFP1
• A KG USB4 host is connected to the UFP of the UUT
• A Compliance Device is connected to the DFP of the UUT
• USB4 CV is installed on the KG Host System
• A USB4 Analyzer is connected between the UUT and Compliance Device
KG USB4 Host
Analyzer
USB4 CV
HI Adapter Port
UUT
KG Host Router D
F
U
F
D U Compliance
F F
P USB4 P Router Re-timer USB4
Re-timer
P USB4 P Device
EX_HUB_DFP1
• A KG USB4 host is connected to the UFP of the UUT
• The Exerciser is connected to the DFP of the UUT
• Unless otherwise specified, the Exerciser is in USB4 Device mode and presents as a UFP
Host System
USB4 CV
HI Adapter Port
UUT
KG Host Router D U
D Exerciser
F F Router Re-timer USB4
Re-timer
F
P USB4 P
P USB4
97
EX_HUB_DFP2
• A KG USB4 host is connected to the UFP of the UUT
• The Exerciser is connected to the DFP of the UUT
• Unless otherwise specified, the Exerciser is in USB4 Device mode and presents as a UFP
• The Test System connects to the Exerciser via a separate connection
Test System
USB4 CV
Host System
UUT
KG Host Router D U
D Exerciser
F F Router Re-timer USB4
Re-timer
F
P USB4 P
P USB4
DC_HUB_UFP1
• A KG USB4 Host is connected to the UUT
• USB4 CV is installed on the KG Host System
• Test steps that require an Analyzer are skipped
KG USB4 Host
USB4 CV
98
DC_HUB_DFP1
• A KG USB4 host is connected to the UFP of the UUT
• A Compliance Device is connected to the DFP of the UUT
• USB4 CV is installed on the KG Host System
• Test steps that require an Analyzer are skipped
KG USB4 Host
USB4 CV
HI Adapter Port
UUT
KG Host Router D
F
U
F
D U Compliance
F F
P USB4 P Router Re-timer USB4
Re-timer
P USB4 P Device
99
Peripheral Device
This section describes the test setup for a Router Assembly that is part of a USB4 device. The Port Under Test
(PUT) is highlighted in each figure.
AN_DEV_UFP1
• A KG USB4 Host is connected to the UUT
• USB4 CV is installed on the KG Host System
• A USB4 Analyzer is connected between the UUT and KG USB4 Host
KG USB4 Host
USB4 CV Analyzer
EX_DEV_UFP1
• The Exerciser is connected to the UUT
• Unless specified otherwise, the Exerciser is configured as a USB4 DFP
USB4 CV
UUT
Exerciser U
F Re-timer Re-timer Router
USB4 P
100
DC_DEV_UFP1
• A KG USB4 Host is connected to the UUT
• USB4 CV is installed on the KG Host System
• Test steps that require an Analyzer are skipped
KG USB4 Host
USB4 CV
Host
This section describes the test setups for a Router Assembly that is part of a USB4 host. The Port Under Test (PUT)
is highlighted in each figure.
AN_HOST_ DFP1—TBT3_01
• A KG USB4 device is connected to the UUT
• USB4 CV is installed on the Host System with the UUT
• A TBT3 Analyzer is connected between the UUT and KG TBT3 Device
101
Host System
USB4 CV Analyzer
HI Adapter
UUT
Router Re-timer Re-timer
D U KG TBT3
F F
P TBT3 P Device
102
Hub
This section describes the test setups for a Router Assembly that is part of a USB4 hub. The Port Under Test (PUT)
is highlighted in each figure.
AN_HUB_UFP1—TBT3_01
• A KG USB4 Host is connected to the UUT via certified TBT3 active cable
• USB4 CV is installed on the KG Host System
• A TBT3 Analyzer is connected between the UUT and KG USB4 Host
KG USB4 Host
USB4 CV Analyzer
AN_HUB_DFP1—TBT3_03
• A KG USB4 Host is connected to the UFP of the UUT
• A KG TBT3 Device is connected to the DFP of the UUT
• USB4 CV is installed on the KG Host System
• A USB4 Analyzer is connected between the UUT and KG TBT3 Device
KG USB4 Host
USB4 CV Analyzer
Router UUT
D U D U
Re-timer Re-timer
F F F F KG TBT3
P USB4 P Router Re-timer USB4
Re-timer
P TBT3 P
Device
103
Peripheral Device
This section describes the test setup for a Router Assembly that is part of a USB4 device. The Port Under Test
(PUT) is highlighted in each figure.
AN_DEV_UFP1—TBT3_01
• A KG USB4 Host is connected to the UUT via certified TBT3 active cable
• USB4 CV is installed on the KG Host System
• A TBT3 Analyzer is connected between the UUT and KG USB4 Host
KG USB4 Host
USB4 CV Analyzer
104
Subroutines
Router Enumeration Procedure
The steps in this section are performed whenever a test step calls for a Router to be enumerated.
1. Wait for a Hot Plug Event Packet with UPG=0 for Lane 0 and Lane 1
2. Set the Lock bit in the Port that detected the connection to 0b
3. Send the UUT a Write Request that writes the following fields:
a. Connection Manager USB4 Version = 1.0 (for a USB4 Connection Manager)
b. Connection Manager USB4 Version = 0.0 (for a TBT3 Connection Manager)
c. Topology ID = Router TopologyID (assigned per USB4 Specification)
d. Depth = Router depth (0 for a Host Router, or 1 for a Device Router)
e. Valid = 1b
1. Send the UUT a Write Request that writes the following fields:
a. Target Link Width = 1b
2. Send the Link Partner of the UUT a Write Request that writes the following fields:
a. Target Link Width = 1b
3. Send the Lane 0 Adapter in the DFP (whether it’s the UUT or its Link Partner) a Write Request that writes
the following fields:
a. Lane Bonding = 1b
4. Wait for a Hot Plug Packet with UPG=1 for Lane 1
105
d. TSInterDomainInterval = 0
e. TMU_RTR_CS22 to TMU_RTR_CS_25 = 0
10. ADP_CS_4:
a. Non-Flow Controlled Buffers = 0
11. ADP_CS_5 to ADP_CS_8 = 0
12. TMU_ADP_CS_3 = 0
13. TMU_ADP_6
a. Disable Time Sync = 0
14. LANE_ADP_CS_1:
a. Target Link Speed = 1100b (if Gen 3 supported)
b. Target Link Speed = 1000b (if Gen 3 not supported)
c. Target Link Width = 00001b (two Single-Lane Links)
d. CL0s Enable = 0b
e. CL1 Enable = 0b
f. CL2 Enable = 0b
g. Lane Disable = 0b
h. PM Secondary = 1b
15. LANE_ADP_CS_2 = 0
16. PORT_CS_0 to PORT_CS_17 = 0
17. PORT_CS_19:
a. Request RS-FEC Gen 2 = 1b
b. Request RS-FEC Gen 3 = 1b
c. USB4 Port is Configured = 0b
d. USB4 Port is Inter-Domain = 0b
e. Enable Wake on Connect = 0b
f. Enable Wake on Disconnect = 0b
g. Enable Wake on USB4 Wake = 1b
h. Enable Wake on Inter-Domain = 0b
18. PATH_CS_0 to PATH_CS_1 = 0
19. Read ADP_CS_3 (to clear error fields)
Device Router
Upstream of the UUT in the DFP that is connected to the UUT:
1. Set the Downstream Port Reset bit to 1b
2. Read the Lock bits for the Lane 0 and Lane 1 Adapters
3. Poll the Lock bits until both are 1b
4. Set the Downstream Port Reset bit to 0b
106
Router Assembly Connect Procedure
When a test step calls for a Host/Device to be connected, the Analyzer initiates a connect event.
Host System
USB4 CV
The steps in this section are performed whenever a test calls for a loopback path to be setup.
Note: When Lanes are bonded, only Lane 0 Path Configuration Space needs to be configured.
107
a. Path Credits Allocated
b. ESE
c. ISE
d. EFC
e. IFC
3. Set the Valid bit in Path Configuration Space to 1b
109
USB4 Mode Tests – No Exerciser
The tests in this section are performed in USB4 mode, where all connected Ports negotiate and enter USB4
operation as described in the USB Type-C Specification and the USB PD Specification. The Sideband Channel
operates as a USB4 Sideband Channel.
Unless specified otherwise, the tests in this section are performed on all Ports of a UUT. The tests are performed at
the highest speed that the UUT supports. Lanes are bonded and RS-FEC is enabled.
Unless otherwise noted, a test will timeout if it takes more than 500ms to go from one step to the next step. It is a
test failure if a test step times out.
Background Checks
The tests in this section verify that the Sideband Channel of the PUT is compliant with the USB4 Specification.
Sideband Channel Background Check
This test is performed by the Analyzer in conjunction with all of the Sideband Channel Tests.
1. Parse each LT Transaction and verify that it consists of the following symbols in the following order:
(4.1.1.2.1#1)
a. A DLE symbol (FEh)
b. A LSE symbol
c. A CLSE symbol
2. Parse the LSE Symbol in each LT Transaction and verify that:
a. Bits [7:6] (StartLT) are set to 10b (4.1.1.2.1#4)
b. Bit 5 (LSELane) is 0 for an LT_LRoff Transaction (4.1.1.2.1#3)
c. Bit 4 is reserved (0b) (1.7#5)
d. Bits [3:0] (LSESymbol) do not contain reserved values (1.7#1)
Note: Defined LSESymbol values are 0000b (LT_Fall), 0010b (LT_Resume), and 0011b (LT_LRoff)
3. Parse each AT Transaction and verify that it consists of the following symbols in the following order:
(4.1.1.2.2#1)
a. A DLE symbol (FEh)
b. A STX symbol
c. No more than 66 Data Symbols (4.1.1.2.2#2)
d. 2 CRC Symbols (Low and High) with correct CRC (4.1.1.2.4#5,4.1.1.2.4#6, 4.1.1.2.4#7, 4.1.1.2.4#8,
4.1.1.2.4#9)
e. A DLE symbol (FEh)
f. An ETX symbol (40h)
4. For each AT Command:
a. Parse the STX Symbol and verify that:
i. Bits [7:6] (StartAT) are 00b (4.1.1.2.2#8)
ii. Bit 5 is reserved (0b) (1.7#5)
iii. Bit 4 (Responder) is 0b (4.1.1.2.2#7)
iv. Bit 3 (Bounce) is set to 0b (4.1.1.2.2#6)
v. Bit 2 (Recipient) is 1b (4.1.1.2.2#5)
vi. Bit 1 (ReturnBounce) is set to 0b (4.1.1.2.2#4)
b. Parse the Data Symbols and verify that: (4.1.1.3.1#1)
i. The REG symbol does not contain the values 2 to 7, 10 to 11, 14, or 128 to 255
ii. The LEN symbol does not contain a value greater than 64 (4.1.1.3.1#2)
iii. If WnR=0, there is no COMMAND_DATA
iv. If WnR=1b, the COMMAND_DATA is the same length as in the LEN field
110
5. For each AT Response:
a. Parse the STX Symbol and verify that:
i. Bits [7:6] (StartAT) are 00b (4.1.1.2.2#8)
ii. Bit 5 is reserved (0b) (1.7#5)
iii. Bit 4 (Responder) is 0b (4.1.1.2.2#7)
iv. Bit 3 (Bounce) is set to 0b (4.1.1.2.2#6)
v. Bit 2 (Recipient) is 1b (4.1.1.2.2#5)
vi. Bit 1 (ReturnBounce) is set to 0b (4.1.1.2.2#4)
b. Parse the Data Symbols and verify that: (4.1.1.3.1#2)
i. A REG symbol does not contain the values 2 to 7, 10 to 11, 14, or 128 to 255
ii. A LEN symbol does not contain a value greater than 64 (4.1.1.3.1#2)
iii. If WnR=0b, RESPONSE_DATA is the same length as in the LEN field (unless test specifies
otherwise)
iv. If WnR=1n, RESPONSE_DATA is 00h (unless test specified otherwise)
c. Verify that the value in the LEN field is not greater than 64 (4.1.1.3.1#2)
6. When the PUT receives an AT Command with the Recipient bit set to 1b, verify that the PUT responds with an
AT Response (unless the test specifies otherwise). (4.1.1.2.2#9)
7. Parse each Broadcast RT Transaction and verify that it consists of the following symbols in the following order:
(4.1.1.2.3.1#1)
a. A DLE symbol (FEh)
b. A STX symbol
c. Two Link Parameters symbols
d. 2 CRC Symbols (Low and High) with correct CRC (4.1.1.2.4#5,4.1.1.2.4#6, 4.1.1.2.4#7, 4.1.1.2.4#8,
4.1.1.2.4#9)
e. A DLE symbol (FEh)
f. An ETX symbol (40h)
8. Parse the STX Symbol for a Broadcast RT Transaction and verify that:
a. If there are no Re-timers on the Link, Index = 0 (4.1.1.2.3.1#4)
b. If there are Re-timers on the Link, Index = the number of On-Board Re-timers in the PUT (see VIF)
plus the number of Cable Re-timers between the PUT and the Analyzer (4.1.1.3.1#1rt)
c. CmdNotResp=1b (4.1.1.2.3.1#5)
9. Parse Byte 2 of a Broadcast RT Transaction and verify that:
a. Bits [7:5] are 0 (reserved) (1.7#5)
b. Bit 4 (TBTCompatibleSpeed) is 0b (4.1.1.2.3.1#6)
c. Bit 1 (reserved) is 0b (1.7#5)
d. Bit 0 (USB4) is 1b (4.1.1.2.3.1#7)
10. Parse each Addressed RT Transaction and verify that it consists of the following symbols in the following
order: (4.1.1.2.3.2#1)
a. A DLE symbol (FEh)
b. A STX symbol
c. No more than 66 Data Symbols (4.1.1.2.3.2#2)
d. 2 CRC Symbols (Low and High) with correct CRC (4.1.1.2.4#5,4.1.1.2.4#6, 4.1.1.2.4#7, 4.1.1.2.4#8,
4.1.1.2.4#9)
e. A DLE symbol (FEh)
f. An ETX symbol (40h)
11. Parse each RT Command and verify that: (4.1.1.3.1#1)
a. The REG symbol does not contain the values 2 to 7, 10 to 11, 14, or 128 to 255
b. The LEN symbol does not contain a value greater than 64
111
c. If WnR=0, there is no COMMAND_DATA
d. If WnR=1b, the COMMAND_DATA is the same length as in the LEN field
12. Parse each RT Response and verify that: (4.1.1.3.1#2)
a. The REG symbol does not contain the values 2 to 7, 10 to 11, 14, or 128 to 255
b. The LEN symbol does not contain a value greater than 64 (4.1.1.3.1#2)
c. If WnR=0b, RESPONSE_DATA is the same length as in the LEN field (unless test specifies
otherwise)
d. If WnR=1n, RESPONSE_DATA is 00h (unless test specified otherwise)
13. Verify that the PUT sends an AT Response within tCmdResponse (50ms) of receiving an AT Command.
(4.1.1.2.5.1#1)
14. Verify that the PUT sends an Addressed RT Response within tCmdResponse (50ms) of receiving an Addressed
RT Command. (4.1.1.2.5.2#1)
112
Test Descriptions
114
TD 4.002 FEh Data Symbol Test
A. Purpose:
• Verify that the PUT correctly handles Transactions with FEh data symbols
B. Asserts:
• 4.1.1.2.4#3, 4.1.1.2.4#4
C. Test Setups
• AN_HOST_DFP1/DC_HOST_DFP1 (Host)
• AN_DEV_UFP1/DC_DEV_UFP1 (Device)
• AN_HUB_UFP1/DC_HUB_UFP1 (Hub UFP)
• AN_HUB_DFP1/DC_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat with AT Transactions
• Repeat with Addressed RT Transactions with the following:
o Index = 0
o Index = First On-Board Re-timer (if present)
o Index = Second On-Board Re-timer (if present)
E. Background Check:
• Sideband Channel Background Check (if using an Analyzer)
F. Procedure:
115
TD 4.003 SB Register Write Error Test
A. Purpose:
• Verify that the PUT correctly handles Write Request error cases
B. Asserts:
• 4.1.1.3.1#12-16
• 4.1.1.3.3#1
C. Test Setups
• AN_HOST_DFP1/DC_HOST_DFP1 (Host)
• AN_DEV_UFP1/DC_DEV_UFP1 (Device)
• AN_HUB_UFP1/DC_HUB_UFP1 (Hub UFP)
• AN_HUB_DFP1/DC_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat with AT Transactions
• Repeat with Addressed RT Transactions with the following:
o Index = 0
o Index = First On-Board Re-timer (if present)
o Index = Second On-Board Re-timer (if present)
E. Background Check:
• Sideband Channel Background Check (if using an Analyzer)
F. Procedure:
116
11. Tell the Link Partner to send the PUT a Read Command with Target = Register 9 (Metadata)
12. Verify that the RESPONSE_DATA in the Read Response from the PUT is the same as the
RESPONSE_DATA recorded in Step 8 (4.1.1.3.1#13)
117
TD 4.004 Moved
Moved to TD 4.004 Command Timeout Test (Exerciser Required)
118
TD 4.005 Lane Initialization Phase Test
Note: This test is performed simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being
tested.
A. Purpose:
• Verify that the PUT behaves correctly during Lane Initialization
• Verify that SB Register Space format, fields, and values are correct
• Verify maximum sized read (64 bytes) from SB Register space
B. Asserts:
• 4.1.1.2.3.1#4, 4.1.1.2.3.1#8-9
• 4.1.1.3.1#1rt, 4.1.1.3.1#2rt, 4.1.1.3.1#5rt
• 4.1.1.3.3#6, 4.1.1.3.3#8-13, 4.1.1.3.3#13-15, 4.1.1.3.3#23-27
• 4.1.2.2#1-2
• 4.1.2.2#1rt
• 4.1.2.3#1-2, 4.1.2.3#4-8, 4.1.2.3#11, 4.1.2.3#14, 4.1.2.3#17
• 4.1.2.4#1-5
• 4.1.2.5#2, 4.1.2.5#4, 4.1.2.5#5
• 4.1.2.5#2rt, 4.1.2.5#7rt-9rt
• 4.1.2.5.1.1#2-7
• 4.1.2.5.1.2#2, 4.1.2.5.1.2#3, 4.1.2.5.1.2#5-7, 4.1.2.5.1.2#9, 4.1.2.5.1.2#11-12
• 4.2.1.4.1#1
• 4.2.2.2#1, 4.2.2.2#3-5
C. Test Setups
• AN_HOST_DFP1/DC_HOST_DFP1 (Host)
• AN_DEV_UFP1/DC_DEV_UFP1 (Device)
• AN_HUB_UFP1/DC_HUB_UFP1 (Hub UFP)
• AN_HUB_DFP1/DC_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat at all supported Link speeds:
o For 20G: Gen 2x2
o For 40G: Gen 2x2, Gen 3x1, Gen 3x2
• Repeat with:
o RS-FEC on
o RS-FEC off
E. Background Check:
• Sideband Channel Background Check (if using an Analyzer)
F. Procedure:
119
4. Set the Link speed in the DFP:
a. For Gen 2x2:
i. Target Link Speed = Gen 2
ii. Lane Disable (Lane 0) = 0b
iii. Lane Disable (Lane 1) = 0b
b. For Gen 3x1:
i. Target Link Speed = Gen 3
ii. Lane Disable (Lane 0) = 0b
iii. Lane Disable (Lane 1) = 1b
c. For Gen 3x2:
i. Target Link Speed = Gen 3
ii. Lane Disable (Lane 0) = 0b
iii. Lane Disable (Lane 1) = 0b
5. Set RS-FEC on/off in the DFP:
a. Gen 2 – RS-FEC is on
i. Request RS-FEC Gen 2 = 1b
b. Gen 2 – RS-FEC is off
i. Request RS-FEC Gen 2 = 0b
c. Gen 3 – RS-FEC is on
i. Request RS-FEC Gen 3 = 1b
d. Gen 3 – RS-FEC is off
i. Request RS-FEC Gen 3 = 0b
Part 2 – Phase 3
8. Verify that the PUT sends one or more AT Transactions to read the Link Configuration
Register (Register 12) of the Link Partner (4.1.2.3#1)
9. Verify that the PUT avoids a tATTimeout delay by sending one or more additional AT
Transactions (4.1.2.3#2)
Part 3 – Phase 4
10. Verify that the PUT sends a Broadcast RT Transaction every tLaneParams (4.1.2.4#1,
4.1.1.3.1#2rt)
11. Record the value in the Re-timer Index field of the Broadcast Transaction
Note: The Re-Timer Index is 0 when a Router first creates and sends a Broadcast
Transaction. It is then is incremented by 1 by each re-timer on the Link. The number of
On-Board Re-timers on the PUT is equal to the Re-timer Index field minus the number
of any additional Cable Re-timers and On-Board Re-timers the Broadcast RT
Transaction traverses before being captured.
12. Verify that the Re-timer Index indicates the correct number of On Board Re-timers on the
PUT, as indicated in the USB4_Num_Retimers field in the VIF (4.1.1.2.3.1#4, 4.1.1.3.1#1rt)
120
13. Verify that the PUT sends Broadcast RT Transactions until all of the following are true:
(4.1.2.4#2)
a. At least tLTPhase4 time has passed from completion of Phase 2
b. The PUT sent at least two Broadcast RT Transactions
14. For each Broadcast RT Transaction from the PUT, verify: (4.1.2.4#1)
a. TBT3-Compatible Speed = 0b
b. If Link is configured with RS-FEC encoding on, RS_FEC = 1b
c. If Link is configured with RS-FEC encoding off, RS_FEC = 0b
d. USB4 bit = 1b
e. If Link is configured for Gen 2 speed, Selected Gen = 0001b
f. If Link is configured for Gen 3 speed, Selected Gen = 0010b
g. Bits [3:2] (Reserved) are 0 (1.7#5)
h. If Link is configured for x1, Lane1Enabled = 0b (4.1.1.2.3.1#8)
i. If Link is configured for x2, Lane1Enabled = 1b (4.1.1.2.3.1#8)
j. Lane0Enabled = 1b (4.1.1.2.3.1#9)
k. If PUT has On-Board Re-timers, SSCAlwaysOn is 0b (4.1.1.3.1#5rt)
15. Verify that the PUT sends SLOS1 (4.1.2.4#3)
16. Verify that the PUT sends an LT_Resume Transaction with LSELane field = 0b (4.1.2.4#4,
4.1.2.4#5)
17. If Link is configured for x2, verify that the PUT sends an LT_Resume Transaction with
LSELane field = 1b (4.1.2.4#4, 4.1.2.4#5)
18. Wait for the Link Partner to send the PUT an Addressed RT Transaction with:
a. Read Command
b. Index = 0
c. Target = Register 13 (TxFFE)
19. (if using an Analyzer) In the Read Response from the PUT parse the RESPONSE_DATA and
verify that:
a. Tx Active (Lane 0) = 1b (4.1.2.4#4)
b. If Link is configured for x1, Tx Active (Lane 1) = 0b (4.1.2.4#4)
c. If Link is configured for x2, Tx Active (Lane 1) = 1b (4.1.2.4#4)
d. Clock Switch Done = 0b (4.1.2.5#7rt)
Part 4 – Phase 5
Note: In this test, a Read Command is an Addressed RT Transaction with the CmdNotResp bit in the
STX Symbol set to 1b and the WnR bit in the Data Symbol set to 0b. A Read Response is an
Addressed RT Transaction with the CmdNotResp bit in the STX Symbol set to 0b and the WnR
bit in the Data Symbol set to 0b. A Write Command is an Addressed RT Transaction with the
CmdNotResp bit in the STX Symbol set to 1b and the WnR bit in the Data Symbol set to 1b. A
Write Response is an Addressed RT Transaction with the CmdNotResp bit in the STX Symbol
set to 0b and the WnR bit in the Data Symbol set to 1b.
Note: For Lane 0, the Rx Status & TxFFE Request byte is Byte 0 in Register 13 and the Tx Status byte
is Byte 2 in Register 13. For Lane 1, the Rx Status & TxFFE Request byte is Byte 1 in Register
13 and the Tx Status byte is Byte 3 in Register 13. The bytes for Lane 0 and Lane 1 may be
accessed in a single Transaction (e.g. one Read Request that reads all 4 bytes of Register 13) or
they may be accessed in separate Transactions.
20. (if using an Analyzer) To test the PUT Transmitter, parse the trace from the Analyzer and do
the following for both Lane 0 and Lane 1:
a. Verify that the PUT sends Read Command with: (4.1.2.5#2, 4.1.2.5#2rt)
i. REG = 13 (TxFFE Register) (4.1.2.5.1.1#2)
121
ii. LEN >= 1 (includes Rx Status & TxFFE Request byte) (4.1.2.5.1.1#2)
iii. Index = 0b (4.1.2.5#2)
iv. If this is a repeated Read Command (i.e. the New Request field was 0b in
the last received Read Response), verify that the Read Command was sent
within tPollTXFFE time after the PUT received the previous Read
Response (4.1.2.5.1.1#3)
b. In the Read Response from the Link Partner, parse the Rx Status & TxFFE Request
byte:
i. If Rx Locked = 1b, TxFFE negotiation is complete, go to Step 21a
ii. If New Request = 0b, repeat Step 20a and continue test flow from there
iii. If New Request = 1b, continue to the next step
c. In the Read Response from the Link Partner, parse the Rx Status & TxFFE Request
byte and record the value in the TxFFE Request field.
d. Look for a Read Command from the Link Partner that targets the Tx Status byte of
the PUT and a Read Response from the PUT that contains the Tx Status byte.
e. In the Read Response from the PUT, parse the Tx Status byte of the PUT:
i. If Request Done = 0b, repeat Step 20d and continue the test flow from there
ii. If Request Done = 1b, verify that the TxFFE Setting field matches the
TxFFE Request value recorded in Step 20c (4.1.2.5.1.1#4, 4.1.2.5.1.1#5)
f. Verify that the PUT sends a Read Command with:
i. REG = 13 (TxFFE Register) (4.1.2.5.1.1#6)
ii. LEN >= 1 (includes Rx Status & TxFFE Request byte) (4.1.2.5.1.1#6)
iii. Index = 0b (4.1.2.5#2)
iv. If this is a repeated Read Command (i.e. the New Request field was 1b in
the last received Read Response), verify that the Read Command was sent
within tPollTXFFE time after the PUT received the previous Read
Response (4.1.2.5.1.1#7)
g. In the Read Response from the Link Partner, parse the Rx Status & TxFFE Request
byte:
i. If New Request = 1b, repeat Step 20f and continue test flow from there
ii. If New Request = 0b, continue to the next step
iii. If Rx Locked = 0b, repeat Step 20a and continue test flow from there
iv. If Rx Locked = 1b, TxFFE negotiation is complete, go to the next step
21. (if using an Analyzer) To test the PUT Receiver, parse the trace from the Analyzer and do the
following for both Lane 0 and Lane 1:
a. Verify that the PUT sends a Read Command with: (4.1.2.5#4)
i. REG = 13 (TxFFE Register) (4.1.2.5.1.2#2)
ii. LEN >= 3 (includes Tx Status byte) (4.1.2.5.1.2#2)
iii. Index = 0b (4.1.2.5#4)
iv. If this is a repeated Read Command (i.e. the Tx Active bit was 0b in the last
received Read Response), verify that the Read Command was sent within
tPollTXFFE time after the PUT received the previous Read Response
(4.1.2.5.1.2#3)
b. In the Read Response from the Link Partner, parse the TX Status byte:
i. If Tx Active = 0b, repeat Step 21a and continue test flow from there
ii. If Tx Active = 1b, continue to the next step
c. Look for a Read Command from the Link Partner that targets the Tx Status byte of
the PUT and a Read Response from the PUT that contains the Tx Status byte.
d. In the Read Response from the PUT, parse the Tx Status byte:
i. If Rx Locked = 1b, TxFFE negotiation is complete, end Step 21
ii. If Rx Locked = 0b, continue to the next step
e. In the next Read Response from the PUT that contains the Rx Status & TxFFE
Request byte, verify that the New Request bit is 1b (4.1.2.5.1.2#6)
122
f. Verify that the PUT sends a Read Command with:
i. REG = 13 (TxFFE Register) (4.1.2.5.1.2#7)
ii. LEN >= 3 (includes Tx Status byte) (4.1.2.5.1.2#7)
iii. Index = 0b (4.1.2.5#4)
iv. If this is a repeated Read Command (i.e. the Tx Active bit was 0b or the
Request Done was 0b in the last received Read Response), verify that the
Read Command was sent within tPollTXFFE time after the PUT received
the previous Read Response (4.1.2.5.1.2#9)
g. In the Read Response from the Link Partner, parse the TX Status byte:
i. If TX Active = 0b or Request Done = 0b, repeat Step 21f and continue test
flow from there
ii. If TX Active = 1b and Request Done = 1b, continue to the next step
h. Look for a Read Command from the Link Partner that targets the Tx Status byte of
the PUT and a Read Response from the PUT that contains the Tx Status byte.
i. In the Read Response from the PUT, parse the Tx Status byte and verify that:
i. New Request = 0b (4.1.2.5.1.2#11)
j. Verify that the PUT sends a Read Command with:
i. REG = 13 (TxFFE Register) (4.1.2.5.1.2#12)
ii. LEN >= 3 (includes Tx Status byte) (4.1.2.5.1.2#12)
iii. Index = 0b (4.1.2.5#4)
iv. If this is a repeated Read Command (i.e. the Tx Active bit was 0b or the
Request Done was 0b in the last received Read Response), verify that the
Read Command was sent within tPollTXFFE time after the PUT received
the previous Read Response (4.1.2.5.1.2#14)
k. In the Read Response from the Link Partner, parse the TX Status byte:
i. If TX Active = 1b and Request Done = 0b, repeat Step 21b and continue test
flow from there
ii. If TX Active = 0b or Request Done = 1b, repeat Step 21j and continue test
flow from there
22. If PUT contains two On-Board Re-timers:
a. When the PUT stops sending CL_WAKE1.X:
i. Read the Clock Switch Done bit and verify that it is 1b (4.1.2.5#8rt)
ii. Verify that the PUT sends CL_WAKE1.(X+1)
iii. When the PUT stops sending CL_WAKE1.(X+1), verify that it sends SLOS
23. If PUT contains one On-Board Re-timer:
a. When the PUT stops sending CL_WAKE1.X:
i. Read the Clock Switch Done bit and verify that it is 1b (4.1.2.5#8rt)
ii. Verify that the PUT sends SLOS
123
ii. Vendor ID High field matches the Vendor ID field in Router Configuration
Space (4.1.1.3.3#9)
iii. Bytes 2 and 3 are 0 (4.1.1.3.3#6)
b. For Register 1 (Device ID):
i. Verify that the Device ID Low field matches the Device ID field in
Router Configuration Space (4.1.1.3.3#10)
ii. Verify that the Device ID High field matches the Device ID field in
Router Configuration Space (4.1.1.3.3#11)
iii. Verify that bytes 2 and 3 are 0. (4.1.1.3.3#6)
c. For Register 8 (Opcode):
i. All bits are 0 (default value) (4.1.1.3.3#6)
d. For Register 9 (Metadata):
i. All bits are 0 (default value) (4.1.1.3.3#6)
e. For Register 12 (Link Configuration):
i. Bits 2 through 7 of byte 0 are 0 (reserved) (4.1.1.3.3#6)
ii. For a DFP, Enabling Request (Lane 1) is 0b if x1 Link (4.1.1.3.3#18)
iii. Bits 2 and 3 in byte 1 are 0 (reserved) (4.1.1.3.3#6)
iv. Enabling Decision (Lane 0) is 1b (4.1.2.3#4, 4.1.1.3.3#13)
v. Enabling Decision (Lane 1) is 1b if Link is x2 (4.1.2.3#4, 4.1.1.3.3#14)
vi. Enabling Decision (Lane 1) is 0b if Link is x1 (4.1.2.3#6)
vii. For a DFP, Gen 3 Support bit is 1b if all of the following are true:
(4.1.1.3.3#19)
a. On-Board Re-timers connected between the PUT and the cable
support Gen 3 speeds (USB4_Max_Speed field in VIF is Gen 3)
b. The Target Link Speed field in the Lane Adapter Configuration
Capability is 1100b (Gen 3)
viii. For a DFP, Gen 3 Support bit is 0b if any of the following are true:
(4.1.1.3.3#20)
a. On-Board Re-timers connected between the PUT and the cable
do not support Gen 3 speeds (USB4_Max_Speed field in VIF is
Gen 2)
b. The Target Link Speed field in the Lane Adapter Configuration
Capability is 1000b (Gen 2)
ix. For a DFP operating at Gen 2 speed, RS-FEC Request (Gen 2) bit is the
same as the Request RS-FEC Gen 2 bit in the USB4 Port Capability of the
PUT (4.1.1.3.3#21)
x. For a DFP operating at Gen 3 speed, RS-FEC Request (Gen 3) bit is the
same as the Request RS-FEC Gen 3 bit in the USB4 Port Capability of the
PUT (4.1.1.3.3#22)
xi. USB4 Sideband Channel field is 1b (4.1.1.3.3#23)
xii. TBT3-Compatible Speeds Supported bit is 0b if PUT does not support
TBT3-compatible speeds (USB4_TBT3_Compatibility_Supported field
in VIF is NO) (4.1.1.3.3#24)
xiii. Bits 2 through 7 in byte 2 are 0 (reserved) (4.1.1.3.3#6)
f. For Register 13 (TXFFE):
i. Clock Switch Done (Lane 0) bit is 1 (4.1.1.3.3#26, 4.1.2.5#5, 4.1.2.5#9rt)
ii. Bits 4 and 5 in byte 2 are 0 (reserved) (4.1.1.3.3#6)
iii. Bits 4 and 5 in byte 3 are 0 (reserved) (4.1.1.3.3#6)
iv. If x1 Link, the Clock Switch Done (Lane 1) bit is 0 (4.1.1.3.3#27,
4.1.2.5#5, 4.1.2.5#9rt)
v. If x2 Link, the Clock Switch Done (Lane 1) bit is 1 (4.1.1.3.3#27,
4.1.2.5#5, 4.1.2.5#9rt)
g. For Register 18:
i. All bits are 0 (default value) (4.1.1.3.3#6)
124
28. If test repetition is for a x1 Link, skip Part 6 and go to Part 7
125
TD 4.006 DFP Lane Disable/Enable Test (DFP Only)
Note: This test is only performed on the DFP. The test is performed simultaneously for both the Lane 0 Adapter
and the Lane 1 Adapter of the Port being tested.
A. Purpose:
• Verify that a DFP transitions into Disabled state correctly after being disabled
• Verify that a DFP exits Disabled state correctly after being enabled
B. Asserts:
• 4.2.1.1.1#1, 4.2.1.1.1#2
• 4.2.1.2.2#2
• 4.2.1.3.3#5
• 4.2.2.4#1
C. Test Setups
• AN_HOST_DFP1/DC_HOST_DFP1 (Host)
• AN_HUB_DFP1/DC_HUB_DFP1 (Hub)
D. Repetitions:
• Repeat at Gen 2 and Gen 3 speeds (if supported)
E. Background Check:
• Lane 0/Lane 1 Background Check (if using an Analyzer)
F. Procedure:
126
11. Enumerate the KG Device Router
12. Read the Plugged bit in Adapter Configuration Space of the Lane 1 Adapter
13. Verify that the Plugged bit is 0b for the Lane 1 Adapter (4.2.1.1.1#2)
14. Read the Adapter State of Lane 1 and Lane 0
15. Verify that the Lane 1 Adapter is in the Disabled state (4.2.1.1.1#1)
16. Verify that the Lane 0 Adapter is in CL0 state (4.2.2.4#1)
17. Set the Lane Disable bit in the Adapter Configuration Space of the Lane 1 Adapter to 0b
18. Reset the PUT:
a. Set the Downstream Port Reset bit to 1b
b. Wait for 10ms
c. Set the Downstream Port Reset bit to 0b
d. Wait for Lane Initialization to complete on both Lanes
19. In the PUT, set the Lock bit to 0b
20. Enumerate the KG Device Router
21. Verify that the PUT sends a Hot Plug Event Packet with UPG = 0b for the Lane 1 Adapter
(4.2.1.3.3#5)
22. Verify that the Lane 0 Adapter and the Lane 1 Adapter are both in the CL0 state
127
42. In the PUT, set the Lock bit to 0b
43. Enumerate the KG Device Router
44. Verify that the PUT sends a Hot Plug Event Packet with UPG = 0b for the Lane 1 Adapter
(4.2.1.3.3#5)
45. Verify that the Lane 0 Adapter and the Lane 1 Adapter are both in the CL0 state
128
TD 4.007 UFP Lane Disable/Enable Test (UFP Only)
Note: This test is only performed on the UFP. The test is performed simultaneously for both the Lane 0 Adapter
and the Lane 1 Adapter of the Port being tested.
A. Purpose:
• Verify that UFP Adapters transition into Disabled state correctly when Link Partner is
disabled
• Verify that UFP Adapters exit Disabled state correctly when Link Partner is enabled
B. Asserts:
• 4.2.1.2.2#24.4.6.2.1.1#1-3
• 4.4.6.2.1.2#1, 4.4.6.2.1.2#2, 4.4.6.2.1.2#4
C. Test Setups
• AN_DEV_UFP1 (Device)
• AN_HUB_UFP1 (Hub)
D. Repetitions:
• Repeat at Gen 2 and Gen 3 speeds (if supported)
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
130
TD 4.008 Deprecated
131
TD 4.009 Lane Initialization Adapter State Test
Note: The test is performed simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being
tested.
A. Purpose:
• Verify that the PUT transitions between states correctly during Lane Initialization
B. Asserts:
• 4.2.1.2.3#2
• 4.2.1.3.2#1
• 4.2.1.3.3#1, 4.2.1.3.3#6
• 4.2.1.3.4#5-6
• 4.2.1.3.5#3-5 4.2.1.3.5#8 4.2.1.3.5#11
• 4.2.1.4.1#1
• 4.2.1.4.3#8, 4.2.1.4.3#9
• 4.2.1.5.1#1, 4.2.1.5.1#2
• 4.2.1.5.2#1
• 4.2.1.5.3#1
• 4.2.1.5.3#3 4.2.1.5.3#2
• 4.2.1.4.1#2
• 4.2.2.2#2
• 4.2.2.2.1#3
• 4.4.4#3-8
C. Test Setups
• AN_HOST_DFP1 (Host)
• AN_DEV_UFP1 (Device)
• AN_HUB_UFP1 (Hub UFP)
• AN_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat at Gen 2 and Gen 3 speeds (if supported)
• Repeat with bonding initiated as follows:
o Send TS1 OS to PUT
o Set Lane Bonding bit to 1b in the Lane 0 Adapter
o Set Lane Bonding bit to 1b in the Lane 1 Adapter
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
132
Part 1 – Training State
4. If there are no re-timers on the Link;
a. Verify that:
i. PUT starts sending back-to-back SLOS1, which indicates entry to
Training.LOCK1 sub-state (4.2.1.2.3#2)
b. Verify that the PUT sends back-to-back SLOS1 until all of the following are true:
(4.2.1.3.2#1)
i. KG Host/Device sent at least 2 SLOS1 symbols to PUT
ii. PUT sent at least 2 complete SLOS1
5. Verify that:
a. PUT starts sending back-to-back SLOS2, which indicates entry to Training.LOCK2
sub-state (4.2.1.3.2#1)
b. If operating at Gen 2 speed (RS-FEC disabled), PUT sends 32 SLOS2 symbols for
each SLOS2 (4.2.1.3.4#5, 4.2.1.3.4#7)
c. Else, PUT sends 16 SLOS2 symbols for each SLOS2 (4.2.1.3.4#6, 4.2.1.3.4#7)
6. Verify that the PUT sends back-to-back SLOS2 until all of the following are true:
(4.2.1.3.2#1)
a. KG Host/Device sent at least 2 SLOS2 symbols
b. PUT sent at least 2 complete SLOS2
7. Verify that the PUT starts sending back-to-back TS1, which indicates entry to Training.TS1
sub-state (4.2.1.3.2#1)
8. Parse each TS1 Ordered set and verify that:
a. Bits 58:56 (Lane Bonding Target) are 000b if the Target Link Width field in the
USB4 Adapter Configuration Capability is 000 01b (two Single-Lane Links)
(4.2.1.3.5#3)
b. Bits 55:48 (Lane Number) are 00h if Ordered Set is on the Lane 0 (4.2.1.3.5#4)
c. Bits 55:48 (Lane Number) are 01h if Ordered Set is on the Lane 1 (4.2.1.3.5#4)
d. Bits 31:29 (Reserved) are 000b (4.2.1.3.5#5)
e. Bits 28:26 (Lane Bonding Target 2) match the Lane Bonding Target field
(4.2.1.3.5#8)
f. Bits 9:0 (SCR) are 00 1111 0010b (4.2.1.3.5#11)
9. Verify that the PUT sends back-to-back TS1 until all of the following are true: (4.2.1.3.2#1)
a. KG Host/Device sent at least 2 TS1
b. If Gen 2, PUT sent at least 32 TS1
c. If Gen 3, PUT sent at least 16 TS1
10. Verify that the PUT transitions starts sending back-to-back TS2, which indicates entry to
Training.TS2 sub-state (4.2.1.3.2#1)
11. Parse each TS2 Ordered set and verify that:
a. Bits 58:56 (Lane Bonding Target) are 000b if the Target Link Width field in USB4
Adapter Configuration Capability is 0000 01b (two Single-Lane Links) (4.2.1.3.5#3)
b. Bits 55:48 (Lane Number) are 00h if Ordered Set is on the Lane 0 (4.2.1.3.5#4)
c. Bits 55:48 (Lane Number) are 01h if Ordered Set is on the Lane 1 (4.2.1.3.5#4)
d. Bits 31:29 (Reserved) are 000b (4.2.1.3.5#5)
e. Bits 28:26 (Lane Bonding Target 2) match the Lane Bonding Target field
(4.2.1.3.5#8)
f. Bits 9:0 (SCR) are 00 1111 0010b (4.2.1.3.5#11)
12. Verify that the PUT sends back-to-back TS2 until all of the following are true: (4.2.1.3.2#1)
a. KG Host/Device sent at least 2 TS2
b. If Gen 2, PUT sent at least 16 TS2
c. If Gen 3, PUT sent at least 8 TS2
13. Verify that the PUT transitions to CL0 state (i.e. stops sending TS2) within tTrainingAbort2
after it send the first SLOS1 symbol (4.2.1.3.3#1, 4.2.1.4.1#1)
133
Part 2 – Bonding State
14. Initiate bonding (see repetitions)
15. Verify that the PUT starts sending back-to-back TS1 (which indicates entry to Bonding.TS1
state) after receiving 3 TS1 (4.2.1.4.3#8, 4.2.1.4.3#9, 4.2.1.5.1#1, 4.2.1.5.1#2)
16. Parse each TS1 Ordered set and verify that:
a. Bits 58:56 (Lane Bonding Target) are 001b if the Target Link Width field in the
USB4 Adapter Configuration Capability is 0000 11b (Dual-Lane Link) (4.2.1.3.5#3)
b. Bits 55:48 (Lane Number) are 00h if Ordered Set is on the Lane 0 (4.2.1.3.5#4)
c. Bits 55:48 (Lane Number) are 01h if Ordered Set is on the Lane 1 (4.2.1.3.5#4)
d. Bits 31:29 (Reserved) are 000b (4.2.1.3.5#5)
e. Bits 28:26 (Lane Bonding Target 2) match the Lane Bonding Target field
(4.2.1.3.5#8)
f. Bits 9:0 (SCR) are 00 1111 0010b (4.2.1.3.5#11)
17. Send back-to-back TS1 to the PUT
18. Verify that the PUT starts sending back-to-back TS2 (which indicates entry to Bonding.TS2
state) after all of the following are true: (4.2.1.5.2#1)
a. KG Host/Device sent at least 2 TS1
b. If Gen 2, PUT sent at least 32 TS1
c. If Gen 3, PUT sent at least 16 TS1
19. Parse each TS2 Ordered set and verify that:
a. Bits 58:56 (Lane Bonding Target) are 001b if the Target Link Width field in USB4
Adapter Configuration Capability is 0000 11b (Dual-Lane Link) (4.2.1.3.5#3)
b. Bits 55:48 (Lane Number) are 00h if Ordered Set is on the Lane 0 (4.2.1.3.5#4)
c. Bits 55:48 (Lane Number) are 01h if Ordered Set is on the Lane 1 (4.2.1.3.5#4)
d. Bits 31:29 (Reserved) are 000b (4.2.1.3.5#5)
e. Bits 28:26 (Lane Bonding Target 2) match the Lane Bonding Target field
(4.2.1.3.5#8)
f. Bits 9:0 (SCR) are 00 1111 0010b (4.2.1.3.5#11)
20. Send back-to-back TS2 to the PUT
21. Verify that the PUT doesn’t stop sending back-to-back TS2 until all of the following are true:
(4.2.1.5.2#1, 4.2.1.5.3#1)
a. KG Host/Device sent at least 2 TS2
b. If Gen 2, PUT sent at least 16 TS2
c. If Gen 3, PUT sent at least 8 TS2
22. Verify that first PUT to transition to CL0 state sends TS2 until other PUT transitions to CL0
state (4.2.2.2.1#3, 4.2.1.5.3#3)
23. Verify that the PUT is in CL0 state (4.2.1.5.3#2, 4.2.1.4.1#2)
a. Verify that the PUT transitioned back to CL0 state within 40 µs (min tBonding time)
after sending the first TS1 Ordered Set with Lane Bonding Target set to 001b
(4.2.2.2#2)
b. Verify that both Lanes transitioned from the Training state to the CL0 state within
tTrainingAbort2 time. (4.2.2.2.1#2)
134
e. PUT sends a de-skew Ordered Set immediately after sending the last TS2 ordered set
(4.4.4#8)
25. After transitioning to CL0 state, verify that the PUT sends only TS2 Ordered Sets before it
sends a de-skew ordered set (4.4.4#9)
26. Read the Plugged bit and verify that it is 1b (4.2.1.3.3#6)
27. Stop Analyzer
135
TD 4.010 CL2 Test (No Re-timers on the Link)
Note: This test only applies to Ports that do not contain any On-Board Re-timers.
Note: This test is performed with a Passive Cable to avoid introducing re-timers on the Link. The test is performed
simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being tested.
A. Purpose:
• Verify that the PUT enters CL2 state correctly when there are no Re-timers on the Link
• Verify that the PUT exits CL2 state correctly when there are no Re-timers on the Link
B. Asserts:
• 4.2.1.6.1#3, 4.2.1.6.1#6
• 4.2.1.6.2#1, 4.2.1.6.2#7, 4.2.1.6.2#10, 4.2.1.6.2#13, 4.2.1.6.2#14
• 4.2.1.6.3#1
• 4.2.1.6.5.2#1, 4.2.1.6.5.2#2-6, 4.2.1.6.5.2#8-32
C. Test Setups
• AN_HOST_DFP1 (Host)
• AN_DEV_UFP1 (Device)
• AN_HUB_UFP1 (Hub UFP)
• AN_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat with:
o EXIT_TIME = tEnterLFPS1
o EXIT_TIME = 30 seconds
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
Note: It is possible that some CL2_ACK Ordered Sets may not be detected as the Link enters
low power state. Because of this, it is not a failure as long as 350 or more CL2_ACK
Ordered Sets are detected.
Note: It is not a failure if the PUT sends more than 375 CL2_ACK Ordered Sets.
19. Parse each CL2_ACK Ordered Set and verify that bits 9:0 (SCR) in the payload are 00 1111
0010b (4.2.1.6.1#3)
20. Perform Part 5
Note: It is possible that some CL2_OFF Ordered Sets may not be detected as the Link enters low
power state. Because of this, it is not a failure as long as 350 or more CL2_OFF Ordered
Sets are detected.
137
27. Verify that the first CL_OFF Ordered Set is sent within tCLxResponse after getting the
CL2_ACK Ordered Sets (4.2.1.6.2#18)
28. Verify that the PUT Adapters are in the CL2 state (4.2.1.6.2#25)
29. Perform Part 5
138
TD 4.011 CL2 Test (Re-timers on the Link)
Note: This test applies to Ports that contain On-Board Re-timers as well as Ports that do not.
Note: This test is performed with an Active Cable that contains Cable Re-Timers in order to add re-timers to the
Link. The Active Cable must support CLx states. The test is performed simultaneously for both the Lane 0
Adapter and the Lane 1 Adapter of the Port being tested.
A. Purpose:
• Verify that the PUT enters CL2 state correctly when there are Re-timers on the Link
• Verify that the PUT exits CL2 state correctly when there are Re-timers on the Link
B. Asserts:
• 4.2.1.3.1#3
• 4.2.1.6.1#3, 4.2.1.6.1#6
• 4.2.1.6.1.2#9, 4.2.1.6.1.2#10
• 4.2.1.6.2#1, 4.2.1.6.2#7, 4.2.1.6.2#10, 4.2.1.6.2#13, 4.2.1.6.2#14
• 4.2.1.6.3#1
• 4.2.1.6.5.3#9-45, 4.2.1.6.5#48
• 4.2.4.2#1rt
• 4.2.4.3.2.1#1rt, 4.2.4.3.2.1#4rt, 4.2.4.3.2.1#5rt
• 4.2.4.3.2.3#4rt
• 4.2.4.3.3#2rt
C. Test Setups
• AN_HOST_DFP1 (Host)
• AN_DEV_UFP1 (Device)
• AN_HUB_UFP1 (Hub UFP)
• AN_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat with:
o EXIT_TIME = tEnterLFPS1
o EXIT_TIME = 30 seconds
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
139
b. CL1 Enable = 1b
c. CL0s Enable = 1b
9. If both the PUT and Link Partner send CL2_REQ Ordered Sets at the same time:
a. If PUT is not the PM Secondary, perform Part 1
b. Else, perform Part 2
10. If the Link Partner sends CL2_REQ Ordered Sets before the PUT:
a. If PUT does not support CL2:
i. Verify that the PUT sends CL_NACK Ordered Sets (4.2.1.6.3#1)
ii. Perform Part 1
b. If PUT sends CL_NACK Ordered Sets, perform Part 1
c. If PUT sends CL2_ACK Ordered Sets, perform Part 2
11. If the PUT sends CL2_REQ Ordered Sets before the Link Partner:
a. If Link Partner sends CL_NACK Ordered Sets, perform Part 3
b. If Link Partner sends CL2_ACK Ordered Sets, perform Part 4
12. If neither send CL2_REQ Ordered Sets, retry test (stop after 5 attempts)
Note: It is not a failure if the PUT sends more than 375 CL2_ACK Ordered Sets
18. Parse each CL2_ACK Ordered Set and verify that bits 9:0 (SCR) in the payload are 00 1111
0010b (4.2.1.6.1#3)
19.
20. Perform Part 5
140
26. Verify that the first CL_OFF Ordered Set is sent within tCLxResponse after getting the
CL2_ACK (4.2.1.6.2#18)
27. Verify that the PUT Adapters are in the CL2 state (4.2.1.6.2#25)
28. Perform Part 5
141
TD 4.012 CL1 Test (No Re-timers on the Link)
Note: This test only applies to Ports that do not contain any On-Board Re-timers.
Note: This test is performed with a Passive Cable to avoid introducing re-timers on the Link. The test is performed
simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being tested.
A. Purpose:
• Verify that the PUT enters CL1 state correctly when there are no Re-timers on the Link
• Verify that the PUT exits CL1 state correctly when there are no Re-timers on the Link
B. Asserts:
• 4.2.1.6.1#4, 4.2.1.6.1#6
• 4.2.1.6.2#1, 4.2.1.6.2#7, 4.2.1.6.2#11, 4.2.1.6.2#13, 4.2.1.6.2#14, 4.2.1.6.2#30
• 4.2.1.6.3#16
• 4.2.1.6.4#2
• 4.2.1.6.5.2#1, 4.2.1.6.5.2#2-6, 4.2.1.6.5.2#8-32
C. Test Setups
• AN_HOST_DFP1 (Host)
• AN_DEV_UFP1 (Device)
• AN_HUB_UFP1 (Hub UFP)
• AN_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat with:
o EXIT_TIME = tEnterLFPS1
o EXIT_TIME = 30 seconds
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
142
ii. Perform Part 1
b. If PUT sends CL_NACK Ordered Sets, perform Part 1
c. If PUT sends CL1_ACK Ordered Sets, perform Part 2
11. If the PUT sends CL1_REQ Ordered Sets before the Link Partner:
a. If Link Partner sends CL_NACK Ordered Sets, perform Part 3
b. If Link Partner sends CL1_ACK Ordered Sets, perform Part 4
12. If neither send CL1_REQ Ordered Sets, retry test (stop after 5 attempts)
Note: It is possible that some CL1_ACK Ordered Sets may not be detected as the Link enters
low power state. Because of this, it is not a failure as long as 350 or more CL1_ACK
Ordered Sets are detected.
Note: It is not a failure if the PUT sends more than 375 CL1_ACK Ordered Sets
18. Parse each CL1_ACK Ordered Set and verify that bits 9:0 (SCR) in the payload are 00 1111
0010b (4.2.1.6.1#4)
19. Verify that transmitter is in electrical idle (4.2.1.6.4#2)
20. Verify that Lane common mode voltages are maintained (4.2.1.6.4#2)
21. Perform Part 5
143
Note: It is possible that some CL1_OFF Ordered Sets may not be detected as the Link enters low
power state. Because of this, it is not a failure as long as 350 or more CL1_OFF Ordered
Sets are detected.
28. Verify that the first CL_OFF Ordered Set is sent within tCLxResponse after getting the
CL1_ACK Ordered Sets (4.2.1.6.2#18)
29. Verify that the PUT Adapters are in the CL1 state (4.2.1.6.2#26)
30. Perform Part 5
144
TD 4.013 CL1 Test (Re-timers on the Link)
Note: This test is only performed with an Active Cable that contains re-timers. The Active Cable must support CLx
states. The test is performed simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port
being tested.
A. Purpose:
• Verify that the PUT enters CL1 state correctly when there are Re-timers on the Link
• Verify that the PUT exits CL1 state correctly when there are Re-timers on the Link
B. Asserts:
• 4.2.1.3.1#3
• 4.2.1.6.1#4, 4.2.1.6.1#6
• 4.2.1.6.1.2#9, 4.2.1.6.1.2#10
• 4.2.1.6.2#7, 4.2.1.6.2#11, 4.2.1.6.2#13, 4.2.1.6.2#14
• 4.2.1.6.3#16
• 4.2.1.6.4#2
• 4.2.1.6.5.3#9-45, 4.2.1.6.5#48
• 4.2.4.2#2rt
• 4.2.4.3.2.1#1rt, 4.2.4.3.2.1#4rt, 4.2.4.3.2.1#5rt
• 4.2.4.3.2.3#4rt
• 4.2.4.3.3#2r
C. Test Setups
• AN_HOST_DFP1 (Host)
• AN_DEV_UFP1 (Device)
• AN_HUB_UFP1 (Hub UFP)
• AN_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat with:
o EXIT_TIME = tEnterLFPS1
o EXIT_TIME = 30 seconds
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
USB4 CV performs the following steps:
Part 0 – Setup
1. Reset UUT
2. Enumerate UUT Router
3. Initiate Lane Bonding
4. Read the CL1 Support bit in the PUT
5. Verify that the CL1 Support bit matches the capabilities indicated in the VIF
6. Do not enable Bi-Directional Time Sync Handshakes
7. Configure the PM Secondary
a. If the PUT is the UFP, set the PM Secondary bit to 1b in the PUT and to 0b in the
Link Partner
b. If the PUT is a DFP, set the PM Secondary bit to 0b in the PUT and to 1b in the Link
Partner
8. Enable CLx states in the PUT and in the Link Partner:
a. CL2 Enable = 0b
b. CL1 Enable = 1b
c. CL0s Enable = 1b
9. If both the PUT and Link Partner send CL1_REQ Ordered Sets at the same time:
145
a. If PUT is not the PM Secondary, perform Part 1
b. Else, perform Part 2
10. If the Link Partner sends CL1_REQ Ordered Sets before the PUT:
a. If PUT does not support CL1:
i. Verify that the PUT sends CL_NACK Ordered Sets (4.2.1.6.3#16)
ii. Perform Part 1
b. If PUT sends CL_NACK Ordered Sets, perform Part 1
c. If PUT sends CL1_ACK Ordered Sets, perform Part 2
11. If the PUT sends CL1_REQ before the Link Partner:
a. If Link Partner sends CL_NACK Ordered Sets, perform Part 3
b. If Link Partner sends CL1_ACK Ordered Sets, perform Part 4
12. If neither send CL1_REQ Ordered Sets, retry test (stop after 5 attempts)
Note: It is not a failure if the PUT sends more than 375 CL1_ACK Ordered Sets
18. Parse each CL1_ACK Ordered Set and verify that bits 9:0 (SCR) in the payload are 00 1111
0010b (4.2.1.6.1#4)
19. Verify that transmitter is in electrical idle (4.2.1.6.4#2, 4.2.4.2#2rt)
20. Verify that Lane common mode voltages are maintained (4.2.1.6.4#2, 4.2.4.2#2rt)
21. Perform Part 5
147
TD 4.014 CL0s Test (No Re-timers on the Link)
Note: This test only applies to Ports that do not contain any On-Board Re-timers.
Note: This test is performed with a Passive Cable to avoid introducing re-timers on the Link. The test is performed
simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being tested.
Note: This test is not performed if the Router does not support CL0s state.
A. Purpose:
• Verify that the PUT Adapters enter CL0s state correctly when there are no Re-timers on
the Link
• Verify that the PUT Adapters exit CL0s state correctly when there are no Re-timers on
the Link
B. Asserts:
• 4.2.1.4.1#3
• 4.2.1.6.1#5
• 4.2.1.6.2#12, 4.2.1.6.2#30
• 4.2.1.6.4#3
• 4.2.1.6.5.1#11, 4.2.1.6.5.1#12, 4.2.1.6.5.1#15, 4.2.1.6.5.1#16
C. Test Setups
• AN_HOST_DFP1 (Host)
• AN_HUB_DFP1 (Hub)
D. Repetitions:
• Repeat with:
o EXIT_TIME = (375 Symbol Times + 100ns)
o EXIT_TIME = 30 seconds
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
148
Note: it is not a test failure if the PUT does not respond with CL0s_ACK Ordered Sets
10. Parse each CL0s_ACK Ordered Set and verify that bits 9:0 (SCR) in the payload are 00 1111
0010 (4.2.1.6.1#5)
11. Verify that the PUT sends CL0s_ACK Ordered Sets for 16 symbol times (4.2.1.6.2#12)
12. Send CL_OFF Ordered Sets to the PUT for 375 symbol times
13. Verify that transmitter is in electrical idle (4.2.1.6.4#3)
14. Verify that Lane common mode voltages are maintained (4.2.1.6.4#3)
149
TD 4.015 CL0s Test (Re-timers on the Link)
Note: This test is only performed with an Active Cable that contains re-timers. The Active Cable must support CLx
states. The test is performed simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port
being tested.
Note: This test is not performed if the Router does not support CL0s state.
A. Purpose:
• Verify that the PUT Adapters enter CL0s state correctly when there are Re-timers on the
Link
• Verify that the PUT Adapters exit CL0s state correctly when there are Re-timers on the
Link
B. Asserts:
• 4.2.1.4.1#3
• 4.2.1.6.1#5
• 4.2.1.6.2#12, 4.2.1.6.2#30
• 4.2.1.6.4#3
• 4.2.1.6.5.1#11, 4.2.1.6.5.1#12, 4.2.1.6.5.1#15, 4.2.1.6.5.1#16
• 4.2.4.2#3rt
• 4.2.4.3.1#3rt, 4.2.4.3.1#4rt, 4.2.4.3.1#7rt
• 4.2.4.3.3#2rt
C. Test Setups
• AN_HOST_DFP1 (Host)
• AN_DEV_UFP1 (Device)
• AN_HUB_UFP1 (Hub UFP)
• AN_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat with:
o EXIT_TIME = (375 Symbol Times + 100ns)
o EXIT_TIME = 30 seconds
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
150
9. Verify that the PUT responds with CL0s_ACK Ordered Sets (4.2.1.6.2#12)
10. Parse each CL0s_ACK Ordered Set and verify that bits 9:0 (SCR) in the payload are 00 1111
0010 (4.2.1.6.1#5)
11. Verify that the PUT sends CL0s_ACK Ordered Sets for 16 symbol times (4.2.1.6.2#12)
12. Send CL_OFF Ordered Sets to PUT for 375 symbol times
13. Wait the equivalent of 375 Symbol Times after the PUT sends the first response Ordered Set
14. Verify that transmitter is in electrical idle (4.2.1.6.4#3, 4.2.4.2#3rt)
15. Verify that Lane common mode voltages are maintained (4.2.1.6.4#3, 4.2.4.2#3rt)
151
TD 4.016 CLx Exit Initiation Test
Note: This test is not performed if the Router does not support CLx states. The test is performed simultaneously for
both the Lane 0 Adapter and the Lane 1 Adapter of the Port being tested.
A. Purpose:
• Verify that the PUT initiates exit from CLx states correctly
B. Asserts:
• 4.2.1.6.5#1, 4.2.1.6.5.1#1-4, 4.2.1.6.5.1#8-9, 4.2.1.6.5.2#1, 4.2.1.6.5.2#4-6,
4.2.1.6.5.3#1-5
C. Test Setups
• AN_HOST_DFP1 (Host)
• AN_DEV_UFP1 (Device)
• AN_HUB_UFP1 (Hub UFP)
• AN_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat for all supported CLx states
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
152
10. Verify that the PUT transitions out of CL1/CL2 state as follows:
a. PUT sends a Low Frequency Periodic Signaling (LFPS) burst on each Lane until the
receiver detects LFPS (4.2.1.6.5.2#1)
b. PUT starts transmitting SLOS1 (4.2.1.6.5.2#4)
c. PUT Adapters complete Symbol lock within tRxLock time (4.2.1.6.5.2#5)
d. PUT Adapters transition to Training.LOCK1 sub-state (4.2.1.6.5.2#6)
153
TD 4.017 UFP SBRX Disconnect Test (UFP Only)
A. Purpose:
• Verify that the PUT handles SBRX-initiated Disconnect on UFP correctly
B. Asserts:
• 4.4.5.1.1#1-4
C. Repeat with the following Disconnect Events:
• Router Hot Unplug (4.4.5.1.1#3) – disable/enable to generate
• DFP Reset (4.4.5.1.1#4)
D. Test Setups
• AN_DEV_UFP1 (Device)
• AN_HUB_UFP1 (Hub)
E. Repetitions:
• Repeat at Gen 2 and Gen 3 speeds (if supported)
F. Background Check:
• Lane 0/Lane 1 Background Check
G. Procedure:
Note: It is not a test failure if the PUT drives SBTX low one or more times before driving
SBTX low for tDisconnectTx time.
154
TD 4.018 DFP SBRX Disconnect Test (DFP Only)
A. Purpose:
• Verify that the PUT handles SBRX-initiated Disconnect on the DFP correctly
B. Asserts:
• 4.4.5.2.1#1-3, 4.4.5.2.1#6, 4.4.5.2.1#7
C. Test Setups
• AN_HOST_DFP1 (Host)
• AN_HUB_DFP1 (Hub)
D. Repetitions:
• Repeat at Gen 2 and Gen 3 speeds (if supported)
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
155
d. CL1 Enable = 0b
e. CL2 Enable = 0b
f. Lane Bonding = 0b
g. EnableUniDirectionalMode = 0b
h. Target Link Width = 00001b
16. Stop Analyzer
156
TD 4.019 Deprecated
157
TD 4.020 Tx Skew Test
A. Purpose:
• Verify that the PUT transmitter does not exceed the maximum allowed skew
B. Asserts:
• 4.2.2.2#7
C. Test Setups
• AN_HOST_DFP1 (Host)
• AN_DEV_UFP1 (Device)
• AN_HUB_UFP1 (Hub UFP)
• AN_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat at Gen 2 and Gen 3 speeds (if supported)
• Repeat test 10 times
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
158
TD 4.021 Deprecated
159
TD 4.022 Deprecated
160
TD 4.023 Deprecated
161
TD 4.024 Deprecated
162
TD 4.025 Deprecated
163
TD 4.026 Deprecated
164
USB4 Mode Tests – Exerciser Required
The tests in this section are performed in USB4 mode where all connected Ports negotiate and enter USB4 operation
as described in the USB Type-C Specification and the USB PD Specification. The Sideband Channel operates as a
USB4 Sideband Channel.
Unless specified otherwise, the tests in this section are performed on all Ports of a UUT. The tests are performed at
the highest speed that the UUT supports. Lanes are bonded and RS-FEC is enabled.
Unless otherwise noted, a test will timeout if it takes more than 500ms to go from one step to the next step. It is a
test failure if a test times out.
Background Checks
Sideband Channel Background Check
This test is performed by the Exerciser in conjunction with all of the Sideband Channel Tests.
1. Parse each LT Transaction and verify that it consists of the following symbols in the following order:
(4.1.1.2.1#1)
a. A DLE symbol (FEh)
b. A LSE symbol
c. A CLSE symbol
2. Parse the LSE Symbol in each LT Transaction and verify that:
a. Bits [7:6] (StartLT) are set to 10b (4.1.1.2.1#4)
b. Bit 5 (LSELane) is 0 for an LT_LRoff Transaction (4.1.1.2.1#3)
c. Bit 4 is reserved (0b) (1.7#5)
d. Bits [3:0] (LSESymbol) do not contain reserved values (1.7#1)
Note: Defined LSESymbol values are 0000b (LT_Fall), 0010b (LT_Resume), and 0011b (LT_LRoff)
3. Parse each AT Transaction and verify that it consists of the following symbols in the following order:
(4.1.1.2.2#1)
a. A DLE symbol (FEh)
b. A STX symbol
c. A DLE symbol (FEh)
d. No more than 66 Data Symbols (4.1.1.2.2#2)
e. 2 CRC Symbols (Low and High) with correct CRC (4.1.1.2.4#5,4.1.1.2.4#6, 4.1.1.2.4#7, 4.1.1.2.4#8,
4.1.1.2.4#9)
f. An ETX symbol (40h)
4. For each AT Command:
a. Parse the STX Symbol and verify that:
i. Bits [7:6] (StartAT) are 00b (4.1.1.2.2#8)
ii. Bit 5 is reserved (0b) (1.7#5)
iii. Bit 4 (Responder) is 0b (4.1.1.2.2#7)
iv. Bit 3 (Bounce) is set to 0b (4.1.1.2.2#6)
v. Bit 2 (Recipient) is 1b (4.1.1.2.2#5)
vi. Bit 1 (ReturnBounce) is set to 0b (4.1.1.2.2#4)
165
b. Parse the Data Symbols and verify that: (4.1.1.3.1#1)
i. The REG symbol does not contain the values 2 to 7, 10 to 11, 14, or 128 to 255
ii. The LEN symbol does not contain a value greater than 64 (4.1.1.3.1#2)
iii. If WnR=0, there is no COMMAND_DATA
iv. If WnR=1b, the COMMAND_DATA is the same length as in the LEN field
5. For each AT Response:
a. Parse the STX Symbol and verify that:
i. Bits [7:6] (StartAT) are 00b (4.1.1.2.2#8)
ii. Bit 5 is reserved (0b) (1.7#5)
iii. Bit 4 (Responder) is 0b (4.1.1.2.2#7)
iv. Bit 3 (Bounce) is set to 0b (4.1.1.2.2#6)
v. Bit 2 (Recipient) is 1b (4.1.1.2.2#5)
vi. Bit 1 (ReturnBounce) is set to 0b (4.1.1.2.2#4)
b. Parse the Data Symbols and verify that they consist of the following symbols in the following order:
(4.1.1.3.1#2)
i. A REG symbol does not contain the values 2 to 7, 10 to 11, 14, or 128 to 255
ii. A LEN symbol does not contain a value greater than 64 (4.1.1.3.1#2)
iii. If WnR=0b, RESPONSE_DATA is the same length as in the LEN field (unless test specifies
otherwise)
iv. If WnR=1n, RESPONSE_DATA is 00h (unless test specified otherwise)
c. Verify that the value in the LEN field is not greater than 64 (4.1.1.3.1#2)
6. When the PUT receives an AT Command with the Recipient bit set to 1b, verify that the PUT responds with an
AT Response (unless the test specifies otherwise). (4.1.1.2.2#9)
7. Parse each Broadcast RT Transaction and verify that it consists of the following symbols in the following order:
(4.1.1.2.3.1#1)
a. A DLE symbol (FEh)
b. A STX symbol
c. Two Link Parameters symbols
d. 2 CRC Symbols (Low and High) with correct CRC (4.1.1.2.4#5,4.1.1.2.4#6, 4.1.1.2.4#7, 4.1.1.2.4#8,
4.1.1.2.4#9)
e. A DLE symbol (FEh)
f. An ETX symbol (40h)
8. Parse the STX Symbol for a Broadcast RT Transaction and verify that:
a. Index = 0 (4.1.1.2.3.1#4)
b. CmdNotResp=1b (4.1.1.2.3.1#5)
9. Parse Byte 2 of a Broadcast RT Transaction and verify that:
a. Bits [7:5] are 0 (reserved) (1.7#5)
b. Bit 4 (TBTCompatibleSpeed) is 0b (4.1.1.2.3.1#6)
c. Bit 1 (reserved) is 0b (1.7#5)
d. Bit 0 (USB4) is 1b (4.1.1.2.3.1#7)
10. Parse each Addressed RT Transaction and verify that it consists of the following symbols in the following
order: (4.1.1.2.3.2#1)
a. A DLE symbol (FEh)
b. A STX symbol
c. No more than 66 Data Symbols (4.1.1.2.3.2#2)
d. 2 CRC Symbols (Low and High) with correct CRC (4.1.1.2.4#5-#9)
e. A DLE symbol (FEh)
f. An ETX symbol (40h)
166
11. Parse each RT Command and verify that: (4.1.1.3.1#1)
a. The REG symbol does not contain the values 2 to 7, 10 to 11, 14, or 128 to 255
b. The LEN symbol does not contain a value greater than 64
c. If WnR=0, there is no COMMAND_DATA
d. If WnR=1b, the COMMAND_DATA is the same length as in the LEN field
12. Parse each RT Response and verify that it consists of the following symbols in the following order:
(4.1.1.3.1#2)
a. The REG symbol does not contain the values 2 to 7, 10 to 11, 14, or 128 to 255
b. The LEN symbol does not contain a value greater than 64 (4.1.1.3.1#2)
c. If WnR=0b, RESPONSE_DATA is the same length as in the LEN field (unless test specifies
otherwise)
d. If WnR=1n, RESPONSE_DATA is 00h (unless test specified otherwise)
13. Verify that the PUT sends an AT Response within tCmdResponse (50ms) of receiving an AT Command.
(4.1.1.2.5.1#1)
14. Verify that the PUT sends an Addressed RT Response within tCmdResponse (50ms) of receiving an Addressed
RT Command. (4.1.1.2.5.2#1)
167
Test Descriptions
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
168
7. Set the Pending bit in the USB4 Port Capability in PUT Configuration Space to 1b
8. Wait 1 second.
9. Verify that the PUT sets the Pending bit to 0b (4.1.1.3.2#24)
10. Read the No Response field from the USB4 Port Capability in PUT Configuration Space:
a. Length
b. No Response
c. Result Code
11. Verify that No Response = 1 (4.1.1.3.2#21)
169
TD 4.027 Invalid CLSE Test
A. Purpose:
• Verify that the PUT checks CLSE symbols
• Verify that the PUT drops a Transaction with an invalid CLSE
B. Asserts:
• 4.1.1.2.1#5, 4.1.1.2.1#6
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Background Check:
• Sideband Channel Background Check
E. Procedure:
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
On the PUT:
Part 1 – Lane 1 Adapter
5. Send an LT_Fall Transaction to the PUT
a. Transaction targets the Lane 1 Adapter
b. Transaction has an invalid CLSE
6. Verify that the Lane 1 Adapter is in CL0 state (4.1.1.2.1#5, 4.1.1.2.1#6)
On the PUT:
Part 2 – Lane 0 Adapter
7. Send an LT_Fall Transaction to the PUT
a. Transaction targets the Lane 0 Adapter
b. Transaction has an invalid CLSE
8. Verify that the Lane 0 Adapter is in the CL0 state (4.1.1.2.1#5, 4.1.1.2.1#6)
170
TD 4.028 Multiple DLE Test
A. Purpose:
• Verify that the PUT correctly handles AT and RT Transactions with multiple preceding
DLE symbols
B. Asserts:
• 4.1.1.2.4#2
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat with AT Transactions
• Repeat with Addressed RT Transactions with the following:
o Index = 0
o Index = First On-Board Re-timer (if present)
o Index = Second On-Board Re-timer (if present)
• Repeat both Transaction types with 2 DLE symbols and 10 DLE symbols
E. Background Check:
• Sideband Channel Background Check
F. Procedure:
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
On the PUT:
4. Send the DLE symbols to the PUT (see repetitions)
5. Immediately after sending the DLE symbols, send the PUT a Write Command with the
following:
a. Target = Register 9 (Metadata)
b. Length = 4
c. Command Data = FFFF FFFFh
6. Wait for a Write Response from the PUT
7. Send the PUT a Read Command with the following:
a. Target = Register 9 (Metadata)
b. Length = 4
8. Verify that the contents of Register 9 are FFFF FFFFh (4.1.1.2.4#2)
171
172
TD 4.029 Transaction Error Test
A. Purpose:
• Verify that the PUT ignores AT Transactions and Addressed RT Transactions that don’t
have data and CRC fields.
• Verify that the PUT ignores symbols that are not part of a Transaction
• Verify that the PUT ignores AT Transactions and Addressed RT Transactions with an
invalid CRC
B. Asserts:
• 4.1.1.2.6#1-4
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat with AT Transactions
• Repeat with Addressed RT Transactions with the following:
o Index = 0
o Index = First On-Board Re-timer (if present)
o Index = Second On-Board Re-timer (if present)
E. Background Check:
• Sideband Channel Background Check
F. Procedure:
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
On the PUT:
Part 1 – Malformed Command
4. Send the PUT a Command with No data symbols and no CRC
5. Verify that the PUT does not send a response (4.1.1.2.6#2)
174
TD 4.030 SB Register Read Error Test
A. Purpose:
• Verify that the PUT correctly handles Read Request error cases
B. Asserts:
• 4.1.1.3.1#6-10
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat with AT Transactions
• Repeat with Addressed RT Transactions with the following:
o Index = 0
o Index = First On-Board Re-timer (if present)
o Index = Second On-Board Re-timer (if present)
E. Background Check:
• Sideband Channel Background Check
F. Procedure:
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
On the PUT:
Part 1 – Malformed Command (Too Short)
4. Send the PUT a Single Data Symbol
5. Verify that the PUT responds with a Read Response with:
a. No RESPONSE_DATA (4.1.1.3.1#6)
b. LEN = 0 (4.1.1.3.1#6)
175
Part 3 – Malformed Command (Too Long)
8. Send the PUT a Read Command:
a. COMMAND_DATA = FFh
b. LEN = 3
9. Verify that the PUT responds with a Read Response with:
a. No RESPONSE_DATA (4.1.1.3.1#8)
b. LEN = 0 (4.1.1.3.1#8)
176
TD 4.031 Phase 4 Exit Test
Note: This test is performed simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being
tested.
A. Purpose:
• Verify that the PUT Transitions out of Phase 4 correctly under all conditions
B. Asserts:
• 4.1.2.4#1, 4.1.2.4#2
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Background Check:
• Sideband Channel Background Check
E. Procedure:
177
TD 4.032 Training Delay Test
Note: This test is performed simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being
tested.
A. Purpose:
• Verify that the PUT handles a Link Training delay correctly
B. Asserts:
• 4.2.1.3.2#1
• 4.2.1.4.3#6
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Background Check:
• Lane 0/Lane 1 Background Check
E. Procedure:
Part 3 – TS1→Lock2
13. Reset UUT
14. Start Lane Initialization
15. Continue sending SLOS2 until PUT starts sending TS1 OS
16. Send PUT one TS1 OS, then send SLOS1
Note: When RS-FEC is on, the first n SLOS1 symbols will be RS-FEC encoded (at Gen 2 speed,
32=<n<=64; at Gen 3 speed, 16=<n<=32). After sending n SLOS symbols, RS-FEC is
turned off.
178
17. Verify that the PUT sends SLOS2 (4.2.1.3.2#1, 4.2.1.4.3#6)
18. Finish Lane Initialization
Part 4 – TS2→Lock2
19. Reset UUT
20. Start Lane Initialization
21. Continue sending TS1 OS until PUT starts sending TS2 OS
22. Send PUT one TS2 OS, then send SLOS1
Note: When RS-FEC is on, the first n SLOS1 symbols will be RS-FEC encoded (at Gen 2 speed,
32=<n<=64; at Gen 3 speed, 16=<n<=32). After sending n SLOS symbols, RS-FEC is
turned off.
179
TD 4.033 Training Fail Test
Note: This test is performed simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being
tested.
A. Purpose:
• Verify that the PUT handles Link Training failure correctly
B. Asserts:
• 4.2.1.3.2#1
• 4.2.1.3.3#4
• 4.2.1.4.3#6
• 4.2.1.2.2#4
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Background Check:
• Lane 0/Lane 1 Background Check
E. Procedure:
180
181
TD 4.034 Bonding Delay Test
Note: This test is performed simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being
tested.
A. Purpose:
• Verify that the PUT handles delay in Bonding State correctly
B. Asserts:
• 4.2.1.5.2#1
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Background Check:
• Lane 0/Lane 1 Background Check
E. Procedure:
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
On the PUT:
Part 1 – TS1 delay
4. When PUT starts sending TS2 OS, continue sending TS1 OS for 20µs (tBonding min – 20µs)
5. Resume Lane Bonding (send TS2 OS to PUT)
6. Verify that the PUT starts sending TS2 OS (4.2.1.5.2#1)
7. Finish Lane Initialization
Part 2 – TS1→Lock2
8. Drive SBTX to logic low (which will restart Lane Initialization)
9. Complete Lane Initialization
10. Initiate Lane Bonding
11. When PUT starts sending TS1 OS, send SLOS1
12. Verify that the PUT sends SLOS (4.2.1.5.2#1)
13. Finish Lane Initialization
Part 3 – TS2→Lock2
14. Drive SBTX to logic low (which will restart Lane Initialization)
182
15. Start Lane Initialization
16. Set Lane Bonding bit to 1b in PUT to initiate Lane bonding
17. When the PUT starts sending TS1 OS, send TS1 OS but do not send any TS2 OS
18. When the PUT starts sending TS2 OS, send SLOS1
19. Verify that the PUT sends SLOS (4.2.1.5.2#1)
20. Finish Lane Initialization
183
TD 4.035 Bonding Fail Test
Note: This test is performed simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being
tested.
A. Purpose:
• Verify that the PUT initiates a disconnect when Lane bonding fails
B. Asserts:
• 4.2.2.2#6
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Background Check:
• Lane 0/Lane 1 Background Check
E. Procedure:
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
On the PUT:
Part 1 – No TS OS
4. When PUT sends TS1 OS, do not send TS1s for at least max tBonding time so that bonding
fails.
5. If PUT restarts lane initialization, and it is not in CL0 after tBonding time, verify that it drives
SBTX to logic Low.
6. If the PUT drives SBTX to logic Low:
a. Verify that SBTX logic Low does not happen before tBonding time.
b. Verify that the PUT drives SBTX to logic Low for at least tDisconnectTx (4.2.2.2#6)
7. Complete Lane Initialization
Part 2 – Incorrect TS OS
8. Send 2 to 6 TS1 OS with Lane Bonding Target = 001b to initiate Lane Bonding.
9. Send TS1 OS with Lane Bonding Target = 000b to both Adapters
10. Continue sending TS1 for at least the max tBonding time so that bonding fails
11. If PUT restarts lane initialization, and it is not in CL0 after tBonding time, verify that it drives
SBTX to logic Low.
12. If the PUT drives SBTX to logic Low:
a. Verify that SBTX logic Low does not happen before tBonding time.
b. Verify that the PUT drives SBTX to logic Low for at least tDisconnectTx (4.2.2.2#6)
184
13. Complete Lane Initialization
185
TD 4.036 TS1 Rsvd Bits Ignored Test
Note: This test is performed simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being
tested.
A. Purpose:
• Verify that the PUT ignores reserved bits in TS1 Ordered Sets
B. Asserts:
• 4.2.1.3.5#2, 4.2.1.3.5#5, 4.2.1.3.5#7, 4.2.1.3.5#9-10
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Background Check:
• Lane 0/Lane 1 Background Check
E. Procedure:
186
TD 4.037 CLx Entry Errors Test
Note: This test is not performed if the Router does not support CLx states.
Note: This test is performed simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being
tested.
A. Purpose:
• Verify that the PUT handles errors while entering low power states
B. Asserts:
• 4.2.1.6.2#38
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat for all supported CLx states
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
On the PUT:
Part 1 – Link Error
10. Initiate entry to CLx state (see repetitions):
a. If requesting entry to CL2 state, send the PUT back-to-back CL2_REQ
b. Else, send the PUT back-to-back CL1_REQ
11. Wait for the PUT to send Response Ordered Set
a. If testing CL2, Response Ordered Set = CL2_ACK
b. If testing CL1, Response Ordered Set = CL1_ACK
c. If testing CL0s, Response Ordered Set = CL0s_ACK
Note: It is not a test failure if the PUT sends CL_NACK. If the PUT sends CL_NACK, retry
the test. If after 3 attempts the test cannot be run, print a warning and continue on to
the next test.
12. After receiving the CLx_ACK response from the PUT, send 2 to 5 unknown Ordered Sets
before sending CL_OFF
13. Continue to send CL_OFF to complete the target CLx state transition
14. Verify that the PUT does not enter Training state (4.2.1.6.2#38)
15. Verify that the PUT finishes the transition to the target CLx state
188
TD 4.038 CL0s Exit Errors Test
Note: This test is only performed if the Router supports both CL1 state and CL0s state.
Note: This test is performed simultaneously for both the Lane 0 Adapter and the Lane 1 Adapter of the Port being
tested.
Note: For Part 1 of this test, the Exerciser emulates two Re-timers on the Link (X=2).
A. Purpose:
• Verify that the PUT handles errors while exiting CL0s state
B. Asserts:
• 4.2.1.6.5.1#13, 4.2.1.6.5.1#17
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat for all supported CLx states
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
189
b. Wait for PUT to send CL0s_ACK
c. Send CL_OFF
Note: It is not a test failure if the PUT sends CL_NACK. If the PUT sends CL_NACK, retry the
test. If after 3 attempts the test cannot be run, print a warning and continue on to the next
test.
190
TD 4.039 RS-FEC Correctable Error Test
A. Purpose:
• Verify that the PUT can correct up to two 1-byte errors in an RS-FEC block
B. Asserts:
• 4.3.6#13
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat at Gen 2 and Gen 3 speeds (if supported)
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
Note: The Exerciser injects randomly spaced errors so that either one or two errors fall within an
RS-FEC block
191
TD 4.040 Unknown Ordered Set Link Error Test
A. Purpose:
• Verify that the PUT detects and reports Link errors correctly
B. Asserts:
• 4.2.1.3.1#2
• 4.2.1.4.3#5
• 4.2.2.2.1#1
• 4.4.2#1-4, 4.4.2#9-12
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat at Gen 2 and Gen 3 speeds (if supported)
• Repeat with Adapters in CL0 state and in Training state (4.4.2#4)
• Repeat for Lane 1 Adapter and Lane 0 Adapter
Note: When testing a Lane 1 Adapter, the Notification Packets may be sent on Lane 0.
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
192
Part 1 – Ordered Set Errors (OSE Notification Disabled)
8. Write 0b to each bit in the Logical Layer Errors Enable field in Adapter Configuration Space
of the Lane 0 Adapter
9. Read the Logical Layer Errors field in Adapter Configuration Space of the Lane 0 Adapter to
clear any previous errors
On the PUT:
10. While PUT Adapters are in the target state (see repetitions), send the PUT 2 back-to-back
Ordered Sets with unknown contents
11. Verify that:
a. Both Adapters entered Training.LOCK1 sub-state (i.e. sent SLOS1) (4.2.2.2.1#1,
4.2.1.3.1#2, 4.2.1.4.3#5, 4.4.2#9)
b. PUT transitioned to CL0 state (i.e. stops sending TS2 OS) within tTrainingAbort2
after sending the first SLOS1 (4.2.1.3.3#3)
193
TD 4.041 Uncorrectable SCR Link Error Test
A. Purpose:
• Verify that the PUT detects and reports Link errors correctly
B. Asserts:
• 4.2.1.3.1#2
• 4.2.1.4.3#5
• 4.2.2.2.1#1
• 4.4.2#4, 4.4.2#9-12
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat at Gen 2 and Gen 3 speeds (if supported)
• Repeat for Lane 1 Adapter and Lane 0 Adapter
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
On the PUT:
6. Send the PUT 2 back-to-back Ordered Sets with an uncorrectable error in the SCR field
7. Verify that :
a. Both PUT Adapters go to Training.LOCK1 sub-state (i.e. sent SLOS1) (4.2.1.3.1#2,
4.2.1.4.3#5, 4.2.2.2.1#1,4.4.2#9)
194
b. PUT transitioned to CL0 state (i.e. stops sending TS2 OS) within tTrainingAbort2
after sending the first SLOS1 (4.2.1.3.3#3)
On the PUT:
11. Send the PUT 2 back-to-back Ordered Sets with an uncorrectable error in the SCR field
12. Verify that:
a. The PUT Adapters go to Training.LOCK1 sub-state (i.e. sent SLOS1) (4.2.1.3.1#2,
4.2.1.4.3#5, 4.4.2#9)
b. PUT transitioned to CL0 state (i.e. stops sending TS2 OS) within tTrainingAbort2
after sending the first SLOS1 (4.2.1.3.3#3)
195
TD 4.042 Timeout Link Error Test
A. Purpose:
• Verify that the PUT detects and reports Link errors correctly
B. Asserts:
• 4.4.2#4, 4.4.2#15-16
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat at Gen 2 and Gen 3 speeds (if supported)
• Repeat for Lane 1 Adapter and Lane 0 Adapter as the Target Adapter
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
On the PUT:
7. Transition the Adapters in the PUT to Training state
8. Note when the PUT sends the first SLOS1 (i.e. enters Training state)
9. On the Target Adapter, after entering the Training.TS1 state, only send TS1
10. Continue sending TS1 until at least tTrainingError (500µs) time passes after the first SLOS1
was received from the PUT (this should cause the timeout error to occur)
196
11. Resume Link training and bring both Adapters to CL0 state
Note: After the timeout error occurs, an Adapter can either continue Link Training or transition
to the Training.LOCK1 state.
12. Verify that the Adapter did not restart Link Initialization unless the Adapter was in Training
state for more than 100ms (tTrainingAbort2)
197
TD 4.043 Rx De-Skew Test
A. Purpose:
• Verify that the PUT receiver can operate with maximum skew
B. Asserts:
• 4.4.4#1
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Repetitions:
• Repeat at Gen 2 and Gen 3 speeds (if supported)
• Repeat test 5 times with Lane 0 skewed ahead of Lane 1
• Repeat test 5 times with Lane 1 skewed ahead of Lane 0
E. Background Check:
• Lane 0/Lane 1 Background Check
F. Procedure:
Note: Throughout this test, the Exerciser inserts a static skew between Lane 0 and Lane 1 of up to 44ns on the Link
with the UUT.
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT”. When this test is performed on a DFP, USB4 CV performs the tests steps that are defined
“Upstream of the UUT”.
198
TD 4.052 Reserved Values in Transactions Test
A. Purpose:
• Verify that the PUT ignores a Transaction with an undefined value in a field
• Verify that the PUT ignores a Transaction with a non-zero value in a reserved field
B. Asserts:
• 1.7#2, 1.7#6
C. Test Setups
• EX_HOST_DFP1 (Host)
• EX_DEV_UFP1 (Device)
• EX_HUB_UFP1 (Hub UFP)
• EX_HUB_DFP1 (Hub DFP)
D. Background Check:
• Sideband Channel Background Check
E. Procedure:
Note: When performing this test on an UFP, the exerciser performs both the test steps that are defined “Upstream
of the UUT” and the test steps that are defined “On the PUT”. When this test is performed on a DFP, USB4
CV performs the tests steps that are defined “Upstream of the UUT” and the Exerciser performs the test
steps that are defined “On the PUT”.
On the PUT:
Part 1 – Undefined Values
4. Wait for Lane Bonding to complete
5. Send the PUT an LT Transaction with LSESymbol = 1011b (undefined) on Lane 0
6. Verify that the Adapters in the PUT do not transition out of CL0 state (1.7#2)
7. Send the PUT an LT Transaction with LSESymbol = 1000b (undefined) on Lane 0
8. Verify that the Adapters in the PUT do not transition out of CL0 state (1.7#2)
199
11. Send the PUT an LT Transaction on Lane 0 with:
a. LSESymbol = LT_Fall
b. Bit 4 = 1b (Rsvd)
12. Verify that the PUT Adapters go to the CLd State (1.7#6
200
TBT3-Compatibility Tests – No Exerciser
The tests in this section are performed in TBT3-Compatible mode where all connected Ports negotiate and enter
TBT3-Compatible operation as described in the USB Type-C Specification and the USB PD Specification.
Unless specified otherwise, the tests in this section are performed on all Ports of a UUT. The tests are performed at
the highest speed that the UUT supports. Lanes are bonded and RS-FEC is enabled.
Unless otherwise noted, a test will timeout if it takes more than 500ms to go from one step to the next step. It is a
test failure if a test times out.
Background Checks
Sideband Channel Background Check
This test is performed by the Analyzer in conjunction with all of the Sideband Channel Tests.
1. Parse each LT Transaction and verify that it consists of the following symbols in the following order:
(4.1.1.2.1#1)
a. A DLE symbol (FEh)
b. A LSE symbol
c. A CLSE symbol
2. Parse the LSE Symbol in each LT Transaction and verify that:
a. Bits [7:6] (StartLT) are set to 10b (4.1.1.2.1#4)
b. Bit 5 (LSELane) is 0 for an LT_LRoff Transaction (4.1.1.2.1#3)
c. Bit 4 is reserved (0b) (1.7#5)
d. Bits [3:0] (LSESymbol) do not contain reserved values (1.7#1)
Note: Defined LSESymbol values are 0000b (LT_Fall), 0001b (LT_Gen_2), 0010b (LT_Resume), 0011b
(LT_LRoff), 0101b (LT_Gen_3), 0110b (LT_Resume2)
3. Parse each AT Transaction and verify that it consists of the following symbols in the following order:
(4.1.1.2.2#1)
a. A DLE symbol (FEh)
b. A STX symbol
c. No more than 66 Data Symbols (4.1.1.2.2#2)
d. 2 CRC Symbols (Low and High) with correct CRC (4.1.1.2.4#5,4.1.1.2.4#6, 4.1.1.2.4#7, 4.1.1.2.4#8,
4.1.1.2.4#9)
e. A DLE symbol (FEh)
f. An ETX symbol (40h)
4. For each AT Command:
a. Parse the STX Symbol and verify that: (13.2.1.2.2#1)
i. Bits [7:6] (StartAT) are 00b
ii. Bit 5 is reserved (0b) (1.7#5)
iii. Bit 4 (Responder) is 0b (13.2.1.2.2#3)
b. Parse the Data Symbols and verify that: (4.1.1.3.1#1)
i. The REG symbol does not contain the values 2, 5 to 7, 11, 14, or 128 to 255
ii. The LEN symbol does not contain a value greater than 64 (4.1.1.3.1#2)
iii. If WnR=0, there is no COMMAND_DATA
iv. If WnR=1b, the COMMAND_DATA is the same length as in the LEN field
201
5. For each AT Response:
a. Parse the STX Symbol and verify that: (13.2.1.2.2#1)
i. Bits [7:6] (StartAT) are 00b
ii. Bit 5 is reserved (0b) (1.7#5)
iii. Bit 4 (Responder) is 0b (13.2.1.2.2#3)
iv. Bit 2 (Recipient) is 1b (13.2.1.2.2#5)
b. Parse the Data Symbols and verify that they consist of the following symbols in the following order:
(4.1.1.3.1#2)
i. A REG symbol does not contain the values 2, 5 to 7, 11, 14, or 128 to 255
ii. A LEN symbol does not contain a value greater than 64 (4.1.1.3.1#2)
iii. If WnR=0b, RESPONSE_DATA is the same length as in the LEN field (unless test specifies
otherwise)
iv. If WnR=1n, RESPONSE_DATA is 00h (unless test specified otherwise)
c. Verify that the value in the LEN field is not greater than 64 (4.1.1.3.1#2)
6. When the PUT receives an AT Command with the Recipient bit set to 1b, verify that the PUT responds with an
AT Response (unless the test specifies otherwise). (4.1.1.2.2#9)
7. Parse each Broadcast RT Transaction and verify that it consists of the following symbols in the following order:
(4.1.1.2.3.1#1)
a. A DLE symbol (FEh)
b. A STX symbol
c. Two Link Parameters symbols
d. 2 CRC Symbols (Low and High) with correct CRC (4.1.1.2.4#5,4.1.1.2.4#6, 4.1.1.2.4#7, 4.1.1.2.4#8,
4.1.1.2.4#9)
e. A DLE symbol (FEh)
f. An ETX symbol (40h)
8. Parse the STX Symbol for a Broadcast RT Transaction and verify that:
a. Index = 0 (4.1.1.2.3.1#4)
b. CmdNotResp=1b (4.1.1.2.3.1#5)
9. Parse Byte 2 of a Broadcast RT Transaction and verify that:
a. Bits [7:5] are 0 (reserved) (1.7#5)
b. Bit 4 (TBTCompatibleSpeed) is 1b (13.2.1.2.3#1)
c. Bit 1 (reserved) is 0b (1.7#5)
d. Bit 0 (USB4) is 0b (13.2.1.2.3#1)
10. Parse each Addressed RT Transaction and verify that it consists of the following symbols in the following
order: (4.1.1.2.3.2#1)
a. A DLE symbol (FEh)
b. A STX symbol
c. No more than 66 Data Symbols (4.1.1.2.3.2#2)
d. 2 CRC Symbols (Low and High) with correct CRC (4.1.1.2.4#5,4.1.1.2.4#6, 4.1.1.2.4#7, 4.1.1.2.4#8,
4.1.1.2.4#9)
e. A DLE symbol (FEh)
f. An ETX symbol (40h)
11. Parse the Data Symbols of each RT Command and verify that it consists of the following symbols in the
following order: (4.1.1.3.1#1)
a. The REG symbol does not contain the values 2, 5 to 7, 11, 14, or 128 to 255
b. The LEN symbol does not contain a value greater than 64
c. If WnR=0, there is no COMMAND_DATA
d. If WnR=1b, the COMMAND_DATA is the same length as in the LEN field
202
12. Parse the Data Symbols of each RT Response and verify that it consists of the following symbols in the
following order: (4.1.1.3.1#2)
a. The REG symbol does not contain the values 2, 5 to 7, 11, 14, or 128 to 255
b. The LEN symbol does not contain a value greater than 64 (4.1.1.3.1#2)
c. If WnR=0b, RESPONSE_DATA is the same length as in the LEN field (unless test specifies
otherwise)
d. If WnR=1n, RESPONSE_DATA is 00h (unless test specified otherwise)
13. Verify that the PUT sends an AT Response within tCmdResponse (50ms) of receiving an AT Command.
(4.1.1.2.5.1#1)
14. Verify that the PUT sends an Addressed RT Response within tCmdResponse (50ms) of receiving an Addressed
RT Command. (4.1.1.2.5.2#1)
203
Test Descriptions
TD 13.1.001 Bounce Mechanism Test
A. Purpose:
• Verify that the Bounce Mechanism is performed correctly
B. Asserts:
• 13.2.1.2.2.1#1-4
C. Test Setups
• AN_HOST_ DFP1—TBT3_01 (Host)
• AN_DEV_UFP1—TBT3_01 (Device)
• AN_HUB_UFP1—TBT3_01 (Hub UFP)
• AN_HUB_DFP1—TBT3_03 (Hub DFP)
D. Background Check:
• Sideband Channel Background Check
E. Procedure:
204
TD 13.1.002 SB Register Space Test
A. Purpose:
• Verify that SB Register space is formatted correctly
B. Asserts:
• 13.2.1.3#1
C. Test Setups
• AN_HOST_ DFP1—TBT3_01 (Host)
• AN_DEV_UFP1—TBT3_01 (Device)
• AN_HUB_UFP1—TBT3_01 (Hub UFP)
• AN_HUB_DFP1—TBT3_03 (Hub DFP)
D. Background Check:
• Sideband Channel Background Check
E. Procedure:
205
TD 13.1.003 Lane Initialization Test
A. Purpose:
• Verify that Lane Initialization is performed correctly in TBT3-Compatibility mode
B. Asserts:
• 13.2.1.4.4#1-8, 13.2.1.4.4.1#1-14, 13.2.1.4.4.2#1-13
C. Repetitions:
• Repeat with a TBT3 device that uses a:
o TBT3 Sideband Channel
o USB4 Sideband Channel
• Repeat at Gen 2 and Gen 3 speeds
• Repeat with RS-FEC enabled and disabled
• Repeat with the following cable types:
o Passive Cable
o Uni-Directional Active Cable that contains re-timers
o Bi-Directional Active Cable that contains re-timers
D. Test Setups
• AN_HOST_ DFP1—TBT3_01 (Host)
• AN_DEV_UFP1—TBT3_01 (Device)
• AN_HUB_UFP1—TBT3_01 (Hub UFP)
• AN_HUB_DFP1—TBT3_03 (Hub DFP)
E. Background Check:
• Sideband Channel Background Check
F. Procedure:
207
TD 13.1.004 Single Lane Link Test (Hub DFP Only)
Note: This test is only performed if the UFP of the Hub supports TBT3-Compatibility.
A. Purpose:
• Verify that the Single Lane Link configuration is supported
B. Asserts:
• 13.2.3.1#2
C. Test Setups
• AN_HUB_DFP1—TBT3_03 (Hub)
D. Background Check:
• Lane 0/Lane1 Background Check
E. Procedure:
208
TD 13.1.005 Deprecated
209
TD 13.1.006 Deprecated
210
TD 13.1.007 Deprecated
211