Method for training a communication link between ports to correct for errors
First Claim
1. A method for training a communication link that includes a plurality of data lanes coupling first and second ports in a computing system, the communication link is trained in order to correct for errors including data inversion, lane skewing and lane order errors that may be caused by the communication link, the method comprising:
- locking the communication link by transmitting a first link training sequence from the first and second ports and synchronizing the receipt of the first link training sequence at the first and second ports;
handshaking across the locked link to indicate readiness for data transmission by sending a first link training sequence that contains a lane identifier of at least one of the plurality of data lanes from the first port to the second port;
transmitting information after handshaking across the locked link; and
using the first link training sequence to correct for errors caused by the communication link.
3 Assignments
0 Petitions
Accused Products
Abstract
A technique for training links in a computing system is disclosed. In one aspect, the technique includes configuring a first receiver in a first port using a first training sequence or a second training sequence; transmitting the second training sequence from the first port indicating the first receiver is configured; and receiving a second training sequence transmitted by a second port at the first port, the second training sequence transmitted by the second port indicating that a second receiver in the second port is configured. In a second aspect, the technique includes locking a communication link; handshaking across the locked link to indicate readiness for data transmission; transmitting information after handshaking across the locked link. And, in a third aspect, the technique includes transmitting a first training sequence from a first port and a second port; and synchronizing the receipt of the first training sequence at the first and second ports; transmitting a second training sequence from the first and second ports upon the synchronized receipt of the first training sequence at the first and second ports; and receiving the second training sequence transmitted by the first and second ports and the second and first ports, respectively, in synchrony.
630 Citations
29 Claims
-
1. A method for training a communication link that includes a plurality of data lanes coupling first and second ports in a computing system, the communication link is trained in order to correct for errors including data inversion, lane skewing and lane order errors that may be caused by the communication link, the method comprising:
-
locking the communication link by transmitting a first link training sequence from the first and second ports and synchronizing the receipt of the first link training sequence at the first and second ports; handshaking across the locked link to indicate readiness for data transmission by sending a first link training sequence that contains a lane identifier of at least one of the plurality of data lanes from the first port to the second port; transmitting information after handshaking across the locked link; and using the first link training sequence to correct for errors caused by the communication link. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for training a link between first and second ports in a computing system in order to correct for errors that may be caused by the links, the method comprising:
-
transmitting a first link training sequence of code groups from the first port and the second port, wherein the first port and the second port are configured to send and receive data on a plurality of data lanes, and the first link training sequence of code groups contains a lane identifier of at least one of the plurality of data lanes; synchronizing the receipt of the first link training sequence at the first and second ports; and transmitting a second link training sequence of code groups from the first and second ports upon the synchronized receipt of the first link training sequence at the first and second ports; and receiving the second link training sequence transmitted by the first and second ports and the second and first ports, respectively, in synchrony. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A method for training a link in a computing system having first and second ports each including a receiver and a transmitter in order to correct for errors that may be caused by the link, comprising:
-
configuring the receiver in the first port using a first link training sequence transmitted by the second port, wherein the first port is configured to send and receive data on a plurality of data lanes, and the first training sequence contains a lane identifier of at least one of the plurality of data lanes; transmitting a second link training sequence from the first port to the second port indicating the receiver in the first port is configured; and receiving the second link training sequence transmitted by the second port at the first port, the second link training sequence transmitted by the second port and received by the first port indicating that the receiver in the second port is configured. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29)
-
Specification