Link training method, device, electronic device and computer-readable storage medium

The configuration information of the user setting algorithm is obtained and stored through customized interfaces, and the link training steps are dynamically adjusted, which solves the problem of limited application scope of traditional link training methods, and realizes high-speed serial link training that adapts to different scenarios, and ensures that the link works in the optimal state.

CN115643138BActive Publication Date: 2025-04-15SUZHOU CENTEC COMM CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211311798.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-10-25
Publication Date
2025-04-15
Estimated Expiration
2042-10-25

AI Technical Summary

Technical Problem

The scope of application of traditional link training methods is limited, and the fixed steps cannot adapt to changes in different scenarios, and it is difficult to adapt to the implementation methods of different manufacturers, different media or materials.

Method used

Through a customized interface, multiple configuration information of the user setting algorithm are obtained and stored, including eye diagram measurement objects, total number of stages, parameter adjustment steps and step contents, parameter adjustment steps are initiated to the sending equalizer in the order of configuration information, and parameter adjustment steps for the next parameter adjustment are determined based on the current value of the eye diagram measurement object at the receiving end.

Benefits of technology

High-speed serial link training suitable for different manufacturers, different media or materials is realized to ensure that the link works in the optimal state, and to improve the problem that existing link training algorithms are difficult to adapt to different scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115643138B_ABST
    Figure CN115643138B_ABST
Patent Text Reader

Abstract

The embodiments of the present invention provide a link training method, an apparatus, an electronic device and a computer-readable storage medium, which relate to the field of communications. The link training method has wider compatibility. The method of applying the first device includes: obtaining and storing multiple configuration information of a user-set algorithm for training a high-speed serial link through a customized interface, thereby initiating parameter adjustment to the transmitting end equalizer of the second device in sequence according to the order of each stage and the order of the parameter adjustment steps, so as to optimize the eye diagram measurement object of the receiving end of the first device, realize the training steps of the user dynamically configuring the high-speed serial link training algorithm, improve the problem that the existing link training algorithm is difficult to adapt to different scenarios, and at the same time, enable the trained high-speed serial link to work in the optimal state.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communications, and in particular to a link training method, device, electronic equipment and computer-readable storage medium. Background Art

[0002] Link training refers to the process in which the Ethernet port in the Ethernet link automatically adjusts the equalizer parameters of the sending end according to the status of the receiving end by sending training frames with corresponding content. Link training is used to improve Ethernet link performance and reduce bit errors.

[0003] The traditional link training method is to target ports of different rates (for example, 25GBASE-CR, 25GBASE-KR, 40GBASE-KR4, 100GBASE-CR4, and 100GBASE-KR4). The manufacturer provides a set of fixed parameter adjustment steps, and users adjust the parameters according to the fixed steps provided by the manufacturer during training. During the parameter adjustment process, there is no need to respond to real-time status changes.

[0004] However, the scope of application of this method is very limited. The fixed steps cannot adapt to changes in the scene. It all depends on the operation of the equalizer at the receiving end to ensure the bit error rate. Only when it is connected with equipment from the same manufacturer can good results be achieved. It is difficult to adapt to the implementation methods of different manufacturers, different media or materials. Summary of the invention

[0005] The purpose of the present invention includes, for example, providing a link training method, device, electronic device and computer-readable storage medium, which can be applicable to the training of high-speed serial links of different manufacturers, different media or materials, and produce good training effects.

[0006] In order to achieve the above purpose, the technical solution adopted by the embodiment of the present invention is as follows:

[0007] In a first aspect, an embodiment of the present invention provides a link training method, which is applied to a first device, wherein the first device is connected to a second device through a high-speed cable to form a high-speed serial link, and the first device further includes a customized interface, and the method includes:

[0008] Acquire and store, through the custom interface, a plurality of configuration information of a user-set algorithm for training the high-speed serial link; wherein the plurality of configuration information includes an eye diagram measurement object, a total number of stages, parameter adjustment steps included in each stage, a total number of parameter adjustment steps, and a step content of each parameter adjustment step;

[0009] In accordance with the order of each of the stages and the order of the parameter adjustment steps, parameter adjustment is initiated to the transmitter equalizer of the second device in turn according to the step content of each parameter adjustment step, and after each parameter adjustment is completed by the transmitter equalizer, the current value of the eye diagram measurement object of the receiver of the first device is measured, and the parameter adjustment step for the next parameter adjustment is determined according to the current value, so that the final parameters of the transmitter equalizer are optimized to optimize the eye diagram measurement object of the receiver of the first device.

[0010] Furthermore, the step of acquiring and storing, through the custom interface, a plurality of configuration information of a user-set algorithm for training the high-speed serial link comprises:

[0011] In case a user accesses the customization interface, displaying an algorithm customization interface;

[0012] A plurality of configuration information of a user-defined algorithm for training the high-speed serial link input by a user on the algorithm customization interface is received, and each of the configuration information is stored in a corresponding memory space.

[0013] Further, the step of initiating parameter adjustment to the transmitter equalizer of the second device in sequence according to the order of each of the stages and the order of the parameter adjustment steps and according to the step content of each of the parameter adjustment steps, and measuring the current value of the eye diagram measurement object of the receiver of the first device after the transmitter equalizer completes the parameter adjustment each time, and determining the parameter adjustment step for the next step of parameter adjustment according to the current value, includes:

[0014] Reading the eye diagram measurement object and the total number of steps from each of the memory spaces as global information, initializing both the current execution step and the current execution stage, and taking the first parameter adjustment step as the target step;

