Link training method and device

By performing capability negotiation and storing training parameters in the ultra-high-definition transmission interface, the problem of large fluctuations in the main link building is solved, fast link training is achieved, and the speed of link building and user experience is improved.

CN119743640APending Publication Date: 2025-04-01HUAWEI TECH CO LTD
View PDF 0 Cites 5 Cited by

Patent Information

Application Number
CN202411550127.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-31
Publication Date
2025-04-01

AI Technical Summary

Technical Problem

During the main link building process of the ultra-high-definition transmission interface, due to factors such as equipment, wires, training strategies and environment, the construction of the chain consumes a lot of time and fluctuations, affecting the rapid service transmission and user experience.

Method used

By conducting capability negotiation with the second device, feature description information is obtained, and if link information containing the feature description information is stored, training parameters are extracted, fast training flag bits are enabled, link configuration request message is sent, and training parameters are configured to the link layer after receiving the response, and fast training of the link is initiated.

Benefits of technology

Link training through stored training parameters is highly likely to be successful in one go, reducing multiple interactions and parameter adjustments, significantly shortening the time-consuming process of link training, and improving link building speed and user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119743640A_ABST
    Figure CN119743640A_ABST
Patent Text Reader

Abstract

The invention provides a link training method and device, relates to the field of communication, and realizes rapid link training. The method comprises the following steps: a first device and a second device perform capability negotiation to obtain feature description information used for indicating features of a device system where the first device is located; if the first equipment stores the link information containing the feature description information, extracting training parameters in the link information; enabling a fast training flag bit in the link configuration request message, and sending the link configuration request message to a second device; and when a fast training response flag bit in a link configuration response message sent by the second equipment is received to be enabled, configuring the extracted training parameters to a link layer, and starting link training.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communications, and in particular to a link training method and device. Background Art

[0002] The successful establishment of the main link of the ultra-high-definition transmission interface is the basis for audio, video and data transmission. The main link trains the main link, determines the electrical parameters of the connection between the ports, and completes the establishment of the main link based on the negotiated parameters, and enters the service transmission state. That is, audio, video and data service transmission can only be completed after the link is successfully established.

[0003] In the high-speed link establishment of the interface, due to the influence of factors such as equipment, wire materials, training strategies and environment, the link establishment time will vary from more than ten milliseconds (ms) to seconds, with a large fluctuation range, which is extremely unfriendly to the fast transmission of services. The speed of link establishment directly affects the speed of starting audio, video and data transmission, and ultimately affects the user experience. Summary of the invention

[0004] The present application provides a link training method and device to achieve fast link training, thereby shortening the link establishment time, increasing the link establishment speed, and improving the user experience.

[0005] In order to achieve the above purpose, the embodiment of the present application adopts the following technical solution:

[0006] In a first aspect, a link training method is provided, which is applied to a first device. The method may include: performing capability negotiation with a second device to obtain feature description information indicating the characteristics of a device system in which the first device is located; if the first device stores link information containing the obtained feature description information, extracting training parameters from the link information; enabling a fast training flag in a link configuration request message, and sending a link configuration request message to the second device; and when receiving a link configuration response message sent by the second device with a fast training response flag enabled, configuring the extracted training parameters to the link layer to start link training.

[0007] The solution provided by this application first obtains feature description information through capability negotiation. If the device stores link information containing feature description information obtained through capability negotiation, it means that the device system where the link is located has not changed, and the training parameters in the link information are extracted to perform fast link training. Since the training parameters in the stored link information can ensure the success of link training in the previous link establishment process, and the device system has not changed, the link training using the stored training parameters is highly likely to succeed once, so there is no need to interact multiple times to try to change the parameter value, which greatly shortens the time consumption of link training.

[0008] In a possible implementation, the feature description information includes one or more of the following information: address information of the remote device, port identifier of the remote device, port identifier of the local device, channel rate information, channel quantity information, channel direction information, and cable information.

[0009] In another possible implementation, the training parameters include one or more of the following parameters: swing parameters, continuous time linear equalizer CTLE parameters, feedforward equalizer FFE parameters, and decision feedback equalizer DFE parameters.

[0010] In another possible implementation, the extracted training parameters are the parameters of the link successfully trained under the device system indicated by the feature description information obtained by capability negotiation, so as to ensure that the link training is successful once using the stored training parameters when the device system has not changed, thus shortening the time consumption of link training.

[0011] In another possible implementation, the method provided in the present application further includes: if the extracted training parameters are configured to the link layer, after the link training is started, the link training is successful, and the link establishment is completed.

[0012] In another possible implementation, the method provided in the present application further includes: if the extracted training parameters are configured to the link layer, after the link training is started, the link training fails, and a normal link training process is started.

[0013] In another possible implementation, the method provided by the present application further includes: after the link is successfully established for the first time, extracting feature description information and training parameters in the first successful link establishment process, and storing the feature description information and training parameters in the first successful link establishment process to the first device. After executing the successful link establishment process of the normal training process, extracting the feature description information and training parameters as a set of link information to ensure that when it is determined that the device system has not changed according to the feature description information, the stored training parameters are used to successfully perform link training once, thereby shortening the time consumption of link training.

[0014] In another possible implementation, the link information is stored in a non-volatile storage medium in the first device.

[0015] In a second aspect, a link training device is provided, which is deployed in a first device, and the device includes: a negotiation unit, an extraction unit, a sending unit, and a training unit.

[0016] The negotiation unit is used to perform capability negotiation with the second device to obtain feature description information, where the feature description information is used to indicate features of the device system where the first device is located.

[0017] The extraction unit is configured to extract the training parameters in the link information if the first device stores the link information including the feature description information obtained through capability negotiation.

[0018] The sending unit is used to enable the fast training flag in the link configuration request message and send the link configuration request message to the second device.

[0019] The training unit is used to configure the extracted training parameters to the link layer and start the link training when a fast training response flag is enabled in the link configuration response message sent by the second device.

[0020] It should be noted that the link training device provided in the second aspect is used to implement the link training method provided in the above-mentioned first aspect or any possible implementation method. Its specific implementation can refer to the first aspect or any possible implementation method of the first aspect, and will not be repeated here.

[0021] According to a third aspect, a computing device is provided, comprising a memory and at least one processor, wherein the memory is used to store a set of computer instructions; when the processor executes the set of computer instructions, the operations of the method described in the first aspect or any possible implementation method are performed.

[0022] In a fourth aspect, a chip is provided, comprising one or more interface circuits and one or more processors; the interface circuit is used to receive a signal from a memory of an electronic device and send the received signal to the processor, the signal comprising a computer instruction stored in the memory. When the processor executes the computer instruction, the electronic device executes the operation steps of the method described in the first aspect or any possible implementation manner.

[0023] In a fifth aspect, a computer-readable storage medium is provided, comprising: computer software instructions; when the computer software instructions are executed in a computer, the computer executes the operations of the method described in the first aspect or any possible implementation method.

