Method for performing probabilistic constellation shaping encoding, method for performing probabilistic constellation shaping decoding, and device and chip

By using multi-dimensional probabilistic constellation shaping coding, the complexity and power consumption problems caused by the increase in code length are solved, achieving high-efficiency communication system transmission performance and low complexity, which is suitable for optical communication and wireless communication systems.

WO2026066419A1PCT designated stage Publication Date: 2026-04-02HUAWEI TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-06-30
Publication Date
2026-04-02

AI Technical Summary

Technical Problem

In probabilistic constellation integer coding, as the code length increases, the coding complexity grows rapidly, leading to increased power consumption and making it difficult to control complexity while maintaining high performance.

Method used

A multi-dimensional probabilistic constellation shaping coding method is adopted. By dividing the input data into multiple dimensions and performing probabilistic constellation shaping coding on each dimension, the number of coding times is increased to reduce the probability of the sign amplitude bits mapped to the outer constellation points and increase the probability of the sign amplitude bits mapped to the inner constellation points, thereby reducing the average power.

Benefits of technology

While maintaining high performance, it reduces coding complexity and power consumption, achieving more efficient communication system transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025105644_02042026_PF_FP_ABST
    Figure CN2025105644_02042026_PF_FP_ABST
Patent Text Reader

Abstract

The present application belongs to the technical field of communications. Provided are a method for performing probabilistic constellation shaping encoding, a method for performing probabilistic constellation shaping decoding, and a device and a chip. The method for performing probabilistic constellation shaping encoding comprises: during probabilistic constellation shaping encoding of input data, performing probabilistic constellation shaping encoding processing on the input data in multiple dimensions, and when performing probabilistic constellation shaping encoding processing in the current dimension, also performing probabilistic constellation shaping encoding processing on encoded data of the previous dimension; and after probabilistic constellation shaping encoding processing is performed in the last dimension, obtaining probabilistic constellation shaping encoded data of the input data, such that when a specified performance indicator is obtained, the complexity can be reduced, and the performance can be improved under a specified complexity.
Need to check novelty before this filing date? Find Prior Art

Description

Method, device and chip for probabilistic constellation shaping encoding and decoding

[0001] The present application claims priority from the Chinese patent application No. 202411392682.5, filed on September 30, 2024, entitled "Method, device and chip for probabilistic constellation shaping encoding and decoding", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD

[0002] The present application relates to the field of communication technology, in particular to a method, device and chip for probabilistic constellation shaping encoding and decoding. BACKGROUND

[0003] In the field of communication, in order to improve the transmission performance of the communication system, the probabilistic constellation shaping (PCS) encoding is used to change the probability distribution of constellation points to obtain gain to reduce the average power of the signal. In the PCS encoding, the enumerative sphere shaping (ESS) technology is used to realize the probabilistic constellation shaping encoding. The starting point of the ESS technology is to enumerate the weight sequence of the corresponding code length from low to high, so as to establish the mapping relationship between the input data and the output encoded data, thereby changing the probability distribution of the constellation points, wherein the "weight" in the weight sequence refers to the number of "1".

[0004] Under the same code rate, the longer the code length of the output encoded data is, the better the transmission performance of the communication system is. However, when the code length is longer, the number of bits to be stored will also increase, which will increase the complexity of the PCS encoding, and the increase of the complexity is in a nonlinear relationship with the increase of the code length, so that when the code length is longer, the complexity will increase more, thereby the power consumption will increase sharply. Therefore, it is necessary to provide a PCS encoding scheme. SUMMARY

[0005] The present application provides a method, device and chip for probabilistic constellation shaping encoding and decoding, and provides a low-complexity high-performance probabilistic constellation shaping encoding method. The technical solutions adopted are as follows:

[0006] In a first aspect, the present application provides a method for probability constellation shaping encoding, the method comprising: performing probability constellation shaping encoding on first block data to obtain first encoded data, wherein the first block data belongs to a first group of first dimension data in N-dimension data, the N-dimension data being obtained based on input data, N being greater than or equal to 2; performing probability constellation shaping encoding on the i-th block data to obtain the i-th encoded data, wherein the i-th block data comprises one bit in the (i-1)-th encoded data and target block data, the target block data belonging to a first group of i-th dimension data in the N-dimension data, i being 2 to N.

[0007] In the scheme shown in the present application, the input data is multi-dimension probability constellation shaped, each dimension data is divided into at least one group of data, the block data in each group of data is probability constellation shaped, and when the i-th group of dimension data is probability constellation shaped, the (i-1)-th dimension encoded data is again probability constellation shaped, so that the number of times of probability constellation shaping is increased, when the mapping is performed to obtain the encoded data of a specified length, the probability of the amplitude bit of the symbol mapped to the outer constellation point is reduced, and the probability of the amplitude bit of the symbol mapped to the inner constellation point is increased, so that the average power is reduced, and the performance is improved.

[0008] In an optional manner, the input data is probability constellation shaped in two dimensions, N is equal to 2, the first group of first dimension data is in the first column of the input data, the first column is any column, the i-th block data is the second block data, the second block data comprises one bit in the first encoded data and the target block data, the first group of i-th dimension data is in the first row of the input data, and the first row is any row. In the embodiments of the present application, “row” and “column” are two relative concepts, “row” can also be explained as “column”, and “column” can also be explained as “row”.

[0009] In an optional manner, the one bit in the first encoded data is located at the position where the first row and the first column intersect, so that the probability constellation shaping is performed according to the column first and then according to the row.

[0010] In an optional manner, the N-dimension data further comprises a second group of first dimension data, the second group of first dimension data is in the second column of the input data, the third block data belongs to the second group of first dimension data, the third block data is probability constellation shaped to obtain the third encoded data, and the second block data further comprises one bit in the third encoded data. In this way, the block data in different columns of the first dimension is respectively probability constellation shaped, instead of being encoded together, so that the complexity of encoding is reduced.

[0011] In an optional mode, the second column is adjacent to the first column for facilitating the probability constellation shaping encoding.

[0012] In an optional mode, the third block data is located after the first block data and adjacent to the first block data for quickly obtaining the first block data and the third block data from the input data, which is equivalent to sequentially obtaining the first block data and the third block data from the input data, so that the first block data and the third block data can be quickly obtained.

[0013] In an optional mode, the length of the first encoding data is the same as the length of the third encoding data when the length of the first block data is the same as the length of the third block data for reducing the types of the shapers, so that the lengths of the data before encoding are the same, the lengths of the data after encoding are the same, and the first encoding data and the third encoding data can use the same type of shaper.

[0014] In an optional mode, the length difference between the first block data and the third block data is less than a target value for balancing the input data lengths of the shapers. For example, the target value is an empirical value, such as 4.

[0015] In an optional mode, the sum of the lengths of the data of the N dimensions is a first length, and the first length is determined according to a second length, the second length being the length of the encoding data obtained by performing the probability constellation shaping encoding on the data of the N dimensions.

[0016] In an optional mode, the first length is determined according to one or more of the second length, the overhead of the forward error correction (FEC) processing, and the spectral efficiency, the spectral efficiency being the spectral efficiency brought by the constellation shaping encoding.

[0017] In an optional mode, the second length is determined according to the performance index of the system to which the method is applied and the complexity of the probability constellation shaping encoding processing.

[0018] In a second aspect, the present application provides a method for performing probability constellation shaping decoding, the method comprising: performing probability constellation shaping decoding processing on the i-th encoding data to obtain the i-th block data, wherein the i-th block data comprises one bit in the (i-1)-th encoding data and target block data, the target block data belonging to the first group of i-th dimensional data in the data of the N dimensions, i taking a value from 2 to N; and performing probability constellation shaping decoding processing on the first encoding data to obtain the first block data, wherein the first block data belongs to the first group of first dimensional data in the data of the N dimensions, and the target block data and the first group of first dimensional data belong to the output data.

[0019] In the scheme shown in the present application, the process of the probability constellation shaping decoding processing is the inverse process of the probability constellation shaping encoding processing, and the probability constellation shaping decoding processing is performed dimension by dimension from the Nth dimension to the first dimension, and finally the output data is obtained.

[0020] In an alternative way, the input data is subjected to the probability constellation shaping encoding processing in two dimensions, and then N is equal to 2, the ith block data is the second block data, and the target block data is on the first row of the output data, and the first block data is on the first column of the output data.

[0021] In an alternative way, when the probability constellation shaping encoding is performed, the second block data further includes one bit in the third encoding data, and then when the probability constellation shaping decoding is performed, the probability constellation shaping decoding processing is performed on the third encoding data to obtain the third block data, and the third block data belongs to the second column of the output data, so that the complete output data is obtained.

[0022] In a third aspect, the present application provides a method for performing probability constellation shaping encoding, the method comprising: performing first probability constellation shaping encoding processing on first block data in input data to obtain intermediate data, wherein the first column of the intermediate data includes encoding data obtained by performing first probability constellation shaping encoding processing on the first block data, and the intermediate data further includes part of the input data which is not subjected to the first probability constellation shaping encoding processing; and performing second probability constellation shaping encoding processing on the intermediate data by row to obtain output data.

[0023] In the scheme shown in the present application, the input data is divided into data on columns and rows, the first probability constellation shaping encoding processing is performed on the data on the columns to obtain intermediate data, the intermediate data includes the data on the rows in the input data, and the data on the rows is not subjected to the first probability constellation shaping encoding processing, and then the second probability constellation shaping encoding processing is performed on the intermediate data by row to obtain output data. In this way, when the second probability constellation shaping encoding processing is performed by row, the probability constellation shaping encoding is performed again on the data on the columns, the number of times of performing the probability constellation shaping encoding is increased, and when the encoding data of a specified length is obtained, the probability of the amplitude bit of the symbol mapped to the outer constellation point is reduced, and the probability of the amplitude bit of the symbol mapped to the inner constellation point is increased, so that the average power can be reduced, and the performance is improved.

[0024] In an alternative manner, the data on the columns in the input data is divided into multiple columns, the first block data is multiple, the first probability constellation shaping encoding processing is performed on the multiple first block data to obtain intermediate data, the multiple columns of the intermediate data include the encoding data obtained by performing the first probability constellation shaping encoding processing on the multiple first block data, and the encoding data obtained by performing the first probability constellation shaping encoding processing on different first block data belongs to different columns. In this way, when a specified performance index is obtained, since the first probability constellation shaping encoding processing is performed on the columns column by column, the complexity of the probability constellation shaping encoding processing of the data on the columns can be reduced, and when a specified complexity is obtained, since the first probability constellation shaping encoding processing is performed on the columns column by column, the number of times of the probability constellation shaping encoding processing is equivalent to being increased, the probability of the amplitude bit of the symbol mapped to the outer constellation point is reduced, and the probability of the amplitude bit of the symbol mapped to the inner constellation point is increased, so that the average power can be reduced, and the performance is improved.

[0025] In a fourth aspect, the present application provides a method for performing probability constellation shaping decoding, which comprises: performing first probability constellation shaping decoding processing on input data row by row to obtain intermediate data, wherein the first column of the intermediate data includes first encoding data obtained by performing first probability constellation shaping encoding processing on first block data, and the intermediate data further includes data which has not been subjected to first probability constellation shaping encoding processing; and performing second probability constellation shaping decoding processing on the intermediate data to obtain output data.

[0026] In the scheme shown in the present application, the process of the probability constellation shaping decoding processing is the inverse process of the probability constellation shaping encoding processing, the probability constellation shaping decoding processing is performed row by row first, and then the probability constellation shaping decoding processing is performed column by column, and finally the output data is obtained.

[0027] In an alternative manner, the intermediate data includes encoding data obtained by performing first probability constellation shaping encoding processing on multiple first block data, and the encoding data obtained by performing first probability constellation shaping encoding processing on different first block data belongs to different columns.

[0028] In a fifth aspect, the present application provides a probability constellation shaping encoder, which comprises an input interface, at least one column shaper, multiple row shapers, and an output interface; a first branch of the input interface is connected with the input end of the at least one column shaper; the second branch of the input interface and the output end of the at least one column shaper are connected with the input end of the multiple row shapers; and the output end of the multiple row shapers is connected with the output interface.

[0029] In the scheme shown in the present application, the column shaper is a shaper for column bit input, that is, the input data of the column shaper is arranged in columns, and the row shaper is a shaper for row bit input, that is, the input data of the row shaper is arranged in rows.

[0030] In the probability constellation shaping encoder, one branch of the input interface is connected with the input end of the column shaper, the output end of the column shaper and another branch of the input interface are connected with the input ends of the plurality of row shapers, so that part of the data input by the input interface enters the column shaper, another part of the data input by the input interface enters the row shapers, the encoded data output by the column shaper is input into the row shapers together with the another part of the data to perform the probability constellation shaping encoding processing, the number of times of performing the probability constellation shaping encoding is increased, when the encoded data of the specified length is obtained, the probability of the amplitude bit of the symbol mapped to the outer constellation point is reduced, the probability of the amplitude bit of the symbol mapped to the inner constellation point is increased, so that the average power can be reduced, and the performance is improved.

[0031] In an optional manner, in the case that there are row shapers with the same input length in the plurality of row shapers, the lengths of the output data of the row shapers with the same input length are the same, so that the categories of the row shapers are reduced.

[0032] In a sixth aspect, the present application provides a probability constellation shaping decoder, comprising an input interface, a plurality of row de-shapers, at least one column de-shaper and an output interface, the input interface is connected with the input ends of the plurality of row de-shapers, the plurality of row de-shapers are connected with the input ends of the at least one column de-shaper, and are connected with a first branch of the output interface, and the at least one column de-shaper is connected with a second branch of the output interface.

[0033] In the scheme shown in the present application, the process of the probability constellation shaping decoding processing is the inverse process of the probability constellation shaping encoding processing, the probability constellation shaping decoder corresponds to the probability constellation shaping encoder, and the beneficial effects are described with reference to the probability constellation shaping encoder, which will not be described herein.

[0034] In an optional manner, in the case that there are row de-shapers with the same input length in the plurality of row de-shapers, the lengths of the output data of the row de-shapers with the same input length are the same, so that the categories of the row de-shapers are reduced.

[0035] In a seventh aspect, the present application provides a method for performing probability constellation shaping encoding, the method comprising: for a first dimension in N dimensions, performing probability constellation shaping encoding processing on first dimension data to be encoded in input data to obtain encoded data of the first dimension, N is greater than or equal to 2; for an i-th dimension in the N dimensions, performing probability constellation shaping encoding processing on the i-th dimension data to be encoded in the input data and the encoded data of the i-1-th dimension in blocks to obtain encoded data of the i-th dimension, i takes a value from 2 to N; and outputting the encoded data of the N-th dimension, the encoded data of the N-th dimension being the encoded data corresponding to the input data.

[0036] In the scheme shown in the present application, when performing the probability constellation shaping coding, the input data is divided into N dimensions of data to be coded, the first dimension of data to be coded is separately coded by the probability constellation shaping coding, and the other dimensions of data to be coded are separately coded by the probability constellation shaping coding in blocks together with the coded data of the previous dimension. After the probability constellation shaping coding of the last dimension is completed, the final coded data is obtained. In this way, the data is divided into multiple dimensions, and the probability constellation shaping coding is performed on multiple dimensions. Moreover, the coded data of the previous dimension is used when performing the probability constellation shaping coding of the present dimension. This is equivalent to dividing the data to be coded into multiple small parts to perform the probability constellation shaping coding. When the specified performance index is obtained, the complexity of performing the probability constellation shaping coding multiple times is not high, so that the overall complexity can be reduced. Under the specified complexity, the number of times of performing the probability constellation shaping coding is increased, which is equivalent to reducing the probability of the amplitude bits of the symbols mapped to the outer constellation points and increasing the probability of the amplitude bits of the symbols mapped to the inner constellation points, so that the average power can be reduced, and the performance is improved.

[0037] In an optional manner, the second length is determined according to the performance index and the complexity of performing the probability constellation shaping coding of the system to which the method is applied, and the second length is the length of the coded data of the Nth dimension.

[0038] In an optional manner, the first length is determined according to one or more of the second length, the overhead of the FEC processing, and the spectral efficiency, the spectral efficiency is the spectral efficiency brought by the constellation shaping coding, and the first length is the length of the input data.

[0039] In an optional manner, the first dimension of data to be coded is sequentially divided into multiple first subblocks, and the multiple first subblocks are separately coded by the probability constellation shaping coding to obtain the coded data of the first dimension. In this way, the data to be coded is divided into more parts.

[0040] In an optional manner, the coded data of the i-1th dimension and the i th dimension of data to be coded are sequentially divided into multiple second subblocks, and the multiple second subblocks are separately coded by the probability constellation shaping coding to obtain the coded data of the i th dimension. In this way, the data is sequentially divided, which is convenient for management.

[0041] In an optional manner, for the j th dimension of the N dimensions, the coded data of the j th dimension is divided into multiple subblocks after the division, and the length difference of the multiple subblocks is less than or equal to a target value. In the case where j is equal to 1, the coded data of the first dimension includes the first dimension of data to be coded. In the case where j is greater than 1 and less than or equal to N, the coded data of the j th dimension includes the j th dimension of data to be coded and the coded data of the j-1th dimension.

[0042] In an alternative, to quickly distribute the data of the first length into data of multiple dimensions, in the data of the first length, the i-th dimension data to be encoded is adjacent to and after the (i-1)-th dimension data to be encoded.

[0043] In an alternative, to reduce implementation complexity, the same shaper is used as much as possible, and therefore, in the case where there are subblocks of the same length in the multiple subblocks, the shaper used when the subblocks of the same length are subjected to the probability constellation shaping encoding is the same, and the lengths after encoding are the same.

[0044] In an eighth aspect, the present application provides a method for performing probability constellation shaping decoding, the method comprising: performing probability constellation shaping decoding processing on the i-th dimension encoded data in the N dimensions to obtain the (i-1)-th dimension encoded data and the i-th dimension decoded data, i being 2 to N; performing probability constellation shaping decoding processing on the first dimension encoded data in the N dimensions to obtain the 1-dimension decoded data; and outputting the N-dimension decoded data.

[0045] In the scheme shown in the present application, the process of the probability constellation shaping decoding processing is the inverse process of the probability constellation shaping encoding processing, and the probability constellation shaping decoding processing is performed dimension by dimension from the N-th dimension to the first dimension, and finally the output data is obtained.

[0046] In an alternative, the length of the N-th dimension encoded data is determined according to the performance index of the system to which the method is applied and the complexity of the probability constellation shaping encoding.

[0047] In an alternative, to quickly distribute the i-th dimension encoded data into multiple subblocks, the i-th dimension encoded data is sequentially distributed into multiple encoded subblocks, and the multiple encoded subblocks are subjected to probability constellation shaping decoding processing respectively to obtain the (i-1)-th dimension encoded data and the i-th dimension decoded data.

[0048] In an alternative, the first dimension encoded data is sequentially distributed into multiple subblocks, and the multiple subblocks are subjected to probability constellation shaping decoding processing respectively to obtain the first dimension data to be encoded.

[0049] In an alternative, to reduce implementation complexity, the same shaper is used as much as possible, and in the case where there are encoded subblocks of the same length in the multiple encoded subblocks, the lengths of the encoded subblocks after being subjected to the probability constellation shaping decoding are the same.

[0050] In a ninth aspect, the present application provides a network device, the network device comprising the probability constellation shaping encoder as described in the fifth aspect or any of the alternative ways of the fifth aspect.

[0051] In a tenth aspect, the present application provides a network device, which comprises the probability constellation shaping decoder as described in the sixth aspect or any possible implementation of the sixth aspect.

[0052] In an eleventh aspect, the present application provides a communication system, which comprises a first network device and a second network device, wherein the first network device is configured to perform the method as described in the first aspect or any possible implementation of the first aspect, the second network device is configured to perform the method as described in the second aspect or any possible implementation of the second aspect, or the first network device is configured to perform the method as described in the third aspect or any possible implementation of the third aspect, the second network device is configured to perform the method as described in the fourth aspect or any possible implementation of the fourth aspect, or the first network device is configured to perform the method as described in the seventh aspect or any possible implementation of the seventh aspect, the second network device is configured to perform the method as described in the eighth aspect or any possible implementation of the eighth aspect.

[0053] In a twelfth aspect, the present application provides a chip, which is configured to perform the method as described in the first aspect or any possible implementation of the first aspect, or the method as described in the third aspect or any possible implementation of the third aspect, or the method as described in the seventh aspect or any possible implementation of the seventh aspect.

[0054] In a thirteenth aspect, the present application provides a chip, which comprises the method as described in the second aspect or any possible implementation of the second aspect, or the method as described in the fourth aspect or any possible implementation of the fourth aspect, or the method as described in the eighth aspect or any possible implementation of the eighth aspect. BRIEF DESCRIPTION OF DRAWINGS

[0055] FIG. 1 is a diagram illustrating the effect of probability constellation shaping encoding according to an example embodiment of the present application;

[0056] FIG. 2 is a diagram illustrating the system architecture of an optical communication system according to an example embodiment of the present application;

[0057] FIG. 3 is a diagram illustrating the structure of a probability constellation shaping encoder according to an example embodiment of the present application;

[0058] FIG. 4 is a diagram illustrating the structure of a probability constellation shaping encoding module according to an example embodiment of the present application;

[0059] FIG. 5 is a diagram illustrating the structure of a probability constellation shaping encoder according to another example embodiment of the present application;

[0060] FIG. 6 is a diagram illustrating the structure of a probability constellation shaping decoder according to an example embodiment of the present application;

[0061] FIG. 7 is a structure diagram of a probability constellation shaping decoding module according to an example embodiment of the present application;

[0062] FIG. 8 is a structure diagram of a probability constellation shaping decoder according to another example embodiment of the present application;

[0063] FIG. 9 is a flow diagram of a method of probability constellation shaping encoding according to an example embodiment of the present application;

[0064] FIG. 10 is a coding framework diagram of column dimension according to an example embodiment of the present application;

[0065] FIG. 11 is a coding process diagram of column dimension according to an example embodiment of the present application;

[0066] FIG. 12 is a coding framework diagram of row dimension according to an example embodiment of the present application;

[0067] FIG. 13 is a coding process diagram of row dimension according to an example embodiment of the present application;

[0068] FIG. 14 is a coding framework diagram of column dimension according to another example embodiment of the present application;

[0069] FIG. 15 is a coding process diagram of column dimension according to another example embodiment of the present application;

[0070] FIG. 16 is a coding framework diagram of row dimension according to another example embodiment of the present application;

[0071] FIG. 17 is a coding process diagram of row dimension according to another example embodiment of the present application;

[0072] FIG. 18 is a flow diagram of a method of probability constellation shaping decoding according to an example embodiment of the present application;

[0073] FIG. 19 is a flow diagram of a method of probability constellation shaping encoding of two dimensions according to an example embodiment of the present application;

[0074] FIG. 20 is a flow diagram of a method of probability constellation shaping decoding of two dimensions according to an example embodiment of the present application;

[0075] FIG. 21 is a flow diagram of a method of probability constellation shaping encoding according to another example embodiment of the present application;

[0076] FIG. 22 is a flow diagram of a method of probability constellation shaping decoding according to another example embodiment of the present application;

[0077] FIG. 23 is a structural schematic diagram of an optical transport network (OTN) device according to an example embodiment of the present application;

[0078] FIG. 24 is a structural schematic diagram of an optical module according to an example embodiment of the present application.

[0079] FIG. 1 illustrates a splitter; FIG. 2 illustrates a probability constellation shaping encoding module; FIG. 3 illustrates a probability constellation shaping decoding module; FIG. 4 illustrates a combiner; FIG. 5 illustrates a first buffer; FIG. 6 illustrates a second buffer; FIG. 21 illustrates an encoding splitting unit; FIG. 22 illustrates a probability constellation shaping encoding unit; FIG. 31 illustrates a decoding splitting unit; and FIG. 32 illustrates a probability constellation shaping decoding unit. DETAILED DESCRIPTION

[0080] In order to make the purpose, technical solutions and advantages of the present application clearer, the embodiments of the present application will be described in further detail below with reference to the drawings.

[0081] Probability constellation shaping encoding is to obtain gain by changing the probability distribution of constellation points, thereby reducing the average power of the signal, and can improve the transmission performance of the communication system. Meanwhile, the technology can flexibly adjust the transmission rate of the system in the case of fixed FEC code rate. Taking 16 quadrature amplitude modulation (QAM) as an example, as shown in FIG. 1, the bits of “0” and “1” are balanced in the bit stream before probability constellation shaping encoding, and the bits of “0” and “1” are unbalanced in the bit stream after probability constellation shaping encoding. Thus, according to the mapping rule, the amplitude value of the corresponding symbol is 3 when the amplitude bit is 1, and the amplitude value of the corresponding symbol is 1 when the amplitude bit is 0, wherein the symbol bit determines the positive or negative (for example, 01 corresponds to -3 in the mapping rule, and the left 0 is the symbol bit), which does not affect the power of the signal. In this way, the amplitude of “±1” is low, the power used is low, the probability of “±1” is improved, the amplitude of “±3” is high, the power used is high, the probability of “±1” is reduced, and the average power of the signal is reduced as a whole.

[0082] The key technical indicators for measuring the pros and cons of probability constellation shaping encoding include performance indicators, complexity and power consumption. Under the same code rate, the code rate is equal to the length of the encoded data divided by the length of the data to be encoded. The longer the code length of the encoded data, the closer the distribution is to the Gaussian distribution, and the lower the average power of the signal. However, the longer the code length, the higher the complexity of probability constellation shaping encoding, and the growth of complexity is in a non-linear relationship with the code length. When the code length is relatively short, it can still be tolerated, and when we pursue high performance indicators, the code length is usually greater than 100. In this case, the non-linear growth will bring about a sharp increase in power consumption and resources.

[0083] The probability constellation shaping coding can only be realized by adjusting the code length of the constellation shaping coding to further improve the performance or reduce the implementation complexity. The code length needs to be increased to improve the performance, and the code length needs to be reduced to reduce the complexity. Therefore, a suitable probability constellation shaping coding scheme needs to be found to match the performance requirement and / or the complexity requirement.

[0084] In the embodiments of the present application, the scheme of the probability constellation shaping coding is suitable for a communication system. The communication system can be any communication system using the probability constellation shaping coding. For example, the communication system can be an optical communication system or a wireless communication system.

[0085] FIG. 2 provides a system architecture diagram of an optical communication system. As shown in FIG. 2, the optical communication system is a coherent optical communication system, which includes a first network device and a second network device. The first network device is taken as a sending end, and the second network device is taken as a receiving end. For example, the first network device includes a sending digital signal processor (DSP), a digital to analog converter (DAC), and an optical sending component. The second network device includes an optical receiving component, an analog-to-digital converter (ADC), and a receiving DSP. The sending DSP and the receiving DSP are both referred to as an optical digital signal processor (oDSP).

[0086] The sending DSP includes one or more of a probability constellation shaping encoder, an FEC encoder, an interleaving module, a framing module, a mapping module, a device nonlinear compensation module, an upsampling module, and a shaping filter device compensation module. The probability constellation shaping encoder performs probability constellation shaping coding processing on the received data to obtain coded data. The FEC encoder performs FEC coding processing on the coded data to obtain FEC coded data. The interleaving module and the framing module sequentially perform interleaving and framing processing on the FEC coded data to obtain a service frame, which is output. The mapping module performs mapping processing on the service frame, which is output. The device nonlinear compensation module performs device nonlinear compensation processing on the data after the mapping processing. The upsampling module performs upsampling processing on the data after the device nonlinear compensation processing. The shaping filter device compensation module performs shaping filter device compensation processing on the upsampled data, which is output to the DAC.

[0087] The DAC converts the digital signal after the shaping filter device compensation into an analog signal, which is output to the optical sending component.

[0088] The optical transmitting assembly comprises a driving circuit, a modulator and a signal light source. The driving circuit sends an analog signal to the modulator, and the signal light source outputs laser to the modulator. The modulator modulates the analog signal on the laser to obtain signal light, which is output to the transmission optical fiber. The transmission optical fiber transmits the signal light to the second network device.

[0089] In the second network device, the optical receiving assembly comprises a local oscillator light source, a frequency mixer, a photodetector and an amplifier. The local oscillator light source outputs local oscillator light to the frequency mixer. The frequency mixer receives signal light from the transmission optical fiber, mixes the local oscillator light and the signal light, and outputs the mixed light to the photodetector. The photodetector converts the mixed light into an electrical signal, which is output to the amplifier. The amplifier amplifies the electrical signal and outputs it to the ADC.

[0090] The ADC converts the electrical signal into a digital signal, which is output to the receiving DSP.

[0091] The receiving DSP comprises one or more of a static equalization assembly, a dynamic equalization assembly and an FEC assembly. The static equalization assembly comprises one or more of an automatic gain control (AGC) module, a receiver device distortion compensation module, a chromatic dispersion compensation (CDC) module and a clock recovery module. The dynamic equalization assembly comprises one or more of a dynamic equalization multiple in multiple out (MIMO) module, a carrier phase estimation (CPE) module, a transmitter device distortion compensation module and a narrow filter compensation (NFC) module. The FEC assembly comprises one or more of a de-framing module, an interleaving module, an FEC decoding module and a probabilistic constellation shaping decoder. In the static equalization assembly, the AGC module and the receiver device distortion compensation module perform receiver device distortion compensation on the digital signal from the ADC, and output the compensated data. The chromatic dispersion compensation module performs chromatic dispersion compensation on the receiver device distortion compensated data, and outputs the compensated data. The clock recovery module recovers the clock of the chromatically dispersion compensated data, and outputs the recovered clock to the dynamic equalization assembly.

[0092] In the dynamic equalization assembly, the dynamic equalization MIMO module performs dynamic equalization MIMO processing on the statically equalized data, and outputs the processed data. The carrier frequency offset and phase compensation module performs carrier frequency offset and phase compensation on the dynamic equalization MIMO processed data, and outputs the compensated data. The transmitter device distortion compensation unit performs transmitter device distortion compensation on the carrier frequency offset and phase compensated data, and outputs the compensated data. The narrowband compensation NFC module performs narrowband compensation on the transmitter device distortion compensated data, and outputs the compensated data.

[0093] In the FEC component, the de-framing module performs de-framing processing on the dynamically equalized data and outputs the data, the de-interleaving module performs de-interleaving processing on the de-framed data and outputs the data, the FEC decoding module performs FEC decoding processing on the de-interleaved data and outputs the data, and the probability constellation shaping decoder performs probability constellation shaping decoding processing on the FEC decoded data to obtain decoded data and output the decoded data.

[0094] Optionally, as shown in FIG. 3, the probability constellation shaping encoder includes a splitter 1, N-dimension probability constellation shaping encoding modules 2, and first buffers 5 of the second dimension to the Nth dimension. The splitter 1 is electrically connected with the probability constellation shaping encoding module 2 of the first dimension and the first buffers 5 of the second dimension to the Nth dimension. In the second dimension to the Nth dimension, the first buffer 5 of each dimension is electrically connected with the probability constellation shaping encoding module 2 of the dimension, and the probability constellation shaping encoding modules 2 of adjacent two dimensions are electrically connected. The splitter 1 is used to split the input data into N-dimension data to be encoded or directly obtain the N-dimension data to be encoded. The i-dimension data to be encoded is data to be subjected to probability constellation shaping encoding processing in the i-dimension to the Nth dimension. The probability constellation shaping encoding module 2 is used to perform probability constellation shaping encoding processing on the data to be encoded.

[0095] In the N dimensions, as shown in FIG. 4, the probability constellation shaping encoding module 2 of each dimension includes an encoding splitting unit 21 and a probability constellation shaping encoding unit 22. The encoding splitting unit 21 is electrically connected with the probability constellation shaping encoding unit 22. The encoding splitting unit 21 is used to perform block processing on the data to obtain a sub-block. The probability constellation shaping encoding unit 22 is used to perform probability constellation shaping encoding processing on the sub-block. The probability constellation shaping encoding unit 22 can be considered as a combination of multiple shapers. Each shaper is responsible for encoding a sub-block mentioned in the subsequent text.

[0096] Optionally, the probability constellation shaping encoder can also be understood as a combination of multiple shapers. As shown in FIG. 5, in the case of N equal to 2, the probability constellation shaping encoder includes an input interface, at least one column shaper, multiple row shapers, and an output interface. The input interface has a first branch and a second branch. The first branch is connected with the input end of the at least one column shaper. The second branch of the input interface and the output end of the at least one column shaper are connected with the input ends of the multiple row shapers. The output ends of the multiple row shapers are connected with the output interface. The output interface is connected with the FEC encoding module.

[0097] In the N dimensions, as shown in FIG. 4, the probability constellation shaping encoding module 2 of each dimension includes an encoding splitting unit 21 and a probability constellation shaping encoding unit 22. The encoding splitting unit 21 is electrically connected with the probability constellation shaping encoding unit 22. The encoding splitting unit 21 is used to perform block processing on the data to obtain a sub-block. The probability constellation shaping encoding unit 22 is used to perform probability constellation shaping encoding processing on the sub-block. The probability constellation shaping encoding unit 22 can be considered as a combination of multiple shapers. Each shaper is responsible for encoding a sub-block mentioned in the subsequent text.

[0098] Optionally, a difference between input lengths of any two of the plurality of row shapers is less than a target value, such as 4.

[0099] Optionally, in a case where there are row shapers with the same input length among the plurality of row shapers, the row shapers with the same input length have the same output data length.

[0100] Optionally, the at least one column shaper includes a plurality of column shapers, and a difference between input lengths of any two of the plurality of column shapers is less than a target value, such as 4.

[0101] Optionally, each column shaper and each row shaper can be implemented using a look-up table (LUT) or other implementation, which is not limited by embodiments of the present application.

[0102] Optionally, as shown in FIG. 6, the probability constellation shaping decoder includes N-dimension probability constellation shaping decoding modules 3, a combiner 4, and second buffers 6 in the second dimension to the Nth dimension. In the second dimension to the Nth dimension, each second buffer 6 is electrically connected with the combiner 4 and connected with the probability constellation shaping decoding module 3 in the dimension, and the probability constellation shaping decoding modules 3 in adjacent two dimensions are electrically connected. The probability constellation shaping decoding module 3 is configured to perform probability constellation shaping decoding processing on the data to be decoded, and the combiner 4 is configured to combine the decoding data in the N dimensions together for output.

[0103] As shown in FIG. 7, in the N dimensions, each probability constellation shaping decoding module 3 includes a decoding splitting unit 31 and a probability constellation shaping decoding unit 32, the decoding splitting unit 31 is electrically connected with the probability constellation shaping decoding unit 32, the decoding splitting unit 31 performs block processing on the data to be decoded to obtain a sub-block, and the probability constellation shaping decoding unit 32 performs probability constellation shaping decoding processing on the sub-block.

[0104] Optionally, the probability constellation shaping decoder can also be understood as a combination of a plurality of de-shapers. As shown in FIG. 8, the probability constellation shaping decoder includes an input interface, a plurality of row de-shapers, at least one column de-shaper, and an output interface, the input interface is connected with input ends of the plurality of row de-shapers, output ends of the plurality of row de-shapers are connected with an input end of the at least one column de-shaper, and connected with a first branch of the output interface, the at least one column de-shaper is connected with a second branch of the output interface.

[0105] Here, the column de-shaper corresponds to the column shaper, and the row de-shaper corresponds to the row shaper. The column de-shaper and the row de-shaper are defined as described in the probability constellation shaping encoder, which is not repeated here.

[0106] Optionally, in the probability constellation shaper encoder and the probability constellation shaper decoder, there can be a combiner for combining data output by multiple shapers and a splitter for distributing corresponding input data to each shaper.

[0107] Optionally, the first network device and the second network device are both optical transport network (OTN) devices.

[0108] Optionally, the optical communication system includes, but is not limited to, a 1.6T zero dispersion reach (ZR) or ZR+ optical communication system, such as an 800G optical communication system, etc.

[0109] Next, the execution subject of the embodiments of the present application is described.

[0110] The method of probability constellation shaping encoding can be executed by hardware, such as the probability constellation shaper encoder described above. Alternatively, the method of probability constellation shaping encoding can be executed by software, such as a software program running on the first network device.

[0111] The method of probability constellation shaping decoding can be executed by hardware, such as the probability constellation shaper decoder described above. Alternatively, the method of probability constellation shaping decoding can be executed by software, such as a software program running on the second network device.

[0112] In the embodiments of the present application, before describing the method of probability constellation shaping encoding, the following parameters used in the embodiments of the present application are summarized for explanation.

[0113] In probability constellation shaping encoding, the dimension is used to represent the encoding direction, and different dimensions represent different encoding directions, and data is arranged according to the encoding direction. For example, N is equal to 2, and the two dimensions represent the row encoding direction and the column encoding direction. For another example, N is equal to 3, and the three dimensions represent the row encoding direction, the column encoding direction and the target encoding direction, and the target encoding direction is different from the row encoding direction and the column encoding direction, such as the target encoding direction being the encoding direction perpendicular to the row encoding direction and the column encoding direction.

[0114] The input data is data for which probability constellation shaping encoding is performed, and is referred to as a code block. The length of a code block is a first length, and the length of a code word obtained after probability constellation shaping encoding of a code block is a second length.

[0115] In an optional manner, N can be set according to an empirical value. For example, N is equal to 2, 3, 4 or 5, etc.

[0116] In an alternative way, the second length is determined according to a performance index of the communication system and complexity of the probabilistic constellation shaping coding, the performance index including bit error rate and / or signal-to-noise ratio. When the second length is fixed, the higher the performance index requirement, the longer the length of the output data of the shaper, and the less the number, but the higher the implementation complexity, and vice versa, the lower the performance index requirement, the shorter the length of the output data of the shaper, and the more the number, and the lower the implementation complexity. When the number of shapers is fixed, the longer the second length, the better the performance, but the higher the complexity accordingly. Therefore, in the case of fixed performance index and complexity, the number of shapers is fixed, and then various combinations of shapers are traversed to find the length of the output data of each shaper that meets the performance index and complexity. In the case of meeting the performance index and complexity, the sum of the lengths of the output data of the shapers in the Nth dimension is calculated, and the sum is determined as the second length. In this way, after the process, the lengths of the output data of the shapers in each dimension can be determined. Here, it can be simply understood as: traversing various combinations of shapers until the shaper combination that meets the performance index and complexity is determined.

[0117] Optionally, in each dimension, the difference between the lengths of the output data of the shapers is less than a target value, which can be the same or different for different dimensions. For example, in the Nth dimension, the second length is divided by the number of shapers in the Nth dimension, and when the division is exact, the lengths of the output data of the different shapers are the same, and when the division is not exact, the lengths of the output data are adjusted by rounding up or down to make the second length equal to the sum of the lengths of the output data of the shapers in the Nth dimension, and thus the target value is 3.

[0118] In an alternative way, the first length is set according to an empirical value, or is determined according to one or more of the second length, the overhead of FEC processing, and the spectral efficiency brought by constellation shaping coding, for example, when no probabilistic constellation shaping coding is performed, one symbol includes 4 bits of effective bits, and after the probabilistic constellation shaping coding, the effective bits included in one symbol are less than 4 bits.

[0119] Here, taking 2 M -QAM modulation as an example, assuming that the first length is k, the second length is n, and the length of the output data after FEC processing is represented by formula (1). fec_codelen=M*n / (M-2) (1)

[0120] In formula (1), fec_codelen is the length of the output data after FEC processing, M is related to the modulation mode used, and if 16QAM is used, M is equal to 4.

[0121] Then, according to the overhead of the FEC processing, the length of the sign bit can be obtained, which is expressed as formula (2). sign = (fec_code len - (1 + fec oh )*n) / (1 + fec oh ) (2)

[0122] In formula (2), sign is the length of the sign bit, which is used to determine the positive or negative of the amplitude of the signal, fec oh is the overhead of the FEC processing.

[0123] Then, according to the spectral efficiency, the first length can be obtained, which is expressed as formula (3).

[0124] In formula (3), k is the first length, cs se is the spectral efficiency.

[0125] Optionally, the first length can be any value less than or equal to the second length. For example, the first length is 72 bits, and the second length is 128 bits. For another example, the first length is 76 bits, and the second length is 161 bits. For another example, the first length is 106 bits, and the second length is 128 bits. For another example, the first length is 116 bits, and the second length is 128 bits.

[0126] In an optional manner, the format of the data frame of the input data is a flexible optical transport network (FlexO)-6-dual-polarization probability constellation shaping open forward error correction (DPO), FlexO-6e-DPO, FlexO-8-DPO, or FlexO-8e-DPO, and can also be a ZR frame, which can be a ZR frame in 1.6T. OFEC is an abbreviation of open forward error correction.

[0127] Optionally, the first length can also be different when the data frames to which the input data belongs are of different formats. For example, the data frame is of FlexO-6-DPO format, the first length is 72 bits, the second length is 128 bits, and the baud rate is 124.67 Gbps; the data frame is of FlexO-6e-DPO format, the first length is 72 bits, the second length is 128 bits, and the baud rate is 118.75 Gbps; the data frame is of FlexO-8-DPO format, the first length is 106 bits, the second length is 128 bits, and the baud rate is 131.35 Gbps; the data frame is of FlexO-8e-DPO format, the first length is 116 bits, the second length is 128 bits, and the baud rate is 131.34 Gbps. For another example, when the data frame is of 1.6T ZR frame format, the first length is 106 bits, and the second length is 128 bits.

[0128] It can be understood that after the baud rate, performance index, and complexity are determined, the specific values of the first length and the second length can be determined.

[0129] Optionally, after the first length is determined, the first length of data is divided into N-dimensional data to be encoded, and the number of shapers is used to determine the number of shapers for each dimension and the length of input data for each shaper, so that a plurality of division combinations can be obtained. The average power is calculated using each combination to determine the combination with the optimal average power, which is used as the principle of dividing the N-dimensional data to be encoded and the blocking principle for the final probability constellation shaping encoding. When subsequent probability constellation shaping encoding processing is performed, the N-dimensional data to be encoded is obtained using the principle of dividing the N-dimensional data to be encoded, and the blocking principle is used to block the to-be-encoded data for each dimension. Here, in the case of low average power, the bit error rate and the signal-to-noise ratio are both low.

[0130] Here, the lengths of the input data of the plurality of shapers for each dimension are less than the target value.

[0131] The method flow of the probability constellation shaping encoding is described below.

[0132] FIG. 9 provides a method flow diagram for probability constellation shaping encoding, referring to steps 901 to 902.

[0133] Step 901, performing probability constellation shaping encoding processing on first blocking data to obtain first encoded data, wherein the first blocking data belongs to a first group of first-dimensional data of N-dimensional data, and the N-dimensional data is obtained based on input data, and N is greater than or equal to 2.

[0134] In the embodiment, the input data can be a bit stream from an Ethernet frame, an OTN frame or a ZR frame, the input data is divided into N-dimensional data, or the input data itself is N-dimensional data, and N is greater than or equal to 2. When the probability constellation shaping coding is performed on the first dimension, first block data is obtained from the input data, the first block data belongs to a first group of first dimension data in the N-dimensional data, and the probability constellation shaping coding is performed on the first block data to obtain first coding data.

[0135] It should be noted that the first block data belongs to the first group of first dimension data, which means that the first block data can be the first group of first dimension data, or part of the first group of first dimension data. For example, in the first column from left to right in FIG. 10, when the first group of first dimension data is in the first column from left to right in the input data, the first block data is the first group of first dimension data. When the first group of first dimension data is in the second column from left to right in the input data, the data in the position of the circle box is the first group of first dimension data, but does not belong to the first block data.

[0136] In an optional manner, there can be multiple first block data, and different first block data in the multiple first block data belong to different groups of first dimension data in the N-dimensional data. The probability constellation shaping coding is performed on the multiple first block data respectively to obtain first coding data corresponding to each first block data.

[0137] In step 902, the probability constellation shaping coding is performed on the ith block data to obtain the ith coding data, wherein the ith block data includes one bit in the (i-1)th coding data and target block data, the target block data belongs to a first group of ith dimension data in the N-dimensional data, and i takes a value from 2 to N.

[0138] In the embodiment, when the probability constellation shaping coding is performed on the ith dimension, the ith block data is obtained from the input data and the (i-1)th dimension coding data, the ith block data includes one bit in the (i-1)th coding data and target block data, and the target block data belongs to a first group of ith dimension data in the N-dimensional data. The probability constellation shaping coding is performed on the ith block data to obtain the ith coding data. For example, in the case of N equal to 2, in each row in FIG. 11, the position of the line box represents the (i-1)th coding data, and the position of the circle box represents the target block data.

[0139] In an alternative way, there can be multiple i-1th sub-block data in the i-1th dimension, and different i-1th sub-block data belong to different groups of i-1th dimension data. The multiple i-1th sub-block data are respectively subjected to the probability constellation shaping coding processing to obtain i-1th coding data corresponding to each i-1th sub-block data. The i th sub-block data can include one bit in each i-1th coding data and the target sub-block data, or can include one bit in part of the i-1th coding data and the target sub-block data.

[0140] After the probability constellation shaping coding in the Nth dimension, all Nth coding data in the Nth dimension are obtained, and all Nth coding data in the Nth dimension constitute the probability constellation shaping coding data of the input data.

[0141] In an alternative way, when N is equal to 2, there are column dimension and row dimension. The first group of first dimension data is in the first column of the input data. Here, the first column is not specific, and refers to any column. The i th sub-block data is the second sub-block data. The first group of i th dimension data is in the first row of the input data. Here, the first row is not specific, and refers to any row.

[0142] Optionally, one bit in the first coding data is located at the position where the first row and the first column intersect. In this way, when N is equal to 2, the probability constellation shaping coding is first performed according to the column, and then the probability constellation shaping coding is performed according to the row.

[0143] Optionally, when N is equal to 2, there is a second group of first dimension data in the data of the N dimensions. The second group of first dimension data is different from the first group of first dimension data. The second group of first dimension data is in the second column of the input data. The second column is different from the first column. The third sub-block data belongs to the second group of first dimension data. Although it is referred to as the third sub-block data, it is actually a first sub-block data. The third sub-block data is subjected to the probability constellation shaping coding processing to obtain third coding data. The second sub-block data further includes one bit in the third coding data.

[0144] The one bit in the third coding data is located at the position where the second column and the first row intersect.

[0145] Optionally, the second column is adjacent to the first column, so that the data in the input data is conveniently read.

[0146] Optionally, when the first sub-block data and the third sub-block data have the same length, the length of the first coding data is the same as the length of the third coding data. In this way, the first sub-block data and the third sub-block data can use the same type of shaper, and the type of shaper used can be reduced.

[0147] Here is only an example, the present application embodiments do not limit this. For example, although the length of the first block data and the third block data is the same, and the length of the first encoded data is the same as the length of the third encoded data, the category of the shaper used by the first block data and the third block is not the same, but both can be probability constellation shaping coding.

[0148] Optionally, for each dimension, if there are multiple block data in the dimension, the length difference of the multiple block data is less than or equal to a target value. In different dimensions, the target value can not be the same. For example, in the Nth dimension, the number of bits of the output data is divided by the number of block data to obtain a value, if the value is an integer, the length of the block data is the value, otherwise the value is rounded down or rounded down to obtain the length of each block data, so the target value can be equal to 3.

[0149] In order to better illustrate the probability constellation shaping coding process, the following describes the scheme with the first length of 76 bits and 106 bits, in the case of the first length of 76 bits, the second length is 161 bits, in the case of the first length of 106 bits, the second length is 128 bits, and N is equal to 2. Here, the first dimension represents the column encoding direction, and the second dimension represents the row encoding direction as an example.

[0150] In the case of the first length of 76 bits and the second length of 161 bits, the 161-bit encoded data is distributed in the code block shown in Figure 10. In the case of the first length of 76 bits, first, the first dimension is encoded, as shown in Figure 10, the first length of the input data includes the first group of first dimension data and the second group of first dimension data, the first group of first dimension data includes the first 6 bits in the first column (the position of the diagonal line box), and the second group of first dimension data includes the first 9 bits in the second column (the position of the diagonal line box) and the last two bits (the position of the circle box), The 7 crosshatched boxes in the first column are reserved for encoding overhead positions, and the encoding overhead is 7 bits. The 2 crosshatched boxes in the second column are reserved for encoding overhead positions, and the encoding overhead is 2 bits. The remaining data in the input data is distributed in the position of the circle box.

[0151] In the column dimension, there are two first block data, which are the first 6 bits in the first column and the first 9 bits in the second column. As shown in FIG. 11, in the first dimension, there are two column shapers, which include column shaper 1.1a and column shaper 1.2a. The payload length (k1) and the output data length (n1) of column shaper 1.1a are 6 bits and 13 bits, respectively. The payload length (k2) and the output data length (n2) of column shaper 1.2a are 9 bits and 11 bits, respectively. The 6-bit first block data is input into column shaper 1.1a for probability constellation shaping encoding processing, and 13-bit encoded data is output, which is distributed in the first column. The 9-bit first block data is input into column shaper 1.2a for probability constellation shaping encoding processing, and 11-bit encoded data is output, which is distributed in the first 11 bits of the second column. After column shaper 1.1a and column shaper 1.2a complete the encoding, the output 13-bit and 11-bit data are combined with the remaining 61-bit data in the input data as the second dimension to-be-encoded data, which is a total of 85 bits.

[0152] As shown in FIG. 12, in the row dimension, there are 13 rows of data, i.e., there are 13 second block data, each second block data is located in a row, different second block data is located in different rows, and the bit positions of the 13 second block data are [0, 13, 24:27], [1, 14, 28:31], [2, 15, 32:35], [3, 16, 36:39], [4, 17, 40:44], [5, 18, 45:49], [6, 19, 50:54], [7, 20, 55:59], [8, 21, 60:64], [9, 22, 65:69], [10, 23, 70:74], [11, 75:79], and [12, 80:84], and the lengths of the 13 second block data are 6 bits, 6 bits, 6 bits, 6 bits, 7 bits, 7 bits, 7 bits, 7 bits, 7 bits, 7 bits, 7 bits, 6 bits, and 6 bits, respectively, corresponding to the to-be-encoded data regions 201, 202, and 203 in FIG. 12. For each row, the check boxes in the second half of the row are the encoding overhead positions reserved for the data in the row. As shown in FIG. 13, each second block data is input into a corresponding row shaper for probability constellation shaping and encoding processing. Among them, the row shapers 2.1a, 2.2a, 2.3a, and 2.4a are a type of row shaper A, the payload length (k3) and the output data length (n3) are 6 bits and 12 bits, respectively; the row shapers 2.5a, 2.6a, 2.7a, 2.8a, 2.9a, 2.10a, and 2.11a are another type of row shaper B, the payload length (k4) and the output data length (n4) are 7 bits and 13 bits, respectively; and the row shapers 2.12 and 2.13 are still another type of row shaper C, the payload length (k5) and the output data length (n5) are 6 bits and 11 bits, respectively. Each row shaper performs probability constellation shaping and encoding processing on the input second block data, and places the encoded data in the row. After all row shapers complete the probability constellation shaping and encoding, 13 rows of encoded data are output, with lengths of 12 bits, 12 bits, 12 bits, 12 bits, 13 bits, 13 bits, 13 bits, 13 bits, 13 bits, 13 bits, 13 bits, 11 bits, and 11 bits, respectively. The 13 rows of encoded data are combined to obtain the final encoded output of 161 bits.

[0153] Alternatively, the combination manner is that the second row of encoded data is spliced after the first row of encoded data, the third row of encoded data is spliced after the second row of encoded data, and so on, and the 13 rows of encoded data are spliced together for output.

[0154] In the case of the first length of 106 bits and the second length of 128 bits, the 128 bits of encoded data are distributed in the code block shown in FIG. 14. In the case of the first length of 106 bits, first dimension encoding is first performed, as shown in FIG. 14, the first length of input data includes a first group of first dimension data and a second group of first dimension data, the first group of first dimension data includes the first 9 bits in the first column (the position of the hatched box), and the second group of first dimension data includes the first 11 bits in the second column (the position of the hatched box), the three crosshatched boxes in the first column are reserved encoding overhead positions, and the encoding overhead is 3 bits, and the one crosshatched box in the second column is a reserved encoding overhead position, and the encoding overhead is 1 bit. The remaining data in the input data is distributed in the position of the circle box.

[0155] In the column dimension, there are two first block data, which are the first 9 bits in the first column and the first 11 bits in the second column. As shown in FIG. 15, there are two column shapers in the first dimension, which include column shaper 1.1b and column shaper 1.2b, the payload length (k1) of column shaper 1.1b and the length (n1) of the output data are 9 bits and 12 bits respectively, and the payload length (k2) of column shaper 1.2b and the length (n2) of the output data are 11 bits and 12 bits respectively. The 9 bits of first block data are input into column shaper 1.1b for probability constellation shaping encoding processing, and 12 bits of encoded data are output, which are distributed in the first column. The 11 bits of first block data are input into column shaper 1.2b for probability constellation shaping encoding processing, and 12 bits of encoded data are output, which are distributed in the second column. After the encoding of column shaper 1.1b and column shaper 1.2b is completed, the output 12 bits and 12 bits of data are combined with the remaining 86 bits of data in the input data as the second dimension of to-be-encoded data, which is a total of 110 bits.

[0156] As shown in FIG. 16, in the row dimension, there are 12 rows of data, i.e., there are 12 second block data, each second block data is located in a row, different second block data is located in different rows, and the bit positions of the 12 second block data are [0, 12, 24:31], [1, 13, 32:39], [2, 14, 40:46], [3, 15, 47:53], [4, 16, 54:60], [5, 17, 61:67], [6, 18, 68:74], [7, 19, 75:81], [8, 20, 82:88], [9, 21, 89:95], [10, 22, 96:102], and [11, 23, 103:109], and the lengths of the 12 second block data are 10 bits, 10 bits, 9 bits, 9 bits, 9 bits, 9 bits, 9 bits, 9 bits, 9 bits, 9 bits, 9 bits, 9 bits, and 9 bits, respectively, which correspond to the to-be-encoded data regions 204, 205, and 206 in FIG. 16. For each row, the check boxes in the second half of the row are the encoding overhead positions reserved for the data in the row. As shown in FIG. 17, each second block data is sent to a corresponding row shaper for probability constellation shaping and encoding processing. Among them, the row shapers 2.1b and 2.2b are a type of row shaper D, the payload length (k8) and the output data length (n8) are 10 bits and 10 bits respectively, and no encoding overhead is allocated here, so the data is directly transmitted; the row shapers 2.3b and 2.4b are another type of row shaper E, the payload length (k9) and the output data length (n9) are 9 bits and 10 bits respectively; the row shapers 2.5b, 2.6b, 2.7b, 2.8b, 2.9b, 2.10b, 2.11b, and 2.12b are still another type of row shaper F, the payload length (k10) and the output data length (n10) are 9 bits and 11 bits respectively. Each row shaper performs probability constellation shaping and encoding processing on the input second block data, and places the encoded data in the row. After all row shapers complete the probability constellation shaping and encoding, 12 rows of encoded data are output, with lengths of 10 bits, 10 bits, 10 bits, 10 bits, 11 bits, 11 bits, 11 bits, 11 bits, 11 bits, 11 bits, 11 bits, and 11 bits respectively. The 12 rows of encoded data are combined to obtain a final encoded output of 128 bits.

[0157] Alternatively, the combination manner is that the 2nd row of encoded data is spliced after the 1st row of encoded data, the 3rd row of encoded data is spliced after the 2nd row of encoded data, and so on, and the 12 rows of encoded data are spliced together for output.

[0158] FIG. 18 also provides a method flow diagram of the probability constellation shaping decoding corresponding to FIG. 9, as shown in steps 1801 to 1802 in FIG. 18.

[0159] Step 1801, the probability constellation shaping decoding processing is performed on the ith encoded data to obtain the ith block data, wherein the ith block data comprises one bit in the (i-1)th encoded data and target block data, the target block data belongs to the first group of ith dimension data in the N groups of data in N dimensions, and i is 2 to N.

[0160] In this embodiment, the second network device acquires the Nth encoded data, and if there are multiple Nth encoded data, the probability constellation shaping decoding processing is performed on each Nth encoded data respectively to obtain the Nth block data corresponding to each Nth encoded data. For each Nth block data, the Nth block data comprises one bit in the (N-1)th encoded data and target block data, the target block data is the decoded data, and the target block data belongs to one group of Nth dimension data in the N groups of data in N dimensions. In different Nth block data, the target block data belongs to different groups of Nth dimension data. In this way, the encoded data of the first dimension is obtained.

[0161] Step 1802, the probability constellation shaping decoding processing is performed on the first encoded data to obtain the first block data, wherein the first block data belongs to the first group of first dimension data in the N groups of data in N dimensions, and the N groups of data in N dimensions belong to the output data.

[0162] In this embodiment, if the encoded data of the first dimension comprises multiple first encoded data, the probability constellation shaping decoding processing is performed on each first encoded data respectively to obtain the first block data corresponding to each first encoded data, and the first block data is the decoded data. If the encoded data of the first dimension comprises one first encoded data, the probability constellation shaping decoding processing is performed on the first encoded data to obtain the first block data corresponding to the first encoded data.

[0163] The target block data and the first block data are combined together to obtain the output data, and the output data is the decoded data.

[0164] The process of the probability constellation shaping decoding processing is the inverse process of the probability constellation shaping encoding processing, which corresponds to the flow shown in FIG. 9, and will not be described herein again.

[0165] In the embodiments of the present application, the probability constellation shaping encoding shaping flow of two dimensions (column dimension and row dimension) is also provided, as shown in steps 1901 to 1902 in FIG. 19.

[0166] Step 1901, the first probability constellation shaping encoding processing is performed on the first block data in the input data to obtain intermediate data, wherein the first column of the intermediate data comprises the encoded data obtained by performing the first probability constellation shaping encoding processing on the first block data, and the intermediate data further comprises a part of the input data which is not subjected to the first probability constellation shaping encoding processing.

[0167] In the embodiment, the input data is divided into first block data, the first block data is in the first column of the input data, and the first column is any column. The first block data is subjected to first probability constellation shaping encoding processing to obtain intermediate data, and the first column of the intermediate data includes the encoded data of the first block data. In addition, the intermediate data also includes part of the input data that is not subjected to first probability constellation shaping encoding processing, that is, the data of the input data that is subjected to probability constellation shaping encoding processing in the second dimension.

[0168] In an optional manner, the input data is divided into a plurality of first block data, and different first block data is located in different columns, which can be adjacent or not adjacent. The plurality of first block data is subjected to first probability constellation shaping encoding processing to obtain intermediate data, and a plurality of columns of the intermediate data include the encoded data of the plurality of first block data, and different columns include the encoded data of different first block data. In this way, the probability constellation shaping encoding processing is also performed on a plurality of block data in the first dimension, the length of the output data of the column shaper is reduced, and the complexity of the column dimension is reduced. For example, as shown in FIG. 14, the input data is divided into two first block data, one first block data includes the first 9 bits in the first column, and the other first block data includes the first 11 bits in the second column, and the part of the intermediate data that is not subjected to first probability constellation shaping encoding processing is the bits in the position of the circular box in FIG. 14.

[0169] Step 1902, the intermediate data is subjected to second probability constellation shaping encoding processing according to rows to obtain output data.

[0170] The difference between the second probability constellation shaping encoding processing and the first probability constellation shaping encoding processing is that the first probability constellation shaping encoding processing is performed to obtain the intermediate data, and the second probability constellation shaping encoding processing is performed to obtain the output data, that is, the probability constellation shaping encoded data. As shown in FIG. 16, the intermediate data is subjected to second probability constellation shaping encoding processing according to rows to obtain 12 rows of encoded data.

[0171] In the embodiment, after the intermediate data is obtained, the probability constellation shaping encoding processing is performed on each row of the intermediate data to obtain the encoded data of each row. The encoded data of each row is sequentially combined to obtain the output data. Here, the sequential combination manner can be any manner as long as the encoding and decoding sides correspond.

[0172] In the case of N equal to 2, the specific content of the probability constellation shaping encoding processing is described in the foregoing embodiment, which will not be described here.

[0173] In the embodiment, the method of the probability constellation shaping decoding processing corresponding to the flow shown in Fig. 19 is also provided, as shown in steps 2001 and 2002 in Fig. 20.

[0174] In step 2001, the first probability constellation shaping decoding processing is performed on the input data row by row to obtain intermediate data, wherein the first column of the intermediate data includes the encoded data obtained by performing the first probability constellation shaping encoding processing on the first block data, and the intermediate data also includes the data which has not been subjected to the first probability constellation shaping encoding processing.

[0175] In the embodiment, the first probability constellation shaping decoding processing is the inverse process of the second probability constellation shaping encoding processing. First, the first probability constellation shaping decoding processing is performed on the input data row by row to obtain intermediate data. The intermediate data includes the data which has not been subjected to the first probability constellation shaping encoding processing, and the intermediate data also includes the encoded data obtained by performing the first probability constellation shaping encoding processing on the first block data, which needs to be subjected to the second probability constellation shaping decoding processing, and the second probability constellation shaping decoding processing is the inverse process of the first probability constellation shaping encoding processing.

[0176] In step 2002, the second probability constellation shaping decoding processing is performed on the intermediate data to obtain output data.

[0177] In the embodiment, the probability constellation shaping decoding processing is performed on the encoded data in the intermediate data to obtain the first block data, and the first block data and the data which has not been subjected to the first probability constellation shaping encoding processing in the intermediate data are combined to obtain the output data.

[0178] In an optional manner, there can be multiple first block data, and the multiple first block data and the data which has not been subjected to the first probability constellation shaping encoding processing in the intermediate data are combined to obtain the output data.

[0179] In the case where N is equal to 2, the specific content of the probability constellation shaping decoding processing can refer to the embodiment in the foregoing, which will not be described herein again.

[0180] In the embodiment, the method of the probability constellation shaping encoding processing is also described as a whole, as shown in steps 2101 to 2103 in Fig. 21.

[0181] In step 2101, for the first dimension in N dimensions, the probability constellation shaping encoding processing is performed on the first dimension data to be encoded in the input data to obtain the encoded data of the first dimension, and N is greater than or equal to 2.

[0182] In the embodiment, the splitter 1 receives N-dimension data to be encoded, or the splitter 1 receives input data, distributes the input data as N-dimension data to be encoded, and the i-th dimension data to be encoded is data participating in the probability constellation shaping encoding in the i-th dimension to the N-th dimension. The probability constellation shaping module 2 of the first dimension performs block processing on the first dimension data to be encoded, obtains a plurality of sub-blocks, performs probability constellation shaping encoding processing on each sub-block, and obtains the encoding data of the plurality of sub-blocks. The encoding data of the plurality of sub-blocks is the first dimension encoding data.

[0183] It should be noted that the first dimension data to be encoded can also be taken as a whole as a sub-block, and the probability constellation shaping encoding processing is performed on the sub-block to obtain the first dimension encoding data.

[0184] In an optional manner, the block probability constellation shaping encoding manner of the first dimension data to be encoded is as follows:

[0185] The first dimension data to be encoded is sequentially divided into a plurality of sub-blocks. Then each sub-block is sent to the corresponding shaper for probability constellation shaping encoding processing to obtain the encoding data of each block. For example, the plurality of sub-blocks includes three sub-blocks, and the lengths of the three sub-blocks are a1, b1 and c1. The first a1 bits of data in the first dimension data to be encoded are divided into the first sub-block, a1+1 bits to a1+b1 bits of data are divided into the second sub-block, and the last c1 bits of data are divided into the third sub-block.

[0186] In an optional manner, the process of distributing the input data as N-dimension data is as follows:

[0187] The splitter 1 distributes the input data as N-dimension data to be encoded according to the positions of the N-dimension data to be encoded. For example, the splitter 1 sequentially distributes the input data as N-dimension data to be encoded according to the order of the data. In the input data, the i-th dimension data to be encoded is adjacent to the i-1-th dimension data to be encoded and located after the i-1-th dimension data to be encoded, i is greater than or equal to 2 and less than or equal to N.

[0188] Here, it is only an optional distribution manner, and the embodiments of the application do not limit the distribution manner. For example, in the input data, d bits of data are sequentially distributed for N dimensions first, and then d bits of data are sequentially distributed for N dimensions, until N-dimension data to be encoded is obtained, and d is greater than or equal to 1. Here, there may be data of some dimensions whose length is not an integer multiple of d. When the data of the dimension is distributed for the last time, the length of the distributed data is less than or equal to d.

[0189] Step 2102, for the i-th dimension among the N dimensions, the i-th dimension data to be encoded in the input data and the encoded data of the i-1-th dimension are combined together, and then block probability constellation shaping encoding processing is performed to obtain the encoded data of the i-th dimension, i is 2 to N.

[0190] In this embodiment, for the i-th dimension among the N dimensions, i is 2 to N, the i-th dimension probability constellation shaping module 2 combines the i-1-th dimension encoded data and the i-th dimension data to be encoded together, and then block probability constellation shaping encoding processing is performed to obtain the i-th dimension encoded data.

[0191] In an optional manner, the process of performing probability constellation shaping encoding processing in the i-th dimension is as follows:

[0192] The i-th dimension probability constellation shaping module 2 combines the i-1-th dimension encoded data and the i-th dimension data to be encoded together to obtain the i-th dimension data to be encoded. In the data to be encoded, the i-1-th dimension encoded data is before the i-th dimension data to be encoded, and then the data to be encoded is distributed into multiple subblocks in sequence. For example, the multiple subblocks include four subblocks, and the lengths of the four subblocks are a2, b2, c2 and d2. The first a2 bits of data in the data to be encoded are divided into the first subblock, a2+1 bits to a2+b2 bits of data are divided into the second subblock, a2+b2+1 bits to a2+c2 bits of data are divided into the third subblock, and the last d2 bits of data are divided into the fourth subblock.

[0193] Step 2103, output the N-th dimension encoded data, and the N-th dimension encoded data is the corresponding encoded data of the input data.

[0194] In this embodiment, the N-th dimension probability constellation shaping module 2 obtains the N-th dimension encoded data, and the N-th dimension encoded data is the corresponding encoded data of the input data. The N-th dimension probability constellation shaping module 2 outputs the N-th dimension encoded data for subsequent processing. The N-th dimension encoded data continues to be processed in the first network device and is finally output through the connected transmission optical fiber.

[0195] The method flow of the probability constellation shaping decoding processing is described below. The decoding processing process is the inverse process of the encoding process shown in FIG. 21, as shown in FIG. 22, steps 2201 to 2203.

[0196] Step 2201, block probability constellation shaping decoding processing is performed on the i-th dimension encoded data among the N dimensions to obtain the i-1-th dimension encoded data and the i-th dimension decoding data, i is 2 to N.

[0197] In the embodiment, the probability constellation shaping decoding module 3 of the Nth dimension receives input data, which is the Nth dimension encoded data, and the length of the input data is the second length. For the ith dimension, the decoding splitting unit 31 of the ith dimension splits the ith dimension encoded data into a plurality of second sub-blocks, and the probability constellation shaping decoding unit 32 of the ith dimension respectively performs probability constellation shaping decoding on the plurality of second sub-blocks to obtain the decoding data of each second sub-block, and obtains the (i-1)th dimension encoded data and the ith dimension decoding data from the decoding data of each second sub-block. In this way, the probability constellation shaping decoding is performed on the encoded data of the Nth dimension to the second dimension in sequence to obtain the first dimension encoded data.

[0198] In an optional manner, in the case that the plurality of encoded second sub-blocks exist second sub-blocks of the same length, the lengths of the decoding data of the second sub-blocks of the same length are the same.

[0199] Step 2202, performing probability constellation shaping decoding on the first dimension encoded data of the N dimensions to obtain the first dimension decoding data.

[0200] In the embodiment, the decoding splitting unit 31 of the first dimension splits the first dimension encoded data into a plurality of encoded first sub-blocks, and the probability constellation shaping decoding unit 32 of the first dimension respectively performs probability constellation shaping decoding on the plurality of encoded first sub-blocks to obtain the decoding data of the plurality of first sub-blocks, and combines the decoding data of the plurality of first sub-blocks to obtain the first dimension decoding data.

[0201] In an optional manner, the first dimension encoded data is sequentially split into a plurality of encoded first sub-blocks. Then each first sub-block is sent to the corresponding probability constellation shaping decoding unit 32 to perform probability constellation shaping decoding to obtain the decoding data of each first sub-block, and the decoding data of the plurality of encoded first sub-blocks is obtained according to the distribution order during encoding to obtain the first dimension data to be encoded.

[0202] In an optional manner, in the case that the plurality of encoded first sub-blocks exist first sub-blocks of the same length, the lengths of the decoding data of the first sub-blocks of the same length are the same.

[0203] Step 2203, outputting the decoding data of the N dimensions.

[0204] In the embodiment, the combiner 4 combines the data of the N dimensions into data of the first length according to the inverse process of the distribution of the data of the plurality of dimensions during encoding, and outputs the data to the subsequent stage for processing.

[0205] It should be noted that the probability constellation shaping decoding process is the inverse of the probability constellation shaping encoding process, and therefore, the block principle is referred to the probability constellation shaping encoding process, which will not be described herein.

[0206] In the embodiments of the present application, the optimization space is expanded in dimensions, and the probability constellation shaping parameters are jointly optimized in multiple dimensions. In each dimension, a low-complexity and low-performance probability constellation shaping encoding is implemented, so that a low-complexity and high-performance probability constellation shaping scheme can be constructed by using a low-complexity and low-performance probability constellation shaping. Compared with directly increasing the code length to improve performance, the embodiments of the present application can significantly reduce the implementation complexity. In other words, in the case of equivalent complexity, the probability constellation shaping encoding in multiple dimensions in the embodiments of the present application reduces the probability of mapping to the amplitude bits of the symbols of the outer constellation points and increases the probability of mapping to the amplitude bits of the symbols of the inner constellation points when mapping, so as to reduce the average power of the transmitted signal and improve the performance.

[0207] The apparatus provided by the embodiments of the present application is described below.

[0208] The embodiments of the present application also provide an apparatus for performing probability constellation shaping encoding. The apparatus can be realized by software, hardware or a combination of both to become part or all of the apparatus. The apparatus provided by the embodiments of the present application can implement the process described in FIG. 9, and the apparatus includes: an N-dimensional probability constellation shaping encoding module 2, wherein:

[0209] The N-dimensional probability constellation shaping encoding module 2 is configured to perform probability constellation shaping encoding on the first block data to obtain first encoded data, wherein the first block data belongs to a first group of first-dimensional data in N-dimensional data, and the N-dimensional data is obtained based on input data, and N is greater than or equal to 2.

[0210] The i-th block data is subjected to probability constellation shaping encoding processing to obtain the i-th encoded data, wherein the i-th block data includes one bit in the (i-1)-th encoded data and target block data, and the target block data belongs to a first group of i-th dimensional data in the N-dimensional data, and i takes a value of 2 to N. The process and the implied steps contained in FIG. 7 can be used to implement the process.

[0211] In an optional manner, N is equal to 2, the first group of first-dimensional data is on a first column of the input data, and the first group of i-th dimensional data is on a first row of the input data.

[0212] In an optional manner, one bit in the first encoded data is located at a position where the first row and the first column intersect.

[0213] In an optional mode, the i-th block data is the second block data, and the N-dimension probability constellation shaping encoding module 2 is further configured to:

[0214] performing probability constellation shaping encoding on third block data to obtain third encoding data, wherein the third block data belongs to a second group of first-dimension data in the N-dimension data, and the second group of first-dimension data is in a second column of the input data;

[0215] the second block data further includes one bit in the third encoding data.

[0216] In an optional mode, the second column is adjacent to the first column.

[0217] In an optional mode, in the input data, the third block data is located after the first block data, and the third block data is adjacent to the first block data.

[0218] In an optional mode, in the case that the first block data and the third block data have the same length, the first encoding data has the same length as the third encoding data.

[0219] In an optional mode, the length difference between the first block data and the third block data is less than a target value.

[0220] In an optional mode, the sum of the lengths of the N-dimension data is a first length, and the first length is determined according to a second length, and the second length is the length of the encoding data obtained by performing probability constellation shaping encoding on the N-dimension data.

[0221] Embodiments of the present application further provide a structural diagram of an apparatus for performing probability constellation shaping decoding. The apparatus can be realized by software, hardware or a combination of both to become part or all of the apparatus. The apparatus provided by the embodiments of the present application can implement the process described in FIG. 18, and the apparatus includes an N-dimension probability constellation shaping decoding module 3, wherein:

[0222] The N-dimension probability constellation shaping decoding module 3 is configured to perform probability constellation shaping decoding on i-th encoding data to obtain i-th block data, wherein the i-th block data includes one bit in (i-1)-th encoding data and target block data, the target block data belongs to a first group of i-th dimension data in the N-dimension data, and i takes a value from 2 to N.

[0223] performing probability constellation shaping decoding on the first encoded data to obtain first block data, wherein the first block data belongs to a first group of first dimension data in the N-dimension data, and the target block data and the first group of first dimension data belong to the output data.

[0224] In an optional mode, N equals 2, the first group of i-th dimension data is on a first row of the output data, and the first group of first dimension data is on a first column of the output data.

[0225] In an optional mode, the i-th block data is second block data, the second block data further includes one bit in third encoded data, and the N-dimension probability constellation shaping decoding module 3 is further configured to:

[0226] performing probability constellation shaping decoding on the third encoded data to obtain third block data, wherein the third block data belongs to a second group of first dimension data in the N-dimension data, and the second group of first dimension data is on a second column of the output data.

[0227] Embodiments of the present application further provide a device for performing probability constellation shaping encoding. The device can be realized by software, hardware or a combination of both to become part or all of the device. The device provided by the embodiments of the present application can implement the process described in Embodiment 19 of the present application. The device includes an N-dimension probability constellation shaping encoding module 2, wherein:

[0228] The N-dimension probability constellation shaping encoding module 2 is configured to perform first probability constellation shaping encoding on first block data in input data to obtain intermediate data, wherein a first column of the intermediate data includes encoded data obtained by performing the first probability constellation shaping encoding on the first block data, and the intermediate data further includes a part of the input data that is not subjected to the first probability constellation shaping encoding.

[0229] performing second probability constellation shaping encoding on the intermediate data by row to obtain output data.

[0230] In an optional mode, the N-dimension probability constellation shaping encoding module 2 is configured to:

[0231] performing the first probability constellation shaping encoding on a plurality of first block data in the input data to obtain the intermediate data, wherein a plurality of columns of the intermediate data include encoded data obtained by performing the first probability constellation shaping encoding on the plurality of first block data, and encoded data obtained by performing the first probability constellation shaping encoding on different first block data belongs to different columns.

[0232] The embodiment of the present application further provides a device for performing probability constellation shaping decoding. The device can be realized by software, hardware or a combination of both to be part or all of the device. The device provided by the embodiment of the present application can realize the process described in the embodiment of the present application in FIG. 20. The device includes: N-dimension probability constellation shaping decoding modules 3, wherein:

[0233] The N-dimension probability constellation shaping decoding modules 3 are configured to perform first probability constellation shaping decoding on the input data row by row to obtain intermediate data, wherein the first column of the intermediate data includes encoded data obtained by performing first probability constellation shaping encoding on first block data, and the intermediate data further includes data which is not subjected to the first probability constellation shaping encoding.

[0234] The intermediate data is subjected to second probability constellation shaping decoding to obtain output data.

[0235] In an optional manner, the intermediate data includes encoded data obtained by performing first probability constellation shaping encoding on a plurality of first block data, and the encoded data obtained by performing first probability constellation shaping encoding on different first block data belongs to different columns.

[0236] The embodiment of the present application further provides a device for performing probability constellation shaping encoding. The device can be realized by software, hardware or a combination of both to be part or all of the device. The device provided by the embodiment of the present application can realize the process described in the embodiment of the present application in FIG. 21. The device includes: N-dimension probability constellation shaping encoding modules 2, wherein:

[0237] The N-dimension probability constellation shaping encoding modules 2 are configured to, for a first dimension in N dimensions, perform probability constellation shaping encoding on to-be-encoded first dimension data to obtain encoded data of the first dimension, wherein the data of the N dimensions is obtained based on input data, and N is greater than or equal to 2.

[0238] For an i-th dimension in the N dimensions, perform probability constellation shaping encoding on to-be-encoded i-th dimension data and i-1-th dimension encoded data to obtain encoded data of the i-th dimension, wherein i is an integer between 2 and N.

[0239] Output N-th dimension encoded data, wherein the N-th dimension encoded data is encoded data corresponding to the input data.

[0240] The embodiment of the present application further provides a device for performing probability constellation shaping decoding. The device can be realized by software, hardware or a combination of both to be part or all of the device. The device provided by the embodiment of the present application can realize the process described in the embodiment of the present application in FIG. 22. The device includes: N-dimension probability constellation shaping decoding modules 3, wherein:

[0241] The N-dimension probability constellation shaping decoding module 3 is configured to perform probability constellation shaping decoding on the encoded data block in the i-th dimension of the N dimensions to obtain the encoded data in the i-1-th dimension and the decoded data in the i-th dimension, where i is an integer from 2 to N;

[0242] performing probability constellation shaping decoding on the encoded data in the first dimension of the N dimensions to obtain the decoded data in the first dimension;

[0243] outputting the decoded data in the N dimensions.

[0244] The detailed process of the device for performing probability constellation shaping encoding is described above in the various embodiments, which will not be repeated here.

[0245] The detailed process of the device for performing probability constellation shaping decoding is described above in the various embodiments, which will not be repeated here.

[0246] Fig. 23 is a schematic diagram of a hardware structure of a network device. Specifically, the network device can include one or more of tributary boards, line boards, cross-connect boards, and can also include one or more of system control type boards, power supply type boards, fan type boards, and auxiliary type boards. The line board can also be an optical layer processing board. Depending on specific needs, the type and number of boards included in each device can be different. For example, a network device that is a core node can not have tributary boards. A network device that is an edge node can have multiple tributary boards. The power supply type board is used to supply power to the network device, and can include a primary power supply and a backup power supply. The fan type board is used to dissipate heat from the device. The auxiliary type board is used to provide external alarms or access external clocks, and the like. The tributary board, cross-connect board, and line board are mainly used to process electrical layer signals (which can also be referred to as OTN frames) of the OTN. The tributary board is used to implement reception and transmission of various customer signals (also referred to as customer traffic). The customer signals can include constant bit rate (CBR) signals (such as synchronous digital hierarchy (SDH) signals) and packet signals (such as Ethernet signals). Further, the tributary board can include a customer side optical module and a signal processor. The customer side optical module is used to receive and / or transmit customer signals. The signal processor can be located inside the customer side optical module or outside the customer side optical module. If the signal processor is a combination of multiple chips, one (or some) of the chips can be inside the customer side optical module and the other chips can be outside the customer side optical module. The cross-connect board is used to implement switching of data, such as switching of one or more types of OTN frames. The line board is mainly used to implement line side data processing. Specifically, the line board can include a line side optical module and a signal processor. The line side optical module is used to receive and / or transmit optical signals. The signal processor can be located inside the line side optical module or outside the line side optical module. If the signal processor is a combination of multiple chips, one (or some) of the chips can be inside the line side optical module and the other chips can be outside the line side optical module. The customer side optical module or the line side optical module can also be collectively referred to as an optical module or an optical transceiver. The signal processor in the customer side optical module or the line side optical module can be an oDSP or a Framer, or can include a combination of a Framer and an oDSP. The system control type board is used for system control. Specifically, the system control board can collect information from different boards, or send control instructions to corresponding boards. Unless otherwise specified, a specific component (such as a tributary board) can be one or more, and the present application does not make any limitation.

[0247] Figure 24 is a schematic diagram of a hardware structure of an optical module. The optical module can include a signal processor, a light transmitting assembly, and a light receiving assembly. The signal processor can include a Framer or an oDSP, or a combination of a Framer and an oDSP. The optical module can be a unidirectional optical module, i.e., including one of the light transmitting assembly and the light receiving assembly. The optical module can also be a bidirectional optical module, i.e., including both the light transmitting assembly and the light receiving assembly.

[0248] The oDSP is used to perform digital signal processing on the data frame generated by the Framer, or on the electrical signal obtained by the light receiving assembly. The oDSP is used to perform one or more of the following processes: FEC processing, clock recovery, equalizer, sequence detection, signal decision, etc.

[0249] FEC processing is an error control method, which refers to a technique of encoding a signal according to a certain algorithm before the signal is sent into a transmission channel, adding redundant data with characteristics of the signal itself, and decoding the received signal according to a corresponding algorithm at a receiving end to find and correct error codes generated in the transmission process.

[0250] The light transmitting assembly, also referred to as a transmitter optical subassembly (TOSA), is used to convert an electrical signal into an optical signal. The light transmitting assembly can include a light source, a driving chip, a modulator, etc. The light source can be a semiconductor laser (also referred to as a laser diode (LD)) or a light emitting diode (LED). The driving chip processes the electrical signal generated by the oDSP and drives the light source to emit a modulated optical signal. The modulated optical signal is transmitted into an optical fiber line through an optical fiber interface.

[0251] The light receiving assembly, also referred to as a receiver optical subassembly (ROSA), is used to convert an optical signal into an electrical signal. The light receiving assembly can include a light detector, an amplifier, etc. The light detector can be an avalanche photodiode (APD) or a PIN photodiode. The amplifier can include a preamplifier and a postamplifier. After the optical signal enters from the optical fiber interface, the optical signal is converted into an electrical signal by the light detector, and the amplified electrical signal is output after passing through the amplifier.

[0252] In the embodiments of the present application, a computer program product is also provided, which includes program instructions stored in a computer readable storage medium. The processor of the first network device reads the program instructions from the computer readable storage medium, and the processor executes the program instructions, so that the first network device performs the flow shown in FIG. 9, FIG. 18 or FIG. 21.

[0253] In the embodiments of the present application, a computer program product is also provided, which includes program instructions stored in a computer readable storage medium. The processor of the second network device reads the program instructions from the computer readable storage medium, and the processor executes the program instructions, so that the second network device performs the flow shown in FIG. 17, FIG. 19 or FIG. 22.

[0254] The embodiments of the present application also provide a first chip for implementing the method for performing the probability constellation shaping encoding.

[0255] The embodiments of the present application also provide a second chip for implementing the method for performing the probability constellation shaping decoding.

[0256] Optionally, the first chip and the second chip can both be oDSP chips.

[0257] Those skilled in the art can realize that, in combination with the method steps and units described in the embodiments disclosed in the present application, the methods can be realized by electronic hardware, computer software or a combination of both. In order to clearly illustrate the interchangeability of hardware and software, the steps and components of the embodiments have been described in a general manner in the above description. Whether the functions are realized in hardware or software depends on the specific application and design constraints of the technical solutions. Those skilled in the art can use different methods to realize the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.

[0258] In several embodiments provided in the present application, it should be understood that the disclosed system architecture, device and method can be realized by other ways. For example, the device embodiments described above are only schematic, for example, the division of the modules is only a logical function division, and actual implementation can have another division manner, for example, a plurality of modules or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the shown or discussed ones can be indirect coupling or communication connection through some interfaces, devices or modules, and can also be electrical, mechanical or other forms of connection.

[0259] The modules described as separate components may or may not be physically separate, and the components shown as modules may or may not be physical modules, i.e., may be located in one place or distributed over multiple network modules. Some or all of the modules can be selected as needed to achieve the purposes of the embodiments of the present application.

[0260] In addition, the modules in the various embodiments of the present application can be integrated in one processing module, or each module can be physically present alone, or two or more modules can be integrated in one module. The integrated module can be realized in the form of hardware or in the form of a software module.

[0261] The integrated module, if realized in the form of a software function module and sold or used as an independent product, can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application essentially or say the part of the prior art that contributes to the technical solutions, or all or part of the technical solutions can be embodied in the form of a software product, which is stored in a storage medium and includes a number of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods in the various embodiments of the present application. The aforementioned storage medium includes: a U disk, a mobile hard disk, a ROM, a RAM, a magnetic disk or an optical disk, and various storage media that can store program codes.

[0262] In the present application, the terms "first" and "second" and the like are used to distinguish between the same or similar items with substantially the same function and purpose, and it should be understood that there is no logical or chronological dependency between "first" and "second", and the quantity and execution order are not limited. It should also be understood that although the following description uses the terms "first" and "second" and the like to describe various elements, these elements should not be limited by the terms. These terms are only used to distinguish one element from another. For example, without departing from the scope of various examples, the first network device can be referred to as the second network device, and similarly, the second network device can be referred to as the first network device. The first network device and the second network device can both be network devices, and in some cases, can be separate and different network devices.

[0263] The above description is only an exemplary embodiment of the present application, but the protection scope of the present application is not limited thereto, and any skilled person in the art can easily think of various equivalent modifications or replacements within the technical scope disclosed in the present application, and these modifications or replacements should be covered in the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A method of performing probabilistic constellation shaping encoding, characterized by, The method comprises: performing probability constellation shaping encoding processing on first block data to obtain first encoded data, wherein the first block data belongs to a first group of first dimension data in N-dimension data, and the N-dimension data is obtained based on input data, and N is greater than or equal to 2; performing probability constellation shaping encoding processing on the i-th block data to obtain the i-th encoded data, wherein the i-th block data comprises one bit in the (i-1)-th encoded data and target block data, and the target block data belongs to a first group of i-th dimension data in the N-dimension data, and i is 2 to N.

2. The method of claim 1, wherein, N is equal to 2, the first group of first dimension data is on a first column of the input data, and the first group of i-th dimension data is on a first row of the input data.

3. The method of claim 2, wherein, One bit in the first encoded data is located at a position where the first row and the first column intersect.

4. The method according to claim 2 or 3, characterized in that, The i-th block data is second block data, and the method further comprises: performing probability constellation shaping encoding processing on third block data to obtain third encoded data, wherein the third block data belongs to a second group of first dimension data in the N-dimension data, and the second group of first dimension data is on a second column of the input data; The second block data further comprises one bit in the third encoded data.

5. The method of claim 4, wherein, The second column is adjacent to the first column.

6. The method according to claim 4 or 5, characterized in that, In the input data, the third block data is located after the first block data, and the third block data is adjacent to the first block data.

7. The method according to any one of claims 4 to 6, characterized in that, In a case where the first block data and the third block data have the same length, the first encoded data has the same length as the third encoded data.

8. The method according to any one of claims 4 to 6, characterized in that, The length difference between the first block data and the third block data is less than a target value.

9. The method according to any one of claims 1 to 8, characterized in that, The sum of the lengths of the N-dimension data is a first length, and the first length is determined according to a second length, and the second length is the length of encoded data obtained by performing probability constellation shaping encoding processing on the N-dimension data.

10. A method of performing probabilistic constellation shaping decoding, characterized by, The method comprises: performing probability constellation shaping decoding processing on the i-th encoded data to obtain the i-th block data, wherein the i-th block data comprises one bit in the (i-1)-th encoded data and target block data, and the target block data belongs to a first group of i-th dimension data in N-dimension data, and i is 2 to N; performing probability constellation shaping decoding processing on the first encoded data to obtain the first block data, wherein the first block data belongs to a first group of first dimension data in N-dimension data, and the target block data and the first group of first dimension data belong to output data.

11. The method of claim 10, wherein, N is equal to 2, the first group of i-th dimension data is on a first row of the output data, and the first group of first dimension data is on a first column of the output data.

12. The method of claim 11, wherein, The i-th block data is second block data, and the second block data further comprises one bit in the third encoded data, and the method further comprises: The third encoding data is subjected to a probability constellation shaping decoding process to obtain third block data, wherein the third block data belongs to a second group of first dimension data in N-dimension data, and the second group of first dimension data is on a second column of the output data.

13. A method of performing probabilistic constellation shaping encoding, characterized by, The method comprises: The first block data in the input data is subjected to a first probability constellation shaping encoding process to obtain intermediate data, wherein a first column of the intermediate data comprises encoding data obtained by subjecting the first block data to the first probability constellation shaping encoding process, and the intermediate data further comprises a part of the input data which is not subjected to the first probability constellation shaping encoding process; The intermediate data is subjected to a second probability constellation shaping encoding process to obtain output data.

14. The method of claim 13, wherein, The first block data is multiple; and the first block data in the input data is subjected to a first probability constellation shaping encoding process to obtain intermediate data, comprising: The multiple first block data in the input data is subjected to the first probability constellation shaping encoding process to obtain the intermediate data, wherein multiple columns of the intermediate data comprise encoding data obtained by subjecting the multiple first block data to the first probability constellation shaping encoding process, and the encoding data obtained by subjecting different first block data to the first probability constellation shaping encoding process belongs to different columns.

15. A method of performing probabilistic constellation shaping decoding, the method comprising: The method comprises: The input data is subjected to a first probability constellation shaping decoding process to obtain intermediate data, wherein a first column of the intermediate data comprises encoding data obtained by subjecting first block data to a first probability constellation shaping encoding process, and the intermediate data further comprises data which is not subjected to the first probability constellation shaping encoding process; The intermediate data is subjected to a second probability constellation shaping decoding process to obtain output data.

16. The method of claim 15, wherein, The intermediate data comprises encoding data obtained by subjecting multiple first block data to the first probability constellation shaping encoding process, and the encoding data obtained by subjecting different first block data to the first probability constellation shaping encoding process belongs to different columns.

17. A probabilistic constellation shaping encoder, characterized by It comprises an input interface, at least one column shaper, multiple row shapers, and an output interface; A first branch of the input interface is connected with an input end of the at least one column shaper; A second branch of the input interface and an output end of the at least one column shaper are connected with input ends of the multiple row shapers; Output ends of the multiple row shapers are connected with the output interface.

18. The probabilistic constellation shaping encoder of claim 17, wherein, In the case that there is a row shaper with the same input length in the multiple row shapers, the output data of the row shaper with the same input length has the same length.

19. A probabilistic constellation shaping decoder, characterized in that It comprises an input interface, multiple row de-shapers, at least one column de-shaper, and an output interface; The input interface is connected with input ends of the multiple row de-shapers; Input ends of the at least one column de-shaper and a first branch of the output interface are connected with output ends of the multiple row de-shapers; The at least one column de-shaper is connected with a second branch of the output interface.

20. The probabilistic constellation shaping decoder of claim 19, wherein, In the case that there is a row de-shaper with the same input length in the multiple row de-shapers, the output data of the row de-shaper with the same input length has the same length.

21. A method of performing probabilistic constellation shaping encoding, characterized by, The method comprises: For a first dimension of the N dimensions, performing a probabilistic constellation shaping encoding process on first dimension data to be encoded in the input data to obtain encoded data of the first dimension, N being greater than or equal to 2; For an i-th dimension of the N dimensions, performing a probabilistic constellation shaping encoding process on i-th dimension data to be encoded and (i-1)-th dimension encoded data in the input data in blocks to obtain i-th dimension encoded data, i taking values from 2 to N; Outputting N-th dimension encoded data, the N-th dimension encoded data being encoded data corresponding to the input data.

22. A method of performing probabilistic constellation shaping decoding, the method comprising: The method comprises: performing a probabilistic constellation shaping decoding process on i-th dimension encoded data in blocks to obtain (i-1)-th dimension encoded data and i-th dimension decoded data, i taking values from 2 to N; performing a probabilistic constellation shaping decoding process on first dimension encoded data to obtain 1-dimension decoded data; outputting N-dimension decoded data.

23. A network device, comprising: The network device comprises the probabilistic constellation shaping encoder of claim 17 or 18.

24. A network device, comprising: The network device comprises the probabilistic constellation shaping decoder of claim 19 or 20.

25. A communication system, characterized by The communication system comprises a first network device and a second network device; The first network device is configured to perform the method of any one of claims 1 to 9; the second network device is configured to perform the method of any one of claims 10 to 12; or, The first network device is configured to perform the method of claim 13 or 14; the second network device is configured to perform the method of claim 15 or 16; or, The first network device is configured to perform the method of claim 21; the second network device is configured to perform the method of claim 22.

26. A chip, characterized by The chip is configured to perform the method of any one of claims 1 to 9, or the method of claim 13 or 14, or the method of claim 21.

27. A chip, characterized by The chip is configured to perform the method of any one of claims 10 to 12, or the method of claim 15 or 16, or the method of claim 22.

Citation Information

Patent Citations

  • Method and device for forward error correction encoding, method and device for forward error correction decoding, and communication device and system

    CN103873071A

  • Encoding method, apparatus and system, and decoding method, apparatus and system

    CN108667553A

  • Probabilistic shaping coding device, system and method

    CN113746594A

  • Constellation shaping-related coding selection

    US20240048430A1