[0015] Reading the step content of the target step from each of the memory spaces, determining whether the current execution stage is consistent with the stage to which the target step belongs, and if not, updating the current execution stage to the stage to which the target step belongs, performing eye diagram measurement on the receiving end of the first device to obtain a current value of the eye diagram measurement object, and recording the current value as an optimal value;

[0016] Assembling a training frame according to the step content of the target step, and sending the training frame to the second device through the sending end of the first device, so as to prompt the second device to adjust the parameters of its own sending end equalizer according to the training frame;

[0017] Determine whether the content of the step includes information representing eye diagram comparison, and if so, after receiving the information sent by the second device representing the completion of parameter adjustment, perform eye diagram measurement on the receiving end of the first device to obtain the measurement value of the eye diagram measurement object;

[0018] When the measured value is greater than or equal to the optimal value, taking the measured value as the optimal value, and taking the next step of the target step as the next target step;

[0019] The value of the currently executed step is increased by one to determine whether the currently executed step is equal to the total number of steps. If so, the training ends; otherwise, the process returns to the step of reading the step content of the target step from each memory space.

[0020] Furthermore, the method further comprises:

[0021] If the current execution stage is consistent with the stage to which the target step belongs, the step of assembling a training frame according to the step content of the target step and sending the training frame to the second device through the sending end of the first device is performed.

[0022] Furthermore, the step of assembling a training frame according to the step content of the target step includes:

[0023] Assembling various parameter values ​​in the step content of the target step into a training frame according to a preset format;

[0024] The method further comprises:

[0025] If the measured value is less than the optimal value, assembling the inverted parameter values ​​into a training frame, and sending the training frame to the second device through the sending end of the first device to roll back the target step;

[0026] The first parameter adjustment step of the next stage of the target step is taken as the next target step.

[0027] Furthermore, the method further comprises:

[0028] If the step content does not include information representing eye diagram comparison, the step of taking the next step of the target step as the next target step is executed.

[0029] Furthermore, the step of acquiring and storing, through the custom interface, a plurality of configuration information of a user-set algorithm for training the high-speed serial link comprises:

[0030] Receiving, through the custom interface, a configuration file of a user-set algorithm for training the high-speed serial link, and parsing the configuration file to obtain a plurality of configuration information;

[0031] Each of the configuration information is stored in the corresponding memory space.

[0032] In a second aspect, an embodiment of the present invention provides a link training device, which is applied to a first device, wherein the first device is connected to a second device via a high-speed cable to form a high-speed serial link, the first device further includes a customized interface, and the link training device includes an algorithm customization module and a link training module;

[0033] The algorithm customization module is used to obtain and store multiple configuration information of the user-set algorithm for training the high-speed serial link through the customization interface; wherein the multiple configuration information includes an eye diagram measurement object, a total number of stages, parameter adjustment steps included in each stage, a total number of parameter adjustment steps, and a step content of each parameter adjustment step;

[0034] The link training module is used to initiate parameter adjustment to the transmitter equalizer of the second device in sequence according to the order of each of the stages and the order of the parameter adjustment steps, according to the step content of each of the parameter adjustment steps, and after each time the transmitter equalizer completes the parameter adjustment, measure the current value of the eye diagram measurement object of the receiver of the first device, and determine the parameter adjustment step for the next parameter adjustment according to the current value, so that the final parameters of the transmitter equalizer are optimized to make the eye diagram measurement object of the receiver of the first device optimal.

[0035] In a third aspect, an embodiment of the present invention provides an electronic device, including a processor and a memory, wherein the memory stores a computer program executable by the processor, and the processor can execute the computer program to implement the link training method as described in the first aspect.

[0036] In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the link training method as described in the first aspect.

[0037] The link training method, device, electronic device and computer-readable storage medium provided in the embodiments of the present invention obtain and store multiple configuration information of a user-set algorithm for training a high-speed serial link between a first device and a second device through a customized interface of a first device, that is, a user can change the training steps of the high-speed serial link training algorithm according to the network status or actual needs, and then the first device can initiate parameter adjustment to the transmitter equalizer of the second device in sequence according to the order of each stage in the configuration information and the order of the parameter adjustment steps, so that the final parameters of the transmitter equalizer reach the optimal eye diagram measurement object of the receiver signal of the first device, provide a link training method with wider compatibility, and improve the problem that the existing link training algorithm is difficult to adapt to different scenarios. At the same time, it can make the trained high-speed serial link work in the optimal state.

[0038] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, preferred embodiments are given below and described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0039] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.

[0040] Figure 1 This is one of the format diagrams of the training frame provided in the embodiment of the present invention.

[0041] Figure 2 The second schematic diagram of the format of the training frame provided in the embodiment of the present invention.

[0042] Figure 3 The third schematic diagram of the format of the training frame provided in the embodiment of the present invention.

[0043] Figure 4 Schematic diagram of the structure of unidirectional link training specified in the standard.

[0044] Figure 5 Schematic diagram of the structure of the two-way link training specified in the standard.

[0045] Figure 6 A block diagram of a link training system provided by an embodiment of the present invention.

[0046] Figure 7 This is a flowchart of a link training method provided by an embodiment of the present invention.

[0047] Figure 8 for Figure 7One of the flowchart diagrams of some sub-steps of step S13.

[0048] Fig. 9 for Figure 7 FIG. 2 is a flow chart of some sub-steps of step S13.

[0049] Fig.10 The second flowchart of the link training method provided by the embodiment of the present invention.

[0050] Fig.11 A block diagram of a link training device provided by an embodiment of the present invention.

[0051] Fig.12 A block diagram of an electronic device provided by an embodiment of the present invention.

[0052] Reference numerals: 100 - link training system; 110 - first device; 120 - second device; 130 - link training apparatus; 140 - algorithm customization module; 150 - link training module; 160 - electronic device. DETAILED DESCRIPTION