[0024] In a sixth aspect, a computer program product, when running on a computer, enables the computer to execute the operating steps of the method described in the first aspect or any possible implementation method.

[0025] In a seventh aspect, a data transmission system is provided, which includes a data sending device and a data receiving device, the data sending device is used to execute the link training method described in the first aspect or any one of the above aspects, and the data receiving device and the data sending device establish a link through interaction.

[0026] The solutions provided in the third to seventh aspects are used to implement the method provided in the first aspect or any possible implementation method, and therefore can achieve the same beneficial effects as the first aspect or any possible implementation method, and will not be repeated here.

[0027] It should be noted that various possible implementation methods of any of the above aspects can be combined under the premise that the solutions are not contradictory. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] Figure 1 A schematic diagram of a process of establishing a link between devices in a data transmission system;

[0029] Figure 2 is a schematic diagram of the architecture of a data transmission system;

[0030] Figure 3 A schematic diagram of the structure of a data transmission system provided in an embodiment of the present application;

[0031] Figure 4 A schematic diagram of the structure of another data transmission system provided in an embodiment of the present application;

[0032] Figure 5 A schematic diagram of basic components of an electronic device provided in an embodiment of the present application;

[0033] Figure 6 A schematic diagram of transmission between interfaces provided in an embodiment of the present application;

[0034] Figure 7 A schematic diagram of the structure of a computing device provided in an embodiment of the present application;

[0035] Figure 8 A flowchart of a link training method provided in an embodiment of the present application;

[0036] Fig. 9 A flowchart of another link training method provided in an embodiment of the present application;

[0037] Fig.10 A flowchart of a method for establishing a link provided in an embodiment of the present application;

[0038] Fig.11 A schematic diagram of a configuration negotiation process provided in an embodiment of the present application;

[0039] Fig.12 A schematic diagram of a configuration startup process provided in an embodiment of the present application;

[0040] Fig.13 A schematic diagram of the structure of a link training device provided in an embodiment of the present application;

[0041] Fig.14 A schematic diagram of the structure of another link training device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0042] In the embodiments of the present application, in order to clearly describe the technical solutions of the embodiments of the present application, words such as "first" and "second" are used to distinguish between identical or similar items with substantially identical functions and effects. Those skilled in the art can understand that words such as "first" and "second" do not limit the quantity and execution order, and words such as "first" and "second" do not necessarily limit them to be different. There is no order of precedence or size between the technical features described by the "first" and "second".

[0043] In the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a concrete way for easy understanding.

[0044] In the embodiments of the present application, at least one can also be described as one or more, and multiple can be two, three, four or more, which is not limited in the present application.

[0045] In addition, the network architecture and scenarios described in the embodiments of the present application are intended to more clearly illustrate the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided in the embodiments of the present application. A person of ordinary skill in the art can appreciate that with the evolution of the network architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of the present application are also applicable to similar technical problems.

[0046] To facilitate understanding, the relevant terms involved in the embodiments of the present application are first explained.

[0047] Lane: refers to a circuit used to transmit signals. A single-ended channel consists of one line, and a high-speed differential channel consists of a pair of lines.

[0048] Link: It is used to transmit data signals or power supply, and is generally composed of one or more channels. A link is a collection of channels or a conductor line used for power supply.

[0049] Main Link: A point-to-point link consisting of one or more channels based on high-speed differential signals, used for the transmission of high-speed business data (also known as "high-speed data"), such as the transmission of high-speed data such as audio and video signals, third-party protocol data, etc. The main link can be a bidirectional link, that is, there are channels in different directions in the main link, or a unidirectional link, that is, the channels in the main link are in the same direction.

[0050] Sideband link (SL): A point-to-point link consisting of a transmit and a receive channel based on low-speed single-ended signals. It is used for the transmission of low-speed data, such as device management signals, port management signals, bandwidth management signals, and power management signals. It is also used for the transmission of control messages. The sideband link is a bidirectional link.

[0051] Transmitter Side / Receiver Side: The two sides of a link (usually containing multiple channels) are called the transmitter and receiver, and the data flow is from the transmitter to the receiver.

[0052] If the port main link only includes a unidirectional link, the main link of the port has only a transmitting end or a receiving end. If the port main link is a bidirectional link, the main link of the port has both a transmitting end and a receiving end.

[0053] Logical layer control frame (LLCF): a special code pattern used to implement link management functions such as link training and status update. In the present invention, LLCF is also referred to as CF, so LLCF_TS1 is equivalent to CF_TS1, and LLCF_TS2 is equivalent to CF_TS2.

[0054] Figure 1 The process of establishing a link between devices in a data transmission system is illustrated. The data transmission system may use a data transmission system with a high-speed data interface. The high-speed data interface may be a general multimedia interface (GMPI) or other, which is not limited in the embodiments of the present application. Figure 1 The illustrated data transmission system includes a device A and a device B, wherein the device A is a main downstream port (MDP) device, and the device B is a main upstream port (MUP) device.

[0055] Figure 1 The main link establishment between devices shown in the figure is divided into four parts, namely capability negotiation, link configuration, link training and training success.

[0056] Capability negotiation: Through the capability negotiation request and response messages, the port capability interaction is completed so that the devices at both ends can obtain the capabilities of the other end devices. In this process, the capabilities interacted are the capabilities related to link establishment, including but not limited to link mode, channel (Lane) rate, FFE capabilities at both ends, and Swing capabilities at both ends. At the same time, the end device that initiates the link establishment process completes the link establishment decision based on the results of the capability interaction and determines the capabilities supported by the devices at both ends. The main decision contents include: link mode, channel rate, FFE (feedforward equalizer) capability and Swing capability, etc., so as to facilitate subsequent link training according to the decision results.

[0057] Link configuration: The results of the decision-making process in the capability negotiation are configured in the devices at both ends through interaction. For example, the configuration of the link between the devices at both ends is completed through the "link configuration request message" and "link configuration response message".

[0058] Link training: Under the capabilities indicated by the above decision results, the devices at both ends interact and select a set of electrical parameters so that the data sent by the transmitter according to the capability parameters can be completely and accurately received by the receiver. During the link training process, due to the influence of factors such as the device signal output quality, the wire quality, the device's ability to receive signals, the training strategy, the external environment, etc., it may trigger the adjustment of one or more parameters of Swing, feed-forward equalizer (FFE), number of channels and channel direction, and perform multiple interactions to finally select a set of electrical parameters. Based on the selected electrical parameters, each channel in the main link performs clock recovery and locking, channel equalization, and channel locking. The link training process described here can be called a normal link training process, which will not be explained one by one in the subsequent content of this article. Among them:

[0059] Clock recovery and locking: The transmitter (TX channel) of each high-speed differential channel sends a control frame for clock locking in the training phase to the receiver (RX channel). The parameters selected by the transmitter (such as Swing parameters) support the receiver to complete clock locking.

