A data transmission system, a data receiving method and a data sending method

By designing a data transmission system compatible with both Ethernet and InfiniBand, the incompatibility between Ethernet and InfiniBand switching network architectures was resolved, enabling low-cost and efficient data transmission and improving the flexibility and application scope of the switch.

CN119728806BActive Publication Date: 2025-12-09WUXI STARS MICRO SYSTEM TECHNOLOGIES CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

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

AI Technical Summary

Technical Problem

The incompatibility between Ethernet and InfiniBand switching network architectures in existing technologies leads to high development costs and limits the application scenarios and competitiveness of products.

Method used

Design a data transmission system compatible with Ethernet and InfiniBand. By reusing the physical layer, physical coding sublayer, link control layer and port logic unit of Ethernet, and adopting an extended CGMII interface and optimized data buffering and flow control mechanism, the system can achieve efficient processing of Ethernet and InfiniBand packets.

Benefits of technology

It reduces the development and testing costs of InfiniBand switching products, improves the flexibility of switch networking, supports more application scenarios, and reuses Ethernet's SerDes frequency points and electrical characteristics.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119728806B_ABST
    Figure CN119728806B_ABST
Patent Text Reader

Abstract

The application provides a data transmission system, a data receiving method and a data sending method. The system comprises a physical layer unit, a physical coding sublayer unit, a link control layer unit and a port logic unit. The physical layer unit adopts an Ethernet physical layer unit structure to interact with the physical coding sublayer unit. The physical coding sublayer unit interacts 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 and a data sending buffer. The interface adaptation module interacts with the Ethernet MAC layer module or the IB link layer module. The Ethernet MAC layer module processes data in an Ethernet transmission mode. The IB link layer module processes data in an IB transmission mode. The port logic unit comprises an entry module and an exit module. The entry module sends out IB data. The exit module sends 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 belongs to the field of network communication, and particularly relates to a data transmission system, a data receiving method and a data sending method. BACKGROUND

[0002] With the increasing demand for high-performance computing, cloud computing and big data processing, the network communication performance in the data center becomes crucial. Currently, Ethernet and InfiniBand (IB) are two widely used network technologies. Ethernet is widely adopted due to its mature technology, low cost and rich ecosystem; InfiniBand becomes the first choice in the field of high-performance computing due to its excellent performance, high bandwidth and low latency. However, the cost of InfiniBand technology is relatively high, which limits its deployment in more extensive application scenarios. Therefore, a network architecture that can simultaneously support Ethernet and InfiniBand switching is needed to reduce development costs and improve product competitiveness. SUMMARY

[0003] The present application aims to provide a data transmission system, a data receiving method and a data sending method, which aims to solve the technical problem of high development cost due to the lack of network architecture compatible with Ethernet and IB switching network in the related art.

[0004] According to a first aspect of the present application, a data transmission system compatible with Ethernet and IB network is provided, 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 adopts an Ethernet physical layer unit structure to interact with the physical coding sublayer unit for data;

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

[0007] The link control layer unit is located between the physical coding sublayer unit and the port logic unit, and comprises an interface adaptation module, an Ethernet MAC layer module, an IB link layer module, a data receiving buffer and a data sending buffer; the interface adaptation module is used to interact with the Ethernet MAC layer module or the IB link layer module for data according to the currently configured data transmission mode, the Ethernet MAC layer module is used to process data when the data transmission mode is Ethernet transmission mode, and the IB link layer module is used to process data when the data transmission mode is IB transmission mode; wherein the IB link layer module interacts with the port logic unit for data through the data receiving buffer and the data sending buffer;

[0008] The port logic unit comprises an ingress module and an egress module, the ingress module identifies IB data in IB transmission mode and sends the IB data out, and the egress module sends the data obtained after editing processing according to a predefined IB message format to the link control layer unit in IB transmission mode.

[0009] In an optional embodiment, the physical coding sublayer unit and the link control layer unit exchange data through a CGMII interface, wherein an extended control code is used to identify the link control message in IB transmission mode.

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

[0011] In an optional embodiment, in the data receiving direction, the IB link layer module is also used to realize the parsing of the link control message and forward the FCCL obtained by parsing to the egress module of the port logic unit, and in the data sending direction, the IB link layer module 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 adaptation module.