[0053] The following will be combined with the accompanying drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Generally, the components of the embodiments of the present invention described and shown in the drawings here can be arranged and designed in various different configurations.

[0054] Therefore, the following detailed description of the embodiments of the present invention provided in the accompanying drawings is not intended to limit the scope of the invention claimed for protection, but merely represents selected embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without making creative work are within the scope of protection of the present invention.

[0055] It should be noted that relational terms such as "first" and "second" are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.

[0056] At present, there are two main traditional link training methods. One is that for ports of different rates (for example, 25GBASE-CR, 25GBASE-KR, 40GBASE-KR4, 100GBASE-CR4 and 100GBASE-KR4), the manufacturer provides a set of fixed parameter adjustment steps, and the user adjusts the parameters according to the fixed steps provided by the manufacturer during training, and there is no need to respond to real-time status changes during the parameter adjustment process. The other is that during the training process, the receiving end eye height is used as an indicator, and a large number of coefficient update processes (i.e., one-step parameter adjustment process) are used to traverse the transmitter equalizer parameters of the other end within a certain range to find the position with the largest receiving end eye height, and finally adjust back to that position step by step.

[0057] The scope of application of the first link training method mentioned above is very limited. The fixed steps cannot adapt to changes in the scene. It depends entirely on the operation of the receiving end equalizer to ensure the bit error rate. Only when it is connected with equipment from the same manufacturer can good results be achieved. It is difficult to adapt to the implementation methods of different manufacturers, different media or materials.

[0058] The second link training method mentioned above has two main defects. The first is that it is difficult to determine the traversal interval of the parameters, and the traversal interval is difficult to adapt to the docking of different devices. The second is that the time overhead of parameter traversal is too large. If the traversal interval is relaxed, the training time is very likely to exceed the maximum time limit specified by the standard. If the traversal interval is shortened, it is difficult to adapt to different scenarios.

[0059] Before describing the link training method provided by the embodiment of the present invention, the specific method of link training is first introduced. Taking end A and end B as an example, it is assumed that there are two 10G BASE-KR ports at end A and end B, which are interconnected through a high-speed cable (Direct Attach Cable, DAC) to form a high-speed serial link. Link training is a bidirectional process, including a process initiated by end A to instruct end B to adjust parameters (A->B), and a process initiated by end B to instruct end A to adjust parameters (B->A). The start and end processes of A->B and B->A are independent of each other, and can be performed simultaneously or slightly staggered within a cycle (for example, 500ms). However, only when both bidirectional trainings are completed, is it considered that the link training is finally completed.

[0060] like Figure 1 As shown in FIG. 1 , the training frame format of link training is shown. The training frame includes four parts, of which the coefficient update and status report parts are used for parameter adjustment.

[0061] The specific definition of Coefficient update is as follows Figure 2 As shown in the figure, Coefficient update is mainly used to indicate what parameter adjustment action the B-side device performs. Bits 0 to 1, 2 to 3, and 4 to 5 represent the parameters of the three transmitting-side equalizers, C(–1), C(0), and C(+1), respectively, whether they are increased (01), decreased (10), or unchanged (00). The increase or decrease here can only be adjusted by adding 1 or subtracting 1. If the other end needs to add 10, 10 increases are required. Bit 12 indicates that the regulated end directly adjusts the three parameters to the "initial" state. Bit 13 indicates that the regulated end directly adjusts the three parameters to the "preset" state. The other bits are meaningless.

[0062] The specific definition of Status report is as follows Figure 3 As shown in the figure, the Status report mainly reflects the parameter adjustment of the B end and feeds back to the A end. Bits 0 to 1, 2 to 3, and 4 to 5 represent the parameters of the three transmitter equalizers, C(–1), C(0), and C(+1), respectively. After one adjustment, whether they reach the maximum (11), minimum (10), normal range (01), or unadjusted (00). These are the bits that the B end needs to reply to the A end after the action. The special bit is bit 15, which is set by the A end, indicating that the A end believes that the link has been trained to the ideal state and ends this training. The other reserved bits are meaningless.

[0063] like Figure 4 The figure shows the message interaction process of a training from A to B in the standard. The rounded box is a step of parameter adjustment. In actual application, a training includes many steps of parameter adjustment, and the end is indicated by sending receiver ready = 1. When both ends send receiver ready = 1, it means that the training of both directions is over, which also means that the link training is completed. Figure 5 , which is the interactive process of a single link training step in the standard. When using this training method for link training, how the A end determines the training parameters for each step, its measurement and calculation criteria are closely related to the private implementation methods of each manufacturer, and the robustness and performance of the training algorithm directly affect key indicators such as the packet loss rate of the physical layer link.

[0064] Based on the above considerations, an embodiment of the present invention provides a link training method, which does not need to consider the traversal range of parameters, can be applicable to the training of high-speed serial links in scenarios such as different manufacturers, different media or materials, and can ensure that the trained high-speed serial link works in the optimal state to a certain extent.

[0065] The link training method provided by the embodiment of the present invention can be applied to Figure 6In the link training system 100 shown, the link training system 100 includes a first device 110 and a second device 120. The first device 110 is connected to the second device 120 via a high-speed cable to form a high-speed serial link. In addition, the first device 110 and the second device 120 may both include a customized interface.

[0066] The first device 110 and the second device 120 may both be network devices, terminal devices, computer devices, and the like.

[0067] The customized interface may be located at a continuous physical address of the random-access memory (RAM) of the switching chip of the first device 110 or the second device 120. The central processing unit (CPU) of the first device 110 or the second device 120 may read and write to the RAM through the PCIE interface, and may also access the PMD module embedded in the switching chip.

[0068] The memory space of the continuous physical address corresponding to the customized interface is used to store multiple configuration information of the training algorithm set by the user, and the multiple configuration information includes the eye diagram measurement object, the total number of stages, the parameter adjustment steps included in each stage, the total number of steps in the parameter adjustment step, and the step content of each parameter adjustment step.

[0069] The step content of the parameter adjustment step may include the parameter adjustment values ​​of various parameters of the transmitter equalizer, the stage to which the parameter adjustment step belongs, and a comparison bit. The comparison bit is used to indicate whether the parameter adjustment step compares the value of the eye diagram measurement object.

[0070] In one implementation, the continuous physical address corresponding to the customized interface may be as shown in Table 1, and the continuous physical address includes: the address of the memory space storing the eye diagram measurement object, the address of the memory space storing the total number of stages, the address of the memory space storing the total number of steps, and the address of the memory space storing the step content of each parameter adjustment step. The memory space corresponding to each address storing the step content is at least 32 bits.

[0071] Table 1

[0072]

[0073]

[0074] As can be seen from Table 1, the step content mainly reflects the parameter adjustment content. Bits 0 to 1 represent the adjustment action of the transmitter equalizer parameter C(-1), 0b00-no adjustment, 0b01-add 1, 0b10-subtract 1, and the rest are illegal values. Bits 2 to 3 represent the adjustment action of the transmitter equalizer parameter C(0), 0b00-no adjustment, 0b01-add 1, 0b10-subtract 1, and the rest are illegal values. Bits 4 to 5 represent the adjustment action of the transmitter equalizer parameter C(+1), 0b00-no adjustment, 0b01-add 1, 0b10-subtract 1, and the rest are illegal values. Bits 6 to 11 are reserved bits, fixed to 0, and other values ​​are illegal values. Bit 12 is the "initial" state (INIT) flag bit, 0b0-do not send INIT, 0b1-send INIT. The 13th bit is the "preset" state (PRESET) flag bit, 0b0-do not send PRESET, 0b1-send PRESET. The 14th and 15th bits are reserved bits, fixed to 0, and other values ​​are illegal values. The 16th to 20th bits are the number of the stage to which the current parameter adjustment step belongs, ranging from 0 to 31. The 21st bit indicates whether to compare the eye diagram measurement value, 0b0-do not compare, 0b1-compare.

[0075] The above-mentioned first device 110 and second device 120 can both adopt the link training method provided in the embodiment of the present invention to complete the training of the high-speed serial link between the first device 110 and the second device 120, that is, the first device 110 can adopt the link training method provided in the embodiment of the present invention to complete the unidirectional link training of the first device 110->second device 120 initiated by the first device 110, and the second device 120 can adopt the link training method provided in the embodiment of the present invention to complete the unidirectional link training of the second device 120->first device 110 initiated by the second device 120.

[0076] In one embodiment, referring to Figure 7 The link training method provided in the embodiment of the present invention may include the following steps. In this embodiment, the link training method is applied to Figure 1 The first device 110 in FIG. 1 is used as an example.

[0077] S11, acquiring and storing, through a customization interface, a plurality of configuration information of a user-set algorithm for training a high-speed serial link.

[0078] The multiple configuration information includes an eye diagram measurement object, a total number of stages, parameter adjustment steps included in each stage, a total number of parameter adjustment steps, and step contents of each parameter adjustment step.

[0079] The user can design a suitable link training algorithm according to the network status. For example, the total number of parameter adjustment steps, the total number of stages, and the parameter adjustment values ​​can be dynamically changed based on the standard provisions. The link training algorithm can be converted into multiple configuration information by accessing the customized interface of the first device 110 in accordance with the format in the above Table 1, and the corresponding configuration information can be written into the corresponding memory space.

[0080] It should be understood that any link training algorithm can be converted into multiple configuration information and then stored in the memory space corresponding to the customized interface.

[0081] S13, according to the order of each stage and the order of the parameter adjustment steps, according to the step content of each parameter adjustment step, parameter adjustment is initiated to the transmitter equalizer of the second device in turn, and after each parameter adjustment of the transmitter equalizer is completed, the current value of the eye diagram measurement object of the receiver of the first device is measured, and the parameter adjustment step for the next parameter adjustment is determined according to the current value, so that the final parameters of the transmitter equalizer are achieved to optimize the eye diagram measurement object of the receiver of the first device.

[0082] In the above-mentioned link training method, the first device obtains and stores multiple configuration information of the user-set algorithm for training the high-speed serial link between the first device and the second device through its own customized interface. Then, the first device can initiate parameter adjustment to the transmitter equalizer of the second device in sequence according to the order of each stage in the configuration information and the order of the parameter adjustment steps, so that the final parameters of the transmitter equalizer reach the optimal eye diagram measurement object of the receiving end signal of the first device, that is, the signal is optimal, and the high-speed serial link between the first device and the second device is trained by the user-set algorithm, which provides a link training method with wider compatibility and improves the problem that the existing link training algorithm is difficult to adapt to different scenarios. At the same time, it can make the trained high-speed serial link work in the optimal state.

[0083] The above steps S11-S13 are merely a unidirectional training process initiated by the first device to instruct the transmitting-end equalizer of the second device to adjust parameters. The second device executes the above steps S11-S13 to perform a unidirectional training process initiated by the second device to instruct the transmitting-end equalizer of the first device to adjust parameters. When both unidirectional training processes are completed, the training of the high-speed serial link between the first device and the second device can be completed. At this time, the high-speed serial link can operate in the optimal state.

[0084] The method of obtaining multiple configuration information of the user-set algorithm can be flexibly set, for example, the user can input them one by one, or can extract them uniformly.

[0085] In one embodiment, the above step S11 can be implemented as follows: when a user accesses the customization interface, an algorithm customization interface is displayed; multiple configuration information of a user-set algorithm for training a high-speed serial link input by the user on the algorithm customization interface is received, and each configuration information is stored in the corresponding memory space.

[0086] The algorithm customization interface may include an eye diagram measurement object input box, a stage total input box, a parameter adjustment step total input box, and a step content input box for each parameter adjustment step. Since the 16th to 20th bits of the step content already contain the stage number to which the step belongs, the algorithm customization interface may not include an input box for inputting the stage to which each parameter adjustment step belongs.

[0087] The user can enter corresponding content in the input box corresponding to the algorithm customization interface. For example, in the eye diagram measurement object input box, any one of eye height, eye width, and eye height*eye width can be entered. When eye height is entered, the eye diagram measurement object is eye height. The first device 110 stores the content in each input box into the corresponding memory space to complete the dynamic configuration of the link training algorithm (i.e., the user-set algorithm).

[0088] In another embodiment, the above step S11 can also be implemented as: receiving a configuration file of a user-set algorithm for training a high-speed serial link through a customized interface, and parsing the configuration file to obtain multiple configuration information; storing each configuration information into its corresponding memory space.

[0089] Through the above method, multiple configuration information of the algorithm set by the user can be obtained without manual input by the user.

[0090] In order for the high-speed serial link between the first device 110 and the second device 120 to work in an optimal state after the training is completed, in one embodiment, refer to Figure 8 , the above step S13 can be implemented through the following steps.

[0091] S131, read the eye diagram measurement object and the total number of steps from each memory space as global information, initialize the current execution step and the current execution stage, and use the first parameter adjustment step as the target step.

[0092] S132, reading the step content of the target step from each memory space.

[0093] S133, determine whether the current execution stage is consistent with the stage to which the target step belongs. If not, execute step S134, and if so, execute step S135.

[0094] S134, updating the current execution phase to the phase to which the target step belongs, performing eye diagram measurement on the receiving end of the first device to obtain a current value of the eye diagram measurement object, and recording the current value as the optimal value.

[0095] S135, assembling a training frame according to the step content of the target step, and sending the training frame to the second device through the sending end of the first device, so as to prompt the second device to adjust the parameters of its own sending end equalizer according to the training frame.

[0096] In one embodiment, assembling a training frame according to the step content of the target step can be further implemented as follows: assembling various parameter values ​​in the step content of the target step into a training frame according to a preset format. Figure 1 The training frame format in .

[0097] After receiving the training frame, the second device 120 adjusts the parameters of its own transmitter equalizer according to the various parameter values ​​in the training frame. For example, if the 0th to 1st bits in the training frame are 0b01, the 2nd to 3rd bits are 0b10, and the 4th to 5th bits are 0b00, the second device 120 adds one to the original value of the parameter C(-1) of its own transmitter equalizer, subtracts one from the original value of the parameter C(0) of the transmitter equalizer, and maintains the original value of the parameter C(+1) of the transmitter equalizer. After the parameter adjustment is completed, the second device 120 feeds back information indicating the completion of the parameter adjustment to the first device 110.

[0098] S136, determine whether the step content includes information representing eye diagram comparison. If yes, execute step S137, if no, execute the step of "taking the next step of the target step as the next target step" in S139.

[0099] S137, after receiving the information sent by the second device to indicate that the parameter adjustment is completed, perform eye diagram measurement on the receiving end of the first device to obtain the measurement value of the eye diagram measurement object.

[0100] S138, determine whether the measured value is greater than or equal to the optimal value. If yes, execute step S139.

[0101] S139, taking the measured value as the optimal value, and taking the next step of the target step as the next target step.

[0102] S1310, add 1 to the value of the current execution step to determine whether the current execution step is equal to the total number of steps. If yes, the training ends; if no, return to step S132.

[0103] It should be understood that in the above steps S131-S1310, the "current execution step" and "current execution stage" are global information, which maintain the smooth execution of the parameter adjustment steps in sequence. And in the process of looping the above S132-S1310, the significance of step S133 is to determine whether a new stage has been entered. If so, the eye diagram is measured on the receiving end of the first device to obtain the current value of the eye diagram measurement object (the current value is affected by the parameter adjustment of the parameter adjustment step in the previous stage) as the performance comparison benchmark for this new stage.

[0104] Through the above steps S131-S1310, during the parameter adjustment process, not only the effects of the parameter adjustment between steps are compared, but also the effects of the parameter adjustment between stages are compared, so that to a certain extent, the final parameters of the transmitter equalizer of the second device can ensure the optimal signal of the receiver of the first device.

[0105] Further, in order to ensure that the final parameters of the second device optimize the eye diagram measurement object of the receiving end of the first device after all the parameter adjustment steps are executed, refer to Fig. 9 The link training method provided by the embodiment of the present invention also includes steps S1311 and S1312. If it is determined in step S138 that the measured value is less than the optimal value, step S1311 is executed.

[0106] S1311, assemble the inverted parameter values ​​into a training frame, and send the training frame to the second device through the sending end of the first device to roll back the target step.

[0107] It should be noted that, rolling back the target step refers to adjusting the parameters of the transmitter equalizer of the second device 120 back to the parameter values ​​before executing the target step. For example, the target step is the fifth parameter adjustment step. After the parameters of the transmitter equalizer of the second device 120 are adjusted according to the training frame assembled into the parameter values ​​of the target step, the measured value of the eye diagram measurement object at the receiving end of the first device 110 is measured to be less than the optimal value (indicating that the signal is deteriorating, that is, the state of the high-speed serial link is deteriorating), then the second device 120 adjusts the parameters of its own transmitter equalizer back to the parameters before executing the fifth parameter adjustment step.

[0108] When negating, the negated data can be assembled according to the method in Table 2 below.

[0109] Table 2

[0110]

[0111] It can be seen from Table 2 that if the C(-1) parameter adjustment value of the target step is 0b01, that is, one is added to the original value of C(-1), and the inverse value is 0b10, that is, one is subtracted from the original value of C(-1), the transmitting end equalizer parameter of the second device 120 can be adjusted back to the value before executing the target step, that is, the original value.

[0112] S1312, taking the first parameter adjustment step of the next stage of the target step as the next target step. After executing step S1312, return to execute step S1310.

[0113] Through the above steps S1311 and S1312, for the parameter adjustment step in which the working state of the high-speed serial link decreases after the parameter adjustment, the parameters of the transmitter equalizer are reset by means of inverting and falling back, so as to skip the parameter adjustment of the stage to which the parameter adjustment step belongs, that is, skip the stage with poor effect after the parameter adjustment, so that the transmitter equalizer parameters of the second device 120 can be adjusted to the working state that optimizes the receiving end signal of the first device 110.

[0114] In one embodiment, the above step S13 and its sub-steps (i.e., steps S131-S1312) can be implemented as follows: Fig.10 The program flow shown is implemented. Among them, CONTENT represents the step content of the target step, the current step content read, the length is 32 bits, and the specific explanation of the step track can be seen in Table 1 above. STEP_NUM represents the total number of stages, MEAS_PARA represents the eye diagram measurement object, CUR_STAGE represents the number of the current step, and CONTENT[20:16] represents the content of the 16th to 20th bits in the step content.

[0115] SKIP indicates whether to directly jump to the parameter adjustment step of the next stage without performing the interaction and post-processing of the current step. 0 means not to skip, and 1 means to skip. The situation that needs to be skipped is that the measurement finds that the signal of this stage (that is, the value of the eye diagram measurement object at the receiving end of the first device 110) is getting worse and worse. After rolling back the current step, all parameter adjustment steps of the current stage will be skipped until the first parameter adjustment step of the next stage arrives.

[0116] For example, Table 3 below is a complete set of training steps. If the signal deteriorates after tuning step 3, C(-1)+1(increase1) is sent once to rollback, and then tuning steps 4 and 5 are skipped, and tuning step 6 is started directly. For the steps in stage 1, since no measurement is required, they will be fully executed without rollback regardless of how the signal changes.

[0117] Table 3

[0118]

[0119] CUR_STEP indicates the current step number, ranging from 0 to STEP_NUM. CUR_EYE indicates the measurement value after the interaction of the current parameter adjustment step is completed, and MAX_EYE indicates the best measurement value at the stage of the current parameter adjustment step.

[0120] Fig.10 The workflow in can be divided into several parts, namely initialization, reading the content of the parameter adjustment step and interactive pre-processing, interaction and post-processing, and completing training.

[0121] Initialization mainly completes the reading of global information and the initialization of temporary variables. Temporary variables are variables that cannot be modified by users and are maintained by the internal logic of the software.

[0122] Read the content of the parameter adjustment step and the pre-interaction processing. First, read the content of the current step into CONTENT. Then, through the judgment of "CUR_STAGE == CONTENT[20:16]", compare CUR_STAGE with the stage of the step to be executed to determine whether a new stage has been entered. "No" means that the two are different and it is a new stage. "Yes" means that the two are the same and it is not a new stage. If it is a new stage, update the CUR_STAGE variable, and then perform a measurement of the eye diagram measurement object of the receiving end of the first device 110 as a performance comparison benchmark for this stage, and finally clear the SKIP flag. Otherwise, there is no additional operation.

[0123] Interaction and post-processing, first take out CONTENT[15:0] and Figure 1 The Coefficient update field in is exactly the same, so it is directly used to form a training frame and perform an interaction process (i.e., the training frame is sent to the second device 120 so that the second device 120 adjusts the parameters of the equalizer at the transmitting end). Then, CONTENT

[21] is determined, that is, whether to compare the eye diagrams. If not, there is no post-processing after the adjustment. If compared, post-processing is required.

[0124] The post-processing logic is to make another measurement. If the signal is better than the currently saved maximum value (the measured value of the eye diagram measurement object at the receiving end of the first device 110 is greater than or equal to the optimal value, CUR_EYE>=MAX_EYE), the optimal value is updated; otherwise, the reverse adjustment of the current step is immediately initiated, it is rolled back, and SKIP is set to 1.

[0125] Inverse adjustment is a "reverse" operation based on the content of the current step. The inverted data is assembled according to the method in Table 2, and then the training frames are assembled for interaction.

[0126] No user intervention is required to complete the training. As long as the previous process is completed normally, it will be automatically executed. The first device 110 automatically fills the 15th bit of the Status report field with 1, forms a training frame and interacts to indicate that the training is completed.

[0127] The link training method provided in the embodiment of the present invention allows network configuration personnel (i.e., users) to configure multiple configuration information of the link training algorithm through a customized interface, that is, to customize the training steps of the Ethernet link to a certain extent, so that the network configuration personnel can flexibly change the training strategy according to the existing network conditions, and train the link based on multiple configuration information to ensure that the link works in the optimal state. It can solve the problem that a single algorithm is difficult to adapt to different scenarios, thereby providing a link training method with wider compatibility.

