Data processing method, apparatus and system

By performing 20-bit offset removal and channel substitution on the data streams of different Ethernet services in 800G transmission scenarios, the problem of poor concatenation decoding performance was solved, error correction capability was improved, and better concatenation code performance was achieved.

WO2026103515A1PCT designated stage Publication Date: 2026-05-21HUAWEI TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
HUAWEI TECH CO LTD
Filing Date
2025-10-29
Publication Date
2026-05-21

Smart Images

  • Figure CN2025131005_21052026_PF_FP_ABST
    Figure CN2025131005_21052026_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed in the embodiments of the present application are a data processing method, apparatus and system. The processing method comprises: acquiring n first data streams that have been subjected to Reed-Solomon (RS) encoding, wherein at least two of the first data streams carry different Ethernet services, and n is greater than 1; and performing offset removal on the n first data streams, so as to obtain n second data streams, such that the n second data streams are aligned with a 20-bit RS symbol boundary. In the present application, by means of performing offset removal on all n first data streams, the problem of a poor cascaded encoding performance due to offsets in data from different Ethernet services can be solved, thereby improving the performance of the entire data processing process.
Need to check novelty before this filing date? Find Prior Art

Description

A data processing method, apparatus and system

[0001] This application claims priority to Chinese patent application No. 202411655707.6, filed on November 15, 2024, entitled "A Data Processing Method, Apparatus and System Thereof", the entire contents of which are incorporated herein by reference. Technical Field

[0002] This application relates to the field of communication technology, and in particular to a data processing method, apparatus and system thereof. Background Technology

[0003] Driven by technologies such as 5G, cloud computing, big data, and artificial intelligence, high-speed optical transmission networks are developing towards higher capacity, packetization, and intelligence. Optical communication systems utilize the amplitude, phase, polarization, or frequency of light waves to carry information. Forward error correction (FEC) coding is used to correct errors in the transmitted data, resolving transmission errors and allowing the receiver to recover the original data sent by the transmitter from the received data.

[0004] A cascaded FEC transmission scheme is proposed, where the transmitting device and the 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, modulates the bit sequence resulting from the second FEC encoding to generate a corresponding modulation symbol sequence, and finally generates an optical signal based on the modulation symbol sequence, which is transmitted to the receiving end via optical fiber. The first FEC encoding is also called external code encoding, and the second FEC encoding is also called internal code encoding. The modulation is also called symbol mapping.

[0005] For coherent transmission scenarios, existing technical solutions present a concatenated FEC scheme for 800G transmission scenarios, considering one 800G Ethernet client (referred to as an 800GE client or 800G client) and two 400G Ethernet clients (referred to as 400GE clients or 400G clientss). The outer code uses KP4 RS(544,514) code for encoding, with each outer code RS symbol containing 10 bits, and the inner code uses BCH(126,110). In existing technical solutions, for one 800G Ethernet client, each BCH codeword after inner code encoding comes from 11 RS codewords, achieving optimal concatenated code performance. However, for two 400G Ethernet clients, the number of RS codewords from which the BCH codewords after inner code encoding is relatively small, resulting in poor concatenated code decoding performance, which is a problem that urgently needs to be solved. Summary of the Invention

[0006] This application provides a data processing method, apparatus, and system that 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, embodiments of this application provide a data processing method, comprising: acquiring 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; and removing the offset from the n first data streams to obtain n second data streams, wherein the n second data streams are aligned to 20-bit RS symbol boundaries.

[0008] By removing the offset from all n first data streams, the problem of data offset from different Ethernet services causing degraded concatenation coding performance can be solved, thereby improving the performance of the entire data processing flow.

[0009] In conjunction with the first aspect, in a first possible implementation of the first aspect, the de-offset is based on a 20-bit de-offset.

[0010] In conjunction with the first aspect and the first possible implementation of the first aspect, in the second possible implementation of the first aspect, there is a d relationship between any two second data streams among the n second data streams. skew An offset of bits, where d skew It is an integer multiple of 20 or 0.

[0011] In this embodiment, a 20-bit offset is used for all data streams. This addresses the offset issue in data from different Ethernet services. Since an RS symbol contains 10 bits, each data stream can be aligned with the boundary of a 20-bit RS-FEC symbol (two RS symbols), which facilitates subsequent channel replacement processing. This allows each BCH codeword to come from as many RS codewords as possible, thereby utilizing the error correction capability of more RS codewords to achieve optimal concatenation code performance.

[0012] In conjunction 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-offsetting the n first data streams, the method further includes: aligning and locking the n first data streams. This allows the offsets between the data streams and the symbol boundaries to be determined, enabling targeted offsetting and boundary alignment, thereby improving performance.

[0013] In conjunction with the first aspect and the above-described possible implementations of the first aspect, in the fourth possible implementation of the first aspect, n is 32, wherein 16 first data streams carry first Ethernet services and another 16 first data streams carry second Ethernet services.

[0014] In conjunction with the first aspect and the above-described possible implementations of the first aspect, in the fifth possible implementation of the first aspect, the Ethernet service is a 400GBASE-R service.

[0015] This application embodiment is for an 800G transmission scenario, considering the case of two 400G Ethernet customers. It removes the offset of all 32 first data streams of the two 400G services, which can solve the problem of data offset from different Ethernet services causing deterioration of concatenation coding performance, thereby improving the performance of the entire data processing flow.

[0016] In conjunction with the fifth possible implementation of the first aspect, in the sixth possible implementation of the first aspect, n is 32; the acquisition of n first data streams encoded by Reed-Solomon (RS) specifically includes: processing one RS-encoded 400GBASE-R service through a Physical Medium Attachment (PMA) sublayer to obtain 16 first data streams; processing another RS-encoded 400GBASE-R service through a PMA sublayer to obtain the remaining 16 first data streams.

[0017] This embodiment of the application also targets an 800G transmission scenario, considering the case of two 400G Ethernet clients. One of the 400GBASE-R service signals (also referred to as the 400GAUI-4 signal, or more specifically, the 400GBASE-R service signal transmitted through the 400GAUI-4 interface) consists of four signals, each with a rate of 106.25Gb / s. Considering two 400G Ethernet clients, a total of 32 first data streams are obtained, with a rate of 26.5625Gb / s.

[0018] In conjunction with the first aspect and the above-described possible implementations of the first aspect, in a seventh possible implementation of the first aspect, the method further includes: performing channel permutation on the n second data streams to obtain n third data streams, wherein four consecutive symbols in each third data stream come from four different RS codewords. This application embodiment, by removing the offset from all n first data streams, ensures that after channel permutation, four consecutive symbols in each third data stream come from four RS codewords, thereby ensuring that each BCH codeword after internal code encoding comes from 11 RS codewords. This maximizes the number of RS codewords from which each BCH codeword originates, utilizing the error correction capabilities of more RS codewords to achieve optimal concatenation code performance and solves the problem of poor concatenation performance caused by offsets between data streams from different clients.

[0019] In conjunction 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 to obtain n encoded data streams, wherein the encoding uses Bosch-Chadhury-Hokungamm BCH (126,110) codes. Further, before the encoding, the method further includes: performing convolutional interleaving on each of the third data streams to obtain n convolutionally interleaved data streams. In this case, the 12 consecutive RS symbols in each data stream after convolutional interleaving come from 12 different RS codewords, scrambling the bit order in the third data streams. When errors occur, the erroneous bits can be distributed to different RS codewords, utilizing the error correction capabilities of more RS codewords to achieve better concatenation coding performance.

[0020] Secondly, embodiments of this application provide a data processing apparatus, including: an acquisition unit and a processing unit, wherein the acquisition unit is configured 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 is configured to de-offset 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 conjunction with the second aspect, in a first possible implementation of the second aspect, the de-offset is based on a 20-bit de-offset.

[0022] In conjunction with the second aspect and the first possible implementation of the second aspect, in the second possible implementation of the second aspect, there is a d relationship between any two second data streams among the n second data streams. skew An offset of bits, where d skew It is an integer multiple of 20 or 0.

[0023] In conjunction with the second aspect and the above-described possible implementations of the second aspect, in a third possible implementation of the second aspect, the processing unit is further configured to perform alignment locking on the n first data streams before de-offsetting the n first data streams.

[0024] In conjunction with the second aspect and the above-described possible implementations of the second aspect, in the fourth possible implementation of the second aspect, n is 32, wherein 16 first data streams carry first Ethernet services and another 16 first data streams carry second Ethernet services.

[0025] In conjunction with the second aspect and the above-described possible implementations of the second aspect, in the fifth possible implementation of the second aspect, the Ethernet service is a 400GBASE-R service.

[0026] In conjunction with the fifth possible implementation of the second aspect, in the sixth possible implementation of the second aspect, n is 32; the processor is specifically configured 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 conjunction with the second aspect and the above-described possible implementations of the second aspect, in a seventh possible implementation of the second aspect, the processor is further configured to: perform channel permutation on the n second data streams to obtain n third data streams, wherein in each third data stream, four consecutive symbols come from four different RS codewords.

[0028] In conjunction with the seventh possible implementation of the second aspect, in the eighth possible implementation of the second aspect, the processor is further configured to: encode each of the third data streams to obtain n encoded data streams, wherein the encoding adopts the Bosch-Chadhury-Hokungamm BCH(126,110) code.

[0029] In conjunction with the eighth possible implementation of the second aspect, in the ninth possible implementation of the second aspect, the processor is further configured to: perform convolutional interleaving on each of the third data streams before the encoding to obtain n convolutionally interleaved data streams.

[0030] The second aspect is an apparatus corresponding to the method provided in the first aspect, and its beneficial effects are the same as those in the first aspect, which will not be repeated here.

[0031] Thirdly, embodiments of this application provide a chip for performing the methods described in the first aspect or any of the embodiments in the first aspect.

[0032] Fourthly, embodiments of this application provide an optical module. The optical module includes a processor and an interface. The processor is used to execute the methods described in the first aspect or any embodiment of the first aspect, and to transmit signals through the interface. For example, the interface is used to transmit signals from the processor or to transmit received signals to the processor.

[0033] Fifthly, embodiments of this application provide a communication device. The communication device includes a host-side device and an optical module as described in the fourth aspect or any embodiment thereof, the optical module being connected to the host-side device.

[0034] Sixthly, embodiments of this application provide another device. This device includes a processor and an interface. The processor is used to perform the methods described in the first aspect or any embodiment of the first aspect, and to transmit signals through the interface. For example, the interface is used to transmit signals from the processor or to transmit received signals to the processor. The device may be a router, switch, server, or optical transport network equipment, etc.

[0035] In a seventh aspect, embodiments of this application provide 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] Eighthly, this application provides a computer-readable storage medium storing instructions that, when executed by a computer, cause the method described in the first aspect or any embodiment of the first aspect to be implemented.

[0037] Ninthly, this application provides a computer program product including program instructions that, when executed, implement the method described in the first aspect or any of the embodiments described in the first aspect.

[0038] In this application, by removing the offset from all n first data streams from different Ethernet services, each BCH codeword after internal code encoding is derived from more RS codewords after subsequent processing. This utilizes the error correction capability of more RS codewords to achieve optimal concatenation code performance, thus solving the problem of poor concatenation performance caused by offset between data streams from different customers. Attached Figure Description

[0039] Figure 1 is a schematic diagram of a communication system applied in an embodiment of this application;

[0040] Figure 2 is a schematic diagram of a data transmission process in the communication system shown in Figure 1;

[0041] Figure 3 is a schematic diagram of another communication system applied in the embodiments of this application;

[0042] Figure 4 is a flowchart of a data processing method provided in an embodiment of this application;

[0043] Figure 5 is a schematic diagram of a channel replacement provided in an embodiment of this application;

[0044] Figure 6 is a schematic diagram of a 20-bit offset removal method provided in an embodiment of this application;

[0045] Figure 7 is a schematic diagram of the structure of a data processing device provided in an embodiment of this application;

[0046] Figure 8 is a structural schematic diagram of an optical module provided in an embodiment of this application;

[0047] Figure 9 is a schematic diagram of the structure of a communication device provided in an embodiment of this application. Detailed Implementation

[0048] This application provides a data processing method, apparatus, and system that enable the cascaded FEC transmission scheme to have strong decoding performance and be applicable to a wide range of coherent transmission scenarios.

[0049] It should be noted that the terms "first," "second," etc., in this application specification, claims, and the accompanying drawings are used to distinguish similar objects, not to limit a specific order or sequence. It should be understood that the above terms can be used interchangeably where appropriate so that the embodiments described in this application can be implemented in a sequence other than that described in this application. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. 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 explicitly listed, but may include other steps or units not explicitly listed or inherent to these processes, methods, products, or devices.

[0050] Figure 1 is a schematic diagram of a communication system applied in an embodiment of this application. As shown in Figure 1, 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 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 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 data transmission. For example, the processing module can be an ER optical module, a FR optical module, or an LR optical module, such as an 800G LR1 coherent optical module (referred to as an 800G LR coherent optical module) or a 1.6T LR1 coherent optical module (referred to as a 1.6T LR coherent optical module). Furthermore, the transmitting device 01, transmitting processing module 02, channel transmission medium 03, receiving processing module 04, and receiving device 05 in this communication system can all support bidirectional transmission or unidirectional transmission, and the specifics are not limited here.

[0051] Figure 2 is a schematic diagram of a data transmission process in the communication system shown in Figure 1. As shown in Figure 2, during the data transmission process from the transmitting device 01 to the receiving device 05, the transmitting device 01 performs external code encoding on the data and then transmits the externally encoded data to the transmitting processing module 02. The transmitting processing module 02 performs internal code encoding on the externally encoded data to obtain data with both external and internal code encoding, and transmits the data with both external and internal code encoding to the channel transmission medium 03. The channel transmission medium 03 transmits the data with both external and internal code encoding to the receiving processing module 04. The receiving processing module 04 performs internal code decoding on the data with both external and internal code encoding and transmits the internally decoded data to the receiving device 05. The receiving device 05 performs external code decoding on the data with internal code decoding.

[0052] It should be understood that the distinction between "internal" in "internal code" and "external" in "external code" is based solely on the distance between the entity performing the data operation and the channel transmission medium 03. The entity operating on the internal code is closer to the channel transmission medium, while the entity operating on the external code is farther away. In this embodiment, after data is sent from the transmitting device 01, it is transmitted to the channel transmission medium 03 via the transmitting processing module 02, and then from the channel transmission medium 03 via the receiving processing module 04 to the receiving device 05. The data encoded by the transmitting device 01 is farther from the channel transmission medium 03 than the data encoded by the transmitting processing module 02, and the data decoded by the receiving device 05 is farther from the channel transmission medium 03 than the data decoded by the receiving processing module 04. Therefore, the data encoded by the transmitting device 01 is called data encoded with the external code, the data encoded by the transmitting processing module 02 is called data encoded with the internal code, the data decoded by the receiving device 05 is called data decoded with the external code, and the data decoded by the receiving processing module 04 is called data decoded with the internal code. In one possible implementation, both the internal and external encoding methods described above employ FEC encoding, thus forming a cascaded FEC transmission scheme. For example, the transmitting device 01 can use Reed-Solomon (RS) code for external encoding, and the transmitting processing module 02 can use Hamming code for internal encoding. Alternatively, the transmitting device 01 can use RS code for external encoding, and the transmitting processing module 02 can use Bose-Chaudhuri-Hocquenghem (BCH) code for internal encoding. A BCH code correcting a single error is equivalent to a Hamming code. Another example is that the transmitting device 01 can use RS code for external encoding, and the transmitting processing module 02 can also use Polar code for internal encoding. In some specific application scenarios, the transmitting device 01 can use RS(544,514) code, also known as KP4 code, for external encoding.

[0053] Figure 3 is a schematic diagram of another communication system applied in an embodiment of this application. As shown in Figure 3, the communication system includes a transmitting device 01, a channel transmission medium 03, and a receiving device 05. The transmitting device 01 performs external code encoding and internal code encoding on the data. The data after external code encoding and internal code encoding is sent to the transmission medium 03. The receiving device 05 decodes the internal code and external code of the data received from the transmission medium 03. Taking 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 equipment, and the channel transmission medium 03 can be optical fiber. The transmitting device 01, the channel transmission medium 03, and the receiving device 05 in this communication system can all support bidirectional transmission or unidirectional transmission, which is not limited here. That is to say, the transmitting device 01 shown in Figure 3 also integrates the function of the transmitting processing module 02 shown in Figure 2, and the receiving device 05 shown in Figure 3 also integrates the function of the receiving processing module 04 shown in Figure 2. At this time, the transmitting device 01 may also adopt linear pluggable optics (LPO), co-packaged optics (CPO), or near packaged optics (NPO) technology.

[0054] The above content is an exemplary description of the application scenarios of the data processing method provided in the embodiments of this application, and does not constitute a limitation on the application scenarios of the data processing method. As those skilled in the art will know, as business needs change, the application scenarios can be adjusted according to the application needs, and the embodiments of this application do not list them one by one.

[0055] The data processing method provided in this application embodiment is applied to the sending end. For example, it can be implemented by the sending end processing module 02 shown in FIG2 above, or by the sending end device 01 shown in FIG3 above.

[0056] Given that in existing technologies, for data from different clients, such as two 400G Ethernet clients (referred to as 400GE clients or 400G clients), there may be offsets between the data streams from the two clients, resulting in a smaller number of RS codewords from which the BCH codeword is derived after internal encoding, and poor concatenated code decoding performance, this application provides a data processing method, apparatus, and system that can solve the problem of poor concatenated decoding performance caused by existing processing methods, and can be applied to more coherent transmission scenarios. Specifically, as follows:

[0057] For an 800G transmission scenario, consider two 400G Ethernet clients (referred to as 400GE clients or 400G clients). The outer code uses KP4 RS(544,514) encoding, with each outer code RS symbol containing 10 bits. The inner code uses BCH(126,110). In the technical solution shown in Figure 4, for the two 400G Ethernet clients, the transmitting processing module acquires 32 first data streams. These first data streams are also called Physical Coding Sublayer (PCS) lanes. Of the 32 first data streams, 16 (also called PCS lanes 0-15) come from one 400G Ethernet client, and the other 16 come from the other 400G Ethernet client (also called PCS lanes 16-31). In each PCS channel, two adjacent symbols come from different RS codewords. Typically, a 400GAUI-4 signal from the same 400GE customer is processed by the Physical Medium Attachment (PMA) sublayer to obtain 16 PCS channels, which are 16 first data streams. The aforementioned 400GAUI-4 signal consists of four channels, each with a rate of 106.25 Gb / s. Considering two 400G Ethernet customers, a total of 32 PCS channels, or 32 first data streams, are obtained. The rate of each PCS channel (first data stream) is 26.5625 Gb / s. It should also be understood that in practical applications, a certain error range is allowed for the rate; for example, the error is allowed to be ±V (ppm), where V can be 20, 30, 50, or 100, etc.

[0058] The originating processing module uses the known alignment markers of PCS channels 0-15 or PCS channels 16-31 to perform alignment lock on the 16 data streams. Alignment lock is also called alignment marker lock. Here, PCS channels 0-15 can be considered as PCS channels 0-15 in channel 0 of the 400G, and PCS channels 16-31 can be considered as PCS channels 0-15 in channel 1 of the 400G. The known alignment markers for the 16 channels in channel 0 of the 400G are the same as those for the 16 channels in channel 1.

[0059] In the technical solution shown in Figure 4, the transmitting processing module then deskews all 32 first data streams from the two clients to obtain a total of 32 second data streams. Taking 20-bit deskew as an example, after deskewing all 32 first data streams, the offset between any two first data streams can be 0 or an integer multiple of 20 bits, thus aligning all 32 channels to the 20-bit RS-FEC symbol boundary. Then, the 32 second data streams (second data streams 0-31) undergo lane permutation to obtain 32 third data streams. These third data streams are then subjected to convolutional interleaving, internal code encoding, symbol mapping, framing, and other processing to obtain a single dual-polarization symbol data stream. Deskewing can also be called de-skewing.

[0060] In this embodiment, four consecutive symbols in each second data stream come from two RS codewords, where each RS symbol contains 10 bits. By de-offsetting 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 internal code encoding coming from 11 RS codewords. By maximizing the number of RS codewords from which each BCH codeword originates, the error correction capability of more RS codewords can be utilized to achieve optimal concatenation code performance. This solves the problem of poor concatenation performance caused by offsets between data streams from different clients.

[0061] For example, as shown in Figure 5, one channel permutation method requires obtaining 4 RS symbols from each of the 32 second data streams, resulting in a total of 128 symbols. These symbols are then processed so that after the channel permutation operation, each third data stream contains 4 consecutive symbols from 4 RS codewords, and each BCH codeword after internal code encoding comes from 11 RS codewords, thereby achieving optimal concatenation code performance.

[0062] In some specific applications, the offset removal operation uses full offset removal. When full offset removal is used, there is no offset between all data streams after offset removal; this offset removal is also called full offset removal. 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 identifiers corresponding to the two data streams.

[0063] In other specific applications, the de-offset operation uses a 10-bit de-offset, and there is a d-value between all the data streams after de-offset. skew An offset of bits, where d skew It is a multiple of 10, or if there is no offset between two data streams, or the offset is small, such as 1 bit, 2 bits, 5 bits, etc., then d skewIt can also be 0. In this case, the de-offset is also called 10-bit deskew, or partial deskew.

[0064] In other specific applications, the de-offset operation uses a 20-bit de-offset, and there is a d between all the data streams after de-offset. skew An offset of bits, where d skew It must be a multiple of 20, or if there is no offset between two data streams, or the offset is small, such as 1 bit, 2 bits, 5 bits, etc., then d skew It can also be 0. In this case, the de-offset is also called 20-bit de-offset or partial de-offset, as shown in Figure 6. For example, in 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 20-bit de-offset, 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-offset, the offset between any two data streams will become an integer multiple of 20 bits, or 0. Since each RS symbol includes 10 bits, after the 20-bit de-offset, each data stream can be aligned with the boundary of the 20-bit RS-FEC symbol (two RS symbols).

[0065] The PCS channels of the client signal(s) are processed individually in the transmission direction to achieve alignment locking on each individual channel (at 20-bit boundaries). After alignment locking, all channels undergo partial de-tilting to align all 32 channels to the 20-bit RS-FEC symbol boundaries.

[0066] Furthermore, the RS symbol boundaries shown are obtained through alignment locking. Specifically, after alignment locking, the boundaries of RS symbol pairs, i.e., 20-bit boundaries, also known as 20-bit RS-FEC symbol boundaries, can be obtained. These boundaries can be used in subsequent channel permutations, ensuring that in each third data stream after channel permutation, four consecutive RS symbols come from four different RS codewords. This guarantees that each BCH codeword after internal code encoding comes from as many RS codewords as possible, thereby achieving better concatenation code performance.

[0067] It should be noted that the method proposed in this application can also be extended to other higher-speed scenarios involving multiple customers, such as a 1.6T transmission scenario with four 400G Ethernet customers, a 1.6T transmission scenario with two 800G Ethernet customers, a 3.2T transmission scenario with four 800G Ethernet customers, and a 3.2T transmission scenario with two 1.6T Ethernet customers. In this case, the number of n data streams does not have to be 32; the value will vary depending on the different scenarios, and this application does not impose any restrictions on it.

[0068] Figure 7 is a schematic diagram of a data processing device in an embodiment of this application. As shown in Figure 7, the data processing device includes an acquisition unit 701 and a processing unit 702. The acquisition unit 701 is used to perform the acquisition steps in the above embodiments, and the processing unit 702 is used to perform the data processing operations in the above embodiments, including but not limited to offset removal, channel permutation, convolutional interleaving, internal code encoding, symbol mapping, framing, and other operations. 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 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 this 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 integrated units can be implemented in hardware or as software functional units.

[0069] It should be understood that the data processing apparatus provided in this application can also be implemented in other ways. For example, the unit division in the above apparatus is only a logical functional division, and there may be other division methods in actual implementation. For example, multiple units or components may be combined or integrated into another system. In addition, the functional units in the various embodiments of this application may be integrated into one processing unit, or they may be independent physical units, or two or more functional units may be integrated into one processing unit. The integrated units described above can be implemented in hardware or as software functional units.

[0070] Figure 8 is a schematic diagram of an optical module structure in an embodiment of this application. As shown in Figure 8, the optical module includes a processor 801 and an interface 802. The processor 801 is used to execute the operations performed by the data processing device in the above embodiments. The interface 802 can be a transceiver or an input / output interface. The interface 802 is used to receive signals from other devices and transmit them to the processor 801 or to send signals from the processor 801 to other devices. As an example, the processor 801 performs internal code encoding on the de-offset data stream to obtain an encoded data stream, and sends the encoded 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 internal code encoding on the de-offset data stream to obtain an encoded data stream and performs symbol mapping to obtain a symbol stream to be transmitted. The modulator in the optical module performs electro-optic conversion and other signal processing according to the symbol stream to be transmitted 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 may 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 devices, a processor, and an interface. The optoelectronic devices include transmitting and receiving devices. The transmitting end of the optical module converts electrical signals into optical signals and transmits them through optical fibers. The receiving end of the optical module receives the optical signals and converts them back into electrical signals.

[0072] The types of optical modules in this application include, but are not limited to, ordinary optical modules, near package optics (NPO) modules, and co-packaged optics (CPO) modules. Ordinary optical modules can perform functions including, but not limited to, digital signal processing and clock data recovery (CDR). For example, an ordinary optical module converts analog signals to digital signals, performs digital signal processing on the digital signals, and then converts them back to analog signals before sending them to the host device. Because digital signal processing requires retiming, ordinary optical modules can also be called retimed modules. Ordinary optical modules connect to the host device via an AUI. NPO and CPO modules do not have pluggable physical packaging and are closer to the host device. NPO and CPO modules can also be called optical engines. NPO or CPO technology is a technology that "packages" the host device (or host chip) and the optical engine. When NPO technology is used to package the host device and the optical engine, the optical engine can be called an NPO module. When CPO technology is used to encapsulate the host-side device and the optical engine, the optical engine can be called a CPO module.

[0073] Figure 9 is a schematic diagram of a communication device according to an embodiment of this application. As shown in Figure 9, 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, and 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 the channel. For example, the host-side device may specifically be a router, switch, server, or optical transport network (OTN) device, etc. This communication device can be a communication device including a host-side device 901 and an 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 tributary-side equipment. Both client-side and line-side equipment can include a processor and an interface. The processor is used to execute the data processing methods described in the above embodiments. The interface can be a transceiver or an input / output interface, used to receive signals from other devices outside the line-side equipment and transmit them to the processor, or to send signals from the processor to other devices outside the line-side equipment.

[0075] This application also provides a chip. The chip integrates circuitry for implementing the functions of the aforementioned processor and one or more interfaces. As an example, the chip integrates a memory. As another example, when the chip does not integrate a memory, it can be connected to an external memory via the interface. The chip can perform the method steps of any one or more of the foregoing embodiments. Alternatively, the chip can implement the actions performed by the data processing device in the foregoing embodiments based on program code stored in the memory.

[0076] As an example, the chip in the embodiments of this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor can be a microprocessor, any conventional processor, or a processing circuit that implements a specific function.

[0077] This application also provides a computer-readable storage medium, including a program or instructions that, when run on a computer, cause the data processing method as described in the above embodiments to be implemented.

[0078] It should be understood that the processor mentioned in the embodiments of this application can be implemented in hardware or software. When implemented in hardware, the processor can be a logic circuit, integrated circuit, etc. When implemented in software, the processor can be a general-purpose processor that reads software code stored in 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 this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor can be a microprocessor, any conventional processor, or a processing circuit that implements a specific function.

[0080] In embodiments of this application, the memory may be random access memory (RAM), flash memory, read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, portable hard disks, CD-ROMs, or any other form of storage medium known in the art. An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium may also be a component of the processor. The processor and storage medium may reside in an ASIC. Additionally, the ASIC may reside in a network device or a terminal device. Alternatively, the processor and storage medium may exist as discrete components in the network device or terminal device.

[0081] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof.

[0082] When implemented in hardware, the data processing method provided in this application embodiment may be implemented without reading software code or instructions. For example, it may be implemented by CPU, DSP, ASIC, FPGA, other programmable logic devices, transistor logic devices, hardware components, or any combination thereof.

[0083] When implemented using software, it can be implemented entirely or partially in the form of a computer program product. A computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed on a computer, all or part of the processes or functions of the embodiments of this application are performed. 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 instructions can be stored in or transmitted through 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. The available medium can be a magnetic medium, such as a floppy disk, hard disk, or magnetic tape; it can also be an optical medium, such as a Digital Versatile Disc (DVD); or it can be a semiconductor medium, such as a solid-state disk (SSD).

[0084] Finally, it should be noted that the above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A data processing method, characterized in that, include: Obtain n first data streams encoded by Reed-Solomon (RS), wherein at least two of the n first data streams carry different Ethernet services, and n is greater than 1; The n first data streams are de-offset to obtain n second data streams, wherein the n second data streams are aligned to 20-bit RS symbol boundaries.

2. The method according to claim 1, characterized in that, The offset removal is a partial offset removal.

3. The method according to claim 1 or 2, characterized in that, The offset removal is partial offset removal, and there is a d-value between any two second data streams in the n second data streams. skew An offset of bits, where d skew It is an integer multiple of 20 or 0.

4. The method according to any one of claims 1-3, characterized in that, Where n is 32, before de-offsetting the n first data streams, the method further includes: Alignment locking is performed on the first group of first data streams and the second group of first data streams in 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.

5. The method according to any one of claims 1-4, characterized in that, The number n is 32, of which 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-5, characterized in that, The Ethernet service is a 400GBASE-R service.

7. The method according to claim 6, characterized in that, The value of n is 32; the acquisition of n first data streams encoded by Reed-Solomon (RS) specifically includes: A 400GBASE-R service encoded with RS is processed by the Physical Media Addition (PMA) sublayer to obtain 16 first data streams; Another 400GBASE-R service encoded with RS is processed by the PMA sublayer to obtain the remaining 16 first data streams.

8. The method according to any one of claims 1-7, characterized in that, The method further includes: Channel permutation is performed on the n second data streams to obtain n third data streams, wherein four consecutive symbols in each third data stream come from four different RS codewords.

9. The method according to claim 8, characterized in that, The method further includes: Each of the third data streams is encoded to obtain n encoded data streams, wherein the encoding adopts the Bosch-Chadhury-Hokungamm BCH(126,110) code.

10. The method according to claim 9, characterized in that, Prior to the encoding, the method further includes: Each of the third data streams is convolved and interleaved to obtain n convolved and interleaved data streams.

11. A data processing apparatus, characterized in that, include: Acquisition unit and processing unit The acquisition unit is used to acquire n first data streams encoded by Reed-Solomon (RS), wherein at least two of the n first data streams carry different Ethernet services, and n is greater than 1; The processing unit is used to de-offset 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.

12. The apparatus according to claim 11, characterized in that, The offset removal is a partial offset removal.

13. The apparatus according to claim 11 or 12, characterized in that, The offset removal is partial offset removal, and there is a d-value between any two second data streams in the n second data streams. skew An offset of bits, where d skew It is an integer multiple of 20 or 0.

14. The apparatus according to any one of claims 1-13, characterized in that, The processing unit is further configured to perform alignment locking on the first group of first data streams and the second group of first data streams in the 32 first data streams before de-offsetting the n 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 apparatus according to any one of claims 1-14, characterized in that, The number n is 32, of which 16 first data streams carry the first Ethernet service, and the other 16 first data streams carry the second Ethernet service.

16. The apparatus according to any one of claims 1-15, characterized in that, The Ethernet service is a 400GBASE-R service.

17. The apparatus according to claim 16, characterized in that, The value of n is 32; the acquisition unit is specifically used for: A 400GBASE-R service encoded with RS is processed by the Physical Media Addition (PMA) sublayer to obtain 16 first data streams; Another 400GBASE-R service encoded with RS is processed by the PMA sublayer to obtain the remaining 16 first data streams.

18. The apparatus according to any one of claims 1-17, characterized in that, The processing unit is also used for: Channel permutation is performed on the n second data streams to obtain n third data streams, wherein four consecutive symbols in each third data stream come from four different RS codewords.

19. The apparatus according to claim 18, characterized in that, The processing unit is also used for: Each of the third data streams is encoded to obtain n encoded data streams, wherein the encoding adopts the Bosch-Chadhury-Hokungamm BCH(126,110) code.

20. The method according to claim 19, characterized in that, The processing unit is further configured to: before the encoding, perform convolutional interleaving on each of the third data streams to obtain n convolutionally interleaved data streams.

21. A chip, characterized in that, The chip is used to perform the method as described in 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 used to perform the method as described in any one of claims 1 to 10 and to transmit and receive signals through the interface.

23. A communication device, characterized in that, The transmitting device includes a host-side device and an optical module as described in claim 22, wherein 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 as described in claim 23, and the first communication device and the second communication device are connected.