[0060] Channel equalization: The transmitter of each high-speed differential channel sends a control frame used for channel parameter tuning calculation in the training phase to the receiver, selects appropriate equalization parameters (such as the transmitter selects appropriate FFE parameters), and improves the quality of the signal obtained by the receiver of each channel.

[0061] Channel locking: The transmitter of each high-speed differential channel sends a control frame to the receiver to confirm the synchronization status of the transmission and reception, completes the data boundary locking of each channel (such as being able to identify the start and end of the control frame), and then completes the transmission and reception synchronization.

[0062] Multi-channel alignment: The transmitter of each high-speed differential channel sends a control frame for marking the starting position of a new logic block to the receiver. After the receiver receives the control frame for marking the starting position of the new logic block, if the skew between the control frames for marking the starting position of the new logic block is less than the preset value, the receiver can receive data normally, and the sending link or the receiving link starts to receive high-speed service data and enters the high-speed link service transmission state (HS).

[0063] Training successful: After each channel in the main link completes clock recovery and locking, channel equalization, and channel locking, and the main link performs multi-channel alignment, link training is successful and the link between devices is established.

[0064] In the above link building process, from link configuration to successful link training, considering the best and worst cases, the initial calculation time range is 10ms to 2500ms, which is a very large span. Figure 1 From the schematic link building process, we can see that the stage with uncertain link building time is mainly the link training stage. If the time consumption of this part can be effectively reduced, it is crucial to improve the link building speed.

[0065] Figure 1 The schematic link establishment process can be applied to Figure 2 Schematic diagram of the data transmission system. Figure 2 As shown, the data transmission system includes a set-top box, cables and a television.

[0066] However, in the data transmission system, the environment of each device is not easy to change. Once built, the environment and application scenarios of the system and devices are relatively stable. Figure 2 The data transmission system shown is a very common equipment system in the living room. Once the system is set up, the environment and application scenarios in which it is located are relatively stable.

[0067] Based on this, the present application provides a link training method. After the link is successfully established, the feature description information describing the characteristics of the device system and the training parameters of the successful link training are stored as a set of link information. When the link is established again, the feature description information is first obtained through capability negotiation. If the link information containing the feature description information obtained through capability negotiation is stored in the device, it means that the device system where the link is located has not changed, and the training parameters in the link information are extracted to perform fast link training. Since the training parameters in the stored link information can ensure the success of link training in the previous link establishment process, and the device system has not changed, the link training using the stored training parameters is highly likely to succeed once, so there is no need to interact multiple times to try to change the parameter values, which greatly shortens the time consumption of link training.

[0068] The technical solution provided in the present application can be applied to a data transmission system including multiple data transmission devices, and the data transmission device can be a device, a chip applied to a device, or an interface device, etc. In the data transmission system, a data transmission device (for example, a data sending device) and a data transmission device (for example, a data receiving device) can be directly connected, or indirectly connected through a switching device such as a router, that is, the multiple data transmission devices can all be connected to the switching device. In the present application, data transmission can be performed between the multiple data transmission devices in a wired manner. In addition, when data transmission is performed between the multiple data transmission devices, the signal can be transmitted directly or through an interface device.

[0069] When the data transmission device is a chip in a device, the chips in the data transmission system can be interconnected by wire, and the chip can be a chip in the device, a chip in a docking station, or a chip in an adapter, etc. The docking station can be plugged with a high definition multimedia interface (HDMI), a display port (DP), a universal serial bus (USB), a Thunderbolt, etc.

[0070] Optionally, when the data transmission device is a chip, the chip may further include an interface module, that is, the present application may be applied to an interface module for interconnecting chips. The interface module may be understood as an intellectual property (IP) module integrated inside the chip. Alternatively, the interface module may also be sold separately as an IP module. For example, the chip may be a system on chip (SoC), a central processing unit (CPU), or a graphics processing unit (GPU), etc., and the interface module may be an interface module in the SoC, CPU, or GPU, etc. Optionally, the interface module may be a transmitting circuit and / or a receiving circuit.

[0071] The following uses the example that the data transmission system includes multiple devices to illustrate the structure of the data transmission device.

[0072] Figure 3A structural diagram of a data transmission system provided in an embodiment of the present application. The data transmission system includes a first device 310 and a second device 320, and the first device 310 and the second device 320 are connected in a wired manner, for example, by a cable. Among them, signals can be transmitted between the first device 310 and the second device 320, for example, transmission of audio and video data or transmission of charging signals, etc.

[0073] In an example, the first device 310 may be a set-top box, and the second device 320 may be a television. The set-top box and the television may be connected via a cable, and the set-top box may transmit audio and video data to the television via the cable.

[0074] In another example, the first device 310 is a display, and the second device 320 is another display. The two displays may be connected via a cable, and the display may transmit control information and / or audio and video data to the other display via the cable.

[0075] Optionally, the first device 310 may include interface A, and the second device 320 may include interface B. The connection between the first device 310 and the second device 320 may be specifically a connection between interface A of the first device 310 and interface B of the second device 320. For example, interface A of the first device 310 and interface B of the second device 320 are connected via a cable.

[0076] Figure 4 A schematic diagram of the structure of another data transmission system provided in an embodiment of the present application. The data transmission system includes multiple devices 410 and a router 420. The multiple devices 410 can be connected to the router 420 in a wired manner, for example, the multiple devices 410 can be connected to the router 420 via a cable. Among them, any two devices in the multiple devices 410 can transmit signals through the router 420, for example, to transmit audio and video data or charging signals.

[0077] In an example, the multiple devices 410 may include one or more displays 411 and a set-top box 412 . The set-top box 412 may transmit audio and video data to the display 411 through the router 420 .

[0078] Optionally, each of the multiple devices 410 may include an interface, the router 420 may include multiple interfaces, and the interface of each of the multiple devices 410 may be connected to one of the multiple interfaces of the router 420. For example, the multiple devices 410 include multiple displays, the multiple interfaces of the router 420 include the first interface to the third interface, the interface of one display is connected to the first interface of the router 420 via a cable, the interface of the set-top box is connected to the second interface of the router 420 via a cable, and the interface of another display is connected to the third interface of the router 420 via a cable.

[0079] The above-mentioned device in the system with data transmission function can be called a communication device. The communication device can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted. The communication device can also be deployed on the water surface (such as ships, etc.), and can also be deployed in the air (such as airplanes, balloons and satellites, etc.), and the communication device can be applied to different scenarios. Exemplarily, the communication device can include but is not limited to: mobile phones, tablet computers, laptops, PDAs, mobile Internet devices (mobile internet devices, MIDs), cameras, wearable devices, audio equipment, audio and video players, set-top boxes, game consoles, printers, mice, keyboards, vehicle-mounted devices (for example, devices on vehicles such as cars, bicycles, electric vehicles, airplanes, ships, trains and high-speed railways), virtual reality (virtual reality, VR) devices, augmented reality (augmented reality, AR) devices, wireless terminals in industrial control (industrial control), smart home devices, intelligent robots, workshop equipment, wireless terminals in smart cities (smart cities), or devices in smart homes (smarthomes), flight equipment, etc. Optionally, the signals transmitted between the above-mentioned communication devices may include but are not limited to: audio and video signals, radio frequency signals, Internet of Things data and charging signals, etc.

[0080] In the present application, the interface specifications used for signal transmission between devices in the data transmission system may include, but are not limited to: USB interface specifications, HDMI specifications, DP specifications, and high-speed serial computer expansion bus (peripheral component interconnect express, PCI-Express) interface specifications, etc. Accordingly, the interface may be HDMI, type-C interface, etc.

[0081] For example, in the above example, the interface connection method between the set-top box and the TV can be connected through a DP cable, and the interface standard followed is the DP interface specification, or the connection method can be connected through an HDMI cable, and the interface standard followed is the HDMI interface specification.

[0082] It can be understood that the interface specification used for signal transmission between the above-mentioned devices is only exemplary. In practical applications, the interface specification may also include other or any interface specifications that may appear in the future, such as a unified media interconnection (UMI) interface, a GPMI interface, etc. The embodiment of the present application does not impose specific restrictions on this.

[0083] In this application, when the above-mentioned device is an electronic device, such as Figure 5 The figure shows a schematic diagram of basic components of an electronic device. The electronic device includes an interface chip 500 (Uniform Multimedia Interconnection Interface), the interface chip 500 includes one or more adapters 501, a management control adapter 502, and one or more ports 503; or when the electronic device is a routing device, the interface chip 500 only includes one or more ports 503. Each of the one or more adapters 501 can be coupled to an external component of the interface chip 500. The management control adapter 502 can be coupled to a component used for management and control outside the interface chip 500. The port 503 can be coupled to a connector 504 of the electronic device, and the connector 504 is used to couple an external device of the electronic device. Among them, one or more adapters 501 can be a sending / receiving adapter. For example, when the adapter 501 is used for adapting audio and video formats, the adapter 501 can be an audio and video sending / receiving adapter. When the adapter 501 is used for third-party protocol adaptation, the adapter 501 can be a third-party protocol adapter.

[0084] The basic components of different electronic devices can be combined to form a variety of different types of devices. For example, the electronic device includes a source device including at least one downstream port and at least one video and audio transmission adapter, or includes at least one upstream port and a source device including an video and audio receiving adapter, or includes at least one upstream port, at least one video and audio receiving adapter and at least one traditional video and audio interface. The expansion dock device, or includes at least one downstream port and at least one upstream port, but no video and audio transmission adapter and video and audio receiving adapter, or a composite device with both upstream ports and downstream ports.

[0085] like Figure 6 The figure shows a link channel model provided by an embodiment of the present application. The link between devices may include a main link and an auxiliary link.

[0086] In a possible embodiment, the main link may include multiple channels, each of which may support unidirectional transmission; the auxiliary link may include two unidirectional channels in different directions. In other possible embodiments, the main link may include multiple channels, each of which may have different directions. Exemplarily, a main link may include multiple channels, for example, the number of the multiple channels may be 4 or 8. The more channels the main link includes, the faster the corresponding data transmission speed. Exemplarily, Figure 6 As shown, the main link may include n transmitting channels TX0-TXn and m receiving channels RX0-RXm, and the auxiliary link includes a transmitting channel SBTX and a receiving channel SBRX, where n and m are positive integers.

[0087] Furthermore, a power-bus link (PL) and a cable-information link (CL) may be included between devices. The cable-information link may be used to transmit cable information, such as the cable model and cable capability information. The power-bus link and the cable-information link are not shown in the figure.

[0088] Exemplarily, the main link mainly realizes the transmission of ultra-high-definition audio and video signals and high-speed data (such as USB3). The main link can support bidirectional transmission, including multiple differential channels (Lane) in each direction, each differential channel consists of 1 pair (2) of differential lines, and each channel only supports unidirectional transmission. Each differential line includes a transmitter TX and a receiver RX. In this application, TX refers to the main link transmitter by default, and RX refers to the main link receiver by default. The main link can also support unidirectional transmission. Each differential channel is a high-speed channel, and the supported rate is generally above 1Gbps, such as 2Gbps, 4Gbps, 8Gbps, 10Gbps, 12Gbps, 16Gbps, 20Gbps, 24Gbps, etc.

[0089] like Figure 6 In the link channel model shown, the high-speed main link of the device port includes a transmit link (the link at the transmit end of this port) for sending data to the other end, and a receive link (the link at the receive end of this port) for receiving data from the other end. The port transmit link (also known as the logical sublayer transmit link, TX_Link) includes all TX channels of this port, and the port receive link (also known as the logical sublayer receive link, RX_Link) includes all RX channels of this port.

[0090] The auxiliary link supports bidirectional transmission and consists of two single-ended channels in different directions. Each single-ended channel includes a line, and each line includes an auxiliary link transmitter (Sideband Link Transmitter, SLTX) and an auxiliary link receiver (Sideband Link Receiver, SLRX). The auxiliary link transmits low-speed data (such as control data, used for management and control between devices, such as device discovery, capability query, device configuration, device control, etc.) through a single-ended channel. Each single-ended channel is a low-speed channel, and the supported rate is generally less than 1Gbps, such as 12.5Mbps. Since the auxiliary link supports a relatively low rate and low power consumption, it can be in a normally open state.

[0091] The high-speed channel, high-speed differential channel, and differential channel described in this application have the same meaning, all referring to the high-speed channel of the main link; the low-speed channel, single-ended channel, and low-speed single-ended channel in this application have the same meaning, all referring to the low-speed channel of the auxiliary link. The subsequent content will not be repeated one by one.

[0092] It should be noted that the link establishment / link training described in this application refers to the establishment of a main link / link training of a main link.

[0093] The solution provided by the embodiments of the present application is described in detail below in conjunction with the accompanying drawings.

[0094] On the one hand, the present application embodiment provides a schematic diagram of the structure of a computing device 70. The computing device 70 can implement Figure 3 The functions of the first device 310 or the second device 320 illustrated in FIG.

[0095] like Figure 7 As shown, the computing device 70 may include a processor 7010, a bus 7020, a memory 7030, and a communication interface 7040. The processor 7010, the memory 7030, and the communication interface 7040 are connected via the bus 7020.

