Decoding method of low-density parity check code and terminal
By splitting the low-density parity-check code decoding model into subproblems and solving them in parallel, the problem of high decoding complexity is solved, achieving efficient parallel processing without affecting decoding accuracy.
Patent Information
- Application Number
- CN202511117149.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-11
- Publication Date
- 2025-11-18
AI Technical Summary
Existing low-density parity-check code decoding methods suffer from high algorithm complexity, difficulty in parallel processing, and inability to effectively reduce complexity in probability domain or log-probability domain confidence propagation algorithms.
The decoding model of low-density parity-check codes is split into a first subproblem for optimizing the decoding indicator variable and a second subproblem for reducing the difference between the decoding indicator variable and the channel indicator variable. By solving these two subproblems alternately, the iterative dual variable and repeated projection calculations are reduced, and a distributed optimization framework is used for parallel processing.
It reduces the complexity of the decoding algorithm, improves the convenience of decoding, and ensures the accuracy of the decoding results without relying on iterative dual variables and parity check polyhedral projection.
Smart Images

Figure CN120979466A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of communication, in particular to a decoding method of low-density parity-check code and a terminal. BACKGROUND
[0002] The LDPC decoding process is that the receiving end uses the check relationship defined in advance by the LDPC code, combines the soft information (confidence) contained in the received signal, and calculates the original code word most likely to be sent, i.e. the bit sequence most likely to satisfy all check relationships, through the iterative belief propagation (BP) method, so as to detect and correct the bit errors of the signal occurring in the channel transmission.
[0003] In addition to the traditional belief propagation algorithm, there is also a decoding method based on linear programming (LP) at present. Compared with the BP decoding algorithm, the advantage of the LP decoding algorithm is that it is convenient to use mathematical tools for theoretical analysis and algorithm optimization, and is less affected by the structure of the Tanner graph (the check matrix of the LDPC).
[0004] In addition, in order to improve the decoding efficiency and improve the parallelism of the LP decoding algorithm, the prior art proposes an LP decoding method based on the alternating direction multiplier method. The idea of this method is to rewrite the original LP decoding problem into a new problem, and then use the alternating direction multiplier method (ADMM) to solve it. Using the ADMM framework, the LP decoding algorithm can be processed in parallel and efficiently, but the iterative process of ADMM requires repeated projection operations to the parity polyhedron, which requires a lot of operation time and cannot be parallelized, and how to reduce the complexity of the projection operator is a problem worthy of further study.
[0005] The prior art also proposes a LDPC code decoding framework based on a cooperative optimization framework. The normalized minimum sum decoding algorithm of the LDPC code can be explained as a distributed solution method of an integer optimization problem using the cooperative optimization framework. However, this parallel optimization framework can only explain the performance of the normalized minimum sum algorithm on regular LDPC codes, and cannot be extended to the belief propagation algorithm in the probability domain or the log-probability domain, and also lacks space for further reducing the complexity. SUMMARY
[0006] The technical problem to be solved by the present application is to provide a decoding method of low-density parity-check code and a terminal, which can improve the decoding convenience while ensuring the performance of the decoding result.
[0007] To solve the above technical problems, the technical scheme adopted by the present application is: A decoding method of a low-density parity-check code, comprising the steps of: obtaining signal data transmitted through a channel; establishing a distributed decoding model of the low-density parity-check code, splitting the decoding model into a first sub-problem for optimizing decoding indicator variables of the signal data and a second sub-problem for reducing differences between the decoding indicator variables of the signal data and initial indicator variables of the channel; obtaining solving data by alternately solving the first sub-problem and the second sub-problem, and ending decoding and obtaining decoded and corrected signal data when the solving data meets a preset condition.
[0008] To solve the above technical problems, another technical solution adopted by the present application is: A decoding terminal of a low-density parity-check code, comprising a memory, a processor and a computer program stored in the memory and executable on the processor, and the processor implements each step of the above-mentioned decoding method of a low-density parity-check code when executing the computer program.
[0009] The present application has the advantages that: signal data transmitted through a channel is obtained; a distributed decoding model of the low-density parity-check code is established, the decoding model is split into a first sub-problem for optimizing decoding indicator variables of the signal data and a second sub-problem for reducing differences between the decoding indicator variables of the signal data and initial indicator variables of the channel; solving data is obtained by alternately solving the first sub-problem and the second sub-problem, and decoding is ended and decoded and corrected signal data is obtained when the solving data meets a preset condition. In this way, compared with the mainstream ADMM linear programming decoding method, iteration of dual variables and repeated calculation of projections to the parity-check polyhedron are not needed, thereby reducing the algorithm complexity, improving the decoding convenience, and not affecting the accuracy of the decoding result. BRIEF DESCRIPTION OF DRAWINGS
[0010] Figure 1 A flowchart of a decoding method of a low-density parity-check code according to an embodiment of the present application; Figure 2 A schematic diagram of a decoding terminal of a low-density parity-check code according to an embodiment of the present application; REFERENCE NUMERALS 1. A decoding terminal of a low-density parity-check code; 2. A memory; 3. A processor. DETAILED DESCRIPTION
[0011] To describe the technical content, purposes and effects of the present application in detail, the following will be described in combination with the embodiments and the accompanying drawings.
[0012] Please refer to Figure 1The embodiment of the present application provides a decoding method of low-density parity-check code, comprising the steps of: Obtaining signal data transmitted through a channel; Establishing a distributed decoding model of low-density parity-check code, splitting the decoding model into a first sub-problem for optimizing decoding indicator variables of the signal data and a second sub-problem for reducing the difference between the decoding indicator variables of the signal data and initial indicator variables of the channel; Obtaining solving data by alternately solving the first sub-problem and the second sub-problem, and ending decoding and obtaining signal data corrected through decoding when the solving data meets a preset condition.
[0013] From the above description, the present application has the beneficial effects that: signal data transmitted through a channel is obtained; a distributed decoding model of low-density parity-check code is established, the decoding model is split into a first sub-problem for optimizing decoding indicator variables of the signal data and a second sub-problem for reducing the difference between the decoding indicator variables of the signal data and initial indicator variables of the channel; solving data is obtained by alternately solving the first sub-problem and the second sub-problem, and decoding is ended and signal data corrected through decoding is obtained when the solving data meets a preset condition. In this way, compared with mainstream ADMM linear programming decoding methods, iteration of dual variables and repeated calculation of projections to parity-check polyhedrons are not needed, so that the algorithm complexity is reduced, the decoding convenience is improved, and the correction accuracy of the decoding result is not affected.
[0014] Further, the decoding model of the distributed low-density parity-check code comprises: A separable non-convex integer programming decoding model is established according to the negative log-likelihood ratio of the low-density parity-check code of the signal data; Variable substitution is performed on the separable non-convex integer programming model using a sign function, and a distributed framework is introduced for the separable non-convex integer programming model to obtain a distributed programming decoding model, wherein the distributed programming decoding model comprises a consistency constraint; The consistency constraint of the distributed programming decoding model is converted into a penalty term of an objective function of the distributed programming decoding model, and a distributed decoding model of low-density parity-check code is generated according to the penalty term of the objective function.
[0015] From the above description, variable substitution is performed on the separable non-convex integer programming model using a sign function, and a distributed framework is introduced for the separable non-convex integer programming model to obtain a distributed programming decoding model, which can realize parallel processing of the decoding process, and the consistency constraint is converted into a penalty term of an objective function, which is convenient for subsequent sub-problem solving.
[0016] Furthermore, by alternately solving the first subproblem and the second subproblem to obtain solution data, the decoding ends when the solution data meets a preset condition, including: Solve the second subproblem to obtain the first solution data, solve the first subproblem based on the first solution data to obtain the second solution data, and update the objective function penalty term based on the first solution data and the second solution data; Determine whether the second solution data has reached the convergence condition. If so, end the decoding and obtain the decoding result based on the second solution data. Otherwise, return to repeat the steps of alternately solving the first subproblem and the second subproblem to obtain the solution data.
[0017] As described above, the accuracy of the decoding results is ensured by alternately solving the sub-problems in the decoding model until the solution data reaches the convergence condition.
[0018] Furthermore, when the solved data meets preset conditions, the decoding process ends, which also includes: The constraint values are calculated based on the second solution data. If the constraint values satisfy the preset constraint conditions, the decoding ends and the decoding result is obtained based on the constraint values.
[0019] As described above, constraint values can be calculated using the second solution data. If the constraint values meet the preset constraint conditions, the decoding ends, thereby ending the decoding process earlier and improving the efficiency and convenience of decoding.
[0020] Furthermore, the first subproblem is:
[0021] In the formula, gamma n Indicates the first n The log-likelihood ratio of the decoded data of a low-density parity-check code. Indicates the penalty parameter. k Indicates the iteration number. y j and y n Both represent indicator variables for decoded data. y i,j A copy of the indicator variable representing the decoded data; The second subproblem is:
[0022] In the formula, V i Represents the parity check matrix. i The set of row check matrix elements that are 1.
[0023] Please refer to Figure 2 Another embodiment of the present invention provides a decoding terminal for a low-density parity check code, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the various steps of the decoding method for a low-density parity check code described above.
[0024] The decoding method and terminal for low-density parity-check codes described above in this invention are suitable for improving the decoding convenience of LDPC codes without affecting the accuracy of the decoding result correction. The following is a detailed description of specific implementation methods: Please refer to Figure 1 Embodiment 1 of the present invention is as follows: A decoding method for a low-density parity-check code includes the following steps: S1. Acquire signal data transmitted through the channel.
[0025] S2. Establish a distributed low-density parity-check code decoding model, and decompose the decoding model into a first sub-problem for optimizing the decoding indicator variable of the signal data and a second sub-problem for reducing the difference between the decoding indicator variable of the signal data and the initial indicator variable of the channel.
[0026] S21. Establish a separable non-convex integer programming decoding model based on the negative log-likelihood ratio of the signal data.
[0027] Specifically, the decoding problem of low-density parity-check codes (LDPC codes) is modeled as follows:
[0028] In the formula, x=[ x 1, x 2,…, x N ] T ,in x i Indicates the first i The decoding symbol of the bit, N Indicates the length of the encoded data, γ=[ gamma 1, gamma 2,…, gamma N ] T ,in gamma i For the negative log-likelihood ratio, h j Represents the parity check matrix. j OK, M This indicates the number of verification equations. This problem is a separable non-convex integer programming problem, which cannot be solved using traditional convex optimization or nonlinear programming tools, and cannot be processed in parallel.
[0029] S22, using a sign function to substitute variables of the separable non-convex integer programming model, and introducing a distributed framework for the separable non-convex integer programming model to obtain a distributed programming decoding model, the distributed programming decoding model comprising a consistency constraint.
[0030] In order to solve the problem that the separable non-convex integer programming decoding model cannot be processed in parallel, first, the variable substitution is performed by using the properties of the function, and the original 0-1 integer programming problem is converted into a nonlinear programming problem defined on the real number field. And introduce a distributed optimization framework, rewrite the original problem as:
[0031] In the formula, i denotes the row number of the check matrix, j denotes the column number of the check matrix, n denotes the decoding data sequence number, gamma n denotes the log likelihood ratio of the n th bit, y j and y n both denote the indicator variable of the decoding data, y i,j denotes a copy of the indicator variable of the decoding data, V i denotes the set of check matrix elements of the check matrix, i
[0032] S23, converting the consistency constraint of the distributed programming decoding model into a penalty term of the objective function of the distributed programming decoding model, and generating a distributed decoding model of the low-density parity-check code according to the penalty term of the objective function.
[0033] Specifically, by observing the problem P1, it can be found that the objective function is separable, while the constraint is a non-separable constraint, and the constraint is a consistency constraint. By using the properties of the consistency constraint, the constraint is written in the form of a penalty term of the objective function to obtain:
[0034] In the formula, k denotes the iteration number, denotes the penalty parameter, and the sign function is a sign function.
[0035] S24, splitting the decoding model into a first sub-problem and a second sub-problem.
[0036] Specifically, it can be observed that in this problem, y j ,y i,j} can be solved by using the Block Coordinate Descent (BCD) method respectively. y j} and { y i,j} respectively. The distributed solution of the two sub-problems and the adoption of a proper decision threshold can obtain the decoding result. y j} is:
[0037] For the problem P0, the problem is about y n} can be solved by using the Block Coordinate Descent (BCD) method respectively. y n} is:
[0038] The problem is an unconstrained quadratic programming problem, and the optimal solution can be directly obtained.
[0039] } is: y i,j} is:
[0040] For each check equation i} is:
[0041] wherein, is the negative log-likelihood ratio, is the received symbol, and Pr represents the probability of calculating the occurrence of an event.
[0042] S3, by alternately solving the first sub-problem and the second sub-problem, obtaining the solving data, when the solving data meets a preset condition, ending the decoding and obtaining the decoded and corrected signal data.
[0043] S31, solving the second sub-problem to obtain first solving data, solving the first sub-problem according to the first solving value to obtain second solving data, and updating the objective function penalty term according to the first solving data and the second solving data.
[0044] S32, judging whether the second solving data reaches a convergence condition, if yes, ending the decoding, and obtaining the decoding result according to the second solving data, otherwise, returning to repeat the step of alternately solving the first sub-problem and the second sub-problem to obtain the solving data.
[0045] Specifically, P 1,i This is a nonlinear equality-constrained least squares problem. We can first smooth the sign function (e.g., using a sigmoid function approximation), and then use numerical optimization methods such as the projected gradient method or sequential quadratic programming (SQP) to obtain a feasible stationary point. By alternately solving problems P0 and P1, we can obtain a stationary point of the original problem; the solution to the stationary point... This can be viewed as a relaxed solution to the decoding problem P0, through... Using 0.5 as the decision threshold yields the desired decoding result. The advantage of using distributed optimization tools lies in improving the parallel execution efficiency of the algorithm and facilitating implementation in embedded device chips such as FPGAs. Furthermore, after problem decomposition, the complexity of the problem to be solved in each iteration is lower.
[0046] A hard decision can be adopted:
[0047] As an indicator variable for decoded data y i initial value, penalty parameter ; Then, the subproblem P corresponding to each verification equation is solved in parallel. 1,i ,get ,according to Solve problem P0 to obtain ;according to and Update penalty parameters:
[0048] In the formula, mu Indicates the preset step size; Furthermore, the iteration number k = k +1; Returns to the steps taken to solve the subproblems corresponding to each check equation in parallel, until... convergence; After convergence, soft decision is used as the decoding result:
[0049] In the formula, x j This represents the result of decoding 0-1 integers. y j This indicates the result of the indicator variable that has converged.
[0050] In some embodiments, step S32 can further comprise: calculating a constraint value according to the second solving data, and ending the decoding if the constraint value meets a preset constraint condition, and obtaining a decoding result according to the constraint value.
[0051] That is, returning to execute the step of solving the sub-problems corresponding to each check equation in parallel until converges, which can be replaced by taking the following formula as the judgment:
[0052] and checking the constraint H T x=0(mod2) at each step of iteration, H being the check matrix. If the constraint is met, the loop is jumped out in advance to x j as the decoding result.
[0053] Please refer to Figure 2 Embodiment two of the present application is: A decoding terminal 1 of a low-density parity-check code, comprising a memory 2, a processor 3, and a computer program stored in the memory 2 and executable on the processor 3, wherein the processor 3 implements each step of the decoding method of the low-density parity-check code of embodiment one when executing the computer program.
[0054] In summary, the present application provides a decoding method and terminal of a low-density parity-check code, taking signal data transmitted through a channel; establishing a distributed decoding model of a low-density parity-check code, splitting the decoding model into a first sub-problem for optimizing the decoding indicator variables of the signal data and a second sub-problem for reducing the difference between the decoding indicator variables of the signal data and the initial indicator variables of the channel; obtaining solving data by alternately solving the first sub-problem and the second sub-problem, and ending the decoding and obtaining the signal data corrected by decoding when the solving data meets a preset condition. In this way, compared with the mainstream ADMM linear programming decoding method, the iteration of dual variables and the repeated calculation of the projection to the check polyhedron are not needed, thereby reducing the algorithm complexity, improving the decoding convenience, and not affecting the correction accuracy of the decoding result.
[0055] The above description is only an embodiment of the present application, and does not limit the patent range of the present application, and any equivalent transformation or direct or indirect application in the related technical field using the content of the specification and drawings of the present application is also included in the patent protection range of the present application.
Claims
1. A decoding method for a low-density parity-check code, characterized in that, Including the following steps: Acquire signal data transmitted through the channel; A distributed low-density parity-check code decoding model is established, and the decoding model is decomposed into a first subproblem for optimizing the decoding indicator variable of the signal data and a second subproblem for reducing the difference between the decoding indicator variable of the signal data and the initial indicator variable of the channel. The solution data is obtained by alternately solving the first subproblem and the second subproblem. When the solution data meets the preset conditions, the decoding ends and the signal data after decoding correction is obtained.
2. The decoding method for a low-density parity-check code according to claim 1, characterized in that, Establish a distributed low-density parity-check code decoding model, including: A separable non-convex integer programming decoding model is established based on the negative log-likelihood ratio of the low-density parity-check code of the signal data. The variable substitution is performed on the separable non-convex integer programming model using a symbolic function, and a distributed framework is introduced into the separable non-convex integer programming model to obtain a distributed programming decoding model, which includes consistency constraints. The consistency constraints of the distributed planning decoding model are transformed into the objective function penalty term of the distributed planning decoding model, and a distributed low-density parity check code decoding model is generated based on the objective function penalty term.
3. The decoding method for a low-density parity-check code according to claim 2, characterized in that, Decoding is completed by alternately solving the first subproblem and the second subproblem to obtain solution data. The decoding process ends when the solution data meets preset conditions. Solve the second subproblem to obtain the first solution data, solve the first subproblem based on the first solution data to obtain the second solution data, and update the objective function penalty term based on the first solution data and the second solution data; Determine whether the second solution data has reached the convergence condition. If so, end the decoding and obtain the decoding result based on the second solution data. Otherwise, return to repeat the steps of alternately solving the first subproblem and the second subproblem to obtain the solution data.
4. The decoding method for a low-density parity-check code according to claim 3, characterized in that, When the solved data meets the preset conditions, the decoding ends, and the process also includes: The constraint values are calculated based on the second solution data. If the constraint values satisfy the preset constraint conditions, the decoding ends and the decoding result is obtained based on the constraint values.
5. The decoding method for a low-density parity-check code according to claim 1, characterized in that, The first subproblem is: In the formula, γ n Indicates the first n The log-likelihood ratio of the decoded data of a low-density parity-check code. Indicates the penalty parameter. k Indicates the iteration number. y j and y n Both represent indicator variables for decoded data. y i,j A copy of the indicator variable representing the decoded data; The second subproblem is: In the formula, V i Represents the parity check matrix. i The set of row check matrix elements that are 1.
6. A decoding terminal for a low-density parity-check code, 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 performs the following steps: Acquire signal data transmitted through the channel; A distributed low-density parity-check code decoding model is established, and the decoding model is decomposed into a first subproblem for optimizing the decoding indicator variable of the signal data and a second subproblem for reducing the difference between the decoding indicator variable of the signal data and the initial indicator variable of the channel. The solution data is obtained by alternately solving the first subproblem and the second subproblem. When the solution data meets the preset conditions, the decoding ends and the signal data after decoding correction is obtained.
7. A decoding terminal for a low-density parity-check code according to claim 6, characterized in that, Establish a distributed low-density parity-check code decoding model, including: A separable non-convex integer programming decoding model is established based on the negative log-likelihood ratio of the low-density parity-check code of the signal data. The variable substitution is performed on the separable non-convex integer programming model using a symbolic function, and a distributed framework is introduced into the separable non-convex integer programming model to obtain a distributed programming decoding model, which includes consistency constraints. The consistency constraints of the distributed planning decoding model are transformed into the objective function penalty term of the distributed planning decoding model, and a distributed low-density parity check code decoding model is generated based on the objective function penalty term.
8. A decoding terminal for a low-density parity-check code according to claim 7, characterized in that, Decoding is completed by alternately solving the first subproblem and the second subproblem to obtain solution data. The decoding process ends when the solution data meets preset conditions. Solve the second subproblem to obtain the first solution data, solve the first subproblem based on the first solution data to obtain the second solution data, and update the objective function penalty term based on the first solution data and the second solution data; Determine whether the second solution data has reached the convergence condition. If so, end the decoding and obtain the decoding result based on the second solution data. Otherwise, return to repeat the steps of alternately solving the first subproblem and the second subproblem to obtain the solution data.
9. A decoding terminal for a low-density parity-check code according to claim 8, characterized in that, When the solved data meets the preset conditions, the decoding ends, and the process also includes: The constraint values are calculated based on the second solution data. If the constraint values satisfy the preset constraint conditions, the decoding ends and the decoding result is obtained based on the constraint values.
10. A decoding terminal for a low-density parity-check code according to claim 6, characterized in that, The first subproblem is: In the formula, γ n Indicates the first n The log-likelihood ratio of the decoded data of a low-density parity-check code. Indicates the penalty parameter. k Indicates the iteration number. y j and y n Both represent indicator variables for decoded data. y i,j A copy of the indicator variable representing the decoded data; The second subproblem is: In the formula, V i Represents the parity check matrix. i The set of row check matrix elements that are 1.