CN117675465A - Method, equipment and system for implementing frequency offset elimination - Google Patents

Method, equipment and system for implementing frequency offset elimination Download PDF

Info

Publication number
CN117675465A
CN117675465A CN202310949664.1A CN202310949664A CN117675465A CN 117675465 A CN117675465 A CN 117675465A CN 202310949664 A CN202310949664 A CN 202310949664A CN 117675465 A CN117675465 A CN 117675465A
Authority
CN
China
Prior art keywords
filling
message
communication port
information
additional information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310949664.1A
Other languages
Chinese (zh)
Inventor
罗军平
潘伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202310949664.1A priority Critical patent/CN117675465A/en
Publication of CN117675465A publication Critical patent/CN117675465A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems

Abstract

The application relates to a frequency offset elimination implementation method, equipment and a system. The method comprises the following steps: generating a length-variable filling message by a transmitting end of a first node, wherein the length-variable filling message comprises frequency offset compensation information, and when additional information is needed, the length-variable filling message also comprises the additional information, and when the additional information is not needed, the length-variable filling message does not comprise the additional information, and the additional information comprises at least one of control information, state information, request information and communication information; and the transmitting end of the first node transmits the filling message with variable length. The scheme can effectively reduce the loss of the link bandwidth.

Description

Method, equipment and system for implementing frequency offset elimination
Technical Field
The present disclosure relates to the field of communications technologies, and in particular, to a method, an apparatus, and a system for implementing frequency offset cancellation.
Background
Serial communication is widely used as a communication method for realizing communication between computers and between parts inside the computers. In order to realize serial communication, clocks of both communication parties can be designed with reference to a standard clock. However, in practical situations, due to the existence of production factors (e.g., different crystal oscillators) or artifacts (e.g., spread spectrum setting), the clock frequency of the transmitting end is often deviated from the clock frequency of the standard clock, and the clock frequency of the receiving end is deviated from the clock frequency of the standard clock. If the two deviations are inconsistent, the clock frequencies of the two communication parties are inconsistent, and the phenomena of data loss or resource waste occur.
In order to compensate for the deviation of the two clock frequencies, a padding message containing a padding field is usually required to be sent between the sending end and the receiving end for depolarization, but this way causes a loss of link bandwidth.
Disclosure of Invention
The application discloses a frequency offset elimination realization method, equipment and a system, which can adjust the deviation of clock frequencies of two communication parties and effectively reduce the loss of link bandwidth.
In a first aspect, a method for implementing frequency offset cancellation is provided, including:
the method comprises the steps that a sending end of a first node generates a filling message with variable length, and the sending end of the first node sends the filling message with variable length. Accordingly, the receiving end of the second node receives the filling message with variable length. When the identification information of the length-variable filling message is a first identifier, the receiving end of the second node determines that the length-variable filling message does not include additional information, and when the identification information of the length-variable filling message is a second identifier, the receiving end of the second node determines that the length-variable filling message includes additional information. The variable-length filling message comprises frequency offset compensation information. When additional information is needed, the length-variable padding message also comprises the additional information, and when the additional information is not needed, the length-variable padding message does not comprise the additional information. The additional information includes at least one of control information, status information, request information, and communication information.
In the above scheme, the generation of the variable-length padding message including the additional information or the generation of the variable-length padding message not including the additional information may be selected according to whether the additional information is required. The length-variable filling message with the relatively long length and containing the additional information only needs the additional information, and the length-variable filling message without the additional information with the relatively short length can be generated when the additional information is not needed, so that the frequency offset compensation can be carried out, and the loss of the link bandwidth can be reduced.
In some possible designs, the variable-length pad message further includes identification information, where the identification information is a first identifier when the variable-length pad message does not require additional information, and where the identification information is a second identifier when the variable-length pad message requires additional information.
In some possible designs, the identifier code of the first identifier is different from the identifier code of the second identifier.
In some possible designs, the message length of the variable length padding message when additional information is needed is greater than the message length of the variable length padding message when additional information is not needed.
In some possible designs, the first clock of the first node and the second clock of the second node are not the same, or the first clock of the first node and the second clock of the second node are the same.
In a second aspect, a frequency offset cancellation implementation apparatus is provided, including a generating module and a transmitting module. The generating module is configured to generate a variable-length padding packet, where the variable-length padding packet includes frequency offset compensation information, and when additional information is needed, the variable-length padding packet further includes additional information, and when additional information is not needed, the variable-length padding packet does not include additional information, where the additional information includes at least one of control information, status information, request information, and communication information; and the sending module is used for sending the variable-length filling message.
In some possible designs, the variable-length pad message further includes identification information, where the identification information is a first identifier when the variable-length pad message does not require additional information, and where the identification information is a second identifier when the variable-length pad message requires additional information.
In some possible designs, the identifier code of the first identifier is different from the identifier code of the second identifier.
In some possible designs, the first clock of the first node and the second clock of the second node are not the same, or the first clock of the first node and the second clock of the second node are the same.
In a third aspect, a frequency offset cancellation implementation apparatus is provided, including: the device comprises a receiving module and a determining module. The receiving module is used for receiving the filling message with variable length; the determining module is configured to determine that the variable-length padding packet does not include additional information when the identification information of the variable-length padding packet is a first identifier, and determine that the variable-length padding packet includes additional information when the identification information of the variable-length padding packet is a second identifier. Wherein the additional information includes at least one of control information, status information, request information, and communication information.
In some possible designs, the identifier code of the first identifier is different from the identifier code of the second identifier.
In some possible designs, the message length of the variable length padding message when additional information is needed is greater than the message length of the variable length padding message when additional information is not needed.
In a fourth aspect, a communication device is provided, the communication device comprising a processor and a memory; the processor is configured to execute instructions stored in the memory to cause the communication device to perform the method according to any one of the first node or the second node of the first aspect.
In a fifth aspect, there is provided a computer program product comprising instructions which, when executed by a communications device, cause the communications device to perform the method according to any one of the angles of the first node or the second node in the first aspect.
In a sixth aspect, there is provided a readable storage medium comprising program instructions which, when executed by a communication device, perform a method according to any one of the angles of the first node or the second node in the first aspect.
In a seventh aspect, a frequency offset cancellation implementation system is provided, where the system includes a first node and a second node, where the first node and the second node may communicate with each other, the first node is configured to perform a method according to a first node angle in the first aspect, and the second node is configured to perform a method according to a second node angle in the first aspect.
Drawings
FIG. 1 is a schematic diagram of two clocks controlling different modules respectively according to the present application;
fig. 2A to fig. 2B are schematic diagrams of a filling packet sent by a sending end and a filling packet received by a receiving end according to the present application;
fig. 3 is a schematic flow chart of a method for eliminating frequency offset provided in the present application;
fig. 4A to fig. 4B are schematic structural diagrams of some variable-length padding messages provided in the present application;
fig. 5 is a schematic structural diagram of a communication system provided in the present application;
fig. 6 is a schematic structural diagram of a communication device provided in the present application.
Detailed Description
In order to facilitate understanding of the technical scheme provided in the present application, some related terms and application scenarios related in the present application are first introduced.
The computers and the parts inside the computers can communicate in a serial or parallel mode. Serial communication (serial communication) refers to a communication scheme in which one bit (bit) of data is transmitted at a time over a computer bus or other data channel, and the above single processes are performed consecutively, for example, a peripheral component interconnect express (peripheral component interconnect express, PCIe), a computing express link (compute express link, CXL), and the like. Parallel communication (parallel communication) refers to a communication scheme in which multiple bits of data are simultaneously transmitted via parallel lines, for example, the peripheral component interconnect standard (peripheral component interconnect, PCI).
PCIe is a high-speed serial computer expansion bus standard, which is one of the PCIs. PCI is a bus standard for connecting a computer motherboard and external devices, is the most widely used interface in a personal computer at present, and almost all motherboard products are provided with the slots. PCIe has adopted programming concepts and communication standards for PCI, but PCIe has many advantages, such as greater interference immunity, faster data transfer rates, and better compatibility.
CXL is an open interconnect standard. CXL technology is based on a mature PCIe infrastructure, utilizing PCIe 5.0 physical and electronic interfaces to provide advanced protocols in three critical areas: input/output protocols, memory protocols, and coherence interfaces, which enable CXLs to provide ultra-fast interconnections and better memory coherence between CPUs and accelerator cards, thereby reducing the complexity of the software stack and overall system cost, further improving the performance of data-intensive applications.
Compared with parallel communication, serial communication has the advantages of simple structure, less signal lines, long-distance data transmission support, low communication cost and the like, so that communication among computers and among parts inside the computers is realized in a serial communication mode in many current computer products.
In order to clearly understand the technical scheme provided by the application, firstly, when the frequency offset of the transmitting end of the first node is inconsistent with the frequency offset of the receiving end of the second node, the reasons of data loss or resource waste will be described with reference to fig. 1:
as shown in FIG. 1, the standard clock has a clock frequency of 100MHz, the first clock has a clock frequency of 99.9997MHz/100.0003MHz, and the second clock has a clock frequency of 100.0003MHz/99.9997MHz. In the figure, the functional blocks in the white region are driven by a first clock, and the functional blocks in the gray region are driven by a second clock.
The first clock drives the transmitting end 110 of the first port of the first node (hereinafter referred to simply as the transmitting end 110 of the first node) to transmit a data stream to the receiving end 120 of the second port (hereinafter referred to simply as the receiving end 120 of the second node), the receiving end 120 of the second node recovers a clock signal (i.e., a clock signal generated by the first clock) in phase with the transmitting end 110 of the first node from the data stream transmitted by the transmitting end 110 of the first node by using the clock data recovery (clock data recovery, CDR) module 130, and then collects data transmitted subsequently by the transmitting end 110 of the first node by using the clock signal. Thus, the receiving end 120 of the second node collects the data transmitted by the transmitting end 110 of the first node according to the clock frequency of the first clock. After the receiving end 120 of the second node receives the data, the data is written into an elastic buffer 140 of the second port of the second node, and then a transmitting end 150 of the second port of the second node (hereinafter referred to as the transmitting end 150 of the second node for short) reads the data from the elastic buffer 140 and sends the data to an upper layer logic 160 of the second port of the second node, so as to perform subsequent recognition, processing, and the like on the data.
The receiving end 120 of the second node writes the read data into the elastic buffer 140 according to the clock frequency of the first clock, but the transmitting end 150 of the second node reads the data from the elastic buffer 140 according to the clock frequency of the second clock. Then, when the clock frequency of the first clock is not identical to the clock frequency of the second clock, it means that the speed at which the receiving end 120 of the second node writes data into the elastic buffer 140 is different from the speed at which the transmitting end 150 of the second node reads data from the elastic buffer 140. If the clock frequency of the first clock is greater than the clock frequency of the second clock, it indicates that the speed of writing data into the elastic buffer 140 by the receiving end 120 of the second node is greater than the speed of reading data from the elastic buffer 140 by the transmitting end 150 of the second node, and over time, the elastic buffer 140 may overflow, thereby causing data loss. If the clock frequency of the first clock is less than the clock frequency of the second clock, it means that the speed of writing data into the elastic buffer 140 by the receiving end 120 of the second node is less than the speed of reading data from the elastic buffer 140 by the transmitting end 150 of the second node, and as time goes by, an idle state may occur in the elastic buffer 140, so that the data may be stepped on when being read from the elastic buffer, resulting in underflow.
Thus, a stuff message including a stuff field may be transmitted between the transmitting end 110 of the first node and the receiving end 120 of the second node. As shown in fig. 2A, the padding packet including the padding field, which is sent by the sender 110 of the first node, is approximately 40 bytes (byte), and may include 3 padding fields (body), an end field (end), and a control field (control). Wherein the pad field typically comprises 4 bytes for carrying a pad code, which may be data unrelated to communication between the first node and the second node; the end field typically comprises 4 bytes for carrying an end code; the control field is typically 24 bytes and is used to carry a control code for the first node to control the second node. The filling message sent by the sending end of the first node can pass through two nodes and then reach the receiving end of the second node, and each node can add or delete 1 filling field on the basis of the filling message. Thus, as shown in fig. 2B, the stuff message received by the receiving end of the second node may be 32 bytes, 36 bytes, 40 bytes, 44 bytes or 48 bytes. For example, when both nodes delete a pad field, the pad message received by the receiver of the second node may be 32 bytes; when one of the two nodes deletes a padding field, the padding message received by the receiving end of the second node may be 36 bytes; when neither node deletes or adds the padding field, the padding message received by the receiving end of the second node may be 40 bytes; when one of the two nodes adds a padding field, the padding message received by the receiving end of the second node may be 44 bytes; when both nodes add a pad field, the pad message received by the receiver of the second node may be 48 bytes. It will be appreciated that, in the above example, the padding packet includes 40 bytes, including 3 padding fields, each of which is 4 bytes, passing through at most two intermediate nodes, and each intermediate node may add or delete one padding field, in practical application, the padding packet may include more or less bytes, may include more or less padding fields, passing through more or less intermediate nodes, each of which may include more or less bytes, each of which may add or delete more padding fields, the transmission interval of the padding packet may be different, and so on, which is not limited herein.
When the frequency of the first clock is greater than the frequency of the second clock, the speed of writing data into the elastic buffer 140 by the receiving end 120 of the second node is greater than the speed of reading data from the elastic buffer 140 by the transmitting end 150 of the second node, at this time, the padding field in the padding message may be increased, or the number of the padding messages may be increased, so that more data unrelated to the communication between the first node and the second node may be contained in the data sent by the transmitting end 110 of the first node to the receiving end 120 of the second node, and the data may be discarded by the receiving end 120 of the second node, thereby reducing the data to be buffered in the elastic buffer 140 and avoiding the overflow state of the elastic buffer 140. In contrast, when the frequency of the first clock is smaller than the frequency of the second clock, the speed of writing data into the elastic buffer 140 by the receiving end 120 of the second node is smaller than the speed of reading data from the elastic buffer 140 by the transmitting end 150 of the second node, at this time, the padding field in the padding packet may be reduced, or the number of the padding packets may be reduced, so that the data sent from the transmitting end 110 of the first node to the receiving end 120 of the second node may include less data unrelated to the communication between the first node and the second node, thereby increasing the data buffered in the elastic buffer 140 to avoid the idle state of the elastic buffer 140.
However, there may always be a frequency difference between the two ends of the link, so it is necessary to always send a stuff packet to provide the function of eliminating frequency offset, for example, a stuff packet in the above example needs to be inserted every 640 bytes, and the link bandwidth loss is 40/(40+640) =5.88%.
The method and the device are suitable for serial communication scenes. Specifically, in the serial communication scenario, both communication parties (including the transmitting end of the first node and the receiving end of the second node) need to be clocked to complete the data transmission. However, when the frequency offset of the transmitting end of the first node is inconsistent with the frequency offset of the receiving end of the second node, the phenomenon of data loss or resource waste may occur, so that the transmission of the filling message is required to be regulated. In the application, the frequency offset of the transmitting end of the first node refers to the deviation between the clock frequency of the transmitting end of the first node and the clock frequency of the standard clock, and the frequency offset of the receiving end of the second node refers to the frequency offset between the clock frequency of the receiving end of the second node and the clock frequency of the standard clock.
The application provides a frequency offset elimination implementation method, which is suitable for a serial communication system, namely a transmitting end of a first node and a receiving end of a second node are communicated in a serial mode, when additional information is not needed, frequency offset elimination is carried out by transmitting a length-variable filling message which does not comprise the additional information, and when the additional information is needed, frequency offset elimination and the additional information are carried out by transmitting the length-variable filling message which comprises the additional information. By using the method, the loss of the link bandwidth can be reduced.
Referring to fig. 3, fig. 3 is a schematic flow chart of a method for implementing frequency offset cancellation provided in the present application. As shown in fig. 3, the implementation method for frequency offset cancellation provided in the present application includes:
s101: the sending end of the second node sends a message to the receiving end of the first node. Correspondingly, the receiving end of the first node receives the message sent by the sending end of the second node.
In one possible implementation, the message is used to instruct the first node to transmit a padding message for frequency offset compensation. Specifically, when the elastic buffer in the second node approaches overflow, the second node sends a message to the first node for instructing the first node to add a padding message. When the elastic buffer in the second node is near idle, the second node sends a message to the first node indicating the first node to reduce the padding message.
S102: the first node determines whether additional bearers are required. If not, step S103A is entered to generate a variable-length stuff message not including additional information, and if necessary, step S103B is entered to generate a variable-length stuff message including additional information.
In a possible implementation manner, the variable-length padding message includes frequency offset compensation information, when additional information is needed, the variable-length padding message further includes additional information, and when additional information is not needed, the variable-length padding message does not include additional information. That is, the variable length pad message includes two different forms, and when additional information is required, the variable length pad message includes frequency offset compensation information and additional information; when no additional information is needed, the variable length filling message comprises frequency offset compensation information and does not comprise additional information.
In a possible implementation manner, the variable-length padding message further includes identification information, where the identification information is a first identifier when the variable-length padding message does not need additional information, and the identification information is a second identifier when the variable-length padding message needs additional information.
In one possible embodiment, the additional information includes at least one of control information, request information, status information, and communication information. The control information refers to control information of the first node on the second node, for example, information of the first node indicating the second node to perform operation processing. The request information refers to information that the first node requests the second node to control the first node. The state information is information about the state of the first node, for example, the position of the first node, power consumption, and the like. The communication information may include other information that needs to be communicated, and so on.
In one possible implementation, the variable-length padding messages are sent according to a period, and in each period, the first node may choose to generate a different variable-length padding message according to whether additional information needs to be carried.
S103A: the first node generates a variable length stuff message that does not include additional information.
In one possible implementation, the variable length pad message includes frequency offset compensation information, the first identifier, and no additional information. In a specific embodiment, as shown in fig. 4A, the variable length padding message in this aspect may include: a first pad field and a first identification field. The first padding field is used for carrying frequency offset compensation information, and the frequency offset compensation information can be information irrelevant to communication between the first node and the second node. The first identification field is used for bearing a first identifier, and the first identifier is used for identifying the message as a variable padding message which does not comprise additional information. The first pad field may be 4 bytes in length and the first identification field may be 4 bytes. Of course, the length of the first padding field may be more or less bytes, and the length of the first identification field may be more or less bytes, which is not particularly limited herein.
In a possible implementation manner, when the message instructs the first node to increase the padding message and no additional information is needed, the number of generated variable-length padding messages which do not include additional information is increased, so that the number of variable-length padding messages which do not include additional information and are inserted into the data stream is increased, and thus, more data irrelevant to communication between the second node and the first node can be contained in data sent by a sending end of the first node to a receiving end of the second node, and the receiving end of the second node can discard the data, so that data needing to be buffered in an elastic buffer is reduced, and overflow state of the elastic buffer is avoided. When the message indicates the first node to reduce the padding message and no additional information is needed, the number of the generated variable-length padding messages which do not include the additional information is reduced, so that the number of the variable-length padding messages which do not include the additional information and are inserted into the data stream is reduced, and therefore, less data irrelevant to communication between the second node and the first node can be contained in data sent from a sending end of the first node to a receiving end of the second node, and idle states of an elastic buffer area are avoided.
In a possible implementation manner, when the message instructs the first node to add the padding message and no additional information is needed, the number of generated padding fields of the length-variable padding message which does not include the additional information is increased, so that more data irrelevant to the communication between the second node and the first node can be contained in the data sent by the sending end of the first node to the receiving end of the second node, and the receiving end of the second node can discard the data, thereby reducing the data needing to be buffered in the elastic buffer area and avoiding the overflow state of the elastic buffer area. When the message indicates the first node to reduce the filling message and no additional information is needed, the number of the generated filling fields of the variable-length filling message which does not comprise the additional information is reduced, so that the data which is sent by the sending end of the first node to the receiving end of the second node can contain less data which is irrelevant to the communication between the second node and the first node, and the idle state of the elastic buffer zone is avoided.
In one possible implementation, when the message instructs the first node to add the padding message and no additional information is needed, the period of sending the variable-length padding message that does not include additional information is shortened, so that more data unrelated to communication between the second node and the first node can be contained in the data sent by the sending end of the first node to the receiving end of the second node, and the receiving end of the second node can discard the data, thereby reducing the data that needs to be buffered in the elastic buffer to avoid an overflow state of the elastic buffer. When the message indicates the first node to reduce the filling message and does not need to perform additional functions, the period for transmitting the filling message with variable length, which does not include additional information, is increased, so that the data transmitted from the transmitting end of the first node to the receiving end of the second node can contain less data irrelevant to the communication between the second node and the first node, and the idle state of the elastic buffer zone is avoided.
S104A: the first node sends a variable length stuff message to the second node that does not include additional information. Accordingly, the second node receives the variable-length filling message which is sent by the first node and does not comprise the additional information.
S105A: the second node identifies a variable length pad message that does not include additional information and performs frequency offset compensation.
In one possible implementation, the second node may identify, for the first identifier, the present message as a variable length padding message that does not include additional information according to the identification information in the variable length padding message, and perform frequency offset compensation.
S103B: the first node generates a variable length stuff message including additional information.
In one possible implementation, the variable length pad message including the additional information includes frequency offset compensation information, a second identifier, and the additional information. In a specific embodiment, as shown in fig. 4B, the variable length padding message in this form may include: a second pad field, a second identification field, and an additional information field. The second filling field is used for carrying frequency offset compensation information, and the frequency offset compensation information is information irrelevant to communication between the first node and the second node. The second identification field is used for bearing a second identifier, and the second identifier is used for identifying the message as a variable-length filling message comprising additional information. The additional information field is used to carry additional information. The additional information includes at least one of control function information, request information, status information, and communication information. The second pad field may be 4 bytes in length, the second identification field may be 4 bytes, and the additional information field may be 24 bytes. Of course, the length of the second padding field may be more or less bytes, the length of the second identification field may be more or less bytes, and the additional information field may be more or less bytes, which is not specifically limited herein.
In a possible implementation manner, when the message instructs the first node to increase the padding message and additional information is needed, the transmitting end of the first node increases the number of generated variable-length padding messages including the additional information, so as to increase the number of variable-length padding messages including the additional information, which are inserted into the data stream, so that more data irrelevant to the communication between the second node and the first node can be contained in the data sent by the transmitting end of the first node to the receiving end of the second node, and the receiving end of the second node can discard the data, so that the data needing to be buffered in the elastic buffer is reduced, and the overflow state of the elastic buffer is avoided. When the message indicates that the first node reduces the padding message and additional information is needed, the transmitting end of the first node reduces the number of the length-variable padding messages which comprise the additional information and are generated, so that the number of the length-variable padding messages which comprise the additional information and are inserted into a data stream is reduced, and therefore, less data irrelevant to communication between the second node and the first node can be contained in data which are transmitted to the receiving end of the second node by the transmitting end of the first node, and data which need to be buffered in an elastic buffer area is increased, and the elastic buffer area is prevented from being in an idle state.
In a possible implementation manner, when the message instructs the first node to add the padding message and additional information is needed, the transmitting end of the first node increases the number of generated padding fields of the padding message with variable length including the additional information, so that more data irrelevant to communication between the second node and the first node can be contained in data sent to the receiving end of the second node by the transmitting end of the first node, and the receiving end of the second node can discard the data, thereby reducing the data to be buffered in the elastic buffer to avoid an overflow state of the elastic buffer. When the message indicates that the first node reduces the filling message and additional information is needed, the transmitting end of the first node reduces the number of filling fields in the generated filling message with variable length comprising the additional information, so that the data transmitted from the transmitting end of the first node to the receiving end of the second node can contain less data irrelevant to the communication between the second node and the first node, and the data needed to be buffered in the elastic buffer area is increased so as to avoid the idle state of the elastic buffer area.
In one possible implementation, when the message instructs the first node to add the padding message and additional functions are needed, the period of sending the padding message with variable length including the additional information is reduced, so that the data sent by the sending end of the first node to the receiving end of the second node may include more data unrelated to the communication between the second node and the first node, and the receiving end of the second node may discard the data, thereby reducing the data that needs to be buffered in the elastic buffer, so as to avoid the overflow state of the elastic buffer. When the message indicates that the first node reduces the filling message and additional information is needed, the period for transmitting the filling message with variable length comprising the additional information is increased, so that the data transmitted from the transmitting end of the first node to the receiving end of the second node can contain less data irrelevant to the communication between the second node and the first node, and the data needed to be buffered in the elastic buffer area is increased to avoid the idle state of the elastic buffer area.
S104B: the first node sends a variable length stuff message including additional information to the second node. Accordingly, the second node receives the variable-length filling message including the additional information, which is sent by the first node.
S105B: the second node recognizes the variable-length padding message including the additional information and performs the functions of frequency offset compensation and correspondence to the additional information.
In one possible implementation manner, the second node may identify, for the second identifier, the present message as a variable-length padding message including additional information according to the identification information in the variable-length padding message, and perform the functions of frequency offset compensation and correspondence with the additional information.
Wherein the identifier code of the first identifier is different from the identifier code of the second identifier, and the message length of the variable length padding message excluding the additional information is less than the message length of the variable length padding message including the additional information.
It should be understood that, in the above example, the first clock of the first node and the second clock of the second node are not the same, and in practical application, the first clock of the first node and the second clock of the second node may be the same, where the period of sending the stuff packet to the second node by the first node may be longer, so as to reduce unnecessary bandwidth consumption, and may carry additional information when needed.
In the above scheme, when the link does not need additional information, the transmitting end of the first node transmits the variable-length filling message which does not include the additional information to perform frequency offset cancellation, and at this time, the link loss is: 16/656=2.44%; when the link needs additional information, the transmitting end of the first node transmits a filling message with variable length comprising the additional information, and the link loss is: 40/680=5.88%. Therefore, compared with the condition that the link always transmits the variable-length filling message comprising the additional information, the bandwidth loss of the link can be effectively reduced.
The foregoing details describe a method for implementing frequency offset cancellation between a second node (i.e., a receiving end) and a first node (i.e., a transmitting end) in a communication system provided by the present application, and in order to better implement the foregoing method, the following describes related devices, apparatuses and systems for implementing the foregoing method in a matching manner.
As shown in fig. 5, fig. 5 shows a schematic structural diagram of a communication system provided in the present application. As shown in fig. 5, a communication system may include an apparatus 310 and an apparatus 320. The apparatus 310 may be disposed in the first node, and the apparatus 320 may be disposed in the second node, so as to be able to adjust clock skew between the second node and the first node, and transmit additional information. The apparatus 310 includes a generating unit 311, a transmitting unit 312.
The generating unit 311 is configured to generate a variable-length padding packet, where the variable-length padding packet includes frequency offset compensation information, and when additional information is needed, the variable-length padding packet further includes additional information, and when additional information is not needed, the variable-length padding packet does not include additional information, where the additional information includes at least one of control information, status information, request information, and communication information.
The sending unit 312 is configured to send the variable-length padding packet.
The apparatus 320 comprises a receiving unit 321, a determining unit 322.
The receiving unit 321 is configured to receive the variable-length padding packet.
And a determining unit 322, configured to determine that the variable-length padding packet does not include additional information when the identification information of the variable-length padding packet is a first identifier, and determine that the variable-length padding packet includes additional information when the identification information of the variable-length padding packet is a second identifier, where the additional information includes at least one of control information, status information, request information, and communication information.
The apparatus 310 provided in the foregoing embodiment belongs to the same concept as the first node in the foregoing method embodiment, for example, the generating unit 311 is configured to execute the foregoing S103A or 103B, the transmitting unit 312 is configured to execute the foregoing transmitting portion in S104A or S104B, the apparatus 320 provided in the foregoing embodiment belongs to the same concept as the second node in the foregoing method embodiment, for example, the receiving unit 321 is configured to execute the foregoing receiving portion in S104A or S104B, and the determining unit 322 is configured to execute the step S105A or S105B, which is detailed in the foregoing method embodiment and will not be repeated herein.
The apparatus in the communication system provided in the embodiment of the present application is only exemplified by the division of the above functional units, and in practical application, the above functional allocation may be performed by different functional units according to needs, that is, the internal structure of the apparatus 310 is divided into different functional units, so as to perform all or part of the functions described above.
The application also provides a communication device, as shown in fig. 6, and fig. 6 shows a schematic structural diagram of the communication device. The communication device 400 includes a communication port 410, where the communication port 410 includes a transmitting end 411, a receiving end 412, and an elastic buffer 413. The communication port 410 belongs to the same concept as the first node in the above method embodiment, and the communication port 410 is specifically configured to perform the foregoing S101, S102, S103A, S a and S103B, S104B to implement serial communication between the communication port 410 and other ports (for example, the communication port of the second node). Alternatively, the communication port 410 is the same concept as the second node in the above method embodiment, and the communication port 410 is specifically configured to perform the steps S101, S104A, S a and S104B, S B.
The application also provides a communication system, which can comprise a second node and a first node, wherein the second node comprises a receiving end and a buffer zone, and the first node comprises a transmitting end. Optionally, the first node may also include a buffer.
The first node is configured to perform the angle step of the first node in S101, S102, S103A, S a, S103B, and S104B: specifically, the transmitting end of the first node is configured to perform the foregoing methods of the angles of the first node in S101, S102, S103A, S a and S103B, S104B, and the receiving end of the second node is configured to perform the foregoing methods of the angles of the second node in S101, S104A, S a and S104B, S B.
The descriptions of the processes corresponding to the drawings have emphasis, and the descriptions of other processes may be referred to for the parts of a certain process that are not described in detail.
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may 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 instructions are loaded and executed on a computer (computing device), the processes or functions described in accordance with the embodiments of the present application result, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, e.g., from one website, computer, server, or data center, via a wired (e.g., coaxial cable, fiber optic, digital subscriber line, or wireless (e.g., infrared, wireless, microwave, etc.) connection to another website, computer, server, or data center.

Claims (20)

1. A method for implementing frequency offset compensation in a computer system, comprising:
generating a filling message by a transmitting end of a first communication port, wherein when the filling message is a first type filling message, the first type filling message comprises a filling field and an additional information field, and when the filling message is a second type filling message, the second type filling message comprises the filling field and does not comprise the additional information field, the filling field carries frequency offset compensation information, the additional information field carries additional information, the additional information comprises at least one of control information, state information, request information and communication information, and the frequency offset compensation information is used for compensating frequency offset between the first communication port and the second communication port;
and the transmitting end of the first communication port transmits the filling message to the receiving end of the second communication port through a serial interface.
2. The method of claim 1, wherein the stuff message further comprises an identification field, wherein the stuff message is the first type of stuff message when the identification field carries a first identifier, and wherein the stuff message is the second type of stuff message when the identification field carries a second identifier.
3. The method according to claim 1 or 2, wherein the length of the first type of padding messages is greater than the length of the second type of padding messages.
4. A method according to any one of claims 1 to 3, wherein the first clock frequency of the first communication port and the second clock frequency of the second communication port are different.
5. The method according to any one of claims 1 to 4, wherein before the sender generates the padding message, the method further comprises:
the receiving end of the first communication port receives an indication message sent by the sending end of the second communication port, and the indication message is used for indicating the first communication port to send a filling message to perform frequency offset compensation.
6. The method of claim 5, wherein the indication message is further configured to indicate that the first communication port carries the additional information in a padding message for performing frequency offset compensation.
7. The method according to claim 5 or 6, wherein the transmitting end of the first communication port adjusts a period of transmitting the padding message according to the indication message.
8. A method for implementing frequency offset compensation in a computer system, comprising:
A receiving end of a second communication port receives a filling message sent by a sending end of a first communication port through a serial interface, wherein when the filling message is a first filling message, the first filling message comprises a filling field and an additional information field, and when the filling message is a second filling message, the second filling message comprises the filling field and does not comprise the additional information field, the filling field carries frequency offset compensation information, the additional information field carries additional information, the additional information comprises at least one of control information, state information, request information and communication information, and the frequency offset compensation information is used for compensating frequency offset between the first communication port and the second communication port;
and the second communication port executes frequency offset compensation operation according to the frequency offset compensation information carried by the filling message.
9. The method of claim 8, wherein the step of determining the position of the first electrode is performed,
the filling message further comprises an identification field, when the identification field carries a first identifier, the filling message is the first type filling message, and when the identification field carries a second identifier, the filling message is the second type filling message.
10. The method according to claim 8 or 9, wherein,
the first clock frequency of the first communication port and the second clock frequency of the second communication port are different.
11. A method according to any one of claims 8 to 10, wherein,
the transmitting end of the second communication port transmits an indication message to the receiving end of the first communication port, wherein the indication message is used for indicating the first communication port to transmit a filling message so as to perform frequency offset compensation.
12. A communication port in a computer system, comprising: a transmitting end and a receiving end,
the transmitting end is configured to generate a filling packet, where when the filling packet is a first type filling packet, the first type filling packet includes a filling field and an additional information field, and when the filling packet is a second type filling packet, the second type filling packet includes the filling field and does not include the additional information field, the filling field carries frequency offset compensation information, the additional information field carries additional information, the additional information includes at least one of control information, status information, request information, and communication information, and the frequency offset compensation information is used to compensate a frequency offset between the communication port and an opposite communication port;
The transmitting end is further configured to transmit the filling packet to a receiving end of the opposite-end communication port through a serial interface.
13. The communication port of claim 12, wherein the communication port is configured to communicate with the communication port,
the receiving end of the communication interface receives an indication message sent by the sending end of the opposite-end communication port, and the indication message is used for indicating the communication port to send a filling message to perform frequency offset compensation.
14. The communication port according to claim 12 or 13, characterized in that,
the filling message further comprises an identification field, when the identification field carries a first identifier, the filling message is the first type filling message, and when the identification field carries a second identifier, the filling message is the second type filling message.
15. The communication port according to any of the claims 12-14, characterized in that,
the first clock frequency of the communication port is different from the second clock frequency of the opposite communication port.
16. A communication port in a computer system, comprising: a transmitting end and a receiving end,
the receiving end is configured to receive a filling packet sent by a sending end of an opposite-end communication port through a serial interface, where when the filling packet is a first type filling packet, the first type filling packet includes a filling field and an additional information field, and when the filling packet is a second type filling packet, the second type filling packet includes the filling field and does not include the additional information field, the filling field carries frequency offset compensation information, the additional information field carries additional information, the additional information includes at least one of control information, status information, request information, and communication information, and the frequency offset compensation information is used to compensate a frequency offset between the communication port and the opposite-end communication port;
And the communication port executes frequency offset compensation operation according to the frequency offset compensation information carried by the filling message.
17. The communication port of claim 16, wherein the communication port is configured to communicate with the communication port,
the sending end of the communication port is used for sending an indication message to the receiving end of the opposite-end communication port, and the indication message is used for indicating the opposite-end communication port to send a filling message for frequency offset compensation.
18. The communication port according to claim 16 or 17, characterized in that,
the filling message further comprises an identification field, when the identification field carries a first identifier, the filling message is the first type filling message, and when the identification field carries a second identifier, the filling message is the second type filling message.
19. A computer system comprising a first communication port and a second communication port,
the transmitting end of the first communication port is configured to generate a filling packet, where when the filling packet is a first type filling packet, the first type filling packet includes a filling field and an additional information field, and when the filling packet is a second type filling packet, the second type filling packet includes the filling field and does not include the additional information field, the filling field carries frequency offset compensation information, the additional information field carries additional information, the additional information includes at least one of control information, status information, request information, and communication information, and the frequency offset compensation information is configured to compensate for a frequency offset between the first communication port and the second communication port;
The transmitting end of the first communication port transmits the filling message to the receiving end of the second communication port through a serial interface;
and the receiving end of the second communication port is used for receiving the filling message and executing frequency offset compensation operation according to the frequency offset compensation information carried by the filling message.
20. The computer system of claim 19, wherein the computer system further comprises a processor configured to,
the sending end of the second communication port is used for sending an indication message to the receiving end of the first communication port, and the indication message is used for indicating the first communication port to send a filling message to perform frequency offset compensation.
CN202310949664.1A 2022-09-07 2022-09-07 Method, equipment and system for implementing frequency offset elimination Pending CN117675465A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310949664.1A CN117675465A (en) 2022-09-07 2022-09-07 Method, equipment and system for implementing frequency offset elimination

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202310949664.1A CN117675465A (en) 2022-09-07 2022-09-07 Method, equipment and system for implementing frequency offset elimination
CN202211098687.8A CN117714248A (en) 2022-09-07 2022-09-07 Method, equipment and system for implementing frequency offset elimination

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN202211098687.8A Division CN117714248A (en) 2022-09-07 2022-09-07 Method, equipment and system for implementing frequency offset elimination

Publications (1)

Publication Number Publication Date
CN117675465A true CN117675465A (en) 2024-03-08

Family

ID=90097433

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202310949664.1A Pending CN117675465A (en) 2022-09-07 2022-09-07 Method, equipment and system for implementing frequency offset elimination
CN202211098687.8A Pending CN117714248A (en) 2022-09-07 2022-09-07 Method, equipment and system for implementing frequency offset elimination

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202211098687.8A Pending CN117714248A (en) 2022-09-07 2022-09-07 Method, equipment and system for implementing frequency offset elimination

Country Status (2)

Country Link
CN (2) CN117675465A (en)
WO (1) WO2024051511A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9331962B2 (en) * 2010-06-27 2016-05-03 Valens Semiconductor Ltd. Methods and systems for time sensitive networks
US11337183B2 (en) * 2019-02-28 2022-05-17 Qualcomm Incorporated Aggregated control information for a wireless communication network
US11510269B2 (en) * 2019-07-01 2022-11-22 Qualcomm Incorporated Signaling for multi-link communication in a wireless local area network (WLAN)
CN113993009A (en) * 2020-07-27 2022-01-28 上海诺基亚贝尔股份有限公司 Method and device for multi-domain transmission by time synchronization, OLT and ONU

Also Published As

Publication number Publication date
CN117714248A (en) 2024-03-15
WO2024051511A1 (en) 2024-03-14

Similar Documents

Publication Publication Date Title
US7898956B2 (en) Credit-based rate control for high-speed interfaces
WO2020001365A1 (en) Adjustment method for phy in flexe group, related equipment and storage medium
KR101820826B1 (en) Systems and methods for sharing a serial communication port between a plurality of communication channels
CN100499666C (en) System and method for inter connecting SP14 equipment and PCI Express equipment
CN112084736B (en) USB3.0 physical layer transceiver based on FPGA
CN111611187A (en) Universal protocol conversion bridge and SoC for CHI bus
CN111277988A (en) Method for improving Bluetooth transmission speed of WeChat small program
US9116881B2 (en) Routing switch apparatus, network switch system, and routing switching method
CN109600853B (en) Uplink data transmission method and device
CN117675465A (en) Method, equipment and system for implementing frequency offset elimination
US20240104046A1 (en) Spread spectrum clock negotiation method, and peripheral component interconnect express device and system
CN111404842A (en) Data transmission method, device and computer storage medium
CN107846709B (en) Wireless communication device and wireless communication method based on LoRa
CN112148663A (en) Data exchange chip and server
CN113766017B (en) Real-time Ethernet load data transmission control system and method based on request response
CN114095907A (en) Bluetooth connection control method, device and equipment
CN115543896A (en) Communication system and related product
CN113572629A (en) Message transmission method, terminal and storage medium
CN107800639B (en) Switching device, switching device group, data transmission method and computer system
CN216527160U (en) Superspeed bus transceiver
CN110601784B (en) TDM interface extension method, device, equipment and readable storage medium
CN102123025B (en) Method for high speed data transfer
CN112788771B (en) Data transmission method, device, related equipment and storage medium
JP4716001B2 (en) Communication system between CPUs
KR20050026058A (en) Packet signal processing architecture

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination