Data transmission system, data receiving method and data sending method

By designing a data transmission system compatible with Ethernet and IB networks, multiplexing the physical layer and link control layer of Ethernet, and combining interface adaptation modules and IB link layer modules, the problem of lack of compatibility in the existing technology is solved, and efficient data transmission and flexible application scenarios are achieved.

CN119728806AActive Publication Date: 2025-03-28WUXI STARS MICRO SYSTEM TECHNOLOGIES CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411858239.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-16
Publication Date
2025-03-28
Estimated Expiration
2044-12-16

AI Technical Summary

Technical Problem

The lack of a network architecture compatible with Ethernet and InfiniBand switching networks in the prior art has led to high development costs and limited product application scenarios.

Method used

A data transmission system compatible with Ethernet and IB networks is designed. By multiplexing the physical layer, physical coding sub-layer and link control layer of Ethernet, combining interface adaptation module, Ethernet MAC layer module and IB link layer module, efficient processing and transmission of Ethernet and IB data is achieved.

Benefits of technology

It realizes compatible transmission of Ethernet and IB data, reduces the development and testing cost of developing IB switching products, improves the flexibility of switch networking, and supports more application scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119728806A_ABST
    Figure CN119728806A_ABST
Patent Text Reader

Abstract

The invention provides a data transmission system, a data receiving method and a data sending method. The system comprises a physical layer unit, a physical coding sub-layer unit, a link control layer unit and a port logic unit, the physical layer unit adopts an Ethernet physical layer unit structure to perform data interaction with the physical coding sub-layer unit; the physical coding sub-layer unit performs data interaction with the physical layer unit and the link control layer unit; the link control layer unit comprises an interface adaptation module, an Ethernet MAC layer module, an IB link layer module, a data receiving buffer area and a data sending buffer area; the interface adaptation module performs data interaction with the Ethernet MAC layer module or the IB link layer module, the Ethernet MAC layer module performs data processing in an Ethernet transmission mode, and the IB link layer module performs data processing in an IB transmission mode; the port logic unit comprises an inlet module and an outlet module, and the inlet module forwards the IB data; and the exit module sends the data to the link control layer unit.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of network communications, and in particular to a data transmission system, a data receiving method, and a data sending method. Background Art

[0002] With the growing demand for high-performance computing, cloud computing, and big data processing, network communication performance within data centers has become critical. Currently, Ethernet and InfiniBand (abbreviated as "IB") are two widely used network technologies. Ethernet is widely adopted due to its mature technology, low cost, and rich ecosystem; InfiniBand has become the first choice in the field of high-performance computing due to its excellent performance, high bandwidth, and low latency. However, the high cost of InfiniBand technology limits its deployment in a wider range of application scenarios. Therefore, a network architecture that is compatible with both Ethernet and InfiniBand switching is needed to reduce development costs and improve product competitiveness. Summary of the invention

[0003] The purpose of this application is to provide a data transmission system, a data receiving method and a data sending method, aiming to solve the technical problems in the related technology that there is no network architecture compatible with Ethernet and IB switching network and the development cost is high.

[0004] According to a first aspect of the present application, there is provided a data transmission system compatible with Ethernet and IB network, comprising: a physical layer unit, a physical coding sublayer unit, a link control layer unit and a port logic unit;

[0005] The physical layer unit uses an Ethernet physical layer unit structure to perform data exchange with a physical coding sublayer unit;

[0006] The physical coding sublayer unit exchanges data with the physical layer unit and the link control layer unit respectively;

[0007] The link control layer unit is located between the physical coding sublayer unit and the port logic unit, and includes an interface adapter module, an Ethernet MAC layer module, an IB link layer module, a data receiving buffer and a data sending buffer; the interface adapter module is used to perform data interaction with the Ethernet MAC layer module or the IB link layer module according to the currently configured data transmission mode, the Ethernet MAC layer module is used to perform data processing when the data transmission mode is the Ethernet transmission mode, and the IB link layer module is used to perform data processing when the data transmission mode is the IB transmission mode; wherein, the IB link layer module performs data interaction with the port logic unit through the data receiving buffer and the data sending buffer;

[0008] The port logic unit includes an entry module and an exit module. In the IB transmission mode, the entry module identifies IB data and forwards the IB data; in the IB transmission mode, the exit module edits and processes the acquired data according to a predefined IB message format and sends it to the link control layer unit.

[0009] In an optional implementation, the physical coding sublayer unit exchanges data with the link control layer unit via a CGMII interface, wherein a link control message in the IB transmission mode is identified by using an extended control code.

[0010] In an optional implementation, in the IB transmission mode, the interface adaptation module fills the preamble code and IPG field of the IB data from the link control layer unit, and sends the filled IB data to the physical coding sublayer unit; the interface adaptation module also deletes the preamble code and IPG field of the IB data from the physical coding sublayer unit, and sends it to the IB link layer module.

[0011] In an optional embodiment, in the IB transmission mode, in the data receiving direction, the IB link layer module is also used to implement the parsing of the link control message, and forward the parsed FCCL to the egress module of the port logic unit; in the data sending direction, the IB link layer module also encapsulates the FCTBS passed in by the egress module and the FCCL passed in by the ingress module into a link control message, and sends the link control message to the interface adapter module.

[0012] In an optional embodiment, the ingress module includes a programmable message parser, a search engine, an ingress traffic manager, a QOS scheduling module and an IB flow control receiving module; in the IB data transmission mode, the programmable message parser is used to parse the IB data and pass the IB data to the data buffer of the protocol-independent switching matrix unit, and the search engine searches for the destination routing information based on the message descriptor obtained by the analysis; the QOS scheduling module is used to implement queue priority scheduling; the IB flow control receiving module calculates the FCCL and sends the FCCL to the data sending end through the IB link control layer unit; in the Ethernet data transmission mode, the programmable message parser parses the received Ethernet data and passes the Ethernet data to the data buffer of the protocol-independent switching matrix unit, and the search engine queries the destination routing information through the message descriptor obtained by the analysis; the ingress traffic manager initiates a data forwarding request to the switching matrix unit to forward the Ethernet data to the egress module of the port logic unit indicated by the destination routing information through the switching matrix unit.

[0013] In an optional embodiment, the egress module includes an egress traffic manager, a message editor and an IB flow control sending module. In the IB transmission mode, the egress traffic manager receives a data reception request from a protocol-independent switching matrix unit, and reads IB data from a data buffer of the switching matrix based on a message descriptor carried in the data reception request; the message editor edits the read IB data according to the IB message format, and sends it to the Ethernet MAC layer module; the IB flow control sending module calculates the FCTBS based on the sent IB data, and implements a credit-based flow control function based on the FCCL of the data receiving end.

[0014] According to a second aspect of the present application, a data receiving method is provided. The method uses the data transmission system according to the first aspect to receive IB data or Ethernet data. The method comprises:

[0015] The physical layer unit receives the data and outputs it to the physical coding sublayer unit after completing the corresponding processing;

[0016] After the physical coding sublayer unit processes the received data, it transmits it to the interface adapter module of the link control layer unit through the CGMII interface;

[0017] When the pre-configured data transmission mode is the IB transmission mode, the interface adaptation module of the link control layer unit sends the received data to the IB link layer module of the link control layer unit;

[0018] The IB link layer module processes the received data and forwards it to the inlet module of the port logic unit, and forwards the FCCL in the flow control information corresponding to the data to the egress module of the port logic unit;

[0019] The ingress module of the port logic unit parses the data and forwards it through a protocol-independent switching matrix unit.

[0020] In an optional embodiment, the method further comprises:

[0021] When the pre-configured data transmission mode is the Ethernet transmission mode, the interface adapter module of the link control layer unit sends the received data to the Ethernet MAC layer module of the link control layer unit;

[0022] The Ethernet MAC layer module processes the received data and forwards it to the inlet module of the port logic unit;

[0023] The inlet module of the port logic unit parses the received data and forwards it through the protocol-independent switching matrix unit.

[0024] According to a third aspect of the present application, a data transmission method is provided, wherein the method uses the data transmission system according to the first aspect to transmit IB data or Ethernet data; the method comprises:

[0025] When the pre-configured data transmission mode is the IB transmission mode, the egress module of the port logic unit forwards the data to the IB link layer module of the link control layer unit through the data transmission buffer;

[0026] The IB link layer module processes the received data and sends it to the interface adapter module of the link control layer unit;

[0027] The interface adapter module processes the received data and sends it to the physical coding sublayer unit through the CGMII interface:

[0028] The physical coding sublayer unit processes the received data and sends the processed data to the physical layer unit;

[0029] The physical layer unit processes the received data and sends it out through a physical link.

[0030] In an optional embodiment, the method further comprises:

[0031] When the pre-configured data transmission mode is the Ethernet transmission mode, the egress module of the port logic unit forwards the data to the Ethernet MAC layer module of the link control layer unit through the data transmission buffer;

[0032] The Ethernet MAC layer module processes the received data and sends it to the interface adapter module of the link control layer unit;

[0033] The interface adapter module processes the received data and sends it to the physical coding sublayer unit through the CGMII interface;

[0034] The physical coding sublayer unit processes the received data and sends the processed data to the physical layer unit;

[0035] The physical layer unit processes the received data and sends it out through a physical link.

[0036] A third aspect of the present application provides an electronic device, including a processor and a memory, wherein the memory stores a plurality of instructions, and the processor is used to read the instructions and execute the method of the first aspect.

[0037] A fourth aspect of the present application provides a computer-readable storage medium, which stores a plurality of instructions, and the plurality of instructions can be read by a processor to execute the method of the first aspect.

[0038] Compared with the related art, the technical solution of this application has the following advantages:

[0039] The data transmission system compatible with Ethernet and IB networks provided in the present application reuses the Serdes frequency, electrical characteristics and physical layer of Ethernet, and can transmit both Ethernet data and IB data, thereby reducing the development and testing costs of IB switching products, improving the flexibility of switch networking, and supporting more application scenarios.

[0040] Other features and advantages of the present application will be described in the following description, and partly become apparent from the description, or be understood by practicing the present application. The purpose and other advantages of the present application can be realized and obtained through the structures and processes indicated in the description and the drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the related technologies, the drawings required for use in the embodiments or the related technical descriptions are briefly introduced below. It is obvious that the drawings described below are certain embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0042] Figure 1 It is a connection architecture diagram of an Ethernet switching network architecture according to related technology.

[0043] Figure 2A It is a schematic diagram of a data stream transmission link architecture in an Ethernet data transmission mode according to an exemplary embodiment of the present application.

[0044] Figure 2B 4 is a schematic diagram of the architecture of a data transmission system compatible with Ethernet and IB network according to an exemplary embodiment of the present application.

[0045] Figure 3 It is a schematic diagram of the message format structure of Ethernet data and IB data according to an exemplary embodiment of the present application.

[0046] Figure 4 It is a structural diagram of a port logic unit according to an exemplary embodiment of the present application.

[0047] Figure 5 It is a flowchart of a data receiving method according to an exemplary embodiment of the present application.

[0048] Figure 6 It is a flowchart of a data generation method according to an exemplary embodiment of the present application. DETAILED DESCRIPTION

[0049] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0050] The network switching architecture in related technologies is mainly based on a single technology, Ethernet or InfiniBand, and it is difficult to achieve compatibility between the two. This results in the need to develop InfiniBand switching products separately when a high-performance computing network is required, which increases development and testing costs and reduces product competitiveness. At the same time, the network architecture of a single technology also limits the scope of application of product network deployment.

[0051] The present application proposes a solution for realizing a network switching architecture compatible with InfiniBand and Ethernet switching, aiming to reduce development costs by reusing key components of the existing Ethernet switching system, such as the physical layer (PHY), physical coding sublayer (PCS), link control layer (MAC / LINK), port logic (PORT LOGIC) and switching fabric (Fabric). The present application uses an extended CGMII interface through the existing Ethernet interface, and optimizes the data buffering and flow control mechanism to realize efficient processing of Ethernet messages and InfiniBand messages.

[0052] like Figure 1 As shown in the figure, the Ethernet switching architecture mainly includes the physical layer PHY, the physical coding sublayer PCS, the link control layer MAC, the port logic Port Logic (ingress module, egress module) and the switching network Fabric.

[0053] The serial data stream first completes the conversion from analog signal to digital signal through the physical layer (PHY), realizes clock synchronization and recovery, and sends the data, clock signal and link status information converted from the analog signal to the physical coding sublayer (PCS) in the form of message data. In high-speed PHY scenarios, in order to improve data transmission efficiency, pulse amplitude modulation four-level (PAM4) technology is usually used.

[0054] After receiving the message data from the PHY, the PCS layer ensures the stability and efficiency of the link through automatic negotiation configuration and delay skew control. Once the link is locked, the PCS layer decodes the line message data and applies forward error correction (FEC) technology to improve the reliability of message data transmission. The PCS layer then passes the error-corrected message data to the media access control layer (MAC) through the GMII interface.

[0055] The Ethernet MAC layer is mainly responsible for error detection, flow control, and link status monitoring. It will further process the message data that passes the check and send the message data to the ingress module of the port logic.

[0056] In the Ingress module of Port Logic, the received message data is parsed by the Packet Parser, and the descriptor is extracted to form a data descriptor queue. At the same time, the data entity in the message data is passed to the data buffer. The data descriptor queue queries the destination routing information through the Lookup Engine. The Ingress traffic manager (Ingr_TM) initiates a forwarding request to the protocol-independent switching matrix (Fabric), and forwards the data descriptor queue to the egress module (Egress) of the destination Port Logic through the Fabric.

[0057] In the egress module, the descriptor of the message data received from the Fabric will guide the reading of the corresponding message data from the Data Buffer. Subsequently, the message data is edited and processed as necessary through the message editor (Packet Edit). After that, the edited message data is sent to the MAC layer for verification calculation and is encoded again by the PCS layer. Finally, the encoded message data is sent through the PHY layer.

[0058] In the above Figure 1 Based on the Ethernet switching architecture shown, the present application implements a fusion solution of Ethernet and IB network.

[0059] See also Figure 2A-2B As shown, the present application exemplarily proposes a data transmission system compatible with Ethernet and IB network, including: a physical layer unit, a physical coding sublayer unit, a link control layer unit and a port logic unit;

[0060] The physical layer unit uses the Ethernet physical layer unit structure to exchange data with the physical coding sublayer unit;

[0061] The physical coding sublayer unit exchanges data with the physical layer unit and the link control layer unit respectively;

[0062] The link control layer unit is located between the physical coding sublayer unit and the port logic unit, and includes an interface adapter module, an Ethernet MAC layer module, an IB link layer module, a data receiving buffer, and a data sending buffer; the interface adapter module is used to perform data interaction with the Ethernet MAC layer module or the IB link layer module according to the currently configured data transmission mode, the Ethernet MAC layer module is used to perform data processing when the data transmission mode is the Ethernet transmission mode, and the IB link layer module is used to perform data processing when the data transmission mode is the IB transmission mode; wherein, the IB link layer module performs data interaction with the port logic unit through the data receiving buffer and the data sending buffer;

[0063] The port logic unit includes an ingress module and an egress module. In the IB transmission mode, the ingress module identifies the IB data and forwards the IB data. In the IB transmission mode, the egress module edits and processes the acquired data according to the predefined IB message format and sends it to the link control layer unit.

[0064] Exemplarily, in a data transmission system compatible with Ethernet and IB networks, the physical layer (PHY) unit and the physical coding sublayer (PCS) unit have similar functions to those in the Ethernet switching architecture. The serial data stream first completes the conversion from analog signal to digital signal through the physical layer unit, and simultaneously realizes clock synchronization and recovery, data sampling, and serial-to-parallel conversion before sending the data, clock signal and link status information to the physical coding sublayer (PCS) unit. It should be noted that the serial data stream can be Ethernet data received from the transmitter or IB data. In this embodiment, a data transmission mode can be pre-configured, and the data transmission mode includes an Ethernet data transmission mode and an IB data transmission mode. When configured as the Ethernet data transmission mode, the data transmission system compatible with Ethernet and IB networks can transmit Ethernet data, that is, the above serial data stream is Ethernet data. When configured as the IB transmission mode, the data transmission system compatible with Ethernet and IB networks is used to transmit IB data, and the above serial data stream is IB data. In the IB transmission mode, in order to improve the data transmission efficiency, the physical layer unit can adopt the pulse amplitude modulation four-level (PAM4) technology. Among them, the physical layer unit uses the electrical standards and characteristics of the Ethernet physical layer and the physical coding method as the basis for data transmission.