[0128] Based on the concept of the link training method provided by the embodiment of the present invention, refer to Fig.11 The embodiment of the present invention further provides a link training device 130, which can be applied to Figure 1 In the first device 110 , the link training apparatus 130 may include an algorithm customization module 140 and a link training module 150 .

[0129] The algorithm customization module 140 is used to obtain and store multiple configuration information of the user-set algorithm for training the high-speed serial link through the customization interface. The multiple configuration information includes the eye diagram measurement object, the total number of stages, the parameter adjustment steps included in each stage, the total number of steps of the parameter adjustment step, and the step content of each parameter adjustment step.

[0130] The link training module 150 is used to initiate parameter adjustment to the transmitter equalizer of the second device in sequence according to the order of each stage and the order of the parameter adjustment steps, according to the step content of each parameter adjustment step, and after each parameter adjustment is completed by the transmitter equalizer, measure the current value of the eye diagram measurement object of the receiver of the first device, and determine the parameter adjustment step for the next parameter adjustment according to the current value, so that the final parameters of the transmitter equalizer are optimized to make the eye diagram measurement object of the receiver of the first device optimal.

[0131] In the above-mentioned link training device 130, through the synergistic effect of the algorithm customization module 140 and the link training module 150, the user can change the training steps of the high-speed serial link training algorithm according to the network status or actual needs, so as to provide a link training method with wider compatibility, improve the problem that the existing link training algorithm is difficult to adapt to different scenarios, and at the same time, enable the trained high-speed serial link to work in the optimal state.

[0132] For the specific definition of the link training device 130, please refer to the definition of the link training method above, which will not be repeated here. Each module in the above-mentioned link training device 130 can be implemented in whole or in part by software, hardware and a combination thereof. The above-mentioned modules can be embedded in or independent of the processor in the electronic device in the form of hardware, or can be stored in the memory of the electronic device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.

[0133] In one embodiment, an electronic device 160 is provided. The electronic device 160 may be a terminal, and its internal structure diagram may be as follows: Fig.12 As shown. The electronic device 160 includes a processor, a memory, a communication interface, a display screen and an input device connected via a system bus. Among them, the processor of the electronic device 160 is used to provide computing and control capabilities. The memory of the electronic device 160 includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and computer program in the non-volatile storage medium. The communication interface of the electronic device 160 is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be implemented through WIFI, an operator network, near field communication (NFC) or other technologies. When the computer program is executed by the processor, the link training method improved as described in the above embodiment is implemented.

[0134] Fig.12 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present invention, and does not constitute a limitation on the electronic device 160 to which the solution of the present invention is applied. The specific electronic device 160 may include Fig.12 More or fewer components may be shown, or certain components may be combined, or may have a different arrangement of components.

[0135] In one embodiment, the link training device 130 provided by the present invention can be implemented in the form of a computer program. The computer program can be used in Fig.12 The electronic device 160 is shown as running. The memory of the electronic device 160 can store various program modules constituting the link training device 130, for example, Fig.11 The algorithm customization module 140 and the link training module 150 are shown. The computer program composed of various program modules enables the processor to execute the steps of the link training method described in this specification.

[0136] For example, Fig.12 The electronic device 160 shown may be Fig.11 The algorithm customization module 140 in the link training device 130 shown executes step S11. The electronic device 160 may execute step S13 through the link training module 150.

[0137] In one embodiment, an electronic device 160 is provided, including a memory and a processor, the memory storing a computer program, and the processor implementing the following steps when executing the computer program: obtaining and storing multiple configuration information of a user-set algorithm for training a high-speed serial link through a customized interface; initiating parameter adjustment to a transmitter equalizer of a second device in sequence according to the order of each stage and the order of parameter adjustment steps and according to the step content of each parameter adjustment step, and measuring a current value of an eye diagram measurement object of a receiver of a first device after the transmitter equalizer completes the parameter adjustment each time, and determining a parameter adjustment step for the next parameter adjustment according to the current value, so that the final parameters of the transmitter equalizer reach the optimal eye diagram measurement object of the receiver of the first device.

[0138] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented: through a customized interface, multiple configuration information of a user-set algorithm for training a high-speed serial link is obtained and stored; in accordance with the order of each stage and the order of the parameter adjustment steps, parameter adjustment is initiated to the transmitter equalizer of the second device in sequence according to the step content of each parameter adjustment step, and after each parameter adjustment is completed by the transmitter equalizer, the current value of the eye diagram measurement object of the receiver of the first device is measured, and the parameter adjustment step for the next parameter adjustment is determined according to the current value, so that the final parameters of the transmitter equalizer are achieved to optimize the eye diagram measurement object of the receiver of the first device.

[0139] In several embodiments provided by the present invention, it should be understood that the disclosed devices and methods can also be implemented in other ways. The device embodiments described above are merely schematic. For example, the flowcharts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the devices, methods and computer program products according to multiple embodiments of the present invention. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of a code, and the module, a program segment or a part of a code contains one or more executable instructions for implementing the specified logical functions. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.

[0140] In addition, the functional modules in the various embodiments of the present invention may be integrated together to form an independent part, or each module may exist independently, or two or more modules may be integrated to form an independent part.

[0141] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in each embodiment of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0142] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. A link training method, characterized in that: Applied to a first device, the first device is connected to a second device via a high-speed cable to form a high-speed serial link, the first device further includes a customized interface, and the method includes: Acquire and store, through the custom interface, a plurality of configuration information of a user-set algorithm for training the high-speed serial link; wherein the plurality of configuration information includes an eye diagram measurement object, a total number of stages, parameter adjustment steps included in each stage, a total number of parameter adjustment steps, and a step content of each parameter adjustment step; In accordance with the order of each of the stages and the order of the parameter adjustment steps, according to the step content of each of the parameter adjustment steps, parameter adjustment is initiated to the transmitter equalizer of the second device in sequence, and after the transmitter equalizer completes the parameter adjustment each time, the current value of the eye diagram measurement object of the receiver of the first device is measured, and the parameter adjustment step for the next parameter adjustment is determined according to the current value, so that the final parameters of the transmitter equalizer are optimized to optimize the eye diagram measurement object of the receiver of the first device; The step content of the parameter adjustment step reflects the parameter adjustment content, including the parameter adjustment values ​​of various parameters of the transmitting end equalizer, the stage to which the parameter adjustment step belongs, and the comparison bit; the comparison bit is used to indicate whether the parameter adjustment step compares the value of the eye diagram measurement object.

2. The link training method according to claim 1, characterized in that: The step of acquiring and storing, through the custom interface, a plurality of configuration information of a user-set algorithm for training the high-speed serial link comprises: In case a user accesses the customization interface, displaying an algorithm customization interface; A plurality of configuration information of a user-defined algorithm for training the high-speed serial link input by a user on the algorithm customization interface is received, and each of the configuration information is stored in a corresponding memory space.

3. The link training method according to claim 2, characterized in that: The step of initiating parameter adjustment to the transmitter equalizer of the second device in sequence according to the order of each of the stages and the order of the parameter adjustment steps and according to the step content of each of the parameter adjustment steps, and measuring the current value of the eye diagram measurement object of the receiver of the first device after the transmitter equalizer completes the parameter adjustment each time, and determining the parameter adjustment step for the next step of parameter adjustment according to the current value, comprises: Reading the eye diagram measurement object and the total number of steps from each of the memory spaces as global information, initializing both the current execution step and the current execution stage, and taking the first parameter adjustment step as the target step; Reading the step content of the target step from each of the memory spaces, determining whether the current execution stage is consistent with the stage to which the target step belongs, and if not, updating the current execution stage to the stage to which the target step belongs, performing eye diagram measurement on the receiving end of the first device to obtain a current value of the eye diagram measurement object, and recording the current value as an optimal value; Assembling a training frame according to the step content of the target step, and sending the training frame to the second device through the sending end of the first device, so as to prompt the second device to adjust the parameters of its own sending end equalizer according to the training frame; Determine whether the content of the step includes information representing eye diagram comparison, and if so, after receiving the information sent by the second device representing the completion of parameter adjustment, perform eye diagram measurement on the receiving end of the first device to obtain the measurement value of the eye diagram measurement object; When the measured value is greater than or equal to the optimal value, taking the measured value as the optimal value, and taking the next step of the target step as the next target step; The value of the currently executed step is increased by one to determine whether the currently executed step is equal to the total number of steps. If so, the training ends; otherwise, the process returns to the step of reading the step content of the target step from each memory space.

4. The link training method according to claim 3, characterized in that: The method further comprises: If the current execution stage is consistent with the stage to which the target step belongs, the step of assembling a training frame according to the step content of the target step and sending the training frame to the second device through the sending end of the first device is performed.

5. The link training method according to claim 3, characterized in that: The step of assembling a training frame according to the step content of the target step comprises: Assembling various parameter values ​​in the step content of the target step into a training frame according to a preset format; The method further comprises: If the measured value is less than the optimal value, assembling the inverted parameter values ​​into a training frame, and sending the training frame to the second device through the sending end of the first device to roll back the target step; The first parameter adjustment step of the next stage of the target step is taken as the next target step.

6. The link training method according to claim 3, characterized in that: The method further comprises: If the step content does not include information representing eye diagram comparison, the step of taking the next step of the target step as the next target step is executed.

7. The link training method according to claim 1, characterized in that: The step of acquiring and storing, through the custom interface, a plurality of configuration information of a user-set algorithm for training the high-speed serial link comprises: Receiving, through the custom interface, a configuration file of a user-set algorithm for training the high-speed serial link, and parsing the configuration file to obtain a plurality of configuration information; Each of the configuration information is stored in the corresponding memory space.

8. A link training device, characterized in that: Applied to a first device, the first device is connected to a second device via a high-speed cable to form a high-speed serial link, the first device further includes a customized interface, and the link training device includes an algorithm customization module and a link training module; The algorithm customization module is used to obtain and store multiple configuration information of the user-set algorithm for training the high-speed serial link through the customization interface; wherein the multiple configuration information includes an eye diagram measurement object, a total number of stages, parameter adjustment steps included in each stage, a total number of parameter adjustment steps, and a step content of each parameter adjustment step; The link training module is used to initiate parameter adjustment to the transmitter equalizer of the second device in sequence according to the order of each of the stages and the order of the parameter adjustment steps and according to the step content of each of the parameter adjustment steps, and after each parameter adjustment is completed by the transmitter equalizer, measure the current value of the eye diagram measurement object of the receiver of the first device, and determine the parameter adjustment step for the next parameter adjustment according to the current value, so that the final parameters of the transmitter equalizer are optimized to optimize the eye diagram measurement object of the receiver of the first device; The step content of the parameter adjustment step reflects the parameter adjustment content, including the parameter adjustment values ​​of various parameters of the transmitting end equalizer, the stage to which the parameter adjustment step belongs, and the comparison bit; the comparison bit is used to indicate whether the parameter adjustment step compares the value of the eye diagram measurement object.

9. An electronic device, characterized in that: The invention comprises a processor and a memory, wherein the memory stores a computer program executable by the processor, and the processor can execute the computer program to implement the link training method according to any one of claims 1 to 7.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the link training method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Model training method and device, storage medium and electronic equipment

    CN114510305A

  • Method and device for parameter processing

    WO2016150077A1