[0096] It should be understood that in this embodiment, the processor 7010 may be a central processing unit (CPU), and the processor 7010 may also be other general-purpose processors, digital signal processors (DSP), (application-specific integrated circuit, ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor, etc.

[0097] The processor 7010 may also be a graphics processing unit (GPU), a neural network processing unit (NPU), a microprocessor, an ASIC, or one or more integrated circuits for controlling the execution of the program of the present application.

[0098] The communication interface 7040 is used to implement communication between the computing device 70 and external devices or components.

[0099] The bus 7020 may include a path for transmitting information between the above components (such as the processor 7010 and the memory 7030). In addition to the data bus, the bus 7020 may also include a power bus, a control bus, and a status signal bus. However, for the sake of clarity, various buses are marked as bus 7020 in the figure. The bus 7020 may be a peripheral component interconnect express (PCIe) bus, or an extended industry standard architecture (EISA) bus, a unified bus (Ubus or UB), a computer express link (CXL), a cache coherent interconnect for accelerators (CCIX), etc. The bus 7020 can be divided into an address bus, a data bus, a control bus, etc.

[0100] As an example, computing device 70 may include multiple processors. The processor may be a multi-core (multi-CPU) processor. The processor herein may refer to one or more devices, circuits, and / or computing units for processing data (e.g., computer program instructions).

[0101] It is worth mentioning that Figure 7 In the example, the computing device 70 includes a processor 7010 and a memory 7030. Here, the processor 7010 and the memory 7030 are respectively used to indicate a type of device or equipment. In a specific embodiment, the number of each type of device or equipment can be determined according to business requirements.

[0102] The memory 7030 may be a volatile memory pool or a non-volatile memory pool, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable ROM (PROM), an erasable programmable ROM (EPROM), an electrically erasable programmable ROM (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).

[0103] Exemplarily, the processor 7010 can perform the following functions by running or executing the software programs and / or modules stored in the memory 7030:

[0104] Perform capability negotiation with the second device to obtain feature description information indicating the features of the device system; if link information containing the feature description information is stored in the computing device 70, extract the training parameters in the link information; enable the fast training flag in the link configuration request message, and send a link configuration request message to the second device; when the fast training response flag in the link configuration response message sent by the second device is enabled, configure the training parameters in the extracted link information to the link layer, and start training of the link.

[0105] On the other hand, an embodiment of the present application provides a link training method, which is used for training a link between devices in a data transmission system to establish a link. The method can be applied to a data transmission system including a first device and a second device. For example, the method can be applied to Figure 3 or Figure 4 In the illustrated data transmission system, the first device may be the above Figure 3 or Figure 4Any data transmission device in the illustrated data transmission system, the second device is Figure 3 or Figure 4 In the illustrated data transmission system, another data transmission device transmits data to the first device.

[0106] like Figure 8 As shown, the link training method provided in the embodiment of the present application may include:

[0107] S801: A first device performs capability negotiation with a second device to obtain feature description information indicating features of a device system in which the first device is located.

[0108] The first device may be a device initiating a link establishment process (or a link training process), or a device communicating with a device initiating a link establishment process.

[0109] For example, the link establishment process may be a link reestablishment process in scenarios such as power on / off, standby wake-up, etc. The link training process may be a link training phase in a link reestablishment process in scenarios such as power on / off, standby wake-up, etc.

[0110] Specifically, the feature description information can be used to describe the characteristics of the device system in which the first device is located. That is, the feature description information can be used to describe factors that affect link training, such as the environment and / or application scenario in which the first device and the second device are located. The specific content of the feature description information can be configured according to actual needs, and the embodiments of the present application are not limited to this.

[0111] Exemplarily, the feature description information includes one or more of the following information: address information of the remote device, port identifier of the remote device, port identifier of the local device, channel rate information, channel quantity information, channel direction information, and cable information.

[0112] The local device is the device that extracts the feature description information, and the remote device is the device that establishes a link with the device that extracts the feature description information. The address information is used to describe the address of the device, and the content and form of the address information can be configured according to actual needs, which is not limited in the embodiments of the present application.

[0113] The channel direction information is used to indicate a sending direction (TX direction) or a receiving direction (RX direction).

[0114] The cable information is the identification information of the cable between the devices, that is, the cable information can uniquely identify the cable. The content of the cable information can be configured according to actual needs, and the embodiment of the present application is not limited to this. Exemplarily, the cable information can include at least one of the following information: the identification code of the cable and the cable serial number.

[0115] For example, the identification code of the cable may be a vendor identity (VID) and / or a product identity (PDI).

[0116] Accordingly, the second device may obtain feature description information indicating features of the device system in which the second device is located in S801.

[0117] S802: If the first device stores link information including feature description information obtained through capability negotiation, the first device extracts training parameters from the link information.

[0118] After the first device and the second device successfully perform normal link training to establish a link, the first device can extract feature description information and training parameters of successful training as a set of link information and store them locally on the first device.

[0119] It can be understood that, in the first device, a set of link information includes feature description information and training parameters, which indicates that under the device system characteristics indicated by the feature description information, the training parameters enable link training to succeed.

[0120] Specifically, S802 determines whether the first device stores link information including the feature description information obtained through capability negotiation in S801. It can also be understood that S802 determines whether the feature description information in the current link training process has changed compared to the feature description information in the historical successful link establishment process of the link. That is, it determines whether the device system where the first device is located has changed.

[0121] Exemplarily, the link information may be stored in a non-volatile memory (NVM) in the first device.

[0122] Further, if the first device does not store link information including feature description information obtained through capability negotiation, a normal link training process is executed.

[0123] If it is determined in S802 that the first device stores link information containing the feature description information obtained through capability negotiation in S801, it means that when executing the process initiated by S801, the device system where the first device and the second device are located has not changed compared to when the feature description information in the link information was previously stored. In this case, the training parameters in the stored link information can be used to perform fast link training.

[0124] It should be understood that the training parameters extracted in S802 are parameters of the link between the first device and the second device that are successfully trained under the device system indicated by the feature description information obtained in S801.

[0125] In a possible implementation, the training parameters may be parameters adjusted through interaction during link training. The embodiment of the present application does not limit the specific content of the training parameters.

[0126] Exemplarily, the training parameters may include one or more of the following parameters: swing parameters, continuous-time linear equalizer (CTLE) parameters, feed-forward equalizer (FFE) parameters, and decision-feedback equalizer (DFE) parameters.

[0127] Among them, FFE, CTLE and DFE are commonly used signal equalization technologies in high-speed signal transmission. FFE is commonly used at the transmitting end of high-speed signals, and CTLE and DEF are commonly used at the receiving end of high-speed signals. It should be understood that FFE parameters, CTLE parameters and DFE parameters are respectively used to indicate parameters related to signal equalization. Of course, the names of various training parameters can be configured according to actual needs, and as long as the functions are similar, they all belong to the training parameters described in the embodiments of this application.

[0128] Furthermore, the content of the training parameters extracted by the first device is related to the direction of the channel. Exemplarily, for the TX direction channel of the first device, the training parameters extracted by the first device in S802 include swing parameters and FFE parameters. For the RX direction channel of the first device, the training parameters extracted by the first device in S802 include CTLE parameters and DFE parameters. For a bidirectional link between the first device and the second device (which can be used as the TX direction channel and RX direction channel of the first device), the training parameters extracted by the first device in S802 may include swing parameters, FFE parameters, CTLE parameters, and DFE parameters.

[0129] Correspondingly, in S802, if the second device stores link information, and the link information includes feature description information acquired by the second device during capability negotiation, the second device extracts training parameters from the link information.

[0130] Further, the content of the training parameters extracted by the second device is related to the direction of the channel. Exemplarily, for the TX direction channel of the second device, the training parameters extracted by the second device in S802 include swing parameters and FFE parameters. For the RX direction channel of the second device, the training parameters extracted by the second device in S802 include CTLE parameters and DFE parameters. For the bidirectional link between the second device and the first device, the training parameters extracted by the second device in S802 may include swing parameters, FFE parameters, CTLE parameters, and DFE parameters.

[0131] S803: The first device enables the fast training flag in the link configuration request message, and sends the link configuration request message to the second device.

[0132] After completing the operation of S802, the first device performs configuration negotiation with the second device by performing the operation of S803 to determine whether link fast training can be performed according to the training parameters extracted in S802.

[0133] On the premise that it supports (or accepts) fast training, the second device enables the fast training response flag in the link configuration response message and sends it to the first device.

[0134] Among them, the second device supports (or accepts) fast training, which may include: the second device is configured with the fast training function, or the link information stored in the second device contains feature description information obtained by the second device performing capability negotiation in S801, that is, the second device extracts training parameters by executing S801 and S802.

[0135] Further, when the first device receives the fast training response flag enabled in the link configuration response message sent by the second device, it completes the configuration negotiation, determines that the link fast training can be performed according to the training parameters extracted in S802, and executes the operation of S804.

[0136] Exemplarily, a fast training flag FT (Fast Training) may be configured in a link configuration request message, which indicates that fast training is performed (i.e., link training is performed using the extracted training parameters) when enabled, and indicates that normal link training is performed when disabled. A fast training response flag FTA (Fast Training Ack) may be configured in a link configuration response message, which indicates that fast training is performed (i.e., link training is performed using the extracted training parameters) when enabled, and indicates that normal link training is performed when disabled.

[0137] Among them, the flag bit is enabled by setting the flag bit to 1 (in binary, it can be represented by 1b), and the flag bit is disabled by setting the flag bit to 0 (in binary, it can be represented by 0b).

[0138] Furthermore, after the first device completes operation S803, if the fast training response flag is not enabled in the link configuration response message sent by the second device when the first device receives it, it indicates that the first device and the second device have not completed the configuration negotiation (or the configuration negotiation has failed), then the fast training process ends and the normal link training process is executed.

[0139] S804: When receiving a link configuration response message sent by the second device and the fast training response flag is enabled, the first device configures the training parameters to the link layer and starts link training.

[0140] In one possible implementation, the second device also synchronously executes the operations of S801 and S802. In S803, the second device enables the fast training response flag in the link configuration response message and sends it to the first device. Then, in S804, the second device configures the training parameters extracted in S802 to the link layer to start link training.

[0141] Correspondingly, if the second device extracts the training parameters by executing S801 and S802, and the second device enables the fast training response flag in the link configuration response message and sends it to the first device, then the second device configures the extracted training parameters to the link layer and starts link training.

[0142] Through the operation of S804, the fast training of the link is started, and the training parameters extracted in S802 are used to perform clock recovery and locking, channel equalization, channel locking, and multi-channel alignment on each channel in the main link. Since the training parameters extracted in S802 are the training parameters for successful link training under the feature description information obtained in S801, and S802 also determines that the feature description information has not changed, each channel in the main link in S804 can complete clock recovery and locking, channel equalization, channel locking, and multi-channel alignment, and the link training is successful.

[0143] Through the solution provided by the present application, when the feature description parameters describing the information affecting link training are stored, the stored training parameters are extracted and the extracted training parameters are directly configured to the link layer for link training, thereby omitting the process of multiple interactive adjustments of the training parameters, shortening the training time and improving the training speed.

[0144] Further, if in S804 the first device configures the extracted training parameters to the link layer to start link training, and the link training is successful, then the link establishment is complete.

[0145] If the link training fails in S804, the normal link training process is performed.

[0146] In actual application, the device initiating the link establishment process is used as the first device, and performs the operations from S801 to S804 to train the channel of the link in which the first device is the transmitting end. At the same time, the device at the other end of the link to be trained is used as the second device, and performs the operations of the second device described in S801 to S804 to respond to the link training. In this way, the training of each channel in the link in the enabled direction is completed, and the link is established.

[0147] As mentioned above, the training parameters extracted in S802 are the training parameters that enable the link to be successfully trained in the process of successfully establishing a link by executing a normal training process for the link. Therefore, after successfully establishing a link by executing a normal training process for the link, the first device and / or the second device extracts the feature description information and the training parameters of the successful training as a set of link information and stores them locally. In the process of re-establishing the link, the solution provided by the present application (the process of S801 to S804 above) can be executed to perform fast link training.

[0148] Exemplarily, the successful link establishment process of executing the normal training process on the link may be the first successful link establishment process of the link. Alternatively, the successful link establishment process of executing the normal training process on the link may be the successful link establishment process of executing the normal link training most recently on the link.

[0149] For example, Fig. 9 As shown, the link training method provided in the embodiment of the present application may also include the process of S805.

[0150] S805: After the link is successfully established for the first time, the first device extracts feature description information and training parameters in the first successful link establishment process, and stores the feature description information and training parameters in the first successful link establishment process to the first device.

[0151] Accordingly, after the link is successfully established for the first time, the second device can extract the feature description information and training parameters in the first successful link establishment process, and store the feature description information and training parameters in the first successful link establishment process to the second device. Among them, the training parameters extracted by one device are related to the channel direction.

[0152] Exemplarily, for the TX direction channel of the device (first device or second device), the training parameters extracted by the device in S805 include swing parameters and FFE parameters. For the RX direction channel of the device, the training parameters extracted by the device in S805 include CTLE parameters and DFE parameters. For a bidirectional link between devices, the training parameters extracted by the device in S805 include: swing parameters, FFE parameters, CTLE parameters and DFE parameters.

[0153] Of course, S805 may also be replaced by: after successfully establishing a link through normal link training, the first device and / or the second device extracts feature description information in the link establishment process and training parameters of successful training and stores them locally.

[0154] The solution provided in this application is described in detail below through specific examples.

[0155] Fig.10 The flowchart of a method for establishing a link provided in an embodiment of the present application is illustrated.

[0156] The method of establishing a link includes two parts, such as Fig.10 The first part is that the device system (including the first device and the second device) completes the first link establishment (performing the normal training process in the process). After the link is successfully established, the feature description information and the training parameters of the successful training are extracted and stored in the non-volatile storage medium, such as Fig.10 The second part is when the device system triggers the re-establishment of the link due to power-off, standby wake-up, etc., it extracts the training parameters according to the feature description information, completes the negotiation between the two parties and starts the fast training, such as Fig.10 The left path in .

[0157] Among them, in the first part, after the device system successfully completes the first link establishment, the device needs to extract the feature description (Feature Descritpion) information and training parameters (Link Training Param), and store it as a set of link information in a certain format on the non-volatile storage medium on the system. The device can complete the storage of one or more sets of link information according to its own needs. The transmitting end and / or receiving end of the channel can extract the feature description information (FeatureDescritpion) and training parameters (Link Training Param) for storage. The stored training parameters are slightly different and related to the channel direction.

[0158] Exemplarily, a set of link information extracted and stored by the device includes feature description information (FeatureDescritpion) and training parameters (Link Training Param), as shown in Table 1.

[0159] Table 1

[0160]

[0161] Table 1 uses 4 channels and bidirectional channels as an example, which does not constitute a specific limitation.

[0162] Fig.10 As shown in the right path in the figure, during the first link establishment, normal link training is performed between devices to establish the link. After the link establishment process begins, the devices at both ends of the link first negotiate capabilities. If the feature description information extracted from the capability negotiation result does not exist locally (the first link establishment, no link information is stored locally), the configuration negotiation is completed through the link configuration request message (FT flag position 0) and the link configuration response message (FTA flag position 0), and normal training is started until the training is successful. After the first link establishment is completed, the feature description (Feature Description) information and the training parameters of the successful training are extracted and stored in the local non-volatile storage medium.

[0163] In the second part, when the device system triggers re-establishing the link due to power-off, standby wake-up and other scenarios, the fast link establishment process will be started, which can be divided into three steps: parameter extraction, configuration negotiation and configuration startup. The following are described respectively:

[0164] 1) Parameter extraction

[0165] Finish Fig.10 After the "capability negotiation" in the chain construction process, the feature description information of the device system is extracted from the capability negotiation result, including: remote device address, remote device port ID, local device port ID, channel rate, number of channels, direction of each channel and cable information. The feature description information is shown in Table 2.

[0166] Table 2

[0167]

[0168]

[0169] The number of channels in Table 2 is 4 for illustrative purposes only and does not constitute a specific limitation.

[0170] Then, based on the feature description information extracted from the capability negotiation result, search in the storage information of the local device (such as flash) to confirm whether the stored link information contains the feature description information extracted from the capability negotiation result. If yes, extract the training parameters in the link information and follow the fast training process; if the stored link information does not contain the feature description information extracted from the capability negotiation result, follow the normal training process. The training parameter reference is shown in Table 3.

[0171] Table 3

[0172]

[0173] Table 3 uses bidirectional channel directions as an example, which does not constitute a specific limitation.

[0174] 2) Configuration negotiation

[0175] Device A sets the Fast Training (FT) flag in the "Link Configuration Request Message" to 1 (enabled) and sends it to Device B. After receiving the message (Link Configuration Request Message), Device B sets the Fast Training Ack (FTA) flag in the "Link Configuration Response Message" to 1 (enabled) and replies. The devices at both ends of the link complete configuration negotiation. Fig.11 The figure shows the configuration negotiation process between device A and device B.

