Product code iterative soft output decoding method, device and equipment

By employing a list-based hierarchical statistical decoding and row-column iterative update method, the problems of high reliability, low latency, and low hardware cost in product code decoding in URLLC scenarios are solved, thereby improving the accuracy and efficiency of soft output decoding.

CN122394574APending Publication Date: 2026-07-14PURPLE MOUNTAIN LAB

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
PURPLE MOUNTAIN LAB
Filing Date
2026-03-27
Publication Date
2026-07-14

AI Technical Summary

Technical Problem

Existing product code decoding schemes struggle to simultaneously meet the requirements of high reliability, low latency, and low hardware cost in URLLC scenarios. In particular, they suffer from high storage overhead and computational complexity, as well as insufficient precision of soft information, which affects iterative convergence and final error rate performance in short code long scenarios.

Method used

A low-storage, high-precision soft-output product code decoding method based on list-based hierarchical statistical decoding and row and column iterative updates is adopted. By initializing the decoding parameters, the row component code and column component code are decoded alternately, the soft output information is calculated and updated, and the final decoding result is output when the iteration meets the termination condition.

Benefits of technology

It significantly improves the accuracy of soft information exchange and error correction performance in the iterative decoding process, reduces decoding latency and hardware costs, and meets the high reliability and low latency requirements of URLLC scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122394574A_ABST
    Figure CN122394574A_ABST
Patent Text Reader

Abstract

The present application relates to space-time coding, and provides a product code iterative soft output decoding method, device and equipment, the method comprising: initializing the decoding parameter of the product code to be decoded; based on the decoding parameter, iteratively decoding, and alternately decoding the row component code and the column component code of the product code to be decoded; wherein, after decoding the component code in any dimension, based on the candidate decoding result generated in this decoding, the soft output information of the current dimension is calculated and updated, and the soft output information is used to update the prior information of the component code in another dimension in the next round of iteration; when the iterative decoding meets the termination condition, the final decoding result of the product code is output. The present application solves the problem that the prior art is difficult to simultaneously meet the high reliability, low latency and low hardware cost requirements in the URLLC scenario, and realizes low storage, high precision soft output product code decoding based on list hierarchical statistical decoding and row-column iterative updating.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to space-time coding, and more particularly to a product code iterative soft-output decoding method, apparatus, and device. Background Technology

[0002] As mobile communications evolve towards sixth generation (6G), services targeting critical tasks such as industrial control, remote surgery, and autonomous driving place increasingly stringent demands on the reliability and real-time performance of communication systems. Ultra-Reliable Low-Latency Communication (URLLC), as one of the core scenarios of 6G, aims to achieve extremely high transmission reliability within extremely short transmission latency, posing unprecedented challenges to channel coding and decoding technologies. Especially in short-code-long scenarios, traditional long-code design schemes for enhanced mobile broadband suffer severe performance degradation, making it difficult to simultaneously meet the requirements of high reliability and low complexity under limited latency constraints.

[0003] To address these challenges, space-time two-dimensional coding systems have emerged. These systems combine short component codes in both spatial and temporal dimensions to construct product code structures, thereby improving transmission reliability in short-code scenarios. Product codes possess excellent parallel decoding characteristics, and performance can be improved through iterative decoding along the row and column dimensions. Currently, common product code decoding schemes typically rely on component decoding methods such as serial cancellation list decoding or graded statistical decoding, combined with soft-output iterative mechanisms for performance optimization.

[0004] However, existing solutions still have the following prominent problems: First, the solution based on SCL equal component decoder needs to maintain a large amount of internal log-likelihood ratio information, which leads to a significant increase in storage overhead and computational complexity, making it difficult to meet the requirements of URLLC for low latency and low hardware cost; Second, traditional soft output calculation methods are usually based only on a finite list of candidate codewords, failing to make full use of the statistical information of the pruned paths during the decoding process, resulting in insufficient precision of soft information, affecting iterative convergence and final error rate performance. Summary of the Invention

[0005] This invention provides a product code iterative soft-output decoding method, apparatus, and device, which solves the problem that existing technologies cannot simultaneously meet the requirements of high reliability, low latency, and low hardware cost in URLLC scenarios. It realizes low-storage, high-precision soft-output product code decoding based on list-level statistical decoding and row and column iterative updates.

[0006] This invention provides a product code iterative soft-output decoding method, comprising the following steps: Initialize the decoding parameters of the product code to be decoded; Iterative decoding is performed based on the decoding parameters, and the row component code and column component code of the product code to be decoded are decoded alternately. After decoding the component code of any dimension, the soft output information of the current dimension is calculated and updated based on the candidate decoding result generated in this decoding. The soft output information is used to update the prior information of the component code of another dimension in the next iteration. When the iterative decoding meets the termination condition, the final decoding result of the product code is output.

[0007] According to the present invention, a product code iterative soft-output decoding method is provided, wherein the decoding parameters include: a log-likelihood ratio matrix, row component extrinsic information matrices and column component extrinsic information matrices initialized to zero matrices, parity check matrices for row component codes and column component codes, list capacity corresponding to the list-order statistical decoders used for row and column components, maximum number of iterations for iterative decoding, and scaling factor, normalization factor, and compensation factor in soft information updates.

[0008] According to the present invention, an iterative soft-output decoding method for product codes includes: performing iterative decoding based on the decoding parameters, alternately decoding the row component codes and column component codes of the product code to be decoded; calculating the prior information matrix of the current dimension component code based on the channel log-likelihood ratio matrix and the component extrinsic information matrix from another dimension for the current row component code or column component code to be decoded; obtaining the decoded codewords of the corresponding row, a candidate codeword list containing multiple candidate codewords, path metrics corresponding to the multiple candidate codewords, and approximate path metrics information of all pruned paths in the list-order statistical decoding process based on the prior information matrix, the parity check matrix, and the list capacity; calculating and updating the soft-output extrinsic information of the current dimension based on the candidate codeword list and the path metrics using a preset soft-output calculation method; performing early stop verification, and selecting to continue iteration or output the decoding result based on the verification result.

[0009] According to the product code iterative soft-output decoding method provided by the present invention, the soft-output extrinsic information of the current dimension component is calculated and updated, including: for the i-th codeword position of the current decoding row or column, searching from its candidate codeword list for a codeword whose bit value at the current codeword position is different from the bit value of the optimal candidate codeword, and selecting the codeword with the smallest path metric value as the competing codeword of the i-th codeword of the current decoding row or column; the optimal candidate codeword is the codeword that is determined to be closest to the original transmitted codeword among multiple candidate codewords generated during the decoding process according to a preset reliability metric; if the competing codeword exists, the soft-output extrinsic information of the current dimension component is updated by linear operation based on the current dimension prior information vector, the optimal candidate codeword path metric value and the competing codeword path metric value; if the competing codeword does not exist, the soft-output extrinsic information of the current dimension component is updated according to the normalization factor.

[0010] According to the product code iterative soft-output decoding method provided by the present invention, the soft-output extrinsic information of the current dimension is calculated and updated, including: for the i-th codeword position of the current decoding row or column, based on the candidate codeword list and its path metric value, and combined with the approximate path metric information of all pruned paths in the list-level statistical decoding process and the compensation factor, the posterior probability log-likelihood ratio of the current codeword position is calculated; and the soft-output extrinsic information of the current dimension is updated according to the calculated posterior probability log-likelihood ratio.

[0011] According to the product code iterative soft-output decoding method provided by the present invention, the early stopping check, and the selection to continue iteration or output the decoding result based on the check result, includes: performing parity check calculations in the row and column directions based on the codeword matrix obtained by the current decoding; if all row vectors and all column vectors of the current codeword matrix pass the parity check, it is determined that the early stopping condition is met, the iteration process is terminated, and the current codeword matrix is ​​output as the final decoding result; if the early stopping condition is not met, it is further determined whether the current iteration number has reached the set maximum iteration number; if the maximum iteration number has been reached, the iteration is terminated and the current codeword matrix is ​​selected as the decoding result; otherwise, the prior information matrix of another dimension is calculated based on the updated current dimension soft output information and the scaling factor, and the component decoding and iteration process of the next dimension is continued.

[0012] The present invention also provides a product code iterative soft-output decoding device, comprising the following modules: The initialization module is used to initialize the decoding parameters of the product code to be decoded; The decoding module is used to perform iterative decoding based on the decoding parameters, alternately decoding the row component code and column component code of the product code to be decoded; wherein, after decoding the component code of any dimension, the soft output information of the current dimension is calculated and updated based on the candidate decoding result generated in this decoding, and the soft output information is used to update the prior information of the component code of another dimension in the next iteration. The decoding output module is used to output the final decoding result of the product code when the iterative decoding meets the termination condition.

[0013] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the product code iterative soft output decoding method as described above.

[0014] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the product code iterative soft-output decoding method as described above.

[0015] The present invention also provides a computer program product, including a computer program that, when executed by a processor, implements the product code iterative soft output decoding method as described above.

[0016] This invention provides a product code iterative soft-output decoding method, apparatus, and device, which offers the following advantages: By utilizing multi-candidate path information generated during the decoding process to calculate and update soft-output information, and alternately transmitting this information between row and column dimensions to update each other's prior information, the accuracy and effectiveness of soft information exchange during iterative decoding are significantly improved, thereby enhancing the overall decoding error correction performance and convergence speed. By setting an iteration termination condition, the iteration can be terminated early when the decoding is correct, reducing unnecessary computational overhead and helping to lower the average decoding latency. Attached Figure Description

[0017] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0018] Figure 1 This is a flowchart illustrating the product code iterative soft-output decoding method provided by the present invention.

[0019] Figure 2 This is a schematic diagram of the product code iterative soft output decoding device provided by the present invention.

[0020] Figure 3 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation

[0021] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.

[0022] The terminology involved in this invention will be explained below.

[0023] The log-likelihood ratio (LLR) is the logarithmic ratio of the probability that a bit in the received signal is 1 to the probability that it is 0. It is often used in soft-decision decoding.

[0024] Ordered statistics decoding (OSD) is a decoding algorithm based on the reliability ranking of received signals and performing Gaussian elimination and recoding.

[0025] The path metric (PM) is a measure used in list decoding algorithms to evaluate the reliability of different candidate paths, and is usually calculated based on the log-likelihood ratio.

[0026] Ultra-reliable low-latency communication (URLLC) is designed for high-reliability, low-latency communication scenarios for critical tasks such as industrial control and remote surgery.

[0027] Successive cancellation list (SCL) decoding is an efficient decoding algorithm for polar codes that improves performance by retaining multiple candidate paths.

[0028] Soft-output GRAND (SO-GRAND) is a GRAND series decoding algorithm that can output soft information.

[0029] Spatiotemporal 2-D coding is a technique that combines encoding in both spatial and temporal dimensions and is often used to improve system reliability.

[0030] List-Ordered Statistics Decoding (List-OSD) is an enhanced decoding algorithm that combines the ideas of list decoding with OSD, and can output multiple candidate codewords.

[0031] The soft-output from list and discarded paths (SOLiD) method is considered, which simultaneously considers the contributions of the candidate list and the discarded paths when calculating the soft output.

[0032] Soft-output list ordered statistics (SOLOS) is a product code decoding algorithm based on List-OSD that can output soft information. It includes two variants, SOLOS-I and SOLOS-II.

[0033] The SOLOS decoding algorithm for product codes proposed in this invention consists of a component decoding module and a soft output update module. During encoding, the product code first undergoes... Line encoding, then through Column encoding (row-first, column-later is equivalent to column-first, row-later). During decoding, row and column component codes are decoded separately. Between row and column component code decoding, soft outputs are calculated based on the component decoding results to update prior information, thus achieving iterative decoding. For example, row component codes are decoded first, and the candidate codewords obtained from row decoding are used to generate soft output information for row components. This information is then used to update the prior information for column decoding. Column decoding is then performed again to obtain the soft output information for column components, which is then used to update the prior information for row components. This forms turbo iteration.

[0034] The following is combined with Figures 1-3 The embodiments of the present invention are described in detail.

[0035] The product code iterative soft output decoding method provided in this embodiment of the invention is executed by a product code iterative soft output decoding device, which can be configured in a computer. The computer can be a local computer or a cloud computer. The local computer can be a computer, tablet, etc., and no specific limitation is made here.

[0036] Figure 1 This is a flowchart illustrating the product code iterative soft-output decoding method provided by the present invention, as shown below. Figure 1 As shown, the method includes the following steps: S110. Initialize the decoding parameters of the product code to be decoded.

[0037] S120. Iterative decoding is performed based on the decoding parameters, alternately decoding the row component codes and column component codes of the product code to be decoded. Specifically, after decoding any dimension's component code, the soft output information for the current dimension is calculated and updated based on the candidate decoding results generated in this decoding. This soft output information is used to update the prior information of the other dimension's component code in the next iteration.

[0038] S130. When the iterative decoding meets the termination condition, output the final decoding result of the product code.

[0039] Specifically, the system initializes the decoding parameters of the product code to be decoded, setting the initial state for subsequent iterative processing. Then, it enters the core iterative decoding loop, which alternately decodes the row and column components of the product code. The key improvement lies in the fact that after decoding a dimension (e.g., rows), the system does not simply output a hard-determined result, but instead calculates and updates the soft-output information for that dimension based on the candidate decoding results generated in this decoding process. This soft-output information is then used as prior information for decoding the other dimension (e.g., columns) in the next iteration, thus achieving efficient exchange and transmission of soft information between the row and column decoders. Finally, when the iterative decoding meets the preset termination conditions (e.g., reaching the maximum number of iterations or decoding result convergence), the system outputs the final decoded result of the product code.

[0040] This embodiment effectively utilizes reliability information during the decoding process by calculating and transmitting soft output information after row and column decoding. Compared to traditional iterative decoding methods that only transmit hard decision results, the exchange of soft information in this scheme significantly improves the convergence speed and error correction performance of iterative decoding. It allows subsequent decoders to acquire richer prior knowledge, thereby more accurately correcting error patterns. Therefore, this embodiment can effectively reduce the bit error rate of product codes and improve the reliability of communication or storage systems while ensuring decoding complexity.

[0041] According to the present invention, a product code iterative soft-output decoding method is provided, wherein the decoding parameters include: a log-likelihood ratio matrix, row component extrinsic information matrices and column component extrinsic information matrices initialized to zero matrices, parity check matrices for row component codes and column component codes, list capacity corresponding to the list-order statistical decoders used for row and column components, maximum number of iterations for iterative decoding, and scaling factor, normalization factor, and compensation factor in soft information updates.

[0042] Specifically, the decoder receives the channel log-likelihood ratio matrix output from the previous processing unit. The size of the matrix is ,in and These correspond to the code lengths of the row and column components of the product code, respectively. During initialization, this matrix will be used to store the row component extra-information matrix for inter-row soft information exchange during the iteration process. External information matrix of column components Set all elements to zero, that is This is done to eliminate the influence of residual information that may exist from previous iterations. Simultaneously, the parity check matrix of the line component codes is obtained from a pre-configured encoding parameter library. Parity check matrix of column component codes These two matrices are used for checksum calculations and recoding operations in the subsequent List-OSD component decoding process, respectively. Based on the trade-off between decoding performance and complexity, the list capacity used by the row component decoder is set to [value missing]. The list capacity used by the column component decoder is These two parameters directly affect the search range of candidate paths and the decoding accuracy. Furthermore, to avoid infinite loops in the decoding process, a maximum number of iterations is preset. ; and configure key parameters for the soft information update process, including scaling factors for adjusting the weights of external information. Normalization factor used to provide stable soft information output when there is a lack of competing codewords. And a compensation factor used to control the strength of the influence of the size of the pruned path set on the probability contribution. At this point, all necessary decoding parameters have been initialized, laying the foundation for the subsequent iterative soft-output decoding process involving alternating rows and columns.

[0043] This embodiment establishes a clear and complete initial state and constraint framework for the entire iterative decoding process by systematically initializing key decoding parameters, including the channel information matrix, extrinsic information matrix, parity check matrix, list capacity, iteration upper limit, and soft information scaling and normalization factors. This not only ensures that the decoder can operate efficiently from a consistent starting point, avoiding decoding errors or performance fluctuations caused by missing or inconsistent parameters, but also achieves flexible control over decoding complexity and performance by pre-configuring the list capacity and iteration count. This provides a stable and reliable parameter foundation for subsequent row-column alternating soft output iterative decoding, thus supporting the entire decoding scheme's goal of achieving low-latency, high-reliability decoding in URLLC scenarios.

[0044] According to the present invention, an iterative soft-output decoding method for product codes is provided, which performs iterative decoding based on decoding parameters, and alternately decodes the row component codes and column component codes of the product code to be decoded. The method includes: calculating the prior information matrix of the current dimension component code based on the channel log-likelihood ratio matrix and the extrinsic information matrix from another dimension for the current row component code or column component code to be decoded; obtaining the decoded codewords of the corresponding row, a candidate codeword list containing multiple candidate codewords, path metrics corresponding to the multiple candidate codewords, and approximate path metrics information of all pruned paths during the list-level statistical decoding process based on the prior information matrix, the parity check matrix, and the list capacity; calculating and updating the soft-output extrinsic information of the current dimension based on the candidate codeword list and the path metrics using a preset soft-output calculation method; performing early stop verification, and selecting to continue iteration or output the decoding result based on the verification result.

[0045] Specifically, the iterative decoding process is initiated. Taking the decoding of row components first as an example, in each iteration, the prior information for row decoding is first updated based on the extrinsic information from the column components: Then, regarding The row component codes are decoded in parallel. For the decoding of the τ-th row, the row component decoder uses a list-ordered statistical decoding algorithm, whose input is the row prior vector. Parity check matrix and list size The output includes the preliminary decision codeword for that line. A containing A list of candidate codewords, a path metric for each candidate codeword in the list, and approximate path metric information for the pruned path generated during the decoding process.

[0046] Based on the above decoding results, the line component soft output information (i.e., external information) is performed. ) Calculation and Update. This embodiment provides two optional update strategies. The core of the first strategy (SOLOS-I) is: for each bit position, find the optimal competing codeword in the list that differs from the estimated value for that position. Calculate the difference between the path metric of the optimal competing codeword and the estimated codeword, and combine this with prior information to obtain the extrinsic information value for that bit; if no competing codeword exists, then the compensation factor β is used for calculation. The core of the second strategy (SOLOS-II) is: first calculate the posterior soft information approximation value for each bit. This value is calculated by comprehensively considering all paths in the candidate list and the set of paths to be pruned. The contribution is obtained. After obtaining the posterior soft information, the extrinsic information is obtained by subtracting the prior information of that bit. The updated row extrinsic information will be used to update the prior information of the column dimension component codes in the next iteration.

[0047] Next, the column component decoding stage begins. Using the updated row external information, it proceeds in a similar manner ( Update the column prior information matrix. Then, for The individual column component codes are decoded, a process similar to row decoding, using column prior information, column parity check matrix, and list capacity. Similarly, based on the column decoding results, the same strategy as in the row decoding stage is used to calculate and update the external information of the column dimensions.

[0048] The alternating row and column decoding and soft output update process described above constitutes one complete iteration. The iteration continues until a termination condition is met. The termination condition includes: the decoded codeword matrix obtained in the current iteration simultaneously passes parity checks on all rows and columns, or the number of iterations reaches the preset maximum number of iterations. The iteration stops when any termination condition is met, and the final product code decoding result matrix is ​​output.

[0049] This embodiment introduces the list-ordered statistical decoding algorithm as the core component decoder into the iterative decoding framework of product codes, and provides two specific soft output information calculation strategies, achieving substantial improvements over traditional schemes such as SCL-Pyndiah. The first strategy, by introducing a competitive codeword comparison and compensation mechanism, can generate effective soft outputs with lower computational complexity. The second strategy incorporates the contribution of pruned paths during decoding into the soft output calculation, significantly improving the accuracy of the soft output information. More accurate soft output information is transmitted between row and column iterations, more effectively guiding the decoding process to converge in the correct direction, thereby improving the overall error correction performance of the decoder (i.e., achieving a lower frame error rate). Simultaneously, since the list-ordered statistical decoding algorithm itself does not require maintaining a large number of internal path metric states like SCL decoding, the scheme in this embodiment significantly reduces the demand for internal chip storage resources, which is beneficial for reducing chip area and power consumption, and better meets the stringent hardware deployment requirements of ultra-reliable low-latency communication scenarios. Furthermore, the scheme in this embodiment has no restrictions on the specific encoding types of row and column component codes, possessing good versatility.

[0050] According to the product code iterative soft-output decoding method provided by the present invention, the soft-output extrinsic information of the current dimension component is calculated and updated, including: for the i-th codeword position of the current decoding row or column, searching from its candidate codeword list for a codeword whose bit value at the current codeword position is different from the bit value of the optimal candidate codeword, and selecting the codeword with the smallest path metric value as the competing codeword of the i-th codeword of the current decoding row or column; the optimal candidate codeword is the codeword that is determined to be closest to the original transmitted codeword among multiple candidate codewords generated during the decoding process according to a preset reliability metric; if the competing codeword exists, the soft-output extrinsic information of the current dimension component is updated by linear operation based on the current dimension prior information vector, the optimal candidate codeword path metric value and the competing codeword path metric value; if the competing codeword does not exist, the soft-output extrinsic information of the current dimension component is updated according to the normalization factor.

[0051] Specifically, in each iteration, the decoder first determines the dimension to be processed. For example, taking the decoding of the row component code as an example, it determines the dimension based on the channel log-likelihood ratio matrix. The column component extra-information matrix from the previous round of column decoding update ,pass Calculate the prior information matrix of the current row component, where This is a preset scaling factor, which can change with iteration or be a fixed parameter.

[0052] right Each row component code is decoded in parallel or serial mode: each row component code corresponds to a row vector in the prior information matrix. Compare it with the row parity check matrix and preset list capacity A list-based statistical decoder is used as input. This decoder outputs the optimal decoded codeword for each line by using ordered reliability sorting, Gaussian elimination, and list expansion. At the same time, generate containing Candidate codeword list of candidate codewords And the path metric PM corresponding to each candidate codeword.

[0053] Based on the candidate codeword list and path metric, the soft output information of the line component is updated using either the first or second preset strategy. If the first strategy is adopted, for the i-th bit position, from... Search for all that satisfy The candidate codewords are selected, and the one with the smallest path metric value is chosen as the competing codeword; if a competing codeword exists, the prior vector is updated according to the following formula. : In the formula, For the external information to be calculated, i.e., the row component of the τ-th row and the i-th bit, output soft information, PM( ) is the function for calculating path metric values. Let i be the estimated value of the i-th bit in the τ-th row. for Competitive codewords, This is the soft information input for the i-th bit of the τ-th row before the current row is decoded.

[0054] Otherwise, update using the following formula: In the formula, For the normalization factor, (1-2) The symbol adjustment factor is used to ensure the consistency between the external information symbol and the bit decision.

[0055] This embodiment provides a soft information generation method with relatively low computational complexity through the first strategy. External information is directly inferred by utilizing only the path metric difference between the two most competitive candidate codewords in the list decoding results. This mechanism avoids complex probability summation operations, resulting in a simple implementation process. While ensuring the basic iterative gain, it significantly reduces the computational burden and hardware logic complexity of the soft information update stage in each iteration, providing a feasible solution for efficient implementation of decoders in resource-constrained or latency-sensitive scenarios.

[0056] According to the product code iterative soft-output decoding method provided by the present invention, the soft-output extrinsic information of the current dimension is calculated and updated, including: for the i-th codeword position of the current decoding row or column, based on the candidate codeword list and its path metric, and combined with the approximate path metric information and normalization factor of all pruned paths in the list-order statistical decoding process, the posterior probability log-likelihood ratio of the current codeword position is calculated; and the soft-output extrinsic information of the current dimension is updated according to the calculated posterior probability log-likelihood ratio.

[0057] Specifically, if the second strategy is adopted, it is based on the candidate codeword list. and the set of paths that are clipped during the decoding process Calculate the log-likelihood ratio of the posterior probability of bit i. : In the formula, The list of candidate codewords ultimately retained after hierarchical statistical decoding; c is a candidate codeword in the candidate codeword list; c i The value of the candidate codeword c at the i-th bit; PM( ) represents the path metric value corresponding to the candidate codeword c; p represents the set of paths that are pruned during the path expansion process in List-OSD. t The set of paths to be clipped One of the paths in; PM ( ) represents the path to be clipped, p t The corresponding path metric; n is the code length; k is the information bit length; Pr(·) is the prior probability function.

[0058] It can also be approximated by the following hardware-friendly form: In the formula, For list The path metric values ​​of all candidate codewords with the i-th bit being 0 are combined into a single equivalent value after logarithmic-summary-exponential operations. For list The path metric values ​​of all candidate codewords with the i-th bit set to 1 are combined into a single equivalent value after logarithmic-summary-exponential operations. For all clipped paths In this context, the equivalent metric is obtained by weighted merging and normalization of the probability that the i-th bit is estimated to be 0. For all clipped paths In this context, the equivalent metric is obtained by weighted merging and normalization of the probability that the i-th bit is estimated to be 1.

[0059] in, For all paths pruned during path expansion in the List-OSD algorithm, the smallest path metric with bit i=b in the candidate codeword list is... The calculation formula is as follows: In the formula, PM ) represents the path metric value corresponding to the candidate codeword c.

