WO2017012517A1 - Hybrid physical coding sub-layer and method for transmitting and receiving data, and storage medium - Google Patents
Hybrid physical coding sub-layer and method for transmitting and receiving data, and storage medium Download PDFInfo
- Publication number
- WO2017012517A1 WO2017012517A1 PCT/CN2016/090217 CN2016090217W WO2017012517A1 WO 2017012517 A1 WO2017012517 A1 WO 2017012517A1 CN 2016090217 W CN2016090217 W CN 2016090217W WO 2017012517 A1 WO2017012517 A1 WO 2017012517A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- channel
- data
- unbalanced value
- code group
- mixture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
Definitions
- the present invention relates to an electronic communication Ethernet technology, and in particular, to a hybrid coding sublayer, a data transmission and reception method, and a storage medium.
- Ethernet has become a major networking technology and has been standardized in the IEEE 802.3 family of standards. Ethernet standards evolve over time, allowing different variants of existing Ethernet protocols to support higher bandwidth, improved media access control, different physical media channels, or other functions. For example, IEEE 802.3 now has processing standards covering speeds from 10 Mbit/s, 100 Mbit/s, 1 Gbit/s to 10 Gbit/s and beyond, and has managed physical channels (such as coaxial cable, fiber optic and unshielded). / Shielded twisted pair cable) deformation.
- Gigabit Ethernet is characterized by high efficiency, high speed and high performance, and has been widely used in industries such as finance, commerce, education, and government agencies.
- Cisco has proposed serial Gigabit Media Independent Interface (SGMII, Serial Gigabit Media Independent).
- SGMII Serial Gigabit Media Independent
- QSGMII Quad Serial Gigabit Media Independent Interface
- PCS Physical Coding Sublayer
- SGMII/QSGMII has also been widely used in Gigabit Ethernet communication transmission. Therefore, in the current gigabit interface physical coding sublayer design, 1000BASE-X/SGMII/QSGMII needs to be externally supported to meet the application needs of different scenarios and with different manufacturers. The interface is docked. Therefore, the low-cost Ethernet interface design that can support multiple Gigabit port morphological modes is a technical problem that needs to be solved to construct a high-compatibility Ethernet communication system.
- an embodiment of the present invention provides a mixture coding sublayer, a data transmission and reception method thereof, and a storage medium.
- the hybrid coding sublayer provided by the embodiment of the present invention includes: a sending module, where the sending module includes:
- the basic transmission unit of the four physical coding sublayers is configured to transmit four sets of Gigabit Media Independent Interfaces (GMII, Gigabit Media Independent Interface) to the four medium access control (MAC, Media Access Control) layers.
- the issued data is simultaneously ordered to replace the insertion and encoding processing;
- the code group replacement selection unit is configured to replace the K28.5 code group of the first channel with the K28.1 code group when the mixed coding sublayer works in the 4-channel scene after the encoding process; When working in a single channel scenario, no replacement processing is performed;
- the unbalanced value calculation processing unit is configured to calculate an unbalanced value required for the encoding process by using the 4-channel unbalanced value when the mixed-coded sub-layer operates in the 4-channel scene; configured to operate the single-channel when the mixed-coded sub-layer operates In the scene, the unbalanced value required for the encoding process is calculated using the single channel unbalanced value.
- each basic sending unit of the PCS includes:
- the standard transmission state machine module is configured to perform an ordered set replacement insertion process on the MAC layer transmitting side of one channel by the GMII, and encapsulate the data into a code group format suitable for 8B/10B encoding;
- the 8B/10B encoding module is configured to perform 8B/10B encoding processing on the code stream processed by the standard transmitting state machine module, wherein the 8B/10B encoding process requires an unbalanced value as an input; after the encoding process, the data is sent to the SERDES transmitting side. Do parallel data to serial data conversion;
- the auto-negotiation processing module is configured to perform capability coordination operations at both ends of the communication through auto-negotiation.
- the code group replacement selecting unit is further configured to: according to the control signal, select whether to replace the K28.1 code group of the first channel with the K28.5 code group;
- the unbalanced value calculation processing unit is further configured to: according to the control signal, select an unbalanced value required to calculate the encoding process by using the 4-channel unbalanced value, or calculate an unbalanced value required for the encoding process by using the single-channel unbalanced value. .
- a hybrid coding sublayer provided by another embodiment of the present invention includes: a receiving module, where the receiving module includes:
- the alignment code detection processing unit is configured to use the 4-channel alignment code to detect data alignment from the SERDES when the mixed-coded sub-layer operates in a 4-channel scene; when the mixture coding sub-layer operates in a single-channel scene, use the single Channel alignment code detection aligns the data sent from the SERDES;
- the code group restoration selection unit is configured to restore the K28.1 code group of the first channel to the K28.5 code group when the mixture coding sublayer works in the 4-channel scene after data alignment; when the mixture encodes the sub-layer When working in a single channel scenario, no restoration is performed;
- the unbalanced value calculation processing unit is configured to calculate an unbalanced value required for the decoding process by using the 4-channel unbalanced value when the mixed-coded sub-layer operates in the 4-channel scene; configured to operate the single-channel when the mixed-coded sub-layer operates In the case of the scene, the unbalanced value required for the decoding process is calculated using the single channel unbalanced value.
- each PCS basic receiving unit includes:
- the 8B/10B decoding module is configured to perform 8B/10B decoding operation on the aligned data
- Standard Receive State Machine module configured to remove ordered sets of 8B/10B decoded data
- the code group transmits the data stream to the GMII data stream and sends it to the MAC layer receiving side.
- the code group restoration selecting unit is further configured to: according to the control signal, select to use 4-channel alignment code detection, or single channel alignment code detection to align data sent from the SERDES;
- the unbalanced value calculation processing unit is further configured to: according to the control signal, select an unbalanced value required to calculate a decoding process by using a 4-channel unbalanced value, or calculate an unbalanced value required for the decoding process by using a single-channel unbalanced value; .
- a hybrid coding sublayer provided by another embodiment of the present invention includes the foregoing transmission module, and a receiving module.
- the unbalanced value required for the encoding process is calculated by using the 4-channel unbalanced value,
- the unbalanced value required for the encoding process is calculated using the single channel imbalance value
- the K28.5 code group of the first channel is replaced with the K28.1 code group, and sent to the SERDES transmission side for parallel data to serial data conversion;
- the coding sublayer works in a single channel scenario, it does not perform replacement processing, and directly sends data to the SERDES transmitting side to convert parallel data to serial data.
- the performing the ordered set replacement insertion and the encoding processing on the data includes:
- the data sent by the GMII of the MAC layer of one channel is subjected to the ordered set replacement insertion process, and the data is encapsulated into a code group format suitable for 8B/10B coding;
- the processed code stream is subjected to 8B/10B encoding processing, wherein the 8B/10B encoding process requires an unbalanced value as an input.
- the method further includes:
- the capability coordination operation at both ends of the communication is completed through auto-negotiation.
- the 4-channel alignment code is used to detect the alignment of the data sent from the SERDES; when the mixture coding sub-layer works in a single-channel scene, the single-channel alignment code detection will be issued from the SERDES. Data alignment;
- the 4-channel data is decoded and the ordered set code group is removed, and the data stream is restored to the GMII data stream and sent to the four MAC layer receiving sides; wherein, when the mixture coding sub-layer works In the 4-channel scene, the unbalanced value required for the decoding process is calculated by using the 4-channel unbalanced value; when the mixed-coded sub-layer operates in a single-channel scene, the imbalance required for the decoding process is calculated by using the single-channel unbalanced value. value.
- the 4-channel data is decoded and the ordered set code group is removed, and the data stream is restored to the GMII data stream and sent to the four MAC layer receiving sides, including:
- the 8B/10B decoding operation is performed on the aligned data; the ordered set code group is removed from the 8B/10B decoded data, and the data stream is restored to the GMII data stream and sent to the MAC layer receiving side.
- a storage medium is provided in the embodiment of the present invention.
- the storage medium stores a computer program, and the computer program is configured to execute the data transmission method of the hybrid coding sublayer.
- a storage medium is provided in the embodiment of the present invention.
- the storage medium stores a computer program configured to execute the data receiving method of the hybrid coding sublayer.
- the technical solution of the embodiment of the present invention provides an almost no increase on the basis of the QSGMII design. Adding any additional resource cost can support multiple interface modes including the Gigabit Ethernet physical coding sublayer of QSGMII/SGMII/1000BASE-X.
- the original QSGMII reusable logic module can be extracted, and a small amount of SGMII/1000BASE-X logic module resources can be added to obtain multiple thousand simultaneous support.
- the mega interface mode and the resource cost has almost no added physical coding sublayer.
- the hybrid coding sublayer of the embodiment of the present invention includes a sending module, and the sending module includes: four identical PCS basic transmitting units.
- Each PCS basic sending unit includes a standard transmitting state machine module, an 8B/10B encoding module, and a self-negotiation processing module.
- the code group replacement selection unit is configured to replace the K28.5 code group of the first channel with the K28.1 code group when the mixed coding sublayer works in the 4-channel scene after the encoding process; When working in a single-channel scene, no replacement processing is performed.
- the unbalanced value calculation processing unit is configured to calculate an unbalanced value required for the encoding process by using the 4-channel unbalanced value when the mixed-coded sub-layer operates in the 4-channel scene; configured to operate the single-channel when the mixed-coded sub-layer operates In the scene, the unbalanced value required for the encoding process is calculated using the single channel unbalanced value.
- the hybrid coding sublayer of the embodiment of the present invention further includes a receiving module, and the receiving module includes: four identical PCS basic receiving units.
- Each PCS basic receiving unit includes a standard receiving state machine module and an 8B/10B decoding module.
- the alignment code detection processing unit is configured to use the 4-channel alignment code to detect data alignment from the SERDES when the mixed-coded sub-layer operates in a 4-channel scene; when the mixture coding sub-layer operates in a single-channel scene, use the single Channel alignment code detection aligns the data sent from the SERDES.
- the code group restoration selection unit is configured to restore the K28.1 code group of the first channel to the K28.5 code group when the mixture coding sublayer works in the 4-channel scene after data alignment; when the mixture encodes the sub-layer When working in a single-channel scene, no restoration is performed.
- the unbalanced value calculation processing unit is configured to calculate the unevenness required for the decoding process by using the 4-channel unbalanced value when the mixed-coded sub-layer operates in the 4-channel scene
- the value is configured to calculate the imbalance value required for the decoding process using the single channel imbalance value when the mixture coding sublayer operates in a single channel scenario.
- a single QSGMII can support an additional multiple transmission modes (SGMII, 1000BASE-X) with little additional resource consumption, and the application cost is low, and the communication device can be flexibly applied to diversification. Scene.
- FIG. 1 is a structural diagram of a SGMII/1000BASE-X physical coding sublayer
- FIG. 2 is a structural diagram of a QSGMII physical coding sublayer
- FIG. 3 is a schematic structural view of a mixture coding sub-layer of an embodiment of the present invention.
- Figure 4 is a schematic diagram of single channel unbalanced value processing
- Figure 5 is a schematic diagram of 4-channel unbalanced value processing
- FIG. 6 is a flow chart of data transmission of a mixture coding sublayer according to an embodiment of the present invention.
- FIG. 7 is a flow chart of data reception of a mixture coding sublayer of an embodiment of the present invention.
- the black code in the figure shows the physical coding sublayer structure of SGMII/1000BASE-X.
- the SGMII/1000BASE-X physical coding sublayer transmitting side performs the ordered set replacement insertion and encoding processing on the MAC layer transmitting side by the data sent by the GMII, and the bit width is expanded from 8 bits (bit) to 10 bits after encoding.
- the physical coding sublayer outputs a 10-bit data stream at 125Mhz to the SERializer serializer/DESerializer deserializer (SERDES) transmit side 1, and the SERDES transmit side 1 performs parallel-to-serial conversion on the parallel data into a serial bit stream output.
- SERDES serializer/DESerializer deserializer
- the corresponding SERDES transmission side 1 and the SERDES reception side 1 need only be fixed in a processing mode of 10 bit width. Note that the bit width of the SERDES transmitting side 1 and the SERDES receiving side 1 is actually 40 bits, but the fixed operation is only in the mode where only the lower 10 bits are valid.
- the receiving side of the SGMII/1000BASE-X physical coding sublayer receives 10 bits of parallel data from the SERDES receiving side 1 after serial-to-parallel conversion recovery, and performs re-alignment to perform decoding operation, and removes the ordered set code group to restore the data stream to GMII.
- the data stream form is sent back to the MAC layer receiving side.
- the SGMII/1000BASE-X physical coding sublayer transmission side mainly includes a PCS basic transmission unit and a single channel unbalanced value calculation unit.
- the PCS basic transmission unit includes a standard transmission state machine module, an 8B/10B coding module, and a self-negotiation processing module.
- Standard Transmit State Machine Module It is mainly based on IEEE 802.3-2008_section3 Figure 36-5, Figure 36-6, 1000BASE-X transmission state machine structure diagram, which realizes the ordered set conversion and insertion and abnormality of Gigabit Ethernet PCS.
- the encapsulation process such as a jump of the situation, adds a start code /S/, an end code/T/, an idle code/I/code to the data, and the data stream is encapsulated into a code group form suitable for 8B/10B encoding.
- the 8B/10B encoding module performs 8B/10B encoding operation according to the inserted code stream, and the 8B/10B encoding processing requires an unbalanced value as an input, which is provided by the single channel unbalanced value calculating unit. After the encoding is completed, the data can be directly sent to the SERDES transmitting side 1 to convert the parallel data to the serial data.
- the auto-negotiation processing module mainly implements the 1000BASE-X auto-negotiation processing state machine in IEEE standard 802.3-2008_section3 Figure 37-6, and can complete the capability coordination operation at both ends of the communication through auto-negotiation.
- SGMII and 1000BASE-X are different in the negotiation page table. In this module, the capability extraction function is treated differently to ensure that it can be distinguished by mode.
- the capabilities supported by SGMII/1000BASE-X are common to other processing and state machines.
- the single channel unbalanced value processing unit (transmitting side) is responsible for providing unbalanced value processing of a single 8B/10B encoding module.
- the specific principle is that the input of the next encoding is the output of the previous encoding unbalanced value.
- Single channel processing directly sends the unbalanced value of the previous input to the next encoding, as shown in Figure 4. From the above principle analysis, it can be concluded that the processing only requires 1 bit of registers, and the logical resources are almost negligible.
- the receiving side of the SGMII/1000BASE-X physical coding sublayer mainly includes a single channel alignment code detecting unit, a single channel unbalanced value calculating unit, and a PCS basic receiving unit.
- the PCS basic receiving unit includes an 8B/10B decoding module and a standard receiving state machine module.
- Single channel alignment code detection unit mainly finds the alignment code from the SERDES receiving side 1 data stream to align the data to the state before the parallel conversion of the transmitting side. Since the serial bit stream has been disturbed by the serial value stream of the serial bit stream recovered by the SERDES receiving side 1 processing, it is indispensable that the processing needs to regain the boundary of the 10-bit data. From the above principle analysis, it can be concluded that the processing requires about 40 bits of registers.
- Single channel unbalanced value calculation unit responsible for providing unbalanced value processing of the single channel 8B/10B decoding module.
- the specific principle is that the unbalanced value input of the next decoding operation is the output of the previous decoding operation unbalanced value.
- Single channel processing directly sends the unbalanced value of the previous input to the next decoding. If the data on the transmitting side is incorrect or the link is unstable, the data stream is abnormal. The receiving side can easily detect the error according to the unbalanced value check.
- 8B/10B decoding module mainly performs 8B/10B decoding operation on the aligned data, and also needs to detect the correctness of the unbalanced value of the decoded data, the correctness of the encoding code group, the validity of the control code, and finally the 10-bit data. Revert back to an 8-bit ordered collection.
- the 8bit data stream is re-decapsulated into the GMII mode data after being processed by the receiving state machine module. At the same time, it is necessary to detect whether the various control characters conform to the protocol, and the unqualified ordered set code group needs to be marked with an error flag.
- Standard Receive State Machine Module Implements IEEE Standard 802.3-2008_section3 Figure 36-7a, Figure 36-7b. Perform decapsulation on the 8B/10B decoded data, including removing the start code /S/, the end code/T/, restoring the idle code/I/, and detecting the correctness of the code group encapsulation for the illegal package.
- the data stream is flagged with an error and sent back to the MAC layer via GMII.
- FIG. 2 the processing structure diagram of the physical coding sublayer of QSGMII is shown.
- the sending side of the QSGMII physical coding sublayer sends the data sent by the MAC layer transmitting side 0, the MAC layer transmitting side 1, the MAC layer transmitting side 2, and the MAC layer transmitting side 3 through 4 sets of GMIIs, and performs ordered set replacement insertion and encoding processing, wherein
- the first channel needs to perform special processing on the ordered set code group (replace the K28.5 code group with the K28.1 code group), and the bit width after encoding is changed from 4 ⁇ 8 bit to 4 ⁇ 10 bits.
- the physical coding sublayer outputs a 4 ⁇ 10 bit data stream to the SERDES transmitting side 2 at 125 Mhz, and the SERDES transmitting side 2 performs parallel-to-serial conversion on the parallel data into a serial bit stream output.
- the corresponding SERDES transmitting side 2 and the SERDES receiving side 2 need only be fixed in a processing mode of 40 bit width. Note that the bit width of the transmitting side and the receiving side of the SERDES2 is actually 40 bits, but the fixed operation is in the 40 bit all effective mode at this time.
- the receiving side of the QSGMII physical coding sublayer receives 40-bit parallel data from the SERDES receiving side 2 after serial-to-parallel conversion recovery, and performs decoding operation after channel realignment, wherein the first channel needs to restore K28.1 to K28.5 code.
- the group is used for de-encapsulation processing of the ordered set, and the data stream is restored to 4 sets of GMII data streams after being removed from the ordered set code group, and sent back to the MAC layer receiving side 0, the MAC layer receiving side 1, the MAC layer receiving side 2, and the MAC.
- the layer receives side 3.
- the transmitting side of the QSGMII physical coding sublayer mainly includes four PCS basic transmission units, a 4-channel unbalanced value calculation unit, and a K28.1 code group replacement unit.
- the K28.1 code group replacement unit is mainly used to replace the K28.5 code group of the first channel, so as to facilitate The receiving side detects the K28.1 code group to align the data boundary of the channel, which is a unique processing method of QSGMII.
- the PCS basic transmission unit structure is as described above.
- the QSGMII transmission side needs to use four PCS basic transmission units, including the PCS basic transmission side 0, the PCS basic transmission side 1, the PCS basic transmission side 2, and the PCS basic transmission side 3.
- 4-channel unbalanced value calculation unit transmission side: Since the four channel code groups in the link propagation are transmitted using the same SERDES, the imbalance value actually needs to indicate the correlation between the four channels, then Equilibrium value processing should not be propagated back and forth in only one channel.
- the code group encoded by the previous channel needs to be transmitted to the code group of the next channel code, so that the correlation of coding between different channels is realized.
- the structure of the specific implementation principle is shown in Figure 5.
- the receiving side of the QSGMII physical coding sublayer mainly includes four PCS basic receiving units, a 4-channel unbalanced value calculating unit, and a 4-channel alignment code detecting unit.
- the PCS basic receiving unit structure is as described above.
- the QSGMII receiving side needs to use four PCS basic receiving units including the PCS basic receiving side 0, the PCS basic receiving side 1, the PCS basic receiving side 2, and the PCS basic receiving side 3.
- the K28.1 code group restoration unit is configured to wait for the data boundary of the four channels to be aligned, and then restore the K28.1 code group of the first channel to the K28.5 code group, so that the QSGMII state machine processing module on the receiving side is
- the original SGMII/1000BASE-X can share a set of processing mechanisms.
- 4-channel unbalanced value calculation unit (receiving side): Since the code groups of the four channels in the link propagation are propagated using the same SERDES, the unbalanced value actually needs to represent the association between the four channels. In this way, as long as one channel does not work correctly, the unbalanced value propagation of the other four channels will be incorrect, resulting in decoding errors of all channels.
- the specific implementation structure can be seen in Figure 5.
- the 4-channel alignment code detection unit mainly finds the alignment code from the SERDES data stream to align the data to the state before the parallel conversion of the transmitting side.
- alignment in 4 channels not only represents the boundary of parallel data for each channel, but also the number of channels per channel. According to the segmentation boundary point. When the position is determined, the data for all channels is already aligned. On the contrary, if the position is judged incorrectly, it will cause confusion of all channel data.
- QSGMII is actually slightly adjusted on the structure of 4 sets of SGMII. From the previous analysis, SGMII can actually use one of the PCS basic transmission units and one PCS basic reception unit of QSGMII, plus a single-channel unbalanced value calculation unit (transmission side) and a single-channel unbalanced value calculation unit ( Receive side), single channel alignment code detection unit to get. Therefore, the QSGMII structure can be modified as shown in Figure 3, which is the QSGMII/SGMII/1000BASE-X hybrid PCS processing structure. In FIG.
- the SERDES transmitting side 3 and the SERDES receiving side 3 cannot be fixed in the 10-bit effective or 40-bit effective mode at this time, and it is necessary to determine the working bit width of the transmitting side and the receiving side of the SERDES3 according to the control signal (pcs_mod) at this time. In this way, the multi-mode hybrid PCS implementation can be realized by the module change of the PCS layer.
- the hybrid coding sublayer of the embodiment of the present invention includes: a sending module 31, where the sending module 31 includes:
- the four physical coding sub-layer PCS basic transmission unit 311 is configured to perform orderly set replacement insertion and coding processing on the data sent by the four media access control MAC layer transmission sides via the four sets of Gigabit media independent interfaces GMII;
- the code group replacement selecting unit 312 is configured to replace the K28.5 code group of the first channel with the K28.1 code group when the mixed texture sublayer works in the 4-channel scene after the encoding process; When the layer works in a single channel scenario, no replacement processing is performed;
- the unbalanced value calculation processing unit 313 is configured to calculate an unbalanced value required for the encoding process by using the 4-channel unbalanced value when the mixed-coded sub-layer operates in the 4-channel scene; configured to operate the encoded sub-layer in the hybrid In the channel scenario, the unbalanced value required for the encoding process is calculated using the single channel unbalanced value.
- Each PCS basic sending unit 311 includes:
- Standard transmit state machine module (not shown) configured to send the MAC layer of a channel
- the data sent by the sending side via the GMII is subjected to an ordered set replacement insertion process, and the data is encapsulated into a code group form suitable for 8B/10B encoding;
- the 8B/10B encoding module (not shown) is configured to perform 8B/10B encoding processing on the code stream processed by the standard transmitting state machine module, wherein the 8B/10B encoding process requires an unbalanced value as an input; after the encoding process Send data to the SERDES transmitting side for parallel data to serial data conversion;
- the auto-negotiation processing module (not shown) is configured to complete the capability coordination operation at both ends of the communication by auto-negotiation.
- the code group replacement selecting unit 312 is further configured to: select, according to the control signal, whether to replace the K28.1 code group of the first channel with the K28.5 code group;
- the unbalanced value calculation processing unit 313 is further configured to select, according to the control signal, an unbalanced value required to calculate the encoding process by using the 4-channel unbalanced value, or calculate the imbalance required for the encoding process by using the single-channel unbalanced value. value.
- the mode selection is added to several modules that need to distinguish between single-channel and 4-channel processing.
- the pcs_mod signal is used to indicate that the current PCS needs to work at 4. In a channel scene or in a single channel scene. In this way, by analyzing the structural similarities and differences between QSGMII and SGMII/1000BASE-X in detail, the processing methods that can work in three arbitrary modes are obtained.
- the hybrid coding sublayer of another embodiment of the present invention includes: a receiving module 32, and the receiving module 32 includes:
- the alignment code detection processing unit 321 is configured to use the 4-channel alignment code to detect data aligned from the SERDES when the mixed-coded sub-layer operates in a 4-channel scene; and when the mixed-coded sub-layer operates in a single-channel scene, Single channel alignment code detection aligns the data sent from the SERDES;
- the code group restoration selection unit 322 is configured to process the sub-layers when the data is aligned When working in a 4-channel scene, the K28.1 code group of the first channel is restored to the K28.5 code group; when the mixture coding sub-layer works in a single-channel scene, no restoration process is performed;
- the unbalanced value calculation processing unit 324 is configured to calculate an unbalanced value required for the decoding process by using the 4-channel unbalanced value when the mixed-coded sub-layer operates in the 4-channel scene; configured to work when the mixed-coded sub-layer operates in the single In the channel scenario, the unbalanced value required for the decoding process is calculated using the single channel imbalance value.
- Each PCS basic receiving unit 323 includes:
- 8B/10B decoding module (not shown) configured to perform 8B/10B decoding operation on the aligned data
- the standard receiving state machine module (not shown) is configured to remove the ordered set code group from the 8B/10B decoded data, and restore the data stream to the GMII data stream and send it to the MAC layer receiving side.
- the code group restoration selecting unit 322 is further configured to select, according to the control signal, to align the data sent from the SERDES by using 4-channel alignment code detection or single channel alignment code detection;
- the unbalanced value calculation processing unit 324 is further configured to: according to the control signal, select an unbalanced value required to calculate a decoding process by using a 4-channel unbalanced value, or calculate an imbalance required for the decoding process by using a single-channel unbalanced value. value.
- the hybrid coding sublayer of another embodiment of the present invention includes the above-described transmitting module 31 and receiving module 32.
- the mixture coding sublayer of FIG. 3 mainly performs selection processing on the code group replacement and reduction selection unit, the unbalance value calculation processing unit, and the alignment code detection processing unit of the original QSGMII processing structure.
- the alignment code detection processing unit combines a 4-channel alignment code detection unit with a single-channel alignment code check
- the measurement unit determines which unit to use for processing according to pcs_mod.
- the unbalanced value calculation processing unit combines a 4-channel unbalanced value calculation unit and a single-channel unbalanced value calculation unit, and determines which unit to use for processing according to pcs_mod.
- K28.1 code group When working in QSGMII mode (ie 4-channel working scene), the K28.1 code group operates as described above. When working in SGMII/1000BASE-X mode (ie single-channel working scene), the direct pipeline delays one beat output.
- FIG. 6 is a schematic flowchart of a data transmission method of a mixture coding sublayer according to an embodiment of the present invention. As shown in FIG. 6, the data transmission method of the mixture coding sublayer includes the following steps:
- Step 601 Receive data sent by the MAC layer transmitting side through the GMII.
- Step 602 Perform an ordered set replacement insertion and an encoding process on the data, wherein, when performing the encoding process, when the mixed coding sublayer works in a 4-channel scene, the 4-channel unbalanced value is used to calculate the coding process.
- the equalization value when the mixture coding sublayer works in a single channel scenario, uses the single channel imbalance value to calculate the imbalance value required for the encoding process.
- the data sent by the GMII of the MAC layer of one channel is subjected to the ordered set replacement insertion process, and the data is encapsulated into a code group format suitable for 8B/10B coding;
- the processed code stream is subjected to 8B/10B encoding processing, wherein the 8B/10B encoding process requires an unbalanced value as an input.
- Step 603 When the mixture coding sublayer works in the 4-channel scene, replace the K28.5 code group of the first channel with the K28.1 code group, and send it to the SERDES transmission side to perform parallel data to serial data conversion; When the mixture coding sublayer works in a single channel scenario, no replacement processing is performed, and data is directly sent to the SERDES transmitting side for parallel data to serial data conversion.
- FIG. 7 is a schematic flowchart of a data receiving method of a mixture coding sublayer according to an embodiment of the present invention. As shown in FIG. 7, the data receiving method of the mixture coding sublayer includes the following steps:
- Step 701 When the mixture coding sublayer works in a 4-channel scene, the 4-channel alignment code is used to detect the alignment of the data sent from the SERDES; when the mixture coding sub-layer works in a single-channel scene, the single-channel alignment code detection is used. Data alignment from SERDES.
- Step 702 After the data is aligned, when the mixture coding sublayer works in the 4-channel scene, the K28.1 code group of the first channel is restored to the K28.5 code group; when the mixture coding sublayer works in the single channel scene When it is not restored.
- Step 703 After the data is aligned, the 4-channel data is decoded and the ordered set code group is removed, and the data stream is restored to the GMII data stream and sent to the 4 MAC layer receiving side; wherein, when the mixture is encoded When the layer works in a 4-channel scene, the 4-channel unbalanced value is used to calculate the unbalanced value required for the decoding process; when the mixed-coded sub-layer operates in a single-channel scene, the single-channel unbalanced value is used to calculate the decoding process. Unbalanced value.
- the 8B/10B decoding operation is performed on the aligned data; the ordered set code group is removed from the 8B/10B decoded data, and the data stream is restored to the GMII data stream and sent to the MAC layer receiving side.
- the added resources are minimal, almost no additional resource consumption.
- the functions of the single-channel unbalanced value calculation unit (sending side), the single-channel unbalanced value calculation unit (receiving side), and the single-channel alignment code detection unit are relatively simple, and the corresponding QSGMII logic basis is corresponding. Adding these modules adds about 1% of the resources, which is almost negligible.
- SGMII/1000BASE-X plus QSGMII physical coding sub-layer design can save at least 1/4 of the resource consumption.
- the physical coding sublayers of different rates are used to select before entering the SERDES, so as to achieve the purpose of working at multiple rates.
- This kind of processing method is a waste of resources and a high cost.
- a 1Gbps rate interface can actually be used to transmit 10 100Mbps interfaces.
- 10 100M interfaces are all used as 1G, and a single 100M interface is used to achieve 100M.
- the disadvantage of this type of processing is that it is not a standard interface and cannot be interfaced with the 100M standard interface.
- the QSGMII works in the single channel mode and achieves a rate of 1 Gbps, the separate QSGMII cannot be connected to the SGMII (although the rate is consistent), so the present application implements the functions of the QSGMII/SGMII through resource multiplexing.
- the present application analyzes the similarities and differences of several mode structures in detail, and carries out the multiplexing of logical resources with ingenious and high efficiency, and achieves the realization of realizing the low-cost multi-mode physical coding sub-layer port.
- the embodiment of the invention further describes a storage medium in which a computer program is stored, the computer program being configured to execute the data transmission method of the mixture coding sublayer described in the foregoing embodiment.
- the embodiment of the invention further describes a storage medium in which a computer program is stored, the computer program being configured to execute the data receiving method of the mixture coding sublayer described in the foregoing embodiment.
- the original QSGMII reusable logic module is extracted, and a small amount of SGMII/1000BASE-X logic module resources are added to obtain simultaneous support.
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
Description
本发明涉及电子通讯以太网技术,尤其涉及一种混合物理编码子层以及数据发送、接收方法、存储介质。The present invention relates to an electronic communication Ethernet technology, and in particular, to a hybrid coding sublayer, a data transmission and reception method, and a storage medium.
在允许计算机和其它网络设备形成局域网的技术中,以太网已经成为主要的联网技术,并且在IEEE802.3标准族中进行了标准化。以太网标准随着时间演进,使现存的以太网协议的不同变形支持更高的带宽、改善的介质访问控制、不同的物理介质信道或其它功能。例如IEEE802.3现在具有覆盖范围从10Mbit/s、100Mbit/s、1Gbit/s到10Gbit/s以及甚至更高的速度的处理标准,并且具有管理物理信道(如同轴电缆、光导纤维和无屏蔽/屏蔽双绞线电缆)的变形。In technologies that allow computers and other network devices to form local area networks, Ethernet has become a major networking technology and has been standardized in the IEEE 802.3 family of standards. Ethernet standards evolve over time, allowing different variants of existing Ethernet protocols to support higher bandwidth, improved media access control, different physical media channels, or other functions. For example, IEEE 802.3 now has processing standards covering speeds from 10 Mbit/s, 100 Mbit/s, 1 Gbit/s to 10 Gbit/s and beyond, and has managed physical channels (such as coaxial cable, fiber optic and unshielded). / Shielded twisted pair cable) deformation.
目前千兆类以太网接口技术发展已经比较成熟,千兆以太网以高效、高速、高性能为特点,已经广泛应用在金融、商业、教育、政府机关等行业。为了能够满足以太网通信对高速数据传输的要求,同时在电路设计时具有布线简单以及信号完整性好等优点,思科(CISCO)公司提出了串行千兆媒体独立接口(SGMII,Serial Gigabit Media Independent Interface)以及四通道串行千兆媒体独立接口(QSGMII,Quad Serial Gigabit Media Independent Interface)的接口规范,实际上是对原光纤吉比特以太网(1000BASE-X)PCS(Physical Coding Sublayer)即物理编码子层规范的扩展。同时SGMII/QSGMII也已经广泛应用于千兆以太网通信传输之中。从而在当前的千兆类接口物理编码子层设计中,需要对外支持1000BASE-X/SGMII/QSGMII来满足不同场景的应用需求以及与不同厂家 的接口进行对接。因此,能支持多种千兆端口形态模式的低成本以太网接口设计成为构建高兼容性以太网通信系统亟需解决的技术问题。At present, the development of Gigabit Ethernet interface technology is relatively mature. Gigabit Ethernet is characterized by high efficiency, high speed and high performance, and has been widely used in industries such as finance, commerce, education, and government agencies. In order to meet the requirements of high-speed data transmission for Ethernet communication, and at the same time, it has the advantages of simple wiring and good signal integrity in circuit design. Cisco (CISCO) has proposed serial Gigabit Media Independent Interface (SGMII, Serial Gigabit Media Independent). The interface specification of the Interface and the Quad Serial Gigabit Media Independent Interface (QSGMII) is actually the physical coding of the original fiber-optic Gigabit Ethernet (1000BASE-X) PCS (Physical Coding Sublayer). An extension of the sublayer specification. At the same time, SGMII/QSGMII has also been widely used in Gigabit Ethernet communication transmission. Therefore, in the current gigabit interface physical coding sublayer design, 1000BASE-X/SGMII/QSGMII needs to be externally supported to meet the application needs of different scenarios and with different manufacturers. The interface is docked. Therefore, the low-cost Ethernet interface design that can support multiple Gigabit port morphological modes is a technical problem that needs to be solved to construct a high-compatibility Ethernet communication system.
发明内容Summary of the invention
为解决上述技术问题,本发明实施例提供了一种混合物理编码子层及其数据发送、接收方法、存储介质。To solve the above technical problem, an embodiment of the present invention provides a mixture coding sublayer, a data transmission and reception method thereof, and a storage medium.
本发明实施例提供的混合物理编码子层包括:发送模块,所述发送模块包括:The hybrid coding sublayer provided by the embodiment of the present invention includes: a sending module, where the sending module includes:
4个物理编码子层(PCS,Physical Encoding Sublayer)基本发送单元,配置为对4个介质访问控制(MAC,Media Access Control)层发送侧经4套千兆媒体独立接口(GMII,Gigabit Media Independent Interface)发出的数据同时做有序集替换插入以及编码处理;The basic transmission unit of the four physical coding sublayers (PCS) is configured to transmit four sets of Gigabit Media Independent Interfaces (GMII, Gigabit Media Independent Interface) to the four medium access control (MAC, Media Access Control) layers. The issued data is simultaneously ordered to replace the insertion and encoding processing;
码组替换选择单元,配置为在编码处理后,当混合物理编码子层工作在4通道场景时,将第一通道的K28.5码组替换为K28.1码组;当混合物理编码子层工作在单通道场景时,不作替换处理;The code group replacement selection unit is configured to replace the K28.5 code group of the first channel with the K28.1 code group when the mixed coding sublayer works in the 4-channel scene after the encoding process; When working in a single channel scenario, no replacement processing is performed;
不均衡值计算处理单元,配置为当混合物理编码子层工作在4通道场景时,利用4通道不均衡值计算编码处理所需的不均衡值;配置为当混合物理编码子层工作在单通道场景时,利用单通道不均衡值计算编码处理所需的不均衡值。The unbalanced value calculation processing unit is configured to calculate an unbalanced value required for the encoding process by using the 4-channel unbalanced value when the mixed-coded sub-layer operates in the 4-channel scene; configured to operate the single-channel when the mixed-coded sub-layer operates In the scene, the unbalanced value required for the encoding process is calculated using the single channel unbalanced value.
本发明实施例中,每个PCS基本发送单元均包括:In the embodiment of the present invention, each basic sending unit of the PCS includes:
标准发送状态机模块,配置为将一个通道的MAC层发送侧经GMII发出的数据做有序集替换插入处理,将数据封装为适用于8B/10B编码的码组形式;The standard transmission state machine module is configured to perform an ordered set replacement insertion process on the MAC layer transmitting side of one channel by the GMII, and encapsulate the data into a code group format suitable for 8B/10B encoding;
8B/10B编码模块,配置为对标准发送状态机模块处理好的码流进行8B/10B编码处理,其中,8B/10B编码处理需要不均衡值作为输入;编码处理后将数据发送至SERDES发送侧做并行数据到串行数据的转换; The 8B/10B encoding module is configured to perform 8B/10B encoding processing on the code stream processed by the standard transmitting state machine module, wherein the 8B/10B encoding process requires an unbalanced value as an input; after the encoding process, the data is sent to the SERDES transmitting side. Do parallel data to serial data conversion;
自协商处理模块,配置为通过自协商完成通信两端的能力协调操作。The auto-negotiation processing module is configured to perform capability coordination operations at both ends of the communication through auto-negotiation.
本发明实施例中,所述码组替换选择单元,还配置为根据控制信号,选择是否将第一通道的K28.1码组替换为K28.5码组;In the embodiment of the present invention, the code group replacement selecting unit is further configured to: according to the control signal, select whether to replace the K28.1 code group of the first channel with the K28.5 code group;
所述不均衡值计算处理单元,还配置为根据控制信号,选择利用4通道不均衡值计算编码处理所需的不均衡值,或是利用单通道不均衡值计算编码处理所需的不均衡值。The unbalanced value calculation processing unit is further configured to: according to the control signal, select an unbalanced value required to calculate the encoding process by using the 4-channel unbalanced value, or calculate an unbalanced value required for the encoding process by using the single-channel unbalanced value. .
本发明另一实施例提供的混合物理编码子层包括:接收模块,所述接收模块包括:A hybrid coding sublayer provided by another embodiment of the present invention includes: a receiving module, where the receiving module includes:
对齐码检测处理单元,配置为当混合物理编码子层工作在4通道场景时,利用4通道对齐码检测将从SERDES发出的数据对齐;当混合物理编码子层工作在单通道场景时,利用单通道对齐码检测将从SERDES发出的数据对齐;The alignment code detection processing unit is configured to use the 4-channel alignment code to detect data alignment from the SERDES when the mixed-coded sub-layer operates in a 4-channel scene; when the mixture coding sub-layer operates in a single-channel scene, use the single Channel alignment code detection aligns the data sent from the SERDES;
码组还原选择单元,配置为在数据对齐后,当混合物理编码子层工作在4通道场景时,将第一通道的K28.1码组恢复为K28.5码组;当混合物理编码子层工作在单通道场景时,不作还原处理;The code group restoration selection unit is configured to restore the K28.1 code group of the first channel to the K28.5 code group when the mixture coding sublayer works in the 4-channel scene after data alignment; when the mixture encodes the sub-layer When working in a single channel scenario, no restoration is performed;
4个PCS基本接收单元,对在数据对齐后,对4通道的数据做解码处理以及去除有序集码组,将数据流恢复为GMII的数据流形式发送至4个MAC层接收侧;4 PCS basic receiving units, after data alignment, decode 4 channels of data and remove the ordered set code group, and restore the data stream to the GMII data stream and send it to the 4 MAC layer receiving sides;
不均衡值计算处理单元,配置为当混合物理编码子层工作在4通道场景时,利用4通道不均衡值计算解码处理所需的不均衡值;配置为当混合物理编码子层工作在单通道场景时,利用单通道不均衡值计算解码处理所需的不均衡值。The unbalanced value calculation processing unit is configured to calculate an unbalanced value required for the decoding process by using the 4-channel unbalanced value when the mixed-coded sub-layer operates in the 4-channel scene; configured to operate the single-channel when the mixed-coded sub-layer operates In the case of the scene, the unbalanced value required for the decoding process is calculated using the single channel unbalanced value.
本发明实施例中,每个PCS基本接收单元均包括:In the embodiment of the present invention, each PCS basic receiving unit includes:
8B/10B解码模块,配置为对对齐后的数据进行8B/10B解码操作;The 8B/10B decoding module is configured to perform 8B/10B decoding operation on the aligned data;
标准接收状态机模块,配置为对经过8B/10B解码后的数据去除有序集 码组,将数据流恢复为GMII的数据流形式发送至MAC层接收侧。Standard Receive State Machine module configured to remove ordered sets of 8B/10B decoded data The code group transmits the data stream to the GMII data stream and sends it to the MAC layer receiving side.
本发明实施例中,所述码组还原选择单元,还配置为根据控制信号,选择利用4通道对齐码检测、或是单通道对齐码检测将从SERDES发出的数据对齐;In the embodiment of the present invention, the code group restoration selecting unit is further configured to: according to the control signal, select to use 4-channel alignment code detection, or single channel alignment code detection to align data sent from the SERDES;
所述不均衡值计算处理单元,还配置为根据控制信号,选择利用4通道不均衡值计算解码处理所需的不均衡值,或是利用单通道不均衡值计算解码处理所需的不均衡值。The unbalanced value calculation processing unit is further configured to: according to the control signal, select an unbalanced value required to calculate a decoding process by using a 4-channel unbalanced value, or calculate an unbalanced value required for the decoding process by using a single-channel unbalanced value; .
本发明另一实施例提供的混合物理编码子层包括上述发送模块,以及接收模块。A hybrid coding sublayer provided by another embodiment of the present invention includes the foregoing transmission module, and a receiving module.
本发明实施例提供的混合物理编码子层的数据发送方法包括:The data transmission method of the mixture coding sublayer provided by the embodiment of the present invention includes:
接收MAC层发送侧通过GMII发送的数据;Receiving data sent by the MAC layer transmitting side through the GMII;
对所述数据进行有序集替换插入以及编码处理,其中,进行编码处理时,当混合物理编码子层工作在4通道场景时,利用4通道不均衡值计算编码处理所需的不均衡值,当混合物理编码子层工作在单通道场景时,利用单通道不均衡值计算编码处理所需的不均衡值;And performing an ordered set replacement insertion and an encoding process on the data, wherein, when performing the encoding process, when the mixed coding sublayer operates in a 4-channel scene, the unbalanced value required for the encoding process is calculated by using the 4-channel unbalanced value, When the mixture coding sublayer works in a single channel scenario, the unbalanced value required for the encoding process is calculated using the single channel imbalance value;
当混合物理编码子层工作在4通道场景时,将第一通道的K28.5码组替换为K28.1码组,并发送至SERDES发送侧做并行数据到串行数据的转换;当混合物理编码子层工作在单通道场景时,不作替换处理,直接将数据发送至SERDES发送侧做并行数据到串行数据的转换。When the mixture coding sublayer works in a 4-channel scene, the K28.5 code group of the first channel is replaced with the K28.1 code group, and sent to the SERDES transmission side for parallel data to serial data conversion; When the coding sublayer works in a single channel scenario, it does not perform replacement processing, and directly sends data to the SERDES transmitting side to convert parallel data to serial data.
本发明实施例中,所述对所述数据进行有序集替换插入以及编码处理,包括:In the embodiment of the present invention, the performing the ordered set replacement insertion and the encoding processing on the data includes:
将一个通道的MAC层发送侧经GMII发出的数据做有序集替换插入处理,将数据封装为适用于8B/10B编码的码组形式;The data sent by the GMII of the MAC layer of one channel is subjected to the ordered set replacement insertion process, and the data is encapsulated into a code group format suitable for 8B/10B coding;
对处理好的码流进行8B/10B编码处理,其中,8B/10B编码处理需要不均衡值作为输入。 The processed code stream is subjected to 8B/10B encoding processing, wherein the 8B/10B encoding process requires an unbalanced value as an input.
本发明实施例中,所述方法还包括:In the embodiment of the present invention, the method further includes:
通过自协商完成通信两端的能力协调操作。The capability coordination operation at both ends of the communication is completed through auto-negotiation.
本发明实施例提供的混合物理编码子层的数据接收方法包括:The data receiving method of the mixture coding sublayer provided by the embodiment of the present invention includes:
当混合物理编码子层工作在4通道场景时,利用4通道对齐码检测将从SERDES发出的数据对齐;当混合物理编码子层工作在单通道场景时,利用单通道对齐码检测将从SERDES发出的数据对齐;When the mixture coding sublayer works in a 4-channel scene, the 4-channel alignment code is used to detect the alignment of the data sent from the SERDES; when the mixture coding sub-layer works in a single-channel scene, the single-channel alignment code detection will be issued from the SERDES. Data alignment;
在数据对齐后,当混合物理编码子层工作在4通道场景时,将第一通道的K28.1码组恢复为K28.5码组;当混合物理编码子层工作在单通道场景时,不作还原处理;After the data is aligned, when the mixture coding sublayer works in a 4-channel scene, the K28.1 code group of the first channel is restored to the K28.5 code group; when the mixture coding sub-layer works in a single-channel scene, Reduction process
在数据对齐后,对4通道的数据做解码处理以及去除有序集码组,将数据流恢复为GMII的数据流形式发送至4个MAC层接收侧;其中,当混合物理编码子层工作在4通道场景时,利用4通道不均衡值计算解码处理所需的不均衡值;用于当混合物理编码子层工作在单通道场景时,利用单通道不均衡值计算解码处理所需的不均衡值。After the data is aligned, the 4-channel data is decoded and the ordered set code group is removed, and the data stream is restored to the GMII data stream and sent to the four MAC layer receiving sides; wherein, when the mixture coding sub-layer works In the 4-channel scene, the unbalanced value required for the decoding process is calculated by using the 4-channel unbalanced value; when the mixed-coded sub-layer operates in a single-channel scene, the imbalance required for the decoding process is calculated by using the single-channel unbalanced value. value.
本发明实施例中,所述在数据对齐后,对4通道的数据做解码处理以及去除有序集码组,将数据流恢复为GMII的数据流形式发送至4个MAC层接收侧,包括:In the embodiment of the present invention, after the data is aligned, the 4-channel data is decoded and the ordered set code group is removed, and the data stream is restored to the GMII data stream and sent to the four MAC layer receiving sides, including:
对对齐后的数据进行8B/10B解码操作;对经过8B/10B解码后的数据去除有序集码组,将数据流恢复为GMII的数据流形式发送至MAC层接收侧。The 8B/10B decoding operation is performed on the aligned data; the ordered set code group is removed from the 8B/10B decoded data, and the data stream is restored to the GMII data stream and sent to the MAC layer receiving side.
本发明实施例提供的一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序配置为执行所述的混合物理编码子层的数据发送方法。A storage medium is provided in the embodiment of the present invention. The storage medium stores a computer program, and the computer program is configured to execute the data transmission method of the hybrid coding sublayer.
本发明实施例提供的一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序配置为执行所述的混合物理编码子层的数据接收方法。A storage medium is provided in the embodiment of the present invention. The storage medium stores a computer program configured to execute the data receiving method of the hybrid coding sublayer.
本发明实施例的技术方案提供了一种在QSGMII设计基础上几乎不增 加任何额外资源成本消耗就可支持多种接口模式包括QSGMII/SGMII/1000BASE-X的千兆以太网物理编码子层。通过仔细分析QSGMII以及SGMII/1000BASE-X的物理编码子层处理结构的异同,提取原QSGMII可复用的逻辑模块,附加上少量SGMII/1000BASE-X的逻辑模块资源即可得到同时支持多种千兆接口模式而资源成本几乎没有增加的物理编码子层。相比于直接使用SGMII/1000BASE-X加上QSGMII的物理编码子层设计可以至少节约1/4的资源消耗。本发明实施例的混合物理编码子层包括发送模块,所述发送模块包括:4个同样的PCS基本发送单元。其中,每个PCS基本发送单元都包括标准发送状态机模块、8B/10B编码模块、自协商处理模块。码组替换选择单元,配置为在编码处理后,当混合物理编码子层工作在4通道场景时,将第一通道的K28.5码组替换为K28.1码组;当混合物理编码子层工作在单通道场景时,不作替换处理。不均衡值计算处理单元,配置为当混合物理编码子层工作在4通道场景时,利用4通道不均衡值计算编码处理所需的不均衡值;配置为当混合物理编码子层工作在单通道场景时,利用单通道不均衡值计算编码处理所需的不均衡值。The technical solution of the embodiment of the present invention provides an almost no increase on the basis of the QSGMII design. Adding any additional resource cost can support multiple interface modes including the Gigabit Ethernet physical coding sublayer of QSGMII/SGMII/1000BASE-X. By carefully analyzing the similarities and differences between the QSGMII and SGMII/1000BASE-X physical coding sublayer processing structures, the original QSGMII reusable logic module can be extracted, and a small amount of SGMII/1000BASE-X logic module resources can be added to obtain multiple thousand simultaneous support. The mega interface mode and the resource cost has almost no added physical coding sublayer. Compared to the direct use of SGMII/1000BASE-X plus QSGMII physical coding sub-layer design can save at least 1/4 of the resource consumption. The hybrid coding sublayer of the embodiment of the present invention includes a sending module, and the sending module includes: four identical PCS basic transmitting units. Each PCS basic sending unit includes a standard transmitting state machine module, an 8B/10B encoding module, and a self-negotiation processing module. The code group replacement selection unit is configured to replace the K28.5 code group of the first channel with the K28.1 code group when the mixed coding sublayer works in the 4-channel scene after the encoding process; When working in a single-channel scene, no replacement processing is performed. The unbalanced value calculation processing unit is configured to calculate an unbalanced value required for the encoding process by using the 4-channel unbalanced value when the mixed-coded sub-layer operates in the 4-channel scene; configured to operate the single-channel when the mixed-coded sub-layer operates In the scene, the unbalanced value required for the encoding process is calculated using the single channel unbalanced value.
本发明实施例的混合物理编码子层还包括接收模块,所述接收模块包括:4个同样的PCS基本接收单元。其中,每个PCS基本接收单元都包括标准接收状态机模块、8B/10B解码模块。对齐码检测处理单元,配置为当混合物理编码子层工作在4通道场景时,利用4通道对齐码检测将从SERDES发出的数据对齐;当混合物理编码子层工作在单通道场景时,利用单通道对齐码检测将从SERDES发出的数据对齐。码组还原选择单元,配置为在数据对齐后,当混合物理编码子层工作在4通道场景时,将第一通道的K28.1码组恢复为K28.5码组;当混合物理编码子层工作在单通道场景时,不作还原处理。不均衡值计算处理单元,配置为当混合物理编码子层工作在4通道场景时,利用4通道不均衡值计算解码处理所需的不均 衡值;配置为当混合物理编码子层工作在单通道场景时,利用单通道不均衡值计算解码处理所需的不均衡值。本发明实施例在几乎没有增加额外资源消耗的情况下,使得单个QSGMII可支持额外多种传输模式(SGMII、1000BASE-X),应用于芯片成本较低,同时保证通信设备可灵活应用于多样化的场景。The hybrid coding sublayer of the embodiment of the present invention further includes a receiving module, and the receiving module includes: four identical PCS basic receiving units. Each PCS basic receiving unit includes a standard receiving state machine module and an 8B/10B decoding module. The alignment code detection processing unit is configured to use the 4-channel alignment code to detect data alignment from the SERDES when the mixed-coded sub-layer operates in a 4-channel scene; when the mixture coding sub-layer operates in a single-channel scene, use the single Channel alignment code detection aligns the data sent from the SERDES. The code group restoration selection unit is configured to restore the K28.1 code group of the first channel to the K28.5 code group when the mixture coding sublayer works in the 4-channel scene after data alignment; when the mixture encodes the sub-layer When working in a single-channel scene, no restoration is performed. The unbalanced value calculation processing unit is configured to calculate the unevenness required for the decoding process by using the 4-channel unbalanced value when the mixed-coded sub-layer operates in the 4-channel scene The value is configured to calculate the imbalance value required for the decoding process using the single channel imbalance value when the mixture coding sublayer operates in a single channel scenario. In the embodiment of the present invention, a single QSGMII can support an additional multiple transmission modes (SGMII, 1000BASE-X) with little additional resource consumption, and the application cost is low, and the communication device can be flexibly applied to diversification. Scene.
图1是SGMII/1000BASE-X物理编码子层结构图;1 is a structural diagram of a SGMII/1000BASE-X physical coding sublayer;
图2是QSGMII物理编码子层结构图;2 is a structural diagram of a QSGMII physical coding sublayer;
图3是本发明实施例的混合物理编码子层的结构示意图;3 is a schematic structural view of a mixture coding sub-layer of an embodiment of the present invention;
图4是单通道不均衡值处理示意图;Figure 4 is a schematic diagram of single channel unbalanced value processing;
图5是4通道不均衡值处理示意图;Figure 5 is a schematic diagram of 4-channel unbalanced value processing;
图6是本发明实施例的混合物理编码子层的数据发送流程图;6 is a flow chart of data transmission of a mixture coding sublayer according to an embodiment of the present invention;
图7是本发明实施例的混合物理编码子层的数据接收流程图。7 is a flow chart of data reception of a mixture coding sublayer of an embodiment of the present invention.
为了能够更加详尽地了解本发明实施例的特点与技术内容,下面结合附图对本发明实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明实施例。The embodiments of the present invention are described in detail below with reference to the accompanying drawings.
如图1所示,图中黑框内显示的是SGMII/1000BASE-X的物理编码子层结构图。As shown in Figure 1, the black code in the figure shows the physical coding sublayer structure of SGMII/1000BASE-X.
SGMII/1000BASE-X物理编码子层发送侧将MAC层发送侧由GMII发出的数据做有序集替换插入以及编码处理,编码后位宽从8比特(bit)扩展变为10bit。物理编码子层将10bit的数据流以125Mhz输出到SERializer串行器/DESerializer解串器(SERDES)发送侧1,SERDES发送侧1对并行数据做并串转换转化为串行bit流输出。 The SGMII/1000BASE-X physical coding sublayer transmitting side performs the ordered set replacement insertion and encoding processing on the MAC layer transmitting side by the data sent by the GMII, and the bit width is expanded from 8 bits (bit) to 10 bits after encoding. The physical coding sublayer outputs a 10-bit data stream at 125Mhz to the SERializer serializer/DESerializer deserializer (SERDES) transmit side 1, and the SERDES transmit side 1 performs parallel-to-serial conversion on the parallel data into a serial bit stream output.
此时实际速率为10bit×125Mhz=1.25Gbps,有效速率为除去8B/10B编码的开销为1.25Gpbs*8/10=1Gbps。对于单独的SGMII/1000BASE-X的物理编码子层来看,其对应的SERDES发送侧1以及SERDES接收侧1仅需要固定工作在10bit位宽的处理模式即可。注意SERDES发送侧1与SERDES接收侧1的位宽实际还是40bit,只是此时固定工作在仅有低10bit有效的模式下。At this time, the actual rate is 10bit×125Mhz=1.25Gbps, and the effective rate is 1.25Gpbs*8/10=1Gbps for removing 8B/10B encoding. For the physical coding sublayer of the SGMII/1000BASE-X alone, the corresponding SERDES transmission side 1 and the SERDES reception side 1 need only be fixed in a processing mode of 10 bit width. Note that the bit width of the SERDES transmitting side 1 and the SERDES receiving side 1 is actually 40 bits, but the fixed operation is only in the mode where only the lower 10 bits are valid.
SGMII/1000BASE-X物理编码子层接收侧接收来自于SERDES接收侧1经过了串并转换恢复的10bit并行数据,经过重新对齐后做解码操作,去除有序集码组将数据流恢复为GMII的数据流形式送回MAC层接收侧。The receiving side of the SGMII/1000BASE-X physical coding sublayer receives 10 bits of parallel data from the SERDES receiving side 1 after serial-to-parallel conversion recovery, and performs re-alignment to perform decoding operation, and removes the ordered set code group to restore the data stream to GMII. The data stream form is sent back to the MAC layer receiving side.
SGMII/1000BASE-X物理编码子层发送侧主要包括PCS基本发送单元、单通道不均衡值计算单元。PCS基本发送单元包括标准发送状态机模块、8B/10B编码模块、自协商处理模块。The SGMII/1000BASE-X physical coding sublayer transmission side mainly includes a PCS basic transmission unit and a single channel unbalanced value calculation unit. The PCS basic transmission unit includes a standard transmission state machine module, an 8B/10B coding module, and a self-negotiation processing module.
标准发送状态机模块:主要是根据IEEE的标准802.3-2008_section3Figure36-5、Figure36-6中的1000BASE-X的发送状态机结构图编写,实现了千兆以太网PCS的有序集转换以及插入、异常情况的跳转等封装处理,为数据添加开始码/S/、结束码/T/、空闲码/I/码,数据流被封装为适用于8B/10B编码的码组形式。Standard Transmit State Machine Module: It is mainly based on IEEE 802.3-2008_section3 Figure 36-5, Figure 36-6, 1000BASE-X transmission state machine structure diagram, which realizes the ordered set conversion and insertion and abnormality of Gigabit Ethernet PCS. The encapsulation process, such as a jump of the situation, adds a start code /S/, an end code/T/, an idle code/I/code to the data, and the data stream is encapsulated into a code group form suitable for 8B/10B encoding.
8B/10B编码模块,根据插入整理好的码流进行8B/10B编码操作,8B/10B编码处理需要不均衡值作为输入,由单通道不均衡值计算单元提供。编码完成后数据即可直接送入SERDES发送侧1做并行数据到串行数据的转换。The 8B/10B encoding module performs 8B/10B encoding operation according to the inserted code stream, and the 8B/10B encoding processing requires an unbalanced value as an input, which is provided by the single channel unbalanced value calculating unit. After the encoding is completed, the data can be directly sent to the SERDES transmitting side 1 to convert the parallel data to the serial data.
自协商处理模块:主要是实现IEEE的标准802.3-2008_section3Figure37-6中1000BASE-X的自协商处理状态机,通过自协商可以完成通信两端的能力协调操作。其中SGMII与1000BASE-X在协商页表方面有区别,在该模块中对能力提取功能做了区别处理,保证可以按模式区分 SGMII/1000BASE-X所支持的能力,其他处理以及状态机公用。The auto-negotiation processing module: mainly implements the 1000BASE-X auto-negotiation processing state machine in IEEE standard 802.3-2008_section3 Figure 37-6, and can complete the capability coordination operation at both ends of the communication through auto-negotiation. SGMII and 1000BASE-X are different in the negotiation page table. In this module, the capability extraction function is treated differently to ensure that it can be distinguished by mode. The capabilities supported by SGMII/1000BASE-X are common to other processing and state machines.
单通道不均衡值处理单元(发送侧)负责提供单个的8B/10B编码模块的不均衡值处理,具体原理是下一个编码的输入是前一个编码不均衡值的输出。单通道处理直接将前次输入的不均衡值送给下一次编码即可,如图4所示。从如上的原理分析可以得出该处理只是需要1bit的寄存器,逻辑资源几乎可忽略。The single channel unbalanced value processing unit (transmitting side) is responsible for providing unbalanced value processing of a single 8B/10B encoding module. The specific principle is that the input of the next encoding is the output of the previous encoding unbalanced value. Single channel processing directly sends the unbalanced value of the previous input to the next encoding, as shown in Figure 4. From the above principle analysis, it can be concluded that the processing only requires 1 bit of registers, and the logical resources are almost negligible.
SGMII/1000BASE-X物理编码子层接收侧主要包括单通道对齐码检测单元、单通道不均衡值计算单元、PCS基本接收单元。PCS基本接收单元包括8B/10B解码模块、标准接收状态机模块。The receiving side of the SGMII/1000BASE-X physical coding sublayer mainly includes a single channel alignment code detecting unit, a single channel unbalanced value calculating unit, and a PCS basic receiving unit. The PCS basic receiving unit includes an 8B/10B decoding module and a standard receiving state machine module.
单通道对齐码检测单元:主要是从SERDES接收侧1数据流中找出对齐码,来将数据对齐为发送侧进行并串转换之前的状态。由于串行比特流经过SERDES接收侧1处理恢复的串行值数据边界已经被打乱,所以该处理是需要重新得到10bit数据的边界,是必不可少的。从如上的原理分析可以得出该处理需要40bit左右的寄存器。Single channel alignment code detection unit: mainly finds the alignment code from the SERDES receiving side 1 data stream to align the data to the state before the parallel conversion of the transmitting side. Since the serial bit stream has been disturbed by the serial value stream of the serial bit stream recovered by the SERDES receiving side 1 processing, it is indispensable that the processing needs to regain the boundary of the 10-bit data. From the above principle analysis, it can be concluded that the processing requires about 40 bits of registers.
单通道不均衡值计算单元(接收侧):负责提供单通道8B/10B解码模块的不均衡值处理,具体原理是下一个解码操作的不均衡值输入是前一个解码操作不均衡值的输出。单通道处理直接将前次输入的不均衡值送给下一次解码即可。如果发送侧编码错误或者链路不稳定造成数据流异常,接收侧根据不均衡值检查可以较容易检测到错误。Single channel unbalanced value calculation unit (receiving side): responsible for providing unbalanced value processing of the single channel 8B/10B decoding module. The specific principle is that the unbalanced value input of the next decoding operation is the output of the previous decoding operation unbalanced value. Single channel processing directly sends the unbalanced value of the previous input to the next decoding. If the data on the transmitting side is incorrect or the link is unstable, the data stream is abnormal. The receiving side can easily detect the error according to the unbalanced value check.
8B/10B解码模块:主要是对对齐后的数据进行8B/10B解码操作,期间还需要检测解码数据的不均衡值正确性、编码码组正确性、控制码合法性的错误,最后将10bit数据重新恢复为8bit有序集合。8bit数据流经过接收状态机模块处理会被重新解封装为GMII模式的数据,同时需要检测各种控制字符与协议符合与否,检测到不合格的有序集码组需要打上错误标记。8B/10B decoding module: mainly performs 8B/10B decoding operation on the aligned data, and also needs to detect the correctness of the unbalanced value of the decoded data, the correctness of the encoding code group, the validity of the control code, and finally the 10-bit data. Revert back to an 8-bit ordered collection. The 8bit data stream is re-decapsulated into the GMII mode data after being processed by the receiving state machine module. At the same time, it is necessary to detect whether the various control characters conform to the protocol, and the unqualified ordered set code group needs to be marked with an error flag.
标准接收状态机模块:实现了IEEE的标准802.3-2008_section3Figure 36-7a、Figure 36-7b。对经过8B/10B解码后的数据进行解封装操作,包括去除开始码/S/、结束码/T/、还原空闲码/I/,同时需要检测码组封装的正确性,对于不合法的封装数据流打上错误标记经由GMII送回MAC层。同时需要根据码组状态结合标准IEEE的标准802.3-2008_section3Figure 36-9的同步状态机来给出链路同步状态指示。Standard Receive State Machine Module: Implements IEEE Standard 802.3-2008_section3Figure 36-7a, Figure 36-7b. Perform decapsulation on the 8B/10B decoded data, including removing the start code /S/, the end code/T/, restoring the idle code/I/, and detecting the correctness of the code group encapsulation for the illegal package. The data stream is flagged with an error and sent back to the MAC layer via GMII. At the same time, it is necessary to give a link synchronization status indication according to the code group status in conjunction with the synchronization state machine of the standard IEEE standard 802.3-2008_section3 Figure 36-9.
如图2所示,图中显示了QSGMII的物理编码子层的处理结构图。As shown in FIG. 2, the processing structure diagram of the physical coding sublayer of QSGMII is shown.
QSGMII物理编码子层发送侧将MAC层发送侧0、MAC层发送侧1、MAC层发送侧2、MAC层发送侧3经过4套GMII发出的数据同时做有序集替换插入以及编码处理,其中第1条通道需要对有序集码组做特别处理(将K28.5码组替换为K28.1码组),编码后位宽度从4×8bit扩展变为4×10bit。物理编码子层将4×10bit的数据流以125Mhz输出到SERDES发送侧2,SERDES发送侧2对并行数据做并串转换转化为串行bit流输出。The sending side of the QSGMII physical coding sublayer sends the data sent by the MAC layer transmitting side 0, the MAC layer transmitting side 1, the MAC layer transmitting side 2, and the MAC layer transmitting side 3 through 4 sets of GMIIs, and performs ordered set replacement insertion and encoding processing, wherein The first channel needs to perform special processing on the ordered set code group (replace the K28.5 code group with the K28.1 code group), and the bit width after encoding is changed from 4×8 bit to 4×10 bits. The physical coding sublayer outputs a 4×10 bit data stream to the SERDES transmitting side 2 at 125 Mhz, and the SERDES transmitting side 2 performs parallel-to-serial conversion on the parallel data into a serial bit stream output.
此时实际速率为4×10bit×125Mhz=5Gbps,有效速率为除去8B/10B编码的开销为5Gpbs×8/10=4Gbps。对于单独的QSGMII的物理编码子层来看其对应的SERDES发送侧2以及SERDES接收侧2仅需要固定工作在40bit位宽的处理模式即可。注意SERDES2发送侧与接收侧位宽实际还是40bit,只是此时固定工作在40bit全部有效的模式下。At this time, the actual rate is 4×10 bit×125Mhz=5 Gbps, and the effective rate is 5 Gpbs×8/10=4 Gbps except for the 8B/10B encoding. For the physical coding sublayer of the individual QSGMII, the corresponding SERDES transmitting side 2 and the SERDES receiving side 2 need only be fixed in a processing mode of 40 bit width. Note that the bit width of the transmitting side and the receiving side of the SERDES2 is actually 40 bits, but the fixed operation is in the 40 bit all effective mode at this time.
QSGMII物理编码子层接收侧接收来自于SERDES接收侧2经过串并转换恢复的40bit并行数据,经过通道重新对齐后做解码操作,其中第1条通道需要对将K28.1还原为K28.5码组以便进行有序集解封装处理,去除有序集码组后将数据流恢复为4套GMII的数据流形式送回MAC层接收侧0、MAC层接收侧1、MAC层接收侧2、MAC层接收侧3。The receiving side of the QSGMII physical coding sublayer receives 40-bit parallel data from the SERDES receiving side 2 after serial-to-parallel conversion recovery, and performs decoding operation after channel realignment, wherein the first channel needs to restore K28.1 to K28.5 code. The group is used for de-encapsulation processing of the ordered set, and the data stream is restored to 4 sets of GMII data streams after being removed from the ordered set code group, and sent back to the MAC layer receiving side 0, the MAC layer receiving side 1, the MAC layer receiving side 2, and the MAC. The layer receives side 3.
QSGMII物理编码子层发送侧主要包括4个PCS基本发送单元、4通道不均衡值计算单元以及K28.1码组替换单元。The transmitting side of the QSGMII physical coding sublayer mainly includes four PCS basic transmission units, a 4-channel unbalanced value calculation unit, and a K28.1 code group replacement unit.
K28.1码组替换单元主要是用于替换第1个通道的K28.5码组,以便于 接收侧检测K28.1码组以对齐通道的数据边界,是QSGMII的特有处理方式。The K28.1 code group replacement unit is mainly used to replace the K28.5 code group of the first channel, so as to facilitate The receiving side detects the K28.1 code group to align the data boundary of the channel, which is a unique processing method of QSGMII.
PCS基本发送单元结构如前所述,QSGMII发送侧需要使用4个PCS基本发送单元,包括PCS基本发送侧0、PCS基本发送侧1、PCS基本发送侧2、PCS基本发送侧3。The PCS basic transmission unit structure is as described above. The QSGMII transmission side needs to use four PCS basic transmission units, including the PCS basic transmission side 0, the PCS basic transmission side 1, the PCS basic transmission side 2, and the PCS basic transmission side 3.
4通道不均衡值计算单元(发送侧):由于链路传播中4条通道码组是使用同一个SERDES来传播,那么不均衡值实际上是需要表示这4条通道间的关联性,那么不均衡值处理就不应该仅在1条通道中做前后传播。具体实现中是需要将前一个通道编码的码组传输给下一个通道编码的码组,这样实现了不同通道间编码的关联性。具体实施原理结构如图5所示。4-channel unbalanced value calculation unit (transmission side): Since the four channel code groups in the link propagation are transmitted using the same SERDES, the imbalance value actually needs to indicate the correlation between the four channels, then Equilibrium value processing should not be propagated back and forth in only one channel. In the specific implementation, the code group encoded by the previous channel needs to be transmitted to the code group of the next channel code, so that the correlation of coding between different channels is realized. The structure of the specific implementation principle is shown in Figure 5.
QSGMII物理编码子层接收侧主要包括4个PCS基本接收单元、4通道不均衡值计算单元以及4通道对齐码检测单元。The receiving side of the QSGMII physical coding sublayer mainly includes four PCS basic receiving units, a 4-channel unbalanced value calculating unit, and a 4-channel alignment code detecting unit.
PCS基本接收单元结构如前所述,QSGMII接收侧需要使用4个PCS基本接收单元包括PCS基本接收侧0、PCS基本接收侧1、PCS基本接收侧2、PCS基本接收侧3。The PCS basic receiving unit structure is as described above. The QSGMII receiving side needs to use four PCS basic receiving units including the PCS basic receiving side 0, the PCS basic receiving side 1, the PCS basic receiving side 2, and the PCS basic receiving side 3.
K28.1码组还原单元是配置为等待4个通道的数据边界对齐后,将第1个通道的K28.1码组重新恢复为K28.5码组,这样接收侧的QSGMII状态机处理模块与原SGMII/1000BASE-X可以共用一套处理机制。The K28.1 code group restoration unit is configured to wait for the data boundary of the four channels to be aligned, and then restore the K28.1 code group of the first channel to the K28.5 code group, so that the QSGMII state machine processing module on the receiving side is The original SGMII/1000BASE-X can share a set of processing mechanisms.
4通道不均衡值计算单元(接收侧):由于链路传播中4条通道的码组是使用同一个SERDES来传播,那么不均衡值实际上是需要表示这4条通道间的关联。这样只要有一条通道工作不正确,会造成其他4条通道的不均衡值传播不正确,导致所有通道解码出错。具体实现结构可以见图5。4-channel unbalanced value calculation unit (receiving side): Since the code groups of the four channels in the link propagation are propagated using the same SERDES, the unbalanced value actually needs to represent the association between the four channels. In this way, as long as one channel does not work correctly, the unbalanced value propagation of the other four channels will be incorrect, resulting in decoding errors of all channels. The specific implementation structure can be seen in Figure 5.
4通道对齐码检测单元主要是从SERDES数据流中找出对齐码,来将数据对齐为发送侧进行并串转换之前的状态。相比于单通道的处理,在4通道中对齐不仅仅表示了每个通道并行数据的边界,同时也是每条通道数 据分割的边界点。当该位置确定,这样所有通道的数据都已经被对齐了。相反如果该位置判断错误,会造成所有通道数据的混乱。The 4-channel alignment code detection unit mainly finds the alignment code from the SERDES data stream to align the data to the state before the parallel conversion of the transmitting side. Compared to single-channel processing, alignment in 4 channels not only represents the boundary of parallel data for each channel, but also the number of channels per channel. According to the segmentation boundary point. When the position is determined, the data for all channels is already aligned. On the contrary, if the position is judged incorrectly, it will cause confusion of all channel data.
可以看到QSGMII实际上是在4套SGMII的结构上略作调整。从之前的分析得到SGMII实际上可以使用QSGMII的其中的1个PCS基本发送单元与1个PCS基本接收单元,加上单通道不均衡值计算单元(发送侧)、单通道不均衡值计算单元(接收侧)、单通道对齐码检测单元来得到。所以可以将QSGMII结构改造如图3,即为QSGMII/SGMII/1000BASE-X混合PCS处理结构图。图3中SERDES发送侧3与SERDES接收侧3此时无法固定工作于10bit有效或者40bit有效模式,需要根据此时的控制信号(pcs_mod)来决定此时SERDES3发送侧与接收侧的工作位宽,这样配合PCS层的模块变化即可实现多模式混合PCS实现。It can be seen that QSGMII is actually slightly adjusted on the structure of 4 sets of SGMII. From the previous analysis, SGMII can actually use one of the PCS basic transmission units and one PCS basic reception unit of QSGMII, plus a single-channel unbalanced value calculation unit (transmission side) and a single-channel unbalanced value calculation unit ( Receive side), single channel alignment code detection unit to get. Therefore, the QSGMII structure can be modified as shown in Figure 3, which is the QSGMII/SGMII/1000BASE-X hybrid PCS processing structure. In FIG. 3, the SERDES transmitting side 3 and the SERDES receiving side 3 cannot be fixed in the 10-bit effective or 40-bit effective mode at this time, and it is necessary to determine the working bit width of the transmitting side and the receiving side of the SERDES3 according to the control signal (pcs_mod) at this time. In this way, the multi-mode hybrid PCS implementation can be realized by the module change of the PCS layer.
如图3所示,本发明实施例的混合物理编码子层包括:发送模块31,所述发送模块31包括:As shown in FIG. 3, the hybrid coding sublayer of the embodiment of the present invention includes: a sending
4个物理编码子层PCS基本发送单元311,配置为对4个介质访问控制MAC层发送侧经4套千兆媒体独立接口GMII发出的数据同时做有序集替换插入以及编码处理;The four physical coding sub-layer PCS
码组替换选择单元312,配置为在编码处理后,当混合物理编码子层工作在4通道场景时,将第一通道的K28.5码组替换为K28.1码组;当混合物理编码子层工作在单通道场景时,不作替换处理;The code group
不均衡值计算处理单元313,配置为当混合物理编码子层工作在4通道场景时,利用4通道不均衡值计算编码处理所需的不均衡值;配置为当混合物理编码子层工作在单通道场景时,利用单通道不均衡值计算编码处理所需的不均衡值。The unbalanced value
每个PCS基本发送单元311均包括:Each PCS basic sending
标准发送状态机模块(图中未示出),配置为将一个通道的MAC层发 送侧经GMII发出的数据做有序集替换插入处理,将数据封装为适用于8B/10B编码的码组形式;Standard transmit state machine module (not shown) configured to send the MAC layer of a channel The data sent by the sending side via the GMII is subjected to an ordered set replacement insertion process, and the data is encapsulated into a code group form suitable for 8B/10B encoding;
8B/10B编码模块(图中未示出),配置为对标准发送状态机模块处理好的码流进行8B/10B编码处理,其中,8B/10B编码处理需要不均衡值作为输入;编码处理后将数据发送至SERDES发送侧做并行数据到串行数据的转换;The 8B/10B encoding module (not shown) is configured to perform 8B/10B encoding processing on the code stream processed by the standard transmitting state machine module, wherein the 8B/10B encoding process requires an unbalanced value as an input; after the encoding process Send data to the SERDES transmitting side for parallel data to serial data conversion;
自协商处理模块(图中未示出),配置为通过自协商完成通信两端的能力协调操作。The auto-negotiation processing module (not shown) is configured to complete the capability coordination operation at both ends of the communication by auto-negotiation.
所述码组替换选择单元312,还配置为根据控制信号,选择是否将第一通道的K28.1码组替换为K28.5码组;The code group
所述不均衡值计算处理单元313,还配置为根据控制信号,选择利用4通道不均衡值计算编码处理所需的不均衡值,或是利用单通道不均衡值计算编码处理所需的不均衡值。The unbalanced value
图3中可以看到,相比于原来的QSGMII实现的处理方式而言,主要对几个需要区分单通道与4通道处理的模块加入了模式选择,使用pcs_mod信号来表示当前PCS需要工作在4通道场景下或者是单通道场景下。这样通过详细分析QSGMII与SGMII/1000BASE-X的结构异同就得出了可以工作在3种任意模式下的处理方法。As can be seen in Figure 3, compared to the original QSGMII implementation, the mode selection is added to several modules that need to distinguish between single-channel and 4-channel processing. The pcs_mod signal is used to indicate that the current PCS needs to work at 4. In a channel scene or in a single channel scene. In this way, by analyzing the structural similarities and differences between QSGMII and SGMII/1000BASE-X in detail, the processing methods that can work in three arbitrary modes are obtained.
如图3所示,本发明另一实施例的混合物理编码子层包括:接收模块32,所述接收模块32包括:As shown in FIG. 3, the hybrid coding sublayer of another embodiment of the present invention includes: a receiving
对齐码检测处理单元321,配置为当混合物理编码子层工作在4通道场景时,利用4通道对齐码检测将从SERDES发出的数据对齐;当混合物理编码子层工作在单通道场景时,利用单通道对齐码检测将从SERDES发出的数据对齐;The alignment code
码组还原选择单元322,配置为在数据对齐后,当混合物理编码子层工 作在4通道场景时,将第一通道的K28.1码组恢复为K28.5码组;当混合物理编码子层工作在单通道场景时,不作还原处理;The code group restoration selection unit 322 is configured to process the sub-layers when the data is aligned When working in a 4-channel scene, the K28.1 code group of the first channel is restored to the K28.5 code group; when the mixture coding sub-layer works in a single-channel scene, no restoration process is performed;
4个PCS基本接收单元323,对在数据对齐后,对4通道的数据做解码处理以及去除有序集码组,将数据流恢复为GMII的数据流形式发送至4个MAC层接收侧;4 PCS basic receiving
不均衡值计算处理单元324,配置为当混合物理编码子层工作在4通道场景时,利用4通道不均衡值计算解码处理所需的不均衡值;配置为当混合物理编码子层工作在单通道场景时,利用单通道不均衡值计算解码处理所需的不均衡值。The unbalanced value
每个PCS基本接收单元323均包括:Each PCS
8B/10B解码模块(图中未示出),配置为对对齐后的数据进行8B/10B解码操作;8B/10B decoding module (not shown) configured to perform 8B/10B decoding operation on the aligned data;
标准接收状态机模块(图中未示出),配置为对经过8B/10B解码后的数据去除有序集码组,将数据流恢复为GMII的数据流形式发送至MAC层接收侧。The standard receiving state machine module (not shown) is configured to remove the ordered set code group from the 8B/10B decoded data, and restore the data stream to the GMII data stream and send it to the MAC layer receiving side.
所述码组还原选择单元322,还配置为根据控制信号,选择利用4通道对齐码检测、或是单通道对齐码检测将从SERDES发出的数据对齐;The code group restoration selecting unit 322 is further configured to select, according to the control signal, to align the data sent from the SERDES by using 4-channel alignment code detection or single channel alignment code detection;
所述不均衡值计算处理单元324,还配置为根据控制信号,选择利用4通道不均衡值计算解码处理所需的不均衡值,或是利用单通道不均衡值计算解码处理所需的不均衡值。The unbalanced value
如图3所示,本发明另一实施例的混合物理编码子层包括上述发送模块31和接收模块32。图3的混合物理编码子层主要是对原QSGMII处理结构的码组替换与还原选择单元、不均衡值计算处理单元、对齐码检测处理单元做了选择处理。As shown in FIG. 3, the hybrid coding sublayer of another embodiment of the present invention includes the above-described
对齐码检测处理单元结合了4通道对齐码检测单元与单通道对齐码检 测单元,根据pcs_mod来决定使用哪个单元做处理。The alignment code detection processing unit combines a 4-channel alignment code detection unit with a single-channel alignment code check The measurement unit determines which unit to use for processing according to pcs_mod.
不均衡值计算处理单元结合了4通道不均衡值计算单元与单通道不均衡值计算单元,根据pcs_mod来决定使用哪个单元做处理。The unbalanced value calculation processing unit combines a 4-channel unbalanced value calculation unit and a single-channel unbalanced value calculation unit, and determines which unit to use for processing according to pcs_mod.
根据pcs_mod来决定是否做原K28.1的码组替换与还原操作。当工作在QSGMII模式(即4通道工作场景)时,K28.1码组操作如前所述,当工作在SGMII/1000BASE-X模式(即单通道工作场景)时,直接流水线延迟一拍输出。According to pcs_mod to decide whether to do the original K28.1 code group replacement and restore operation. When working in QSGMII mode (ie 4-channel working scene), the K28.1 code group operates as described above. When working in SGMII/1000BASE-X mode (ie single-channel working scene), the direct pipeline delays one beat output.
图6为本发明实施例的混合物理编码子层的数据发送方法的流程示意图,如图6所示,所述混合物理编码子层的数据发送方法包括以下步骤:FIG. 6 is a schematic flowchart of a data transmission method of a mixture coding sublayer according to an embodiment of the present invention. As shown in FIG. 6, the data transmission method of the mixture coding sublayer includes the following steps:
步骤601:接收MAC层发送侧通过GMII发送的数据。Step 601: Receive data sent by the MAC layer transmitting side through the GMII.
步骤602:对所述数据进行有序集替换插入以及编码处理,其中,进行编码处理时,当混合物理编码子层工作在4通道场景时,利用4通道不均衡值计算编码处理所需的不均衡值,当混合物理编码子层工作在单通道场景时,利用单通道不均衡值计算编码处理所需的不均衡值。Step 602: Perform an ordered set replacement insertion and an encoding process on the data, wherein, when performing the encoding process, when the mixed coding sublayer works in a 4-channel scene, the 4-channel unbalanced value is used to calculate the coding process. The equalization value, when the mixture coding sublayer works in a single channel scenario, uses the single channel imbalance value to calculate the imbalance value required for the encoding process.
具体地,将一个通道的MAC层发送侧经GMII发出的数据做有序集替换插入处理,将数据封装为适用于8B/10B编码的码组形式;Specifically, the data sent by the GMII of the MAC layer of one channel is subjected to the ordered set replacement insertion process, and the data is encapsulated into a code group format suitable for 8B/10B coding;
对处理好的码流进行8B/10B编码处理,其中,8B/10B编码处理需要不均衡值作为输入。The processed code stream is subjected to 8B/10B encoding processing, wherein the 8B/10B encoding process requires an unbalanced value as an input.
之后,通过自协商完成通信两端的能力协调操作。After that, the capability coordination operation at both ends of the communication is completed through auto-negotiation.
步骤603:当混合物理编码子层工作在4通道场景时,将第一通道的K28.5码组替换为K28.1码组,并发送至SERDES发送侧做并行数据到串行数据的转换;当混合物理编码子层工作在单通道场景时,不作替换处理,直接将数据发送至SERDES发送侧做并行数据到串行数据的转换。Step 603: When the mixture coding sublayer works in the 4-channel scene, replace the K28.5 code group of the first channel with the K28.1 code group, and send it to the SERDES transmission side to perform parallel data to serial data conversion; When the mixture coding sublayer works in a single channel scenario, no replacement processing is performed, and data is directly sent to the SERDES transmitting side for parallel data to serial data conversion.
图7为本发明实施例的混合物理编码子层的数据接收方法的流程示意图,如图7所示,所述混合物理编码子层的数据接收方法包括以下步骤: FIG. 7 is a schematic flowchart of a data receiving method of a mixture coding sublayer according to an embodiment of the present invention. As shown in FIG. 7, the data receiving method of the mixture coding sublayer includes the following steps:
步骤701:当混合物理编码子层工作在4通道场景时,利用4通道对齐码检测将从SERDES发出的数据对齐;当混合物理编码子层工作在单通道场景时,利用单通道对齐码检测将从SERDES发出的数据对齐。Step 701: When the mixture coding sublayer works in a 4-channel scene, the 4-channel alignment code is used to detect the alignment of the data sent from the SERDES; when the mixture coding sub-layer works in a single-channel scene, the single-channel alignment code detection is used. Data alignment from SERDES.
步骤702:在数据对齐后,当混合物理编码子层工作在4通道场景时,将第一通道的K28.1码组恢复为K28.5码组;当混合物理编码子层工作在单通道场景时,不作还原处理。Step 702: After the data is aligned, when the mixture coding sublayer works in the 4-channel scene, the K28.1 code group of the first channel is restored to the K28.5 code group; when the mixture coding sublayer works in the single channel scene When it is not restored.
步骤703:在数据对齐后,对4通道的数据做解码处理以及去除有序集码组,将数据流恢复为GMII的数据流形式发送至4个MAC层接收侧;其中,当混合物理编码子层工作在4通道场景时,利用4通道不均衡值计算解码处理所需的不均衡值;用于当混合物理编码子层工作在单通道场景时,利用单通道不均衡值计算解码处理所需的不均衡值。Step 703: After the data is aligned, the 4-channel data is decoded and the ordered set code group is removed, and the data stream is restored to the GMII data stream and sent to the 4 MAC layer receiving side; wherein, when the mixture is encoded When the layer works in a 4-channel scene, the 4-channel unbalanced value is used to calculate the unbalanced value required for the decoding process; when the mixed-coded sub-layer operates in a single-channel scene, the single-channel unbalanced value is used to calculate the decoding process. Unbalanced value.
具体地,对对齐后的数据进行8B/10B解码操作;对经过8B/10B解码后的数据去除有序集码组,将数据流恢复为GMII的数据流形式发送至MAC层接收侧。Specifically, the 8B/10B decoding operation is performed on the aligned data; the ordered set code group is removed from the 8B/10B decoded data, and the data stream is restored to the GMII data stream and sent to the MAC layer receiving side.
相比于原来QSGMII实现逻辑资源增加了大约62bit寄存器以及3个2选1选择器资源,相比于原整体逻辑消耗,增加的资源微乎其微,几乎没有增加任何额外资源消耗。相比于4通道处理,单通道不均衡值计算单元(发送侧)、单通道不均衡值计算单元(接收侧)、单通道对齐码检测单元的功能相对要简单许多,相应的在原QSGMII逻辑基础上增加这些模块大约增加了1%的资源,几乎可以忽略不计。相比于直接使用SGMII/1000BASE-X加上QSGMII的物理编码子层设计可以至少节约1/4的资源消耗。Compared to the original QSGMII implementation logic resources increased by about 62bit registers and three 2-to-1 selector resources, compared to the original overall logic consumption, the added resources are minimal, almost no additional resource consumption. Compared with the 4-channel processing, the functions of the single-channel unbalanced value calculation unit (sending side), the single-channel unbalanced value calculation unit (receiving side), and the single-channel alignment code detection unit are relatively simple, and the corresponding QSGMII logic basis is corresponding. Adding these modules adds about 1% of the resources, which is almost negligible. Compared to the direct use of SGMII/1000BASE-X plus QSGMII physical coding sub-layer design can save at least 1/4 of the resource consumption.
目前也有其他相关技术有多模式以太网架构的实现,然而关注重点在于复杂的设计思路和新型的架构处理,却并未有考虑到QSGMII与SGMII/1000BASE-X结构的相似性以及资源的复用性上。对于多种以太模 式的处理上可以归纳为几种处理方法:At present, there are other related technologies that have the implementation of multi-mode Ethernet architecture. However, the focus is on complex design ideas and new architecture processing, but it does not take into account the similarity between QSGMII and SGMII/1000BASE-X structures and the reuse of resources. Sexually. For a variety of etheric modules The processing can be summarized into several processing methods:
采用多个不同速率的物理编码子层,在进入SERDES前做选择,达到实现多种速率共同工作的目的。该种处理方式较大的浪费了资源,成本较高。The physical coding sublayers of different rates are used to select before entering the SERDES, so as to achieve the purpose of working at multiple rates. This kind of processing method is a waste of resources and a high cost.
采用非标准处理,将大带宽分频复用于小速率。例如1个1Gbps速率的接口实际上可以用于传输10个100Mbps的接口。这样实际上是类似于QSGMII的处理方法,也就是10个100M接口全部使用为1G,单个100M接口单独使用即为实现了100M。该种处理方式缺点在与不是标准接口,无法与100M标准接口对接。本申请QSGMII工作于单通道模式虽然也实现了速率为1Gbps,然而单独的QSGMII是无法与SGMII对接的(虽然速率一致),所以本申请通过资源复用同时实现了QSGMII/SGMII的功能。Using a non-standard process, the large bandwidth division is reused for a small rate. For example, a 1Gbps rate interface can actually be used to transmit 10 100Mbps interfaces. This is actually similar to the QSGMII processing method, that is, 10 100M interfaces are all used as 1G, and a single 100M interface is used to achieve 100M. The disadvantage of this type of processing is that it is not a standard interface and cannot be interfaced with the 100M standard interface. Although the QSGMII works in the single channel mode and achieves a rate of 1 Gbps, the separate QSGMII cannot be connected to the SGMII (although the rate is consistent), so the present application implements the functions of the QSGMII/SGMII through resource multiplexing.
相比于其余现有技术,本申请详细分析了几种模式结构的异同,巧妙并且效率极高的进行了逻辑资源的复用,达到了实现低成本多模式物理编码子层端口的处理实现,对外支持1000BASE-X/SGMII/QSGMII来满足不同场景的应用需求以及与不同厂家的接口进行对接。Compared with the rest of the prior art, the present application analyzes the similarities and differences of several mode structures in detail, and carries out the multiplexing of logical resources with ingenious and high efficiency, and achieves the realization of realizing the low-cost multi-mode physical coding sub-layer port. Externally support 1000BASE-X/SGMII/QSGMII to meet the application needs of different scenarios and interface with different manufacturers' interfaces.
本发明实施例还记载了一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序配置为执行前述实施例记载的混合物理编码子层的数据发送方法。The embodiment of the invention further describes a storage medium in which a computer program is stored, the computer program being configured to execute the data transmission method of the mixture coding sublayer described in the foregoing embodiment.
本发明实施例还记载了一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序配置为执行前述实施例记载的混合物理编码子层的数据接收方法。The embodiment of the invention further describes a storage medium in which a computer program is stored, the computer program being configured to execute the data receiving method of the mixture coding sublayer described in the foregoing embodiment.
需要理解的是,虽然本说明书按照实施方式进行了具体的描述,但是某些结构细节与技术细节经过适当变换后,也可形成本领域技术人员可以理解的其他实施方式。上文的详细说明仅仅是针对本发明的可行性实施方式的具体说明,并非用于限制本发明的保护范围,凡未脱离本发明精神的 等效实施方式或者变更均在本发明的保护范围内。It is to be understood that while the specification has been described in detail, the embodiments of the invention may The above detailed description is only for the specific description of the possible embodiments of the present invention, and is not intended to limit the scope of the present invention. Equivalent embodiments or modifications are within the scope of the invention.
本发明通过仔细分析QSGMII以及SGMII/1000BASE-X的物理编码子层处理结构的异同,提取原QSGMII可复用的逻辑模块,附加上少量SGMII/1000BASE-X的逻辑模块资源即可得到同时支持多种千兆接口模式而资源成本几乎没有增加的物理编码子层。相比于直接使用SGMII/1000BASE-X加上QSGMII的物理编码子层设计可以至少节约1/4的资源消耗。 By carefully analyzing the similarities and differences of the physical coding sublayer processing structures of QSGMII and SGMII/1000BASE-X, the original QSGMII reusable logic module is extracted, and a small amount of SGMII/1000BASE-X logic module resources are added to obtain simultaneous support. A physical coding sublayer with a Gigabit interface mode and little resource cost. Compared to the direct use of SGMII/1000BASE-X plus QSGMII physical coding sub-layer design can save at least 1/4 of the resource consumption.
Claims (14)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201510425527.3 | 2015-07-17 | ||
| CN201510425527.3A CN106656872A (en) | 2015-07-17 | 2015-07-17 | Mixed physical coding sublayer and data transmitting and receiving method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2017012517A1 true WO2017012517A1 (en) | 2017-01-26 |
Family
ID=57833840
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2016/090217 Ceased WO2017012517A1 (en) | 2015-07-17 | 2016-07-15 | Hybrid physical coding sub-layer and method for transmitting and receiving data, and storage medium |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN106656872A (en) |
| WO (1) | WO2017012517A1 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108574695A (en) * | 2018-04-24 | 2018-09-25 | 天津芯海创科技有限公司 | protocol multiplexing chip and protocol multiplexing method |
| CN108667825A (en) * | 2018-04-24 | 2018-10-16 | 天津芯海创科技有限公司 | PCS protocol multiplexings chip and method |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107783922A (en) * | 2016-08-31 | 2018-03-09 | 深圳市中兴微电子技术有限公司 | A kind of data decoding method and device |
| CN108540489A (en) * | 2018-04-24 | 2018-09-14 | 天津芯海创科技有限公司 | PCS protocol multiplexings chip and method |
| CN108667824A (en) * | 2018-04-24 | 2018-10-16 | 天津芯海创科技有限公司 | PCS protocol multiplexings chip and method |
| CN110875798B (en) * | 2018-09-03 | 2022-08-02 | 中国科学院上海高等研究院 | A Scalable Physical Coding Sublayer |
| CN120185767A (en) * | 2023-12-20 | 2025-06-20 | 华为技术有限公司 | Coding method, decoding method, device, system and chip |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20120300792A1 (en) * | 2011-05-24 | 2012-11-29 | Cisco Technology, Inc. | Octal Serial Gigabit Media-Independent Interface |
| CN104221290A (en) * | 2012-03-23 | 2014-12-17 | 高通股份有限公司 | Configurable Multimode Media Independent Interface |
-
2015
- 2015-07-17 CN CN201510425527.3A patent/CN106656872A/en active Pending
-
2016
- 2016-07-15 WO PCT/CN2016/090217 patent/WO2017012517A1/en not_active Ceased
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20120300792A1 (en) * | 2011-05-24 | 2012-11-29 | Cisco Technology, Inc. | Octal Serial Gigabit Media-Independent Interface |
| CN104221290A (en) * | 2012-03-23 | 2014-12-17 | 高通股份有限公司 | Configurable Multimode Media Independent Interface |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108574695A (en) * | 2018-04-24 | 2018-09-25 | 天津芯海创科技有限公司 | protocol multiplexing chip and protocol multiplexing method |
| CN108667825A (en) * | 2018-04-24 | 2018-10-16 | 天津芯海创科技有限公司 | PCS protocol multiplexings chip and method |
Also Published As
| Publication number | Publication date |
|---|---|
| CN106656872A (en) | 2017-05-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2017012517A1 (en) | Hybrid physical coding sub-layer and method for transmitting and receiving data, and storage medium | |
| US9992125B2 (en) | Single-lane, twenty-five gigabit ethernet | |
| CN109426636B (en) | A method and device for high-bit-width data transmission between FPGA chips | |
| US8660125B2 (en) | Node device, integrated circuit and control method in ring transmission system | |
| CN108259127B (en) | PCIE dual-redundancy ten-gigabit network IP core | |
| US8990653B2 (en) | Apparatus and method for transmitting and recovering encoded data streams across multiple physical medium attachments | |
| EP4391429A1 (en) | Encoding method, decoding method, and related apparatus | |
| US12174779B2 (en) | FPGA-based USB 3.0/3.1 control system | |
| CN110493310B (en) | Software defined protocol controller and method | |
| WO2023125212A1 (en) | Data transmission method and apparatus, and device and medium | |
| CN108023743B (en) | A port auto-negotiation method and device | |
| CN103248449B (en) | The symbol of parallel data delimits method and device | |
| CN115208472A (en) | Data transmission system and data sending and receiving method | |
| US9337959B2 (en) | Defect propagation of multiple signals of various rates when mapped into a combined signal | |
| CN104009823B (en) | Dislocation detection and error correction circuit in a kind of SerDes technologies | |
| CN111949590B (en) | High-speed communication method capable of crossing FPGA platform | |
| CN111367849B (en) | A method and system for high-speed serial bus data synchronization | |
| CN117493248B (en) | USB data transmission method, device, system, electronic equipment and storage medium | |
| CN106713149A (en) | Daughter card of router and wire clamp board | |
| CN102523142B (en) | GTX (Gigabit texture per second)-based 20-port gigabit Ethernet access system and method | |
| US8331788B2 (en) | Encapsulation scheme for optical over Ethernet | |
| CN102510484A (en) | Video optical transceiver, and video transmission system and method | |
| CN105915382A (en) | Highly visualized panorama adjustable platform based Ethernet port connection method | |
| CN120582754B (en) | A data transmission system and method based on off-chip interconnection network | |
| CN118631410B (en) | Method, device and equipment for transmitting GTX high-speed data under bad channel |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16827208 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 16827208 Country of ref document: EP Kind code of ref document: A1 |