[0176] If the Fast Training (FT) flag in the "Link Configuration Request Message" is not 1 (not enabled), or the Fast Training Ack (FTA) flag in the "Link Configuration Response Message" is not 1 (not enabled), the normal training process is started. After the training is successful and the link is successfully established, the feature description information (Feature Descritpion) and the training parameters of the successful training are extracted and stored in the local non-volatile storage medium.

[0177] Exemplarily, the link configuration request message and the link configuration response message are management adapter messages, and their message formats can refer to the format of the management adapter message. The management adapter has the functions of discovering, managing and configuring the unified multimedia interconnection interface network. The management adapter encapsulates different types of messages into corresponding types of management adapter messages and sends them to the transport layer. The embodiment of the present application does not limit the format and content of the link configuration request message and the link configuration response message. The Fast Training (FT) flag and the Fast Training Ack (FTA) flag can be set in the message data part of the message, and the specific position is not limited.

[0178] 3)Configure startup

[0179] When device A receives the Fast Training Ack (FTA) as 1 in the "Link Configuration Response Message", it configures the extracted training parameters to the link layer and starts training.

[0180] Fig.12 The following diagram shows the process of configuring startup. Fig.12 As shown, in the parameter extraction phase, the training parameters in the link information containing the feature description information are extracted according to the feature description information. In the configuration start phase, the training parameters are configured to the link layer to start the training, and after the training is successful, the process ends.

[0181] The above mainly introduces the solution provided by the embodiment of the present invention from the perspective of the working principle of the device. It can be understood that in order to realize the above functions, the device, etc. includes hardware structures and / or software modules corresponding to the execution of each function. It should be easy for those skilled in the art to realize that, in combination with the units and algorithm steps of each example described in the embodiments disclosed in this article, the present invention can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present invention.

[0182] The embodiment of the present invention can divide the functional modules of the device etc. according to the above method example. For example, each functional module can be divided according to each function, or two or more functions can be integrated into one processing module. The above integrated module can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of modules in the embodiment of the present invention is schematic and is only a logical function division. There may be other division methods in actual implementation.

[0183] In the case of dividing each functional module into corresponding functional modules, Fig.13 A link training device 130 provided in an embodiment of the present application is illustrated, and the link training device 130 is used to implement the function of the first device or device A in the above method embodiment. Fig.13 As shown, the link training device 130 may include: a negotiation unit 1301, an extraction unit 1302, a sending unit 1303 and a training unit 1304. The negotiation unit 1301 is used to perform Figure 8 or Fig. 9 Process S801 in; extraction unit 1302 is used to perform Figure 8 or Fig. 9 The sending unit 1303 is used to execute the process S802; Figure 8 or Fig. 9 Process S803 in the training unit 1304 is used to perform Figure 8 or Fig. 9 In the process S804. All relevant contents of each step involved in the above method embodiment can be referred to the functional description of the corresponding functional module, and will not be repeated here.

[0184] Furthermore, the link training device 130 may also include a link establishment unit, which is used to complete the link establishment if the link training is successful after the training unit 1304 configures the training parameters to the link layer and starts the link training.

[0185] In the case of an integrated unit, such as Fig.14 Another link training device 140 provided in an embodiment of the present application is shown, which is used to implement the functions of the first device or the second device in the above-mentioned embodiment. The link training device 140 includes a processing module 1401 and a communication module 1402. The processing module 1401 is used to control and manage the actions of the link training device 140, and the communication module 1402 is used to communicate with other devices. For example, the processing module 1401 is used to control the communication module 1402 to interact with other devices. The link training device 140 may also include a storage module 1403 for storing program code and data of the link training device 140.

[0186] Among them, the processing module 1401 can be Figure 7The processor 7010 in the physical structure of the computing device 70 shown can be a processor or a controller. For example, it can be a CPU, a general-purpose processor, a DSP, an ASIC, an FPGA or other programmable logic device, a transistor logic device, a hardware component or any combination thereof. It can implement or execute various exemplary logic blocks, modules and circuits described in conjunction with the disclosure of this application. The processing module 1401 can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, etc. The communication module 1402 can be Figure 7 The communication interface 7040 in the physical structure of the computing device 70 shown in the figure, the communication module 1402 can be a communication port, or can be a transceiver, a transceiver circuit or a communication interface, etc. Alternatively, the above-mentioned communication interface can realize communication with other devices through the above-mentioned elements with transceiver functions. The above-mentioned elements with transceiver functions can be realized by antennas and / or radio frequency devices. The storage module 1403 can be Figure 7 Memory 7030 in the physical structure of computing device 70 is shown.

[0187] As mentioned above, the link training device 130 and the link training device 140 provided in the embodiments of the present application can be used to implement the functions of the first device or the second device in the above-mentioned embodiments of the present application. For the convenience of explanation, only the parts related to the embodiments of the present application are shown. For specific technical details not disclosed, please refer to the embodiments of the present application.

[0188] As another form of this embodiment, a computer-readable storage medium is provided, on which instructions are stored, and when the instructions are executed, the link training method in the above method embodiment is executed.

[0189] As another form of this embodiment, a computer program product containing instructions is provided. When the computer program product is run on a computer, the computer executes the link training method in the above method embodiment.

[0190] As another form of this embodiment, a chip is provided, including one or more interface circuits and one or more processors; the interface circuit is used to receive a signal from a memory of an electronic device and send the received signal to the processor, the signal including a computer instruction stored in the memory. When the processor executes the computer instruction, the electronic device executes the operation steps of the method described in the first aspect or any possible implementation manner.

[0191] The embodiment of the present application further provides a chip system, which includes a processor for implementing the technical method of the embodiment of the present application. In one possible design, the chip system also includes a memory for storing the necessary program instructions and / or data of the embodiment of the present application. In one possible design, the chip system also includes a memory for the processor to call the application code stored in the memory. The chip system can be composed of one or more chips, and can also include chips and other discrete devices, which is not specifically limited in the embodiment of the present application.

[0192] Those skilled in the art should easily realize that, in combination with the units and method steps of each example described in the embodiments disclosed in this application, this application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application scenario and design constraints of the technical solution.

[0193] The above embodiments can be implemented in whole or in part by software, hardware, firmware or any other combination. When implemented by software, the above embodiments can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded or executed on a computer, the process or function described in the embodiment of the present application of the present invention is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, computer, server or data center to another website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or data center containing one or more available media sets. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium. The semiconductor medium can be an SSD.

[0194] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A link training method, characterized in that: Applied to a first device, the method includes: Performing capability negotiation with the second device to obtain feature description information, where the feature description information is used to indicate features of a device system where the first device is located; If the first device stores link information including the feature description information, extracting training parameters from the link information; Enable the fast training flag in the link configuration request message, and send the link configuration request message to the second device; When the fast training response flag is enabled in the link configuration response message sent by the second device, the training parameters are configured to the link layer to start the training of the link.

2. The method according to claim 1, characterized in that The feature description information includes one or more of the following information: address information of the remote device, port identification of the remote device, port identification of the local device, channel rate information, channel quantity information, channel direction information, and cable information.

3. The method according to claim 1 or 2, characterized in that: The training parameters include one or more of the following parameters: swing parameters, continuous time linear equalizer CTLE parameters, feedforward equalizer FFE parameters, and decision feedback equalizer DFE parameters.

4. The method according to any one of claims 1 to 3, characterized in that: The training parameters are parameters of the link that are successfully trained under the device system indicated by the feature description information.

5. The method according to any one of claims 1 to 4, characterized in that: The method further comprises: If the training parameters are configured to the link layer and the training of the link is started, the link training is successful and the link establishment is completed.

6. The method according to any one of claims 1 to 5, characterized in that: The method further comprises: After the link is successfully established for the first time, feature description information and training parameters in the first successful link establishment process are extracted, and the feature description information and training parameters in the first successful link establishment process are stored in the first device.

7. The method according to any one of claims 1 to 6, characterized in that: The link information is stored in a non-volatile storage medium in the first device.

8. A link training device, characterized in that: Deployed on a first device, the apparatus comprises: a negotiation unit, configured to perform capability negotiation with a second device and obtain feature description information, wherein the feature description information is used to indicate features of a device system in which the first device is located; an extraction unit, configured to extract training parameters from the link information if the first device stores the link information including the feature description information; A sending unit, configured to enable a fast training flag in a link configuration request message, and send the link configuration request message to the second device; The training unit is used to configure the training parameters to the link layer and start the training of the link when a fast training response flag is enabled in the link configuration response message sent by the second device.

9. The device according to claim 8, characterized in that The feature description information includes one or more of the following information: address information of the remote device, port identification of the remote device, port identification of the local device, channel rate information, channel quantity information, channel direction information, and cable information.

10. The device according to claim 8 or 9, characterized in that The training parameters include one or more of the following parameters: swing parameters, continuous time linear equalizer CTLE parameters, feedforward equalizer FFE parameters, and decision feedback equalizer DFE parameters.

11. The device according to any one of claims 8 to 10, characterized in that: The training parameters are parameters of the link that are successfully trained under the device system indicated by the feature description information.

12. The device according to any one of claims 8 to 11, characterized in that: The device also includes: The link establishment unit is used to configure the training parameters to the link layer, start the training of the link, and the link training is successful, and the link establishment is completed.

13. The device according to any one of claims 8 to 12, characterized in that: The device also includes: The processing unit is used to extract the feature description information and training parameters in the first successful link establishment process after the link is successfully established for the first time, and store the feature description information and training parameters in the first successful link establishment process to the first device.

14. The device according to any one of claims 8 to 13, characterized in that: The link information is stored in a non-volatile storage medium in the first device.

15. A computing device, characterized in that: The computing device includes a memory and at least one processor, wherein the memory is used to store a set of computer instructions; when the processor executes the set of computer instructions, the operation steps of the method described in any one of claims 1 to 7 are performed.

16. A chip, characterized in that: It comprises one or more interface circuits and one or more processors; the interface circuit is used to receive a signal from a memory of an electronic device and send the signal to the processor, the signal comprising a computer instruction stored in the memory; when the processor executes the computer instruction, the electronic device performs the operation of the method described in any one of claims 1 to 7.

17. A computer-readable storage medium, characterized in that: include: Computer software instructions; when the computer software instructions are executed in a computer, the computer executes the operation steps of the method described in any one of claims 1 to 7.

18. A computer program product, characterized in that The computer program product comprises a software program, and when the software program is executed by a computer or a processor, the computer or the processor is enabled to perform the operation steps of the method according to any one of claims 1 to 7.

Citation Information

Cited By

  • Data transmission method and device, electronic equipment, program product and medium

    CN120067022A

  • A data transmission method, device, electronic device, program product and medium

    CN120067022B

  • PCIe link training method, PCIe link training system and PCIe link communication system

    CN120358141A

  • A PCIe link training method, a training system and a communication system

    CN120358141B

  • Link training method and apparatus

    WO2026091562A1