[0012] In an optional embodiment, the ingress module comprises a programmable message parser, a lookup engine, an ingress traffic manager, a QOS scheduling module and an IB flow control receiving module, the programmable message parser is used to parse IB data and transmit the IB data to the data buffer of the protocol-independent switching matrix unit in IB data transmission mode, the lookup engine looks up the destination routing information based on the parsed message descriptor, the QOS scheduling module is used to realize queue priority scheduling, and 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, the programmable message parser parses the received Ethernet data and transmits the Ethernet data to the data buffer of the protocol-independent switching matrix unit in Ethernet data transmission mode, the lookup engine queries the destination routing information through the parsed message descriptor, and 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 comprises an egress flow manager, a packet editor and an IB flow control sending module. In the IB transmission mode, the egress flow manager receives a data receiving request from the protocol-independent switching matrix unit, reads IB data from a data buffer of the switching matrix based on a packet descriptor carried by the data receiving request, and sends the edited IB data to the Ethernet MAC layer module after the packet editor edits the read IB data according to an IB packet format; the IB flow control sending module calculates FCTBS according to the sent IB data, and implements a credit-based flow control function according to the FCCL of the data receiving end.

[0014] According to a second aspect of the present application, a data receiving method is provided, which utilizes the data transmission system of the first aspect to receive IB data or Ethernet data; the method comprises:

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

[0016] The physical coding sublayer unit transmits the received data to the interface adaptation module of the link control layer unit through the CGMII interface after processing the data;

[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 forwards the processed data 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;

[0019] The ingress module of the port logic unit analyzes the data and transmits the data through the 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 adaptation 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 forwards the processed data to the ingress module of the port logic unit after processing the data;

[0023] The ingress module of the port logic unit analyzes the received data and transmits the data through the protocol-independent switching matrix unit.

[0024] According to a third aspect of the present application, a data sending method is provided, which utilizes the data transmission system of the first aspect to send 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 sending buffer;

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

[0027] The interface adaptation module processes the received data and sends the data to the physical coding sublayer unit through the CGMII interface;

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

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

[0030] In an optional implementation, 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 sending buffer;

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

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

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

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

[0036] The third aspect of the present application provides an electronic device, which comprises a processor and a memory, the memory stores a plurality of instructions, and the processor is configured to read the instructions and execute the method of the first aspect.

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

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

[0039] The data transmission system compatible with the Ethernet and IB network provided by the present application multiplexes the Serdes frequency point, electrical characteristics and physical layer of the Ethernet, can transmit Ethernet data and IB data, reduces the development and test cost of developing IB switching products, improves the flexibility of the switch network, and supports more application scenarios.

[0040] Other features and advantages of the present application will be described in the following description, and some will become apparent from the description, or will be understood by those skilled in the art through implementation of the present application. The purpose and other advantages of the present application can be achieved and obtained by the structure and process indicated in the specification and the drawings. BRIEF DESCRIPTION OF DRAWINGS

[0041] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the related art, the drawings needed to be used in the embodiment or related art description will be briefly introduced. Obviously, the drawings described below are some embodiments of the present application, and those skilled in the art can obtain other drawings according to these drawings without creating any creative labor.

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

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

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

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

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

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

[0048] Figure 6 is a flow schematic diagram of a data generating method according to an exemplary embodiment of the present application. DETAILED DESCRIPTION

[0049] In order to make the purposes, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are some but not all of the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative work fall within the protection scope of the present application.

[0050] The network switching architecture in the related art is mainly based on a single technology of Ethernet or InfiniBand, and it is difficult to realize compatibility between the two. This leads to the fact that when a high-performance computing network is needed, an InfiniBand switching product must be developed separately, which increases the development and testing cost and reduces the product competitiveness. At the same time, the single technology of the network architecture also limits the application range of the product network deployment.

[0051] The present application proposes a scheme of a network switching architecture realizing compatible InfiniBand and Ethernet switching, aiming to reduce the development cost by multiplexing key components of the existing Ethernet switching system, such as the physical layer (PHY), the physical coding sublayer (PCS), the link control layer (MAC / LINK), the port logic (PORT LOGIC) and the switching network (Fabric). The present application realizes efficient processing of Ethernet and InfiniBand messages by using an extended CGMII interface through the existing Ethernet interface, and optimizing the data buffer and flow control mechanism.

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

[0053] The serial data stream first completes the conversion from an analog signal to a digital signal through the physical layer (PHY), realizes clock synchronization and recovery at the same time, and sends the data, clock signal and link state information converted from the analog signal to the physical coding sublayer (PCS) in the form of message data. In the high-speed PHY scenario, in order to improve the data transmission efficiency, the 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 deviation control. Once the link is locked, the PCS layer decodes the line message data and applies the forward error correction (FEC) technology to improve the reliability of the message data transmission. Subsequently, the PCS layer transmits 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 state monitoring. It further processes the message data detected by the check and sends the message data to the ingress module of the port logic (Port Logic).

[0056] In the ingress module of the Port Logic, the message data received is parsed by the packet parser (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 transmitted to the data buffer (Data Buffer). The data descriptor queue is queried for destination routing information through the lookup engine (Lookup Engine). The traffic manager (Ingr_TM) of the ingress 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 Egress, the descriptor of the message data received from the Fabric guides the reading of the corresponding message data from the Data Buffer. Then, the message data is processed by the packet editor (Packet Edit) as necessary. After that, the edited message data is sent to the MAC layer for check calculation and again through the encoding process of the PCS layer. Finally, the encoded message data is sent out through the PHY layer.

[0058] Based on the Ethernet switching architecture shown in the above Figure 1 The application realizes the fusion scheme of Ethernet and IB network based on the Ethernet switching architecture shown in the above

[0059] Referring to Figures 2A-2B The application exemplarily proposes 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.

[0060] The physical layer unit adopts an Ethernet physical layer unit structure to interact with the physical coding sublayer unit for data;

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

[0062] The link control layer unit is located between the physical coding sublayer unit and the port logic unit, and includes an interface adaptation module, an Ethernet MAC layer module, an IB link layer module, a data receiving buffer and a data sending buffer; the interface adaptation module is used for 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 for data processing when the data transmission mode is an Ethernet transmission mode, and the IB link layer module is used for data processing when the data transmission mode is an IB transmission mode; wherein the IB link layer module interacts 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; the ingress module, in the IB transmission mode, identifies IB data and sends the IB data out; and the egress module, in the IB transmission mode, sends the obtained data to the link control layer unit after editing and processing the data according to a predefined IB message format.

[0064] Exemplarily, in the data transmission system compatible with the Ethernet and the IB network, the physical layer (PHY) unit and the physical coding sublayer (PCS) unit are similar to the functions in the Ethernet switching architecture; a serial data stream is first converted from an analog signal to a digital signal through the physical layer unit, while realizing clock synchronization and recovery, data sampling, and serial-parallel conversion, and then the data, clock signals and link state information are sent to the physical coding sublayer (PCS) unit. It should be noted that the serial data stream can be Ethernet data received from a sending end or IB data. In this embodiment, a data transmission mode can be pre-configured, the data transmission mode including 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 the Ethernet and the IB network can transmit Ethernet data, that is, the serial data stream is Ethernet data; and when configured as the IB transmission mode, the data transmission system compatible with the Ethernet and the IB network is used for transmitting IB data, and then the 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 a pulse amplitude modulation four-level (PAM4) technology. The physical layer unit takes the electrical standard and characteristics of the Ethernet physical layer and the physical coding mode as the basis of data transmission.

[0065] Similarly, the PCS sub-layer unit, after receiving data (data after converting serial data stream into digital signal) from the PHY unit, ensures the stability and efficiency of the link through automatic negotiation configuration and delay skew control. After data block and synchronization code locking, normal data reception is started. For the received data, the PCS sub-layer unit completes FEC (Forward Error Correction) correction, lane ordering, synchronization code deletion, descrambling and decoding operations. Then, the PCS sub-layer unit delivers the data to the interface adaptation 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 sub-layer unit are described above in the data reception process. It can be understood that in the data transmission process, the physical layer unit receives data from the interface adaptation module in the LC layer unit, and performs the processing of the physical coding sub-layer unit on the data, which is opposite to the processing performed on the data received from the physical layer unit, for example, 64b / 66b encoding of the data, generation of data blocks, scrambling processing, data block distribution, and replacement of insertion of synchronization codes, etc. In addition, the physical coding sub-layer unit also performs FEC encoding generation, and sends the encoded data to the physical layer unit. The physical layer unit realizes serialization of the data, converts the digital signal into an analog signal, and then sends it out through the physical link.

[0067] Exemplarily, the LC (Link Control) layer unit receives data from the PCS sub-layer unit, and after processing, sends it to the port logic unit, and also receives data from the port logic unit, and after reverse processing, sends it to the PCS sub-layer unit. In the data reception direction, the interface adaptation module of the LC layer unit processes the data, such as deletion of IPG (Inter-Packet Gap) and preamble, etc. Then, according to different data transmission modes, the processed data is respectively sent to the Ethernet MAC layer module or the IB link layer module. Among them, as shown in Figure 2A In the Ethernet transmission mode, the Ethernet MAC layer module is similar to the above-mentioned Ethernet switch architecture, and is mainly responsible for error detection, flow control, and link state monitoring, etc. It further processes the Ethernet data detected by the check, and sends the Ethernet data to the ingress module of the port logic (Port Logic); see Figure 2BAs shown, in IB transmission mode, the link module implements VCRC check, error packet marking of IB data, and parses the link control packet therein. Finally, the link module forwards the IB data to the ingress module of the port logic through the 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 packet to the IB_FC_TX module of the egress module. Meanwhile, the link module is also responsible for the state control jump of the link, and provides ecological compatibility for the opensm (Open Subnet Manager) management.

[0068] It can be understood that, in the data sending direction, the interface adaptation module of the link control layer unit, the Ethernet MAC layer module, and the IB link layer module perform reverse processing, such as, in IB transmission mode, the egress module of the port logic sends data to the link module through the tx_dbufier (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. Meanwhile, 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 packet, and sends the link control packet to the prmb_ipg module together with the data packet. The prmb_ipg module fills the preamble and the inter-packet gap field 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 the Ethernet mode, the data processing process in the data sending direction can refer to the prior art and the description of the Ethernet switch architecture in the foregoing, and will not be described herein again.

[0069] In some optional embodiments, the physical coding sublayer unit and the link control layer unit exchange data through the CGMII interface, wherein the extended control code is used to identify the link control packet in IB transmission mode.

[0070] Exemplarily, when the link control packet in the IB data starts to be transmitted, the control code of the CGMII (Clock-Gated GMII) interface uses a custom 0x55. The CGMII interface and the extension of the control code are described in detail below.

[0071] In order to realize efficient interaction between the PCS sublayer unit and the link control layer unit, the control code of the CGMII interface is extended in the application. By reasonably using the reserved bits in the interface, the definition of the start marker bit of the link control message in the InfiniBand protocol is used for reference, and the identification and transmission of the IB (InfiniBand) link control type message in the Ethernet link are realized. The CGMII interface extension code is shown in Table 1 as follows:

[0072] Table 1

[0073]

[0074] When the control identifier is 0, it means that the following carries data; when the control identifier is 0, different control codes represent different control fields, such as 0xFB representing the start marker of the data frame, 0xFD representing the end marker of the data frame, 0xFE representing the frame error marker, and 0x55 representing the start marker of the link control message. The 0x55 is a control code specially extended for the link control message in the IB data, and the link module parses the link control message in the data by identifying the 0x55. Similarly, when encapsulating the link message, 0x55 is filled in the control code field of the link control message.

[0075] In some optional embodiments, in the IB transmission mode, the interface adaptation module fills the preamble and IPG field for 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 sends the IB data from the physical coding sublayer unit to the IB link layer module after deleting the preamble and IPG field.

[0076] Exemplarily, the interface adaptation module is a new module added by the application to adapt to the forwarding of IB data, and the addition and deletion of the preamble and the inter-packet gap field are completed by the interface adaptation module. The message formats of the Ethernet data and the IB data are described in detail as follows.

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

[0078] In some optional embodiments, in the IB transmission mode, the IB link layer module is further configured to implement parsing of the link control message and forward the parsed FCCL to the egress module of the port logic unit in the data receiving direction; and the IB link layer module is further configured to encapsulate the FCTBS transmitted by the egress module and the FCCL transmitted by the ingress module into a link control message and transmit the link control message to the interface adaptation module in the data transmitting direction.

[0079] Exemplarily, in the data receiving direction, the Prmb_ipg module transmits the processed data to the Ethernet MAC layer module or the IB link layer module (i.e., Link module) according to different data transmission modes. In the IB transmission mode, the link module implements VCRC check, error packet marking of the IB data, and parsing of the link control message. Finally, the link module forwards the IB data to the ingress module of the port logic unit portlogic through the 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 of the port logic unit in the data transmitting direction. Meanwhile, the link module is also responsible for the state control jump of the link and provides ecological compatibility for the opensm (Open Subnet Manager) management.

[0080] In the data sending direction, the egress module of the port logic unit sends data to the link module through the 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. Meanwhile, the link module also encapsulates the FCTBS (Flow Control Total Blocks Sent) and FCCL (Flow Control Credit Limit) flow control information sent by the egress module of the port logic unit and the ingress module into a link control packet and sends the packet to the prmb_ipg module together with the data packet. The prmb_ipg module fills the preamble and the inter-packet gap field 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 sub-layer unit through the CGMII interface. As to the IB Link link control state, it is closely related to the OPENSM (Open Subnet Manager) management platform. The development of the IB_LINK is independent of the Ethernet MAC, and the key IB link state control state machine and flow control logic are reserved, thereby providing compatibility with the OPENSM control platform and providing a convenient and efficient management means for network management.

[0081] In some optional embodiments, the ingress module comprises a programmable packet parser, a lookup engine, an ingress flow manager, a QOS scheduling module and an IB flow control receiving module; in the IB data transmission mode, the programmable packet parser is used to parse the IB data and deliver the IB data to the data buffer of the protocol-independent switching matrix unit, the lookup engine looks up the destination routing information based on the parsed packet 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 packet parser parses the received Ethernet data and delivers the Ethernet data to the data buffer of the protocol-independent switching matrix unit, the lookup engine queries the destination routing information through the parsed packet descriptor; the ingress flow 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] Exemplarily, referring to Figure 4As shown, in IB transport mode, at the ingress module of the Port Logic unit, the incoming IB (InfiniBand) packet data is first parsed by the programmable packet parser to identify the IB data and extract the packet descriptor. Meanwhile, the parsed data entity is passed to the data buffer of the protocol-independent switch matrix unit Fabric. The descriptor queue is queried for the destination routing information by the configurable lookup engine. The QOS scheduling module (IB_QOS) at the ingress end implements the queue priority scheduling based on the VL (Virtual Lane) defined in the IB protocol according to the basic QOS rules and enhanced QOS rules specified in the IBA (InfiniBand Architecture). Subsequently, the IB data is forwarded to the egress module of the destination Port Logic unit through the Fabric.

[0083] In addition, the IB flow control receiving module (IB_FC_RX) of the ingress module calculates the FCCL (Flow Control Credit Limit) according to the received IB data and the queue space in the data buffer of the Fabric, 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 packet, and sends it to the egress module of the port logic unit of the data sending end through the physical link for calculation. The data sending end is the data sending party in the data receiving direction, and the physical layer unit receives data through the physical link.

[0084] In Ethernet transport mode, similar to the description in the Ethernet switch architecture described above, the ingress module of the Port Logic unit parses the received packet data by the programmable packet parser, and extracts the packet descriptor of the Ethernet packet to form a data descriptor queue. At the same time, the data entity in the Ethernet data is passed to the data buffer. The data descriptor queue is queried for the destination routing information by the configurable lookup engine. The traffic manager (Ingr_TM) at the ingress initiates a forwarding request to the protocol-independent switch matrix (Fabric), and forwards the data descriptor queue to the egress module (Egress) of the destination Port Logic unit through the Fabric.

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

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

[0087] In the Ethernet transmission mode, similar to the description in the Ethernet switching architecture, the egress flow control module of the egress module receives a packet descriptor of Ethernet data from the Fabric unit, and reads corresponding Ethernet data from the DataBuffer based on the packet descriptor. Subsequently, the Ethernet data is edited by the packet editor (Packet Edit) as necessary, and is sent to the Ethernet MAC layer module for verification calculation, and is again subjected to encoding processing by the PCS sublayer unit. Finally, the encoded packet 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 multiplexes the Ethernet data switching network and the data caching mechanism, and implements a protocol-independent data switching function. This design not only simplifies the system architecture, but also reduces the hardware cost and improves the resource utilization.

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

[0090] The data transmission system compatible with the Ethernet and IB network multiplexes the Serdes frequency point, electrical characteristics and physical layer of the Ethernet, can transmit Ethernet data and IB data, reduces the development and test cost of developing IB exchange products, improves the flexibility of the switch network, and supports more application scenarios.

[0091] Correspondingly, referring to Figure 5 The application also exemplarily provides a data receiving method, which utilizes the data transmission system compatible with the Ethernet and IB network, receives IB data or Ethernet data, and comprises the following steps:

[0092] In step S501, the physical layer unit receives data, and outputs the data 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 the data to the interface adaptation module of the link control layer unit through the CGMII interface;

[0094] In step S503, when the preconfigured 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;

[0095] In step S504, the IB link layer module processes the received data, forwards the data 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 analyzes the data, and transmits the data through the protocol-independent switching matrix unit.

[0097] Exemplarily, in the data stream receiving direction, the data stream first completes analog-to-digital conversion, data sampling, and serial-to-parallel conversion through the PHY layer unit, and is output to the PCS sublayer unit. After the data block and synchronization code are locked, the PCS sublayer unit starts to normally receive data. For the received data, the PCS sublayer unit completes FEC (Forward Error Correction) error correction, lane sorting, synchronization code deletion, descrambling and decoding operations. Then, the PCS lane transmits the data to the interface adaptation module prmb_ipg in the LC (Link Control) layer unit through the CGMII interface.

[0098] The Prmb_ipg module completes the deletion of IPG (Inter-Packet Gap) and preamble in the data. The processed data is sent to the MAC layer module of the Ethernet or the link module according to different data transmission modes. 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 MAC layer module of the Ethernet.

[0099] In the IB transmission mode, the link module implements VCRC check of the message, error packet marking, and analyzes the link control message. Finally, the link module forwards the data packet (i.e. the data from the field LRH to the VCRC field in the IBA message format) to the ingress module of the port logic through the 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, and provides ecological compatibility for the 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 adaptation 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 forwards the processed data to the ingress module of the port logic after processing the received data;

[0103] The ingress module of the port logic transmits the parsed data out through the protocol-independent switching matrix unit.

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

[0105] Other details of the above data receiving method can be referred to the description of the data transmission system compatible with the Ethernet and IB network above, which will not be described here.

[0106] Correspondingly, referring to Figure 6As shown, the application also exemplarily provides a data sending method, which utilizes the data transmission system of the compatible Ethernet and IB network above, sends IB data or Ethernet data, and comprises the following steps:

[0107] In step S601, when the pre-configured data transmission mode is 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 sending buffer;

[0108] In step S602, the IB link layer module sends the processed data to the interface adaptation module of the link control layer unit;

[0109] In step S603, the interface adaptation module sends the processed data to the physical coding sublayer unit through the CGMII interface;

[0110] In step S604, the physical coding sublayer unit sends the processed data to the physical layer unit;

[0111] In step S605, the physical layer unit sends the processed data 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 the 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 packet. Meanwhile, 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 packet, and sends the data (i.e. the data between LRH and VCRC in the IBA packet format) and the link control packet 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 packet in the IB data starts to be transmitted, the control code of the CGMII interface uses a custom 0x55.

[0114] The PCS sublayer unit performs 64b / 66b encoding on the input data, generates data blocks, performs scrambling processing, data block distribution, and replaces and inserts synchronization codes, etc. In addition, the PCS sublayer unit also performs FEC (forward error correction) encoding generation, 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 transmits the analog signal through the physical link.

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

[0117] When the preconfigured 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 sending buffer;

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

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

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

[0121] The physical layer unit processes the received data and transmits the processed data through the physical link.

[0122] Exemplarily, in the Ethernet transmission mode, the processing of the 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 herein.

[0123] Other details of the above data sending method can be found in the description of the data transmission system compatible with the Ethernet and the IB network, which will not be described herein.

[0124] It can be understood that the circuit structure, name and parameter 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 multiple embodiments according to the use needs, and the concept of the present application should not be limited to the specific details of the above examples.

[0125] Although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that the technical solutions recorded in the foregoing embodiments can be modified, or some technical features can be replaced by equivalents; and these modifications or replacements do not make the essence of the corresponding technical solutions 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 networks, 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 interact with the physical coding sublayer unit for data exchange. The physical coding sublayer unit interacts 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 adaptation module, an Ethernet MAC layer module, an IB link layer module, a data receive buffer, and a data send buffer. The interface adaptation module is used to interact 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 process data when the data transmission mode is Ethernet transmission mode, and the IB link layer module is used to process data when the data transmission mode is IB transmission mode. The IB link layer module interacts with the port logic unit through the data receive buffer and the data send buffer. The port logic unit includes an ingress module and an egress module. In IB transmission mode, the ingress module identifies IB data and forwards it. In IB transmission mode, the egress module edits and processes the acquired data according to a predefined IB message format and sends it to the link control layer unit. The physical coding sublayer unit and the link control layer unit exchange data through the CGMII interface. The link control messages in IB transmission mode are identified by extended control coding. In IB transmission mode, the interface adaptation module fills the IB data from the link control layer unit with preamble and IPG fields, and sends the filled IB data to the physical coding sublayer unit; the interface adaptation module also deletes the preamble and IPG fields from the IB data from the physical coding sublayer unit before sending it to the IB link layer module. In IB transmission mode, in the data receiving direction, the IB link layer module is also used to parse 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 is also used to encapsulate the FCTBS passed from the egress module and the FCCL passed from the ingress module into a link control message and send the link control message to the interface adapter module.

2. The data transmission system compatible with Ethernet and IB networks according to claim 1, characterized in that, The ingress module includes a programmable message parser, a lookup engine, an ingress traffic manager, a QoS scheduling module, and an IB traffic control receiving module. In IB data transmission mode, the programmable message parser is used to parse IB data and pass the IB data to the data buffer of the protocol-independent switching matrix unit. The lookup engine searches for 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 link control layer unit; in 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; the lookup 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 exit module of the port logical unit indicated by the destination routing information through the switching matrix unit.

3. The data transmission system compatible with Ethernet and IB networks according to claim 1, characterized in that, The egress module includes an egress flow manager, a message editor, and an IB flow control sending module. In IB transmission mode, the egress flow manager receives data reception requests from protocol-independent switching matrix units and reads 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 FCTBS based on the sent IB data and implements credit-based flow control based on the FCCL of the data receiver.

4. A data receiving method, characterized in that, The method utilizes the data transmission system according to any one of claims 1-3 to receive IB data or Ethernet data; the method includes: The physical layer unit receives data, processes it accordingly, and then outputs it to the physical coding sublayer unit. After processing the received data, the physical coding sublayer unit transmits it to the interface adaptation module of the link control layer unit through the CGMII interface. When the pre-configured data transmission mode is 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. After processing the received data, the IB link layer module forwards it to the entry module of the port logic unit and forwards the FCCL in the flow control information corresponding to the data to the exit module of the port logic unit. The entry module of the port logic unit parses the data and then forwards it through the protocol-independent switching matrix unit.

5. The data receiving method according to claim 4, characterized in that, The method further includes: When the pre-configured data transmission mode is Ethernet transmission mode, the interface adaptation module of the link control layer unit sends the received data to the Ethernet MAC layer module of the link control layer unit. After processing the received data, the Ethernet MAC layer module forwards it to the entry module of the port logic unit. The input module of the port logic unit parses the received data and forwards it out through the protocol-independent switching matrix unit.

6. A data transmission method, characterized in that, The method utilizes the data transmission system according to any one of claims 1-3 to transmit IB data or Ethernet data; the method includes: When the pre-configured data transmission mode is IB transmission mode, the port logic unit's egress module forwards the data to the IB link layer module of the link control layer unit through the data transmission buffer. After processing the received data, the IB link layer module sends it to the interface adaptation module of the link control layer unit. After processing the received data, the interface adaptation module sends it to the physical coding sublayer unit through the CGMII interface; The physical coding sublayer unit processes the received data and then sends it to the physical layer unit; The physical layer unit processes the received data and then sends it out through the physical link.

7. The data transmission method according to claim 6, characterized in that, The method further includes: When the pre-configured data transmission mode is Ethernet transmission mode, the port logic unit's egress module forwards the data to the Ethernet MAC layer module of the link control layer unit through the data transmission buffer. After processing the received data, the Ethernet MAC layer module sends it to the interface adaptation module of the link control layer unit. After processing the received data, the interface adaptation module sends it to the physical coding sublayer unit through the CGMII interface; The physical coding sublayer unit processes the received data and then sends it to the physical layer unit; The physical layer unit processes the received data and then sends it out through the physical link.

Citation Information

Patent Citations

  • Ethernet network physical layer cross apparatus and cross method

    CN101083666A

  • Unified switching architecture suitable for Multi-die packaged chip

    CN118101595A