[0065] Similarly, after receiving the data from the PHY unit (data after converting the serial data stream into a digital signal), the PCS sublayer unit ensures the stability and efficiency of the link through automatic negotiation configuration and delay deviation control. Normal data reception begins after data segmentation and synchronization code locking. For the received data, the PCS sublayer unit completes FEC (Forward Error Correction) error correction, lane sorting, synchronization code deletion, descrambling and decoding operations. After that, the PCS sublayer unit passes the data to the interface adapter module prmb_ipg in the LC (Link Control) layer unit through the CGMII interface.

[0066] The functions of the physical layer unit and the physical coding sublayer unit are described above with the data receiving process. It can be understood that during the data sending process, the physical layer unit receives data from the interface adapter module of the LC layer unit from the physical coding sublayer unit, and processes it in the physical coding sublayer unit. This processing process is opposite to the processing of the data received from the physical layer unit, such as 64b / 66b encoding of the data, generating data blocks, scrambling processing, data block distribution, and replacing and inserting synchronization codes. In addition, the physical coding sublayer unit also generates FEC codes and sends the encoded data to the physical layer unit. The physical layer unit realizes data serialization, converts digital signals into analog signals, and then sends them out through the physical link.

[0067] Exemplarily, the link control layer unit LC receives data from the PCS sublayer unit and sends it to the port logic unit after processing. It also receives data from the port logic unit and sends it to the PCS sublayer unit after reverse processing. In the data receiving direction, the interface adapter module of the link control layer unit processes the data, such as deleting the IPG (Inter-Packet Gap) and preamble. Then, according to different data transmission modes, the processed data is sent to the Ethernet MAC layer module or the IB link layer link module. Among them, see Figure 2A As shown in Figure 1, in Ethernet transmission mode, the Ethernet MAC layer module is similar to the Ethernet switching architecture mentioned above, and is mainly responsible for error detection, flow control, and link status monitoring. It further processes the Ethernet data that passes the check and sends the Ethernet data to the ingress module of the port logic (Port Logic); see Figure 2BAs shown, in the IB transmission mode, the link module implements the VCRC check and error packet marking of the IB data, and parses the link control message. Finally, the link module forwards the IB data to the ingress module ingress of the port logic unit port logic through rx_dbuf (Receive Data Buffer), and forwards the FCCL (Flow Control Credit Limit) information carried in the flow control information of the parsed link control message to the IB_FC_TX module of the egress module egress. At the same time, the link module is also responsible for the state control jump of the link, providing ecological compatibility for opensm (Open Subnet Manager) management.

[0068] It can be understood that in the data transmission direction, the interface adapter module, Ethernet MAC layer module, and IB link layer module of the link control layer unit perform the opposite processing. For example, in the IB transmission mode, the egress module of the port logic unit sends the data to the link module through tx_dbufier (data transmission buffer). The link module performs CRC calculation on the data and fills the calculated value into the VCRC field of the IB data. At the same time, the link module also encapsulates the FCTBS transmitted by the egress module and the FCCL flow control information transmitted by the ingress module into a link control message, and sends it to the prmb_ipg module together with the data packet. The prmb_ipg module fills the preamble and packet gap fields of the IB data from the link module or the Ethernet data from the Ethernet MAC layer module. The filled data is sent to the PCS sublayer unit through the CGMII interface. In Ethernet mode, the data processing process in the data transmission direction can refer to the existing technology and the description of the Ethernet switching architecture above, which will not be repeated here.

[0069] In some optional embodiments, the physical coding sublayer unit and the link control layer unit exchange data via a CGMII interface, wherein the link control message in the IB transmission mode is identified by an extended control code.

[0070] For example, when the link control message in the IB data starts to be transmitted, the control code of the CGMII (Clock-Gated GMII) interface uses a custom 0x55. The following describes the extension of the CGMII interface and the control code in detail.

[0071] In order to achieve efficient interaction between the PCS sublayer unit and the link control layer unit, this application expands the control coding of the CGMII interface. By making reasonable use of the reserved bits in the interface and drawing on the definition of the link control message start marker bit in the InfiniBand protocol, the recognition and transmission of IB (InfiniBand) link control type messages in the Ethernet link are realized. Among them, the CGMII interface expansion coding is shown in Table 1 below:

[0072] Table 1

[0073]

[0074] Among them, when the control identifier is 0, it indicates that the following is data; when the control identifier is 0, different control codes represent different control fields, such as 0xFB represents the start mark of the data frame, 0xFD represents the end mark of the data frame, 0xFE represents the frame error mark, and 0x55 represents the start mark of the link control message. 0x55 is a control code specifically extended for the link control message in the IB data. The link module parses the link control message in the data by identifying the 0x55. Similarly, when encapsulating the link message, the control code field of the link control message is filled with 0x55.

[0075] In some optional embodiments, in the IB transmission mode, the interface adaptation module fills the preamble code and IPG field of the IB data from the link control layer unit, and sends the filled IB data to the physical coding sublayer unit; the interface adaptation module also deletes the preamble code and IPG field of the IB data from the physical coding sublayer unit, and sends it to the IB link layer module.

[0076] Exemplarily, the interface adapter module is a newly added module in the present application to adapt to the forwarding of IB data, and the addition and deletion of the preamble and packet gap fields are completed by the interface adapter module. The following describes the message formats of Ethernet data and IB data in detail.

[0077] See also Figure 3As shown, the message format of Ethernet data ETH includes the following fields in sequence: IPG (packet gap field), preamble (preamble field), DA (destination MAC address), SA (source destination MAC address), TYPE (type), DATA (data) and FCS (Frame Check Sequence). The message format of IB data IBA includes the following fields in sequence: IPG (packet gap field), preamble (preamble field), LRH (local router header), DATA (data) and VCRC (Variant CRC, variant cyclic redundancy check). It can be seen that in the data transmission system of the present application, IB (InfiniBand) message data adopts a different encapsulation and transmission method relative to Ethernet data. Specifically, IB data uses the structure of {LRH, ETH_DATA, VCRC} instead of the {DMAC, SMAC, TYPE, ETH_DATA, FCS} structure in the Ethernet message for encapsulation and transmission.

[0078] In some optional embodiments, in the IB transmission mode, in the data receiving direction, the IB link layer module is also used to implement the parsing of the link control message, and forward the parsed FCCL to the egress module of the port logic unit; in the data sending direction, the IB link layer module also encapsulates the FCTBS transmitted by the egress module and the FCCL transmitted by the ingress module into a link control message, and sends the link control message to the interface adapter module.

[0079] Exemplarily, in the data receiving direction, the Prmb_ipg module sends the processed data to the Ethernet MAC layer module or the IB link layer module (ie, the Link module) according to different data transmission modes. In the IB transmission mode, the link module implements the VCRC check and error packet marking of the IB data, and parses the link control message therein. Finally, the link module forwards the IB data to the ingress module ingress of the port logic unit portlogic through rx_dbuf (Receive Data Buffer), and forwards the FCCL (Flow Control Credit Limit) information carried in the flow control information of the parsed link control message to the egress module egress of the port logic unit at the data sending end. At the same time, the link module is also responsible for the state control jump of the link, providing ecological compatibility for opensm (Open Subnet Manager) management.

[0080] In the data sending direction, the egress module of the port logic unit sends the data to the link module through tx_dbuffer (data sending buffer). The link module performs CRC calculation on the data and fills the calculated value into the VCRC field of the IB data. At the same time, the link module also encapsulates the FCTBS (FlowControl Total Blocks Sent) and FCCL (FlowControl Credit Limit) flow control information passed by the egress module of the port logic unit into a link control message, and sends it together with the data packet to the prmb_ipg module. The prmb_ipg module fills the preamble and packet gap fields of the IB data from the link module or the Ethernet data from the Ethernet MAC layer module. The filled data is sent to the PCS sublayer unit through the CGMII interface. Regarding the IB Link control status, it is closely related to the OPENSM (Open Subnet Manager) management platform. The development of IB_LINK is independent of Ethernet MAC, retaining the key IB link state control state machine and flow control logic, providing seamless compatibility with the OPENSM control platform, and providing a convenient and efficient management method for network management.

[0081] In some optional embodiments, the ingress module includes a programmable message parser, a search engine, an ingress traffic manager, a QOS scheduling module and an IB flow control receiving module; in the IB data transmission mode, the programmable message parser is used to parse the IB data and pass the IB data to the data buffer of the protocol-independent switching matrix unit, and the search engine searches for the destination routing information based on the message descriptor obtained by the analysis; the QOS scheduling module is used to implement queue priority scheduling: the IB flow control receiving module calculates the FCCL and sends the FCCL to the data sending end through the IB link control layer unit; in the Ethernet data transmission mode, the programmable message parser parses the received Ethernet data and passes the Ethernet data to the data buffer of the protocol-independent switching matrix unit, and the search engine queries the destination routing information through the message descriptor obtained by the analysis; the ingress traffic manager initiates a data forwarding request to the switching matrix unit to forward the Ethernet data to the egress module of the port logic unit indicated by the destination routing information through the switching matrix unit.

[0082] For example, see Figure 4As shown, in the IB transmission mode, in the Ingress module of the Port Logic unit, the input IB (InfiniBand) message data is first parsed by a programmable message parser (PacketParser) to identify the IB data and extract the message descriptor. At the same time, the parsed data entity is passed to the data buffer (Data Buffer) of the protocol-independent switching matrix unit Fabric. The descriptor queue queries the destination routing information through a configurable lookup engine (LookupEngine). The QOS scheduling module (IB_QOS) on the Ingress side implements the queue priority scheduling based on VL (Virtual Lane) defined in the IB protocol according to the basic QOS rules and enhanced QOS rules specified in the IBA (InfiniBandArchitecture). Subsequently, the IB data is forwarded to the Egress module of the destination Port Logic indicated in the destination routing information through Fabric.

[0083] In addition, the IB flow control receiving module (IB_FC_RX) of the Ingress module calculates the FCCL (Flow Control Credit Limit) based on the received IB data and the queue space in the Fabric's data buffer, and transmits it to the IB link layer module. The IB link layer module encapsulates the FCCL and the FCBTS calculated by the egress module into a link control message, and then sends it to the Egress module of the port logic unit at the data sending end through the physical link for calculation. The data sending end is the data sender in the data receiving direction, and the physical layer unit receives data through the physical link.

[0084] In Ethernet transmission mode, similar to the description of Ethernet switching architecture above, the Ingress module of the PortLogic unit parses the received message data through the programmable packet parser (Packet Parser), and extracts the message descriptor of the Ethernet message to form a data descriptor queue. At the same time, the data entity in the Ethernet data is passed to the data buffer (Data Buffer). The data descriptor queue queries the destination routing information through the configurable lookup engine (LookupEngine). The Ingress traffic manager (Ingr_TM) initiates a forwarding request to the protocol-independent switching matrix (Fabric), and forwards the data descriptor queue to the egress module (Egress) of the destination PortLogic unit through the Fabric.

[0085] In some optional embodiments, the egress module includes an egress traffic manager, a message editor and an IB flow control sending module. In the IB transmission mode, the egress traffic manager receives a data reception request from a protocol-independent switching matrix unit, and reads the IB data from the data buffer of the switching matrix based on the message descriptor carried in the data reception request; the message editor edits the read IB data according to the IB message format, and sends it to the Ethernet MAC layer module; the IB flow control sending module calculates the FCTBS based on the sent IB data, and implements a credit-based flow control function based on the FCCL of the data receiving end.

[0086] For example, see Figure 4 As shown in the figure, in the IB transmission mode, the egress flow control module (Ingr_TM) of the Egress module receives the message descriptor of the IB data from the Fabric, and reads the corresponding data from the data buffer (DataBufier) ​​of the received message descriptor. Subsequently, the message editor (Packet Edit) edits and processes the data packet according to the IB message format. The edited IB data message is sent to the IB link layer module for transmission. In addition, the IB flow control sending module (IB_FC_TX) of the Egress module calculates FCTBS based on the sent IB data, and implements the credit-based flow control function based on the FCCL of the data receiving end sent from the link control layer unit.

[0087] In Ethernet transmission mode, similar to the description in Ethernet switching architecture, the egress flow control module of the egress module Egress receives the message descriptor of Ethernet data from the Fabric unit, and reads the corresponding Ethernet data from the DataBufier based on the message descriptor. Subsequently, after the necessary editing and processing of the Ethernet data through the message editor (Packet Edit), it is sent to the Ethernet MAC layer module for verification calculation, and then encoded again by the PCS sublayer unit. Finally, the encoded message data is sent to the data receiving end through the PHY layer unit.

[0088] In some optional embodiments, the protocol-independent switching matrix unit Fabric fully reuses the Ethernet data switching network and data caching mechanism to achieve protocol-independent data exchange functions. This design not only simplifies the system architecture, but also reduces hardware costs and improves resource utilization.

[0089] The technical solution of this application has the following advantages:

[0090] The data transmission system compatible with Ethernet and IB networks provided in the present application reuses the Serdes frequency, electrical characteristics and physical layer of Ethernet, and can transmit both Ethernet data and IB data, thereby reducing the development and testing costs of IB switching products, improving the flexibility of switch networking, and supporting more application scenarios.

[0091] Accordingly, see Figure 5 As shown, the present application also exemplarily provides a data receiving method, which uses the data transmission system compatible with Ethernet and IB network mentioned above to receive IB data or Ethernet data, including:

[0092] In step S501, the physical layer unit receives data, and outputs it to the physical coding sublayer unit after completing corresponding processing;

[0093] In step S502, the physical coding sublayer unit processes the received data and transmits it to the interface adapter module of the link control layer unit through the CGMII interface;

[0094] In step S503, when the pre-configured data transmission mode is the IB transmission mode, the interface adapter module of the link control layer unit sends the received data to the IB link layer module of the link control layer unit;

[0095] In step S504, the IB link layer module processes the received data and forwards it to the ingress module of the port logic unit, and forwards the FCCL in the flow control information corresponding to the data to the egress module of the port logic unit;

[0096] In step S505, the ingress module of the port logic unit parses the data and forwards it through the protocol-independent switching matrix unit.

[0097] Exemplarily, in the direction of data stream reception, the data stream first passes through the PHY layer unit to complete analog-to-digital conversion, data sampling, and serial-to-parallel conversion before outputting to the PCS sublayer unit. The PCS sublayer unit begins to receive data normally after the data block and synchronization code are locked. For the received data, the PCS sublayer unit completes FEC (Forward Error Correction) error correction, lane (channel) sorting, synchronization code deletion, descrambling and decoding operations. Afterwards, PCSlane passes the data to the interface adapter module prmb_ipg in the LC (Link Control) layer unit through the CGMII interface.

[0098] The Prmb_ipg module deletes the IPG (Inter-Packet Gap) and preamble in the data. According to different data transmission modes, the processed data is sent to the Ethernet MAC layer module or link module. In the IB transmission mode, the processed data is sent to the link module, and in the Ethernet transmission mode, the processed data is sent to the Ethernet MAC layer module.

[0099] In the IB transmission mode, the link module implements the VCRC check of the message, the error packet marking, and parses the link control message. Finally, the link module forwards the data packet (that is, the data from the LRH field to the VCRC field in the IBA message format) to the ingress module of the port logic unit port logic through rx_dbuf (Receive Data Buffer), and forwards the FCCL (Flow Control Credit Limit) information carried in the flow control information to the IB_FC_TX module in the egress module. At the same time, the link module is also responsible for the state control jump of the link, providing ecological compatibility for opensm (Open Subnet Manager) management.

[0100] In some optional embodiments, the method further comprises:

[0101] When the pre-configured data transmission mode is the Ethernet transmission mode, the interface adapter module of the link control layer unit sends the received data to the Ethernet MAC layer module of the link control layer unit;

[0102] The Ethernet MAC layer module processes the received data and forwards it to the ingress module of the port logic unit;

[0103] The ingress module of the port logic unit parses the received data and forwards it through the protocol-independent switching matrix unit.

[0104] Exemplarily, in the Ethernet transmission mode, the processing of data by the Ethernet MAC layer module and the port logic unit is similar to the processing in the Ethernet switching architecture, which will not be described in detail here.

[0105] For other details of the above data receiving method, please refer to the above description of the data transmission system compatible with Ethernet and IB network, which will not be repeated here.

[0106] Accordingly, see Figure 6As shown, the present application also exemplarily provides a data sending method, which uses the data transmission system compatible with Ethernet and IB network mentioned above to send IB data or Ethernet data, including:

[0107] In step S601, when the pre-configured data transmission mode is the IB transmission mode, the egress module of the port logic unit forwards the data to the IB link layer module of the link control layer unit through the data transmission buffer;

[0108] In step S602, the IB link layer module processes the received data and sends it to the interface adapter module of the link control layer unit;

[0109] In step S603, the interface adapter module processes the received data and sends it to the physical coding sublayer unit through the CGMII interface;

[0110] In step S604, the physical coding sublayer unit processes the received data and sends it to the physical layer unit;

[0111] In step S605, the physical layer unit processes the received data and sends it out through the physical link.

[0112] Exemplarily, in the data flow sending direction, the egress module of the port logic unit Port logic sends the data to the link module through tx_dbuffer (data sending buffer). The link module performs CRC calculation on the data and fills the calculated value into the VCRC field of the IB message. At the same time, the link module also encapsulates the FCTBS passed in by the egress module and the FCCL flow control information passed in by the ingress module into a link control message, and sends it together with the data (that is, the data from LRH to VCRC in the IBA message format) to the prmb_ipg (Preamble and IPG, preamble and packet gap) module.

[0113] The Prmb_ipg module fills the preamble and packet gap fields of the IB data from the link module or the Ethernet data from the Ethernet MAC layer module. The filled data is sent to the PCS sublayer unit through the CGMII interface. It should be noted that when the link control message in the IB data starts to be transmitted, the control code of the CGMII interface uses the custom 0x55.

[0114] The PCS sublayer unit performs 64b / 66b encoding on the input data, generates data blocks, performs scrambling, distributes data blocks, and replaces and inserts synchronization codes, etc. In addition, the PCS sublayer unit also generates FEC (forward error correction) codes and sends the encoded data to the PHY layer unit.

[0115] The PHY layer unit serializes the data, converts the digital signal into an analog signal, and sends it out through a physical link.

[0116] In some optional embodiments, the method further comprises:

[0117] When the pre-configured data transmission mode is the Ethernet transmission mode, the egress module of the port logic unit forwards the data to the Ethernet MAC layer module of the link control layer unit through the data transmission buffer;

[0118] The Ethernet MAC layer module processes the received data and sends it to the interface adapter module of the link control layer unit;

[0119] The interface adapter module processes the received data and sends it to the physical coding sublayer unit through the CGMII interface;

[0120] The physical coding sublayer unit processes the received data and sends it to the physical layer unit;

[0121] The physical layer unit processes the received data and sends it out through the physical link.

[0122] Exemplarily, in the Ethernet transmission mode, the processing of data by the Ethernet MAC layer module and the port logic unit is similar to the processing in the Ethernet switching architecture, which will not be described in detail here.

[0123] For other details of the above data sending method, please refer to the above description of the data transmission system compatible with Ethernet and IB network, which will not be repeated here.

[0124] It is understood that the circuit structures, names and parameters described in the above embodiments are only examples. Those skilled in the art can also easily combine and adjust the structural features of the above embodiments according to the use requirements, and should not limit the concept of the present application to the specific details of the above examples.

[0125] Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that he or she may still modify the technical solutions described in the aforementioned embodiments, or make equivalent substitutions for some of the technical features therein; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims

1. A data transmission system compatible with Ethernet and IB network, characterized in that: include: Physical layer unit, physical coding sublayer unit, link control layer unit and port logic unit; The physical layer unit uses an Ethernet physical layer unit structure to perform data exchange with a physical coding sublayer unit; The physical coding sublayer unit exchanges data with the physical layer unit and the link control layer unit respectively; The link control layer unit is located between the physical coding sublayer unit and the port logic unit, and includes an interface adapter module, an Ethernet MAC layer module, an IB link layer module, a data receiving buffer and a data sending buffer; the interface adapter module is used to perform data interaction with the Ethernet MAC layer module or the IB link layer module according to the currently configured data transmission mode, the Ethernet MAC layer module is used to perform data processing when the data transmission mode is the Ethernet transmission mode, and the IB link layer module is used to perform data processing when the data transmission mode is the IB transmission mode; wherein, the IB link layer module performs data interaction with the port logic unit through the data receiving buffer and the data sending buffer; The port logic unit includes an inlet module and an outlet module. The inlet module identifies IB data and forwards the IB data in the IB transmission mode. In the IB transmission mode, the egress module edits and processes the acquired data according to a predefined IB message format and sends the data to the link control layer unit.

2. The data transmission system compatible with Ethernet and IB network according to claim 1, characterized in that: The physical coding sublayer unit and the link control layer unit exchange data via a CGMII interface, wherein the link control message in the IB transmission mode is identified by using an extended control code.

3. The data transmission system compatible with Ethernet and IB network according to claim 1, characterized in that: In the IB transmission mode, the interface adapter module fills the preamble code and IPG field of the IB data from the link control layer unit, and sends the filled IB data to the physical coding sublayer unit; the interface adapter module also deletes the preamble code and IPG field of the IB data from the physical coding sublayer unit, and sends it to the IB link layer module.

4. The data transmission system compatible with Ethernet and IB network according to claim 1, characterized in that: In the IB transmission mode, in the data receiving direction, the IB link layer module is also used to implement the parsing of the link control message, and forward the parsed FCCL to the egress module of the port logic unit; in the data sending direction, the IB link layer module also encapsulates the FCTBS passed in by the egress module and the FCCL passed in by the ingress module into a link control message, and sends the link control message to the interface adapter module.

5. The data transmission system compatible with Ethernet and IB network according to any one of claims 1 to 4, characterized in that: The ingress module includes a programmable message parser, a search engine, an ingress traffic manager, a QOS scheduling module and an IB traffic control receiving module; in the IB data transmission mode, the programmable message parser is used to parse the IB data and pass the IB data to the data buffer of the protocol-independent switching matrix unit, and the search engine searches for the destination routing information based on the parsed message descriptor; The QOS scheduling module is used to implement queue priority scheduling; the IB flow control receiving module calculates the FCCL and sends the FCCL to the data sending end through the IB link control layer unit; in the Ethernet data transmission mode, the programmable message parser parses the received Ethernet data and passes the Ethernet data to the protocol-independent switching matrix unit data buffer, and the search engine queries the destination routing information through the parsed message descriptor; the ingress traffic manager initiates a data forwarding request to the switching matrix unit to forward the Ethernet data to the egress module of the port logic unit indicated by the destination routing information through the switching matrix unit.

6. The data transmission system compatible with Ethernet and IB network according to any one of claims 1 to 4, characterized in that: The egress module includes an egress traffic manager, a message editor and an IB flow control sending module. In the IB transmission mode, the egress traffic manager receives a data receiving request from a protocol-independent switching matrix unit, and reads IB data from a data buffer of the switching matrix based on a message descriptor carried in the data receiving request; the message editor edits the read IB data according to the IB message format and sends it to the Ethernet MAC layer module; the IB flow control sending module calculates FCTBS based on the sent IB data, and implements a credit-based flow control function based on the FCCL of the data receiving end.

7. A data receiving method, characterized in that: The method utilizes the data transmission system according to any one of claims 1 to 6 to receive IB data or Ethernet data; the method comprises: The physical layer unit receives the data and outputs it to the physical coding sublayer unit after completing the corresponding processing; After the physical coding sublayer unit processes the received data, it transmits it to the interface adapter module of the link control layer unit through the CGMII interface; When the pre-configured data transmission mode is the IB transmission mode, the interface adaptation module of the link control layer unit sends the received data to the IB link layer module of the link control layer unit; The IB link layer module processes the received data and forwards it to the inlet module of the port logic unit, and forwards the FCCL in the flow control information corresponding to the data to the egress module of the port logic unit; The ingress module of the port logic unit parses the data and forwards it through a protocol-independent switching matrix unit.

8. The data receiving method according to claim 7, characterized in that: The method further comprises: When the pre-configured data transmission mode is the Ethernet transmission mode, the interface adapter module of the link control layer unit sends the received data to the Ethernet MAC layer module of the link control layer unit; The Ethernet MAC layer module processes the received data and forwards it to the inlet module of the port logic unit; The inlet module of the port logic unit parses the received data and forwards it through the protocol-independent switching matrix unit.

9. A data transmission method, characterized in that: The method uses the data transmission system according to any one of claims 1 to 6 to send IB data or Ethernet data; the method comprises: When the pre-configured data transmission mode is the IB transmission mode, the egress module of the port logic unit forwards the data to the IB link layer module of the link control layer unit through the data transmission buffer; The IB link layer module processes the received data and sends it to the interface adapter module of the link control layer unit; The interface adapter module processes the received data and sends it to the physical coding sublayer unit through the CGMII interface; The physical coding sublayer unit processes the received data and sends the processed data to the physical layer unit; The physical layer unit processes the received data and sends it out through a physical link.

10. The data transmission method according to claim 9, characterized in that: The method further comprises: When the pre-configured data transmission mode is the Ethernet transmission mode, the egress module of the port logic unit forwards the data to the Ethernet MAC layer module of the link control layer unit through the data transmission buffer; The Ethernet MAC layer module processes the received data and sends it to the interface adapter module of the link control layer unit; The interface adapter module processes the received data and sends it to the physical coding sublayer unit through the CGMII interface; The physical coding sublayer unit processes the received data and sends the processed data to the physical layer unit; The physical layer unit processes the received data and sends it out through a physical link.

Citation Information

Patent Citations

  • Ethernet network physical layer cross apparatus and cross method

    CN101083666A

  • Hierarchical / lossless packet preemption to reduce latency jitter in flow-controlled packet-based networks

    CN105359471A

  • Dual-redundancy gigabit ethernet media access controller IP core based on FPGA

    CN105406998A

  • Unified switching architecture suitable for Multi-die packaged chip

    CN118101595A

  • Method and System for Infiniband Over Ethernet by Mapping an Ethernet Media Access Control (MAC) Address to an Infiniband Local Identifier (LID)

    US20090141727A1