[0060] The minimum path metric value of bit i in the pruned path. The calculation formula is as follows: In the formula, p represents the set of paths that are pruned during the path expansion process in List-OSD. t The set of paths to be clipped One of the paths; PM is a compensation factor used to control the strength of the influence of the size of the pruned path set on the probability contribution; ) represents the path to be clipped, p t The corresponding path metric; n is the code length; k is the information bit length.

[0061] After considering the list and the pruned path, the aggregated path metric weight for bit i with value b. The calculation formula is as follows: In the formula, .

[0062] This leads to soft output. : In the formula, This represents the external information of the i-th bit; Let be the approximate posterior log-likelihood ratio of the i-th bit; This represents the prior information for the i-th bit.

[0063] This embodiment implements a high-precision soft information calculation method through the second strategy. By incorporating the path information pruned during the decoding search process, and using specific approximation and merging rules, the contributions of paths inside and outside the candidate list are jointly integrated into the estimation of posterior soft information. The soft output information calculated in this way more comprehensively reflects the overall search situation of the decoder and has higher accuracy. Using this high-precision soft information for iterative exchange can more effectively guide the decoding process to converge to the correct solution, thereby significantly improving the overall error correction performance of the decoder, especially in scenarios with low signal-to-noise ratio or high reliability requirements.

[0064] According to the product code iterative soft-output decoding method provided by the present invention, early stopping verification is performed, and the method selects to continue iteration or output the decoding result based on the verification result. The method includes: performing parity check calculations in the row and column directions based on the codeword matrix obtained by the current decoding; if all row vectors and all column vectors of the current codeword matrix pass the parity check, the early stopping condition is satisfied, the iteration process is terminated, and the current codeword matrix is ​​output as the final decoding result; if the early stopping condition is not satisfied, it is further determined whether the current iteration count has reached the set maximum iteration count; if the maximum iteration count has been reached, the iteration is terminated, and the current codeword matrix is ​​selected as the decoding result; otherwise, based on the updated current dimension soft-output information and the scaling factor, the prior information matrix of another dimension is calculated, and the component decoding and iteration process of the next dimension continues.

[0065] Specifically, after completing the row soft output update, early stop verification is performed: using the codeword matrix formed by the current row decoding results. , respectively with and Perform line validation Column validation If all validations pass, the iteration terminates and the result is output. Otherwise, if the maximum number of iterations has not been reached... Based on the updated Calculate the column prior information matrix Then, the process switches to the column component decoding process and performs similar operations to complete a full row-column alternation iteration.

[0066] This embodiment effectively improves the processing efficiency of the decoding process and reduces the average decoding latency by introducing an early stopping parity check mechanism. This mechanism performs parity check on the obtained complete codeword matrix immediately after decoding each dimension (row or column). Once the check passes, subsequent unnecessary iterations are immediately terminated. This method avoids continuing invalid calculations when a correct decoding result has been obtained, allowing the decoder to adaptively adjust the number of iterations based on the current channel conditions and decoding progress. This not only reduces wasted computing resources and power consumption, but more importantly, it significantly reduces the decoder's average processing latency, making it better suited to the stringent requirements of ultra-reliable low-latency communication scenarios.

[0067] The present invention will be further illustrated below with specific embodiments.

[0068] The SOLOS product code decoding algorithm proposed in this invention includes the following steps: Step 1. The decoder performs initialization operations, receiving a value of [size missing]. LLR matrix Row and column information matrix Obtain the parity check matrices for the column codes and row codes respectively. and And the list capacity required by the component List-OSD decoder. and Set the maximum number of iterations to .

[0069] Step 2. Start the turbo iterative decoding. You can decode the row components first or the column components first. The following example demonstrates decoding the row components first. In each iteration, the SOLOS decoder first updates the prior information matrix of the row component code based on the information extrinsic to the column components. ,in The pre-set scaling factor.

[0070] Step 3. If there is no time delay requirement, serial decoding can be performed. If there is a time delay requirement, then... The code performs parallel decoding of each row component code using the List-OSD algorithm. The component code of the line, the prior vector of the input line to the List-OSD decoder Parity check matrix List capacity Output the first Line decoding codeword Size is The list of candidate codewords, in the list The path metric PM(c) corresponding to each candidate codeword, the approximate path metric information of all pruned paths during the list-based hierarchical decoding process, and the compensation factor are all present. .

[0071] Step 4. Output external information for line components. Update. Two methods are available. The update formula for the first method (corresponding to the algorithm called SOLOS-I) is as follows: in, for The competing codewords are defined as those that satisfy the following criteria in the candidate list. If the codeword with the smallest PM among the codewords has no competing codewords, then the update method is as follows: in The pre-set normalization factor.

[0072] The second method (the corresponding algorithm is called SOLOS-II) uses the following update formula: The original calculation formula for the first term on the right side of the equals sign is as follows: It can also be approximated by the following hardware-friendly form: in, in, , As a compensation factor, This refers to all paths that were pruned during the path expansion process in the List-OSD algorithm.

[0073] Step 5. Early Stop Verification of Row Component Decoding: If the decoded codeword matrix obtained from the estimated row decoding is... If every row and column passes the parity check, stop the iteration and output the result. This is the decoding result.

[0074] Step 6. Update the prior information matrix of the column component codes based on the extrinsic information output by the row components. .

[0075] Step 7. For The individual component codes are decoded in parallel using the List-OSD algorithm. Serial decoding can also be performed if there are no latency requirements.

[0076] Step 8. Output external information for column components. Update, using the same soft information calculation method as in step 4 (changing row-wise calculation to column-wise calculation).

[0077] Step 9. Early stopping verification of column component decoding: If the estimated decoded codeword matrix obtained from column decoding... If every row and column passes the parity check, stop the iteration and output the result. This is the decoding result.

[0078] Step 10. If the maximum number of iterations is reached, terminate the decoding and output the result. If the result is correct, proceed to step 2 and continue the iteration.

[0079] This invention is the first to use the List-OSD algorithm for decoding product codes, and its advantages over existing technologies are as follows: 1. A List-OSD soft output calculation method considering pruning paths is proposed: Compared with the classic Pyndiah soft output calculation method, this invention fully considers the impact of pruned paths in breadth-first search on soft output, and calculates soft output (Soft-Output from List and Discarded paths, SOLiD) based on candidate codeword list and pruning paths, which can obtain more accurate soft information; 2. Propose a hardware-friendly SOLiD expression: Compared with conventional soft output calculations that rely on exponential operations, this invention only needs to perform addition, comparison, and lookup table operations on the PM naturally generated by the List-OSD algorithm to obtain the soft output, which can reduce the consumption of hardware resources; 3. Two soft-output list ordered statistics (SOLOS) decoding algorithms are proposed: Based on different soft output calculation schemes, two product code decoding algorithms, SOLOS-I and SOLOS-II, are proposed. In terms of soft output calculation method, SOLOS-I uses the classic Pyndiah method, while SOLOS-II uses the proposed SOLiD method.

[0080] 4. Performance, complexity, and storage advantages: The SOLOS-I and SOLOS-II proposed in this invention have a performance advantage of 0.25 to 0.5 dB compared to the classic Chase-Pyndiah, SCL-Pyndiah, and OSD-Pyndiah. Compared to the SCL-Pyndiah scheme used in TPCAS-MIMO, they have lower complexity and can reduce storage requirements by 51.2% to 81.1%.

[0081] The product code iterative soft output decoding device provided by the present invention is described below. The product code iterative soft output decoding device described below can be referred to in correspondence with the product code iterative soft output decoding method described above.

[0082] like Figure 2 The image shows a product code iterative soft-output decoding device provided by the present invention, comprising: Initialization module 210 is used to initialize the decoding parameters of the product code to be decoded; The decoding module 220 is used to perform iterative decoding based on the decoding parameters, alternately decoding the row component code and column component code of the product code to be decoded; wherein, after decoding the component code of any dimension, the soft output information of the current dimension is calculated and updated based on the candidate decoding result generated in this decoding, and the soft output information is used to update the prior information of the component code of another dimension in the next iteration; The decoding output module 230 is used to output the final decoding result of the product code when the iterative decoding meets the termination condition.

[0083] Specifically, the functions of each module in the user account management system provided in this embodiment of the invention correspond one-to-one with the operation flow of each step in the above method-like embodiments, and the achieved effects are also the same. For details, please refer to the above embodiments, and this will not be repeated in this embodiment of the invention.

[0084] Figure 3 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 3 As shown, the electronic device may include a processor 310, a communications interface 320, a memory 330, and a communication bus 340. The processor 310, communications interface 320, and memory 330 communicate with each other via the communication bus 340. The processor 310 can call logical instructions in the memory 330 to execute an iterative soft-output decoding method for product codes. This method includes: initializing the decoding parameters of the product code to be decoded; performing iterative decoding based on the decoding parameters, alternately decoding the row and column component codes of the product code to be decoded; wherein, after decoding any dimension's component code, based on the candidate decoding results generated in this decoding, calculating and updating the soft-output information of the current dimension, the soft-output information being used to update the prior information of the other dimension's component code in the next iteration; and outputting the final decoding result of the product code when the iterative decoding meets the termination condition.

[0085] Furthermore, the logical instructions in the aforementioned memory 330 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0086] On the other hand, the present invention also provides a computer program product, which includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the product code iterative soft-output decoding method provided by the above methods. The method includes: initializing the decoding parameters of the product code to be decoded; performing iterative decoding based on the decoding parameters, alternately decoding the row component codes and column component codes of the product code to be decoded; wherein, after decoding the component code of any dimension, the soft output information of the current dimension is calculated and updated based on the candidate decoding result generated in this decoding, and the soft output information is used to update the prior information of the component code of another dimension in the next iteration; when the iterative decoding meets the termination condition, the final decoding result of the product code is output.

[0087] In another aspect, the present invention also provides a non-transitory computer-readable storage medium storing a computer program thereon. When executed by a processor, the computer program implements the iterative soft-output decoding method for product codes provided by the methods described above. The method includes: initializing decoding parameters of the product code to be decoded; performing iterative decoding based on the decoding parameters, alternately decoding the row component codes and column component codes of the product code to be decoded; wherein, after decoding the component code of any dimension, the soft-output information of the current dimension is calculated and updated based on the candidate decoding results generated in this decoding, and the soft-output information is used to update the prior information of the component code of another dimension in the next iteration; and when the iterative decoding meets the termination condition, the final decoding result of the product code is output.

[0088] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0089] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., including several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods of various embodiments or some parts of embodiments.

[0090] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A product code iterative soft-output decoding method, characterized in that, include: Initialize the decoding parameters of the product code to be decoded; Iterative decoding is performed based on the decoding parameters, and the row component code and column component code of the product code to be decoded are decoded alternately. After decoding the component code of any dimension, the soft output information of the current dimension is calculated and updated based on the candidate decoding result generated in this decoding. The soft output information is used to update the prior information of the component code of another dimension in the next iteration. When the iterative decoding meets the termination condition, the final decoding result of the product code is output.

2. The product code iterative soft-output decoding method according to claim 1, characterized in that, The decoding parameters include: The log-likelihood ratio matrix, the row component extrinsic information matrix and column component extrinsic information matrix initialized to zero, the parity check matrix of the row component code and the parity check matrix of the column component code, the list capacity corresponding to the list-order statistical decoder used for the row and column components, the maximum number of iterations for iterative decoding, and the scaling factor, normalization factor and compensation factor in soft information updates.

3. The product code iterative soft-output decoding method according to claim 2, characterized in that, The iterative decoding based on the decoding parameters, which alternately decodes the row and column components of the product code to be decoded, includes: For the current row component code or column component code to be decoded, calculate the prior information matrix of the current dimension component code based on the channel log-likelihood ratio matrix and the component extra-component information matrix from another dimension. Based on the prior information matrix, the parity check matrix, and the list capacity, the decoded codewords of the corresponding row, the candidate codeword list containing multiple candidate codewords, the path metric values ​​corresponding to the multiple candidate codewords, and the approximate path metric information of all pruned paths in the list-order statistical decoding process are obtained. Based on the candidate codeword list and the path metric, a preset soft output calculation method is used to calculate and update the soft output extrinsic information of the current dimension. Perform early stopping verification, and choose to continue iteration or output the decoding result based on the verification result.

4. The product code iterative soft-output decoding method according to claim 3, characterized in that, Calculate and update the soft output extrinsic information for the current dimensional component, including: For the i-th codeword position in the current decoding row or column, search the candidate codeword list for codewords whose bit value at the current codeword position is different from the bit value of the optimal candidate codeword, and select the codeword with the smallest path metric value as the competing codeword for the i-th codeword in the current decoding row or column; the optimal candidate codeword is the codeword that is determined to be closest to the original transmitted codeword among multiple candidate codewords generated during the decoding process according to a preset reliability metric. If the competing codeword exists, then based on the prior information vector of the current dimension, the optimal candidate codeword path metric, and the competing codeword path metric, the soft output extrinsic information of the current dimension component is updated through linear operations: If there is no competing codeword, the soft output extrinsic information of the current dimension component is updated according to the normalization factor.

5. The product code iterative soft-output decoding method according to claim 3, characterized in that, Calculate and update the soft output extrinsic information for the current dimension, including: For the i-th codeword position in the current decoding row or column, the posterior probability log-likelihood ratio of the current codeword position is calculated based on the candidate codeword list and its path metric, combined with the approximate path metric information of all pruned paths in the list-level statistical decoding process and the compensation factor. The soft output extrinsic information for the current dimension is updated based on the calculated posterior probability log-likelihood ratio.

6. The product code iterative soft-output decoding method according to claim 3, characterized in that, The early stopping verification, and the selection to continue iteration or output the decoding result based on the verification result, includes: Based on the codeword matrix obtained from the current decoding, parity check calculations are performed in both the row and column directions. If all row vectors and all column vectors of the current codeword matrix pass the parity check, then the early stopping condition is met, the iteration process is terminated, and the current codeword matrix is ​​output as the final decoding result. If the early stopping condition is not met, then it is further determined whether the current iteration count has reached the set maximum iteration count; If the maximum number of iterations has been reached, the iteration is terminated and the current codeword matrix is ​​selected as the decoding result; otherwise, the prior information matrix of another dimension is calculated based on the updated current dimension soft output information and the scaling factor, and the component decoding and iteration process of the next dimension continues.

7. A product code iterative soft-output decoding device, characterized in that, include: The initialization module is used to initialize the decoding parameters of the product code to be decoded; The decoding module is used to perform iterative decoding based on the decoding parameters, alternately decoding the row component code and column component code of the product code to be decoded; wherein, after decoding the component code of any dimension, the soft output information of the current dimension is calculated and updated based on the candidate decoding result generated in this decoding, and the soft output information is used to update the prior information of the component code of another dimension in the next iteration. The decoding output module is used to output the final decoding result of the product code when the iterative decoding meets the termination condition.

8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the product code iterative soft-output decoding method as described in any one of claims 1 to 6.

9. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the product code iterative soft-output decoding method as described in any one of claims 1 to 6.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the product code iterative soft-output decoding method as described in any one of claims 1 to 6.