Data processing method, device and system
By performing 20-bit de-skew and channel replacement on the data streams of different Ethernet services in 800G transmission scenarios, the decoding performance of the cascaded FEC scheme is improved, the problem of insufficient BCH codewords after inner code encoding is solved, and optimal cascaded code performance is achieved.
Patent Information
- Application Number
- CN202510751328.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-15
- Publication Date
- 2025-09-12
- Estimated Expiration
- 2044-11-15
AI Technical Summary
In the existing cascade FEC solution in 800G transmission scenarios, the number of BCH codewords after the inner code encoding of two 400G Ethernet clients is small, resulting in poor cascade decoding performance.
By performing 20-bit de-skew on data streams from different Ethernet services to align them to RS symbol boundaries, and performing channel permutation and inner code encoding, the error correction capability of more RS code words is utilized to improve the performance of concatenated codes.
It achieves the best concatenated code performance in 800G transmission scenarios and solves the performance difference problem caused by the offset between different Ethernet service data streams.
Smart Images

Figure CN120639244A_ABST
Abstract
Description
[0001] This application is a divisional application. The application number of the original application is 202411655707.6, and the original application date is November 15, 2024. The entire content of the original application is incorporated into this application by reference. Technical Field
[0002] The present application relates to the field of communication technology, and in particular to a data processing method, device and system thereof. Background Art
[0003] Driven by technologies such as 5G, cloud computing, big data, and artificial intelligence, high-speed optical transmission networks are developing towards high capacity, packetization, and intelligence. Optical communication systems use the amplitude, phase, polarization, or frequency of light waves to carry information. Forward error correction (FEC) coding is used to correct errors in transmitted data, allowing the receiver to recover the original data from the received data.
[0004] A cascaded FEC transmission scheme has been proposed. A transmitting device and a transmitting processing module are connected via an attachment unit interface (AUI). The transmitting device performs a first FEC encoding on the data to be transmitted and sends the first FEC-encoded data to the transmitting processing module. The transmitting processing module then performs a second FEC encoding on the received first FEC-encoded data and modulates the second FEC-encoded bit sequence to generate a corresponding modulation symbol sequence. Finally, an optical signal is generated based on the modulation symbol sequence and transmitted to the receiving end via optical fiber. The first FEC encoding is also called outer code encoding, and the second FEC encoding is also called inner code encoding. The modulation is also called symbol mapping.
[0005] For coherent transmission scenarios, existing technical solutions provide a cascaded FEC solution for 800G transmission scenarios, considering one 800G Ethernet client (abbreviated as 800GE client, or 800G client) and two 400G Ethernet clients (abbreviated as 400GE clients, or 400Gclients). The outer code is encoded using KP4 RS (544, 514) code, with each outer code RS symbol containing 10 bits, and the inner code is BCH (126, 110). In the existing technical solution, for one 800G Ethernet client, each BCH codeword after inner code encoding is derived from 11 RS codewords, achieving optimal cascaded code performance. However, for two 400G Ethernet clients, the number of RS codewords derived from the BCH codewords after inner code encoding is small, resulting in poor cascaded code decoding performance, a problem that urgently needs to be addressed. Summary of the Invention
[0006] The embodiments of the present application provide a data processing method, device, and system thereof, which can solve the problem of poor cascade decoding performance caused by existing processing methods and can be applied to more coherent transmission scenarios.
[0007] In a first aspect, an embodiment of the present application provides a data processing method, comprising: obtaining n first data streams encoded by Reed-Solomon (RS), wherein at least two of the first data streams carry different Ethernet services, and n is greater than 1; de-skewing the n first data streams to obtain n second data streams, wherein the n second data streams are aligned to a 20-bit RS symbol boundary.
[0008] By de-skewing all n first data streams, the problem of data from different Ethernet services being offset, which causes poor performance of cascade coding, can be solved, thereby improving the performance of the entire data processing flow.
[0009] In combination with the first aspect, in a first possible implementation manner of the first aspect, the de-skewing is based on 20 bits.
[0010] In combination with the first aspect and the first possible implementation manner of the first aspect, in a second possible implementation manner of the first aspect, there is a distance d between any two second data streams among the n second data streams. skew bits of offset, where d skew An integer multiple of 20 or 0.
[0011] In the embodiment of the present application, 20-bit de-skew is adopted for all data streams. On the basis of solving the offset of data from different Ethernet services, since one RS symbol contains 10 bits, each data stream can be aligned with the boundary of the 20-bit RS-FEC symbol (two RS symbols), thereby facilitating subsequent channel replacement processing. Each BCH codeword can be made to come from more RS codewords as much as possible, thereby utilizing the error correction capability of more RS codewords to achieve optimal cascade code performance.
[0012] In combination with the first aspect and the above-described possible implementations of the first aspect, in a third possible implementation of the first aspect, before de-skewing the n first data streams, the method further includes: aligning and locking the n first data streams. This allows determining offsets and symbol boundaries between data streams, and subsequently enabling targeted offset and boundary alignment, thereby improving performance.
[0013] In combination with the first aspect and the above possible implementation methods of the first aspect, in a fourth possible implementation method of the first aspect, n is 32, wherein 16 first data streams carry first Ethernet services, and the other 16 first data streams carry second Ethernet services.
[0014] In combination with the first aspect and the foregoing possible implementation manners of the first aspect, in a fifth possible implementation manner of the first aspect, the Ethernet service is a 400GBASE-R service.
[0015] The embodiment of the present application targets an 800G transmission scenario and considers the situation of two 400G Ethernet customers. All 32 first data streams of the two 400G services are de-skewed, which can solve the problem of data offset from different Ethernet services, resulting in poor cascade coding performance, thereby improving the performance of the entire data processing flow.
[0016] In combination with the fifth possible implementation of the first aspect, in a sixth possible implementation of the first aspect, n is 32; obtaining n first data streams encoded by Reed-Solomon (RS) specifically includes: processing an RS-encoded 400GBASE-R service through a physical medium attachment (PMA) sublayer to obtain 16 first data streams; and processing another RS-encoded 400GBASE-R service through a PMA sublayer to obtain the remaining 16 first data streams.
[0017] This embodiment of the present application also targets an 800G transmission scenario, considering two 400G Ethernet clients. One 400GBASE-R service signal (also known as a 400G AUI-4 signal, or the 400G AUI-4 interface transmits the 400GBASE-R service signal) consists of four signals, each with a rate of 106.25 Gb / s. Considering two 400G Ethernet clients, a total of 32 first data streams are obtained, each with a rate of 26.5625 Gb / s.
[0018] In combination with the first aspect and the above-mentioned possible implementation methods of the first aspect, in a seventh possible implementation method of the first aspect, the method further includes: performing channel permutation on the n second data streams to obtain n third data streams, wherein the four consecutive symbols in each third data stream come from four different RS codewords. In the embodiment of the present application, by de-skewing all n first data streams, after channel permutation, the four consecutive symbols in each third data stream come from four RS codewords, thereby making each BCH codeword after inner code encoding come from 11 RS codewords, making each BCH codeword come from as many RS codewords as possible, and utilizing the error correction capabilities of more RS codewords to achieve optimal cascade code performance, thereby solving the problem of poor cascade performance caused by the offset between data streams from different customers.
[0019] In combination with the seventh possible implementation of the first aspect, in the eighth possible implementation of the first aspect, the method further includes: encoding each of the third data streams separately to obtain n encoded data streams, wherein the encoding adopts Bose-Chadhouli-Hocquenghem BCH (126,110) code. Further, before the encoding, the method further includes: performing convolution interleaving on each of the third data streams separately to obtain n convolution interleaved data streams. At this time, the 12 consecutive RS symbols in each data stream after convolution interleaving come from 12 different RS code words, which disrupts the bit order in the third data stream. When an error occurs, the erroneous bits can be dispersed into different RS code words, and the error correction capabilities of more RS code words can be utilized to achieve better cascade coding performance.
[0020] In a second aspect, an embodiment of the present application provides a data processing device, comprising: an acquisition unit and a processing unit, the acquisition unit being used to acquire n first data streams encoded by Reed-Solomon (RS), wherein at least two of the first data streams carry different Ethernet services, and n is greater than 1; the processing unit being used to de-skew the n first data streams to obtain n second data streams, wherein the n second data streams are aligned to a 20-bit RS symbol boundary.
[0021] In combination with the second aspect, in a first possible implementation manner of the second aspect, the de-skewing is based on 20 bits.
[0022] In combination with the second aspect and the first possible implementation manner of the second aspect, in a second possible implementation manner of the second aspect, there is a distance d between any two second data streams among the n second data streams. skew bits of offset, where d skew An integer multiple of 20 or 0.
[0023] In combination with the second aspect and the above-mentioned possible implementation methods of the second aspect, in a third possible implementation method of the second aspect, the processing unit is further used to align and lock the n first data streams before de-skew the n first data streams.
[0024] In combination with the second aspect and the above possible implementation methods of the second aspect, in a fourth possible implementation method of the second aspect, n is 32, wherein 16 first data streams carry first Ethernet services, and the other 16 first data streams carry second Ethernet services.
[0025] In combination with the second aspect and the foregoing possible implementation manners of the second aspect, in a fifth possible implementation manner of the second aspect, the Ethernet service is a 400GBASE-R service.
[0026] In combination with the fifth possible implementation of the second aspect, in a sixth possible implementation of the second aspect, n is 32; the processor is specifically used to: process an RS-encoded 400GBASE-R service through a physical medium attachment (PMA) sublayer to obtain 16 first data streams; and process another RS-encoded 400GBASE-R service through a PMA sublayer to obtain the remaining 16 first data streams.
[0027] In combination with the second aspect and the above-mentioned possible implementation methods of the second aspect, in the seventh possible implementation method of the second aspect, the processor is also used to: perform channel permutation on the n second data streams to obtain n third data streams, wherein the four consecutive symbols in each third data stream come from four different RS code words.
[0028] In combination with the seventh possible implementation of the second aspect, in an eighth possible implementation of the second aspect, the processor is further used to: encode each of the third data streams separately to obtain n encoded data streams, wherein the encoding adopts Bose-Chadhouli-Hokkungram BCH (126,110) code.
[0029] In combination with the eighth possible implementation of the second aspect, in a ninth possible implementation of the second aspect, the processor is further used to: before the encoding, perform convolution interleaving on each of the third data streams to obtain n convolution interleaved data streams.
[0030] The second aspect is a device corresponding to the method provided in the first aspect, and its beneficial effects are the same as those of the first aspect, which will not be repeated here.
[0031] In a third aspect, an embodiment of the present application provides a chip for executing the method described in the first aspect or any embodiment of the first aspect.
[0032] In a fourth aspect, embodiments of the present application provide an optical module. The optical module includes a processor and an interface. The processor is configured to execute the method described in the first aspect or any embodiment of the first aspect and to send signals through the interface. For example, the interface is configured to send signals from the processor or transmit received signals to the processor.
[0033] In a fifth aspect, an embodiment of the present application provides a communication device, which includes a host-side device and an optical module as described in the fourth aspect or any embodiment of the fourth aspect, wherein the optical module is connected to the host-side device.
[0034] In a sixth aspect, embodiments of the present application provide another device. The device includes a processor and an interface. The processor is configured to execute the method described in the first aspect or any embodiment of the first aspect and to send signals via the interface. For example, the interface is configured to send signals from the processor or transmit received signals to the processor. The device may be a router, a switch, a server, or an optical transport network device.
[0035] In the seventh aspect, an embodiment of the present application provides a communication system, which includes a first communication device and a second communication device, wherein at least one of the first communication device and the second communication device is a communication device as described in the fifth aspect or any embodiment of the fifth aspect, and the first communication device and the second communication device are connected.
[0036] In an eighth aspect, the present application provides a computer-readable storage medium having instructions stored thereon. When the instructions are executed by a computer, the method described in the first aspect or any embodiment of the first aspect is implemented.
[0037] In a ninth aspect, the present application provides a computer program product comprising program instructions, which, when executed, is used to implement the method described in the first aspect or any one of the embodiments of the first aspect.
[0038] In the present application, by de-skewing all n first data streams from different Ethernet services, each BCH codeword after inner code encoding comes from more RS codewords after subsequent processing, thereby utilizing the error correction capability of more RS codewords to achieve optimal cascade code performance, thereby solving the problem of poor cascade performance caused by the offset between data streams from different customers. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] Figure 1A schematic diagram of a communication system used in an embodiment of the present application;
[0040] Figure 2 for Figure 1 A schematic diagram of a data transmission process in the communication system shown;
[0041] Figure 3 A schematic diagram of another communication system used in an embodiment of the present application;
[0042] Figure 4 A flow chart of a data processing method provided in an embodiment of the present application;
[0043] Figure 5 A schematic diagram of a channel replacement provided in an embodiment of the present application;
[0044] Figure 6 A schematic diagram of 20-bit de-skew provided in an embodiment of the present application;
[0045] Figure 7 A schematic diagram of the structure of a data processing device provided in an embodiment of the present application;
[0046] Figure 8 A schematic diagram of the structure of an optical module provided in an embodiment of the present application;
[0047] Figure 9 A schematic diagram of the structure of a communication device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0048] The embodiments of the present application provide a data processing method, device, and system thereof, so that the cascaded FEC transmission scheme has stronger decoding performance and can be applied to more coherent transmission scenarios.
[0049] It should be noted that the terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects, rather than to limit a specific order or precedence. It should be understood that the above terms can be interchangeable where appropriate so that the embodiments described in this application can be implemented in a sequence other than that described in this application. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0050] Figure 1 This is a schematic diagram of a communication system used in the embodiment of the present application. Figure 1As shown, the communication system includes a transmitting device 01, a transmitting processing module 02, a channel transmission medium 03, a receiving processing module 04, and a receiving device 05. Taking the communication system as a data center network as an example, the transmitting device 01 and the receiving device 05 can be devices such as switches, routers, or servers, and the channel transmission medium 03 can be an optical fiber. The connection interface between the transmitting device 01 and the transmitting processing module 02 (or between the receiving device 05 and the receiving processing module 04) can be an attachment unit interface (AUI). The transmitting processing module 02 and the receiving processing module 04 can be optical modules, electrical modules, or other modules that process data during transmission. For example, the processing module can be an ER optical module, a FR optical module, or a LR optical module, such as an 800G LR1 coherent optical module (referred to as an 800G LR coherent optical module), a 1.6T LR1 coherent optical module (referred to as a 1.6T LR coherent optical module), etc. Furthermore, the transmitting device 01, transmitting processing module 02, channel transmission medium 03, receiving processing module 04 and receiving device 05 in the communication system can support bidirectional transmission or unidirectional transmission, which is not specifically limited here.
[0051] Figure 2 for Figure 1 The diagram below shows a process diagram of data transmission in a communication system. Figure 2 As shown, during data transmission from transmitting device 01 to receiving device 05, transmitting device 01 is configured to perform outer code encoding on the data and then transmit the outer-coded data to transmitting processing module 02. Transmitting processing module 02 is configured to perform inner code encoding on the outer-coded data to obtain outer-coded and inner-coded data, and then transmit the outer-coded and inner-coded data to channel transmission medium 03. Channel transmission medium 03 is configured to transmit the outer-coded and inner-coded data to receiving processing module 04. Receiving processing module 04 is configured to perform inner code decoding on the outer-coded and inner-coded data and then transmit the inner-coded data to receiving device 05. Receiving device 05 is configured to perform outer code decoding on the inner-coded data.
[0052] It should be understood that the distinction between "inner" in inner code and "outer" in outer code is based solely on the distance between the entity performing the data operation and the channel transmission medium 03. The entity performing the inner code operation is closer to the channel transmission medium, while the entity performing the outer code operation is farther away. In this embodiment of the present application, after data is transmitted from transmitting device 01, it passes through transmitting processing module 02 to channel transmission medium 03, and then from channel transmission medium 03 to receiving device 05 via receiving processing module 04. The data encoded by transmitting device 01 is farther from channel transmission medium 03 than the data encoded by transmitting processing module 02, and the data decoded by receiving device 05 is farther from channel transmission medium 03 than the data decoded by receiving processing module 04. Therefore, data encoded by transmitting device 01 is referred to as data encoded with an outer code, data encoded by transmitting processing module 02 is referred to as data encoded with an inner code, data decoded by receiving device 05 is referred to as data decoded with an outer code, and data decoded by receiving processing module 04 is referred to as data decoded with an inner code. In one possible implementation, both the inner and outer code encoding described above employ FEC encoding, thereby forming a cascaded FEC transmission scheme. For example, the transmitting device 01 may employ Reed-Solomon (RS) code for outer code encoding, and the transmitting processing module 02 may employ Hamming code for inner code encoding. For another example, the transmitting device 01 may employ RS code for outer code encoding, and the transmitting processing module 02 may employ Bose-Chaudhuri-Hocquenghem (BCH) code for inner code encoding. BCH code, which corrects single errors, is equivalent to Hamming code. For another example, the transmitting device 01 may employ RS code for outer code encoding, and the transmitting processing module 02 may employ Polar code for inner code encoding. In some specific application scenarios, the transmitting device 01 may employ RS (544, 514) code, also known as KP4 code, for outer code encoding.
[0053] Figure 3 This is another communication system diagram used in the embodiment of the present application. Figure 3As shown, the communication system includes a transmitting device 01, a channel transmission medium 03, and a receiving device 05. The transmitting device 01 performs outer code encoding and inner code encoding on the data, and sends the outer code encoded and inner code encoded data to the transmission medium 03. The receiving device 05 performs inner code decoding and outer code decoding on the data received from the transmission medium 03. Taking the communication system as a data center network as an example, the transmitting device 01 and the receiving device 05 can be devices such as routers, switches, servers or optical transport network devices, and the channel transmission medium 03 can be an optical fiber. The transmitting device 01, the channel transmission medium 03 and the receiving device 05 in the communication system can support bidirectional transmission or unidirectional transmission, which is not limited here. In other words, Figure 3 The emitting device 01 shown also integrates Figure 2 The function of the sending end processing module 02 is shown as follows: Figure 3 The receiving device 05 shown also integrates Figure 2 The functions of the receiving end processing module 04 are shown. In this case, the transmitting end device 01 may also adopt linear pluggable optics (LPO), co-packaged optics (CPO) or near packaged optics (NPO).
[0054] The above content is an illustrative description of the application scenarios of the data processing method provided in the embodiments of the present application, and does not constitute a limitation on the application scenarios of the data processing method. A person skilled in the art will appreciate that, as business needs change, the application scenarios can be adjusted according to application needs, and the embodiments of the present application do not list them one by one.
[0055] The data processing method provided in the embodiment of the present application is applied to the sending end, for example, Figure 2 The sending end processing module 02 shown in the figure can be realized by, for example, the above Figure 3 The emitting device 01 shown is implemented.
[0056] Given that in the prior art, for data from different clients, for example, from two 400G Ethernet clients (referred to as 400GE clients, or 400G clients), there may be an offset between the data streams from the two clients, resulting in a small number of RS codewords derived from the BCH codewords after inner coding and poor cascade code decoding performance, this application provides a data processing method, device, and system that can address the poor cascade decoding performance caused by existing processing methods and can be applied to more coherent transmission scenarios. The details are as follows:
[0057] For the 800G transmission scenario, consider two 400G Ethernet clients (abbreviated as 400GE clients, or 400Gclients). The outer code uses KP4 RS (544, 514) code for outer code encoding. Each outer code RS symbol contains 10 bits, and the inner code uses BCH (126, 110). Figure 4 In the illustrated technical solution, for two 400G Ethernet clients, the transmitting end processing module obtains 32 first data streams. These first data streams are also called Physical Coding Sublayer (PCS) lanes. Sixteen of the 32 first data streams (also called PCS lanes 0-15) originate from one 400G Ethernet client, and the remaining 16 originate from another 400G Ethernet client (also called PCS lanes 16-31). The two adjacent symbols in each PCS lane come from different RS codewords. Typically, a 400G AUI-4 signal from the same 400GE client is processed by the Physical Medium Attachment (PMA) sublayer to obtain 16 PCS lanes, or 16 first data streams. These 400G AUI-4 signals are four-channel signals, each with a rate of 106.25 Gb / s. Consider two 400G Ethernet clients, resulting in a total of 32 PCS lanes, or 32 first data streams. Each PCS lane (first data stream) operates at a rate of 26.5625 Gb / s. It should be understood that in practical applications, the rate tolerance is limited to a certain range, for example, ±V (ppm), where V can be 20, 30, 50, or 100.
[0058] The transmitting end processing module uses the known alignment markers of PCS lanes 0-15 or PCS lanes 16-31 to perform alignment lock on the 16-lane data stream. Alignment lock is also called alignment marker lock. Here, PCS lanes 0-15 can be considered to be PCS lanes 0-15 in 400G lane 0, and PCS lanes 16-31 can be considered to be PCS lanes 0-15 in 400G lane 1. The known alignment markers for the 16 lanes in 400G lane 0 are the same as the known alignment markers for the 16 lanes in 400G lane 1.
[0059] like Figure 4In the illustrated technical solution, the transmitting end processing module then deskews all 32 first data streams from the two clients to obtain a total of 32 second data streams. Using 20-bit deskew as an example, after deskewing all 32 first data streams, the offset between any two first data streams can be set to 0 or an integer multiple of 20 bits, aligning all 32 lanes to 20-bit RS-FEC symbol boundaries. The 32 second data streams (second data streams 0-31) then undergo lane permutation to obtain 32 third data streams. These are then convolutionally interleaved and inner-coded, and then symbol mapped and framed to obtain a single dual-polarization symbol data stream. De-skew is also known as de-skew.
[0060] In this embodiment of the present application, four consecutive symbols in each second data stream come from two RS codewords, where each RS symbol contains 10 bits. By de-skewing all 32 first data streams, after channel permutation, four consecutive symbols in each third data stream come from four RS codewords. This results in each BCH codeword after inner code encoding coming from 11 RS codewords. This allows each BCH codeword to come from as many RS codewords as possible, leveraging the error correction capabilities of more RS codewords to achieve optimal concatenated code performance, thus resolving the issue of poor concatenated performance caused by skew between data streams from different clients.
[0061] For example, a channel replacement method is as follows Figure 5 As shown, it is necessary to obtain 4 RS symbols from each of the 32 second data streams to obtain a total of 128 symbols, and process them so that the 4 consecutive symbols in each third data stream after the channel permutation operation come from 4 RS code words, so that each BCH code word after the inner code encoding comes from 11 RS code words to achieve optimal concatenated code performance.
[0062] In some specific applications, the deskew operation uses full deskew. When full deskew is used, there is no offset between all de-skewed data streams. This is also called full deskew. Here, the offset between two data streams refers to the number of bit offsets or RS symbol offsets between the start positions of the alignment markers corresponding to the two data streams.
[0063] In other specific applications, the de-skew operation is based on 10-bit de-skew, and there is a d between all the data streams after de-skew. skew bits of offset, where d skew is an integer multiple of 10, or if there is no offset between two data streams, or the offset is small, for example, 1 bit, 2 bits, 5 bits, etc., then dskew It may also be 0. In this case, deskew is also called 10-bit deskew or partial deskew.
[0064] In other specific applications, the de-skew operation is based on 20 bits, and there is a d between all the data streams after de-skew. skew bits of offset, where d skew is an integer multiple of 20, or if there is no offset between two data streams, or the offset is small, for example, 1 bit, 2 bits, 5 bits, etc., then d skew It can also be 0. In this case, de-skewing is also called 20-bit deskew or partial deskew, as shown in the following diagram: Figure 6 As shown, for example, Figure 6 There is a 15-bit offset between the first data stream 0 and the first data stream 2, and a 27-bit offset between the first data stream 0 and the first data stream n. After the above-mentioned 20-bit de-skew, there is a 20-bit offset between the first data stream 0 and the first data stream 2, and a 40-bit offset between the first data stream 0 and the first data stream n. That is, after the 20-bit de-skew, the offset between any two data streams will become an integer multiple of 20 bits, or 0. Given that each RS symbol includes 10 bits, after the 20-bit de-skew, each data stream can be aligned with the boundary of the 20-bit RS-FEC symbol (two RS symbols).
[0065] The PCS lanes of the client signal(s) are processed individually in the transmit direction to achieve alignment lock on each individual lane (on 20-bit boundaries). After alignment lock, all lanes are partially deskewed to align all 32 lanes to 20-bit RS-FEC symbol boundaries.
[0066] Furthermore, the RS symbol boundaries shown are achieved through alignment lock. Specifically, after alignment lock, the RS symbol pair boundaries, namely 20-bit boundaries, also known as 20-bit RS-FEC symbol boundaries, are obtained. These boundaries can be used in subsequent channel permutation, ensuring that the four consecutive RS symbols in each third data stream after channel permutation come from four different RS codewords. This ensures that each BCH codeword after inner code encoding comes from as many RS codewords as possible, achieving better concatenated code performance.
[0067] It should be noted that the method proposed in this application can also be extended to other higher-speed scenarios for multiple customers, such as a 1.6T transmission scenario for four 400G Ethernet customers, a 1.6T transmission scenario for two 800G Ethernet customers, a 3.2T transmission scenario for four 800G Ethernet customers, and a 3.2T transmission scenario for two 1.6T Ethernet customers. In this case, the number of n data streams may not be 32, and the value may vary depending on the scenario, and this application does not impose any restrictions on this.
[0068] Figure 7 FIG. 1 is a structural diagram of a data processing device in an embodiment of the present application. Figure 7 As shown, the data processing device includes: an acquisition unit 701 and a processing unit 702. The acquisition unit 701 is used to perform the operation of the acquisition step in the above embodiment, and the processing unit 702 is used to perform the data processing operations in the above embodiment, including but not limited to de-skew, channel permutation, convolution interleaving, inner code encoding and symbol mapping, framing and other operations. It should be understood that the data processing device provided by the present application can also be implemented in other ways. For example, the unit division in the above device is only a logical function division, and there may be other division methods in actual implementation, for example, multiple units or components can be combined or integrated into another system. In addition, the functional units in each embodiment of the present application can be integrated into one processing unit, or can be independent physical units, or two or more functional units can be integrated into one processing unit. The above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units.
[0069] It should be understood that the data processing device provided in this application can also be implemented in other ways. For example, the unit division in the above-mentioned device is only a logical functional division, and there may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system. In addition, the functional units in the various embodiments of the present application can be integrated into one processing unit, or they can be independent physical units, or two or more functional units can be integrated into one processing unit. The above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units.
[0070] Figure 8 This is a structural diagram of an optical module in an embodiment of the present application. Figure 8As shown, the optical module includes a processor 801 and an interface 802, and the processor 801 is used to perform the operations performed by the data processing device in the above embodiment. The interface 802 can be a transceiver or an input / output interface, and the interface 802 is used to receive signals from other devices and transmit them to the processor 801 or send signals from the processor 801 to other devices. As an example, the processor 801 performs inner code encoding processing on the data stream after de-skew to obtain a coded data stream, and sends the coded data stream through the interface 802. In this example, the interface 802 can specifically refer to an electrical interface. As another example, the processor 801 performs inner code encoding processing on the data stream after de-skew to obtain a coded data stream and performs symbol mapping to obtain a symbol stream to be sent. The modulator in the optical module performs signal processing such as electrical-optical conversion based on the symbol stream to be sent to obtain an optical signal, and then sends the optical signal through the interface 802. In this example, the interface 802 can specifically refer to an optical interface. Optionally, the optical module can also include a memory 803, wherein the memory 803 is used to store program instructions and / or data.
[0071] Typically, an optical module consists of optoelectronic components, including transmitters and receivers, processors, and interfaces. The transmitter converts electrical signals into optical signals and sends them through optical fibers. The receiver receives the optical signals and converts them back into electrical signals.
[0072] The types of optical modules in the embodiments of the present application include but are not limited to ordinary optical modules, near package optics (NPO) modules and co-packaged optics (CPO) modules. The functions that ordinary optical modules can achieve include but are not limited to digital signal processing and clock data recovery (CDR). For example, an ordinary optical module converts an analog signal into a digital signal, performs digital signal processing on the digital signal, and then converts it into an analog signal and sends it to the host-side device. Since digital signal processing requires retiming, an ordinary optical module can also be called a retimed module. The ordinary optical module is connected to the host-side device through AUI. The NPO module and the CPO module do not have a pluggable optical module physical packaging form and are closer to the host-side device. The NPO module and the CPO module can also be called an optical engine. NPO technology or CPO technology is a technology that "packages" the host-side device (or host-side chip) and the optical engine. When the host-side device and the optical engine are packaged using NPO technology, the optical engine can be called an NPO module. When the CPO technology is used to package the host-side device and the optical engine, the optical engine can be called a CPO module.
[0073] Figure 9 This is a structural diagram of a communication device in an embodiment of the present application. Figure 9 As shown, the communication device includes a host-side device 901 and an optical module 902. The host-side device 901 is used to send data to the optical module 902. The optical module 902 generates an optical signal based on the data sent by the host-side device 901 and transmits the optical signal through a channel. For example, the host-side device can be a router, a switch, a server, or an optical transport network (OTN) device. The communication device can be a communication device including the host-side device 901 and the optical module 902.
[0074] OTN equipment includes line-side equipment and client-side equipment. In some scenarios, client-side equipment may also be referred to as branch-side equipment. Both client-side equipment and line-side equipment may include a processor and an interface. The processor is configured to execute the data processing methods described in the above embodiments. The interface may be a transceiver or an input / output interface, configured to receive signals from devices other than the line-side equipment and transmit them to the processor, or to transmit signals from the processor to devices other than the line-side equipment.
[0075] The present application also provides a chip. This chip integrates circuitry and one or more interfaces for implementing the functions of the aforementioned processor. As an example, the chip integrates memory. As another example, if the chip does not integrate memory, it can be connected to an external memory via an interface. This chip can perform the method steps of any one or more of the aforementioned embodiments. Alternatively, the chip can implement the actions performed by the data processing device in the aforementioned embodiments based on program code stored in the memory.
[0076] As an example, the chip in the embodiments of the present application may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor may be a microprocessor, or any conventional processor, or a processing circuit that implements a specific function.
[0077] An embodiment of the present application further provides a computer-readable storage medium, including a program or instruction. When the program or instruction is executed on a computer, the data processing method described in the above embodiment is implemented.
[0078] It should be understood that the processors mentioned in the embodiments of the present application can be implemented by hardware or software. When implemented by hardware, the processor can be a logic circuit, an integrated circuit, etc. When implemented by software, the processor can be a general-purpose processor that is implemented by reading software code stored in a memory. The memory can exist independently and be connected to the processor, or the memory can be integrated with the processor.
[0079] As an example, the processor in the embodiments of the present application may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field programmable gate arrays (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor may be a microprocessor, or any conventional processor, or a processing circuit that implements a specific function.
[0080] In the embodiments of the present application, the memory may be a random access memory (RAM), a flash memory, a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a register, a hard disk, a mobile hard disk, a CD-ROM, or any other form of storage medium well known in the art. An exemplary storage medium is coupled to a processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium may also be an integral part of the processor. The processor and the storage medium may be located in an ASIC. In addition, the ASIC may be located in a network device or a terminal device. Of course, the processor and the storage medium may also exist in a network device or a terminal device as discrete components.
[0081] In the above embodiments, all or part of them can be implemented by software, hardware, firmware or any combination thereof.
[0082] When implemented using hardware, the data processing method provided in the embodiments of the present application may be implemented without reading software code or instructions. For example, it may be implemented by a CPU, DSP, ASIC, FPGA, other programmable logic devices, transistor logic devices, hardware components, or any combination thereof.
[0083] When software is used for implementation, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instruction is loaded and executed on a computer, the process or function of the embodiment of the present application is executed in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a network device, a terminal device, or other programmable device. The computer program or instruction can be stored in a computer-readable storage medium or transmitted via a computer-readable storage medium. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server that integrates one or more available media. Available media can be magnetic media, such as a floppy disk, a hard disk, or a magnetic tape; it can also be an optical medium, such as a digital versatile disc (DVD); it can also be a semiconductor medium, such as a solid-state drive (SSD).
[0084] Finally, it should be noted that the above are only specific embodiments of this application, but the scope of protection of this application is not limited to them. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.
Claims
1. A data processing method, characterized in that: include: Obtain 32 first data streams that have been Reed-Solomon (RS) encoded, wherein at least two of the 32 first data streams carry different Ethernet services; The 32 first data streams are de-skewed to obtain 32 second data streams, wherein the 32 second data streams are aligned to 20-bit RS symbol boundaries.
2. The method according to claim 1, characterized in that The deskewing is partial deskewing.
3. The method according to claim 1 or 2, characterized in that The de-skew is partial de-skew, and there is a d between any two second data streams among the 32 second data streams. skew bits of offset, where d skew An integer multiple of 20 or 0.
4. The method according to any one of claims 1 to 3, characterized in that Before de-skewing the 32 first data streams, the method further includes: Alignment and locking are performed on a first group of first data streams and a second group of first data streams in the 32 first data streams, respectively, wherein the first group of first data streams and the second group of first data streams each include 16 first data streams.
5. The method according to any one of claims 1 to 4, characterized in that The 16 first data streams carry the first Ethernet service, and the other 16 first data streams carry the second Ethernet service.
6. The method according to any one of claims 1 to 5, characterized in that The Ethernet service is a 400GBASE-R service.
7. The method according to claim 6, characterized in that The obtaining of 32 first data streams after Reed-Solomon (RS) encoding specifically includes: A RS-encoded 400GBASE-R service is processed by the physical medium attachment (PMA) sublayer to obtain 16 first data streams. Another RS-encoded 400GBASE-R service is processed by the PMA sublayer to obtain the remaining 16 first data streams.
8. The method according to any one of claims 1 to 7, characterized in that The method further comprises: Channel permutation is performed on the 32 second data streams to obtain 32 third data streams, wherein four consecutive symbols in each third data stream come from four different RS code words.
9. The method according to claim 8, characterized in that The method further comprises: Each of the third data streams is encoded respectively to obtain 32 encoded data streams, wherein the encoding adopts Bose-Chadhouli-Hocquenghem BCH (126, 110) code.
10. The method according to claim 9, characterized in that Before the encoding, the method further includes: Convolution interleaving is performed on each of the third data streams to obtain 32 convolution interleaved data streams.
11. A data processing device, characterized in that: include: Acquisition units and processing units, The acquiring unit is configured to acquire 32 first data streams that have been Reed-Solomon (RS) encoded, wherein at least two of the 32 first data streams carry different Ethernet services; The processing unit is configured to de-skew the 32 first data streams to obtain 32 second data streams, wherein the 32 second data streams are aligned to 20-bit RS symbol boundaries.
12. The device according to claim 11, characterized in that The deskewing is partial deskewing.
13. The device according to claim 11 or 12, characterized in that The de-skew is partial de-skew, and there is a d between any two second data streams among the n second data streams. skew bits of offset, where d skew An integer multiple of 20 or 0.
14. The device according to any one of claims 1 to 13, characterized in that The processing unit is further configured to align and lock a first group of first data streams and a second group of first data streams in the 32 first data streams before de-skew-ing the 32 first data streams, wherein the first group of first data streams and the second group of first data streams each include 16 first data streams.
15. The device according to any one of claims 1 to 14, characterized in that The 16 first data streams carry the first Ethernet service, and the other 16 first data streams carry the second Ethernet service.
16. The device according to any one of claims 1 to 15, characterized in that The Ethernet service is a 400GBASE-R service.
17. The device according to claim 16, characterized in that The acquisition unit is specifically configured to: A RS-encoded 400GBASE-R service is processed by the physical medium attachment (PMA) sublayer to obtain 16 first data streams. Another RS-encoded 400GBASE-R service is processed by the PMA sublayer to obtain the remaining 16 first data streams.
18. The device according to any one of claims 1 to 17, characterized in that The processing unit is further configured to: Channel permutation is performed on the 32 second data streams to obtain 32 third data streams, wherein four consecutive symbols in each third data stream come from four different RS code words.
19. The device according to claim 18, characterized in that The processing unit is further configured to: Each of the third data streams is encoded respectively to obtain 32 encoded data streams, wherein the encoding adopts Bose-Chadhouli-Hocquenghem BCH (126, 110) code.
20. The device according to claim 19, characterized in that The processing unit is further configured to: before the encoding, perform convolution interleaving on each of the third data streams to obtain 32 convolution interleaved data streams.
21. A chip, characterized in that: The chip is configured to execute the method according to any one of claims 1 to 10.
22. An optical module, characterized in that: The optical module includes a processor and an interface, wherein the processor is configured to execute the method according to any one of claims 1 to 10 and to send and receive signals through the interface.
23. A communication device, characterized in that: The sending device includes a host-side device and the optical module according to claim 22, and the optical module is connected to the host-side device.
24. A communication system, characterized in that: include: A first communication device and a second communication device, wherein at least one of the first communication device and the second communication device is the communication device according to claim 23, and the first communication device and the second communication device are connected.
Citation Information
Patent Citations
Data transmission, encoding and decoding methods, apparatus and devices, and storage medium
CN113875177A
Data transmission method and device
CN113972997A
Data interleaving method and data interleaving device
CN115765918A
Data processing method and data processing device
CN117713992A
Data processing method and data processing device
CN117938337A