Self-adaptive SPA decoding method for low density parity check LDPC code decoding
By dynamically selecting a simplified version or standard SPA algorithm based on the signal-to-noise ratio in LDPC coding, the problem of high computational complexity under low signal-to-noise ratio is solved, and an adaptive decoding method that optimizes the decoding performance and efficiency under different channel conditions is realized.
Patent Information
- Application Number
- CN202510282447.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-11
- Publication Date
- 2025-06-27
AI Technical Summary
The existing LDPC code decoding algorithm has high computational complexity under low signal-to-noise ratio conditions, resulting in long decoding time, increasing system delay and power consumption, and simplified algorithms may sacrifice decoding accuracy, resulting in an increase in bit error rate.
An adaptive SPA decoding method is proposed to dynamically select the decoding strategy according to the signal-to-noise ratio. When the signal-to-noise ratio is lower than 0.4dB, a simplified version of the SPA algorithm is used to reduce the number of check nodes updated during iteration and reduce the calculation complexity; when the signal-to-noise ratio is higher than 0.4dB, a standard SPA algorithm is used to ensure decoding accuracy.
On the premise of ensuring decoding accuracy, the calculation complexity under low signal-to-noise ratio is significantly reduced and the decoding speed is improved. It is especially suitable for variable communication channel environments.
Smart Images

Figure CN120223094A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of signal processing, and relates to an adaptive SPA decoding method for decoding low-density parity-check (LDPC) codes. Background Art
[0002] Low-Density Parity-Check (LDPC) codes are a class of error-correcting codes widely used in modern communication systems. LDPC codes have error performance close to the Shannon limit, and thus are widely used in many high-performance communication systems, such as wireless communication, satellite communication, digital video broadcasting, etc. The decoding process of LDPC codes is usually carried out by iterative algorithms, and among them, the Sum-Product Algorithm (SPA) is a classical decoding algorithm. The SPA algorithm is based on the idea of information propagation, and uses the message exchange between check nodes and variable nodes to gradually correct the errors in transmission, thereby improving the reliability of decoding.
[0003] However, the computational complexity of the SPA algorithm is relatively high. Especially under low signal-to-noise ratio (SNR) conditions, the number of iterations and the computational amount of the algorithm increase significantly, which poses challenges to the LDPC decoding process in real-time communication. Therefore, how to reduce the computational complexity and improve the decoding efficiency, especially under low SNR, has become an important research direction in the current LDPC code decoding technology.
[0004] LDPC (Low-Density Parity-Check) codes are an important class of error-correcting codes, and have been widely used in modern communication systems due to their performance close to the Shannon limit. The decoding of LDPC codes is usually completed by graph algorithms, and the most classical decoding algorithm is the Sum-Product Algorithm (SPA). The SPA algorithm gradually approaches the correct codeword by the transfer and update of information between variable nodes and check nodes.
[0005] With the continuous expansion of the application of LDPC codes, researchers have proposed a variety of different decoding algorithms to improve the decoding efficiency and reduce the computational complexity. In addition to the standard SPA algorithm, there are also variants such as the Min-Sum (MS) algorithm, the Normalized Min-Sum (NMS) algorithm, the Offset Min-Sum (OMS) algorithm, etc. These algorithms make different trade-offs between performance and complexity. The MS algorithm reduces the computational amount by simplifying the information update process of check nodes, but may sacrifice some decoding performance; the NMS algorithm normalizes the MS algorithm to balance performance and complexity; the OMS algorithm adds a bias term on the basis of NMS to further optimize the balance between the bit error rate and complexity.
[0006] Although these algorithms have achieved remarkable results in practical applications, in a low signal-to-noise ratio (SNR) environment, common LDPC decoding algorithms still face the problem of high computational complexity. Especially in the case of multiple iterations, the standard SPA algorithm will lead to a long decoding time at low SNR, increasing the system delay and power consumption. In addition, some simplified algorithms can reduce the complexity, but may sacrifice the decoding accuracy, resulting in an increase in the bit error rate.
[0007] Therefore, how to further optimize the decoding speed while ensuring the decoding performance, especially dynamically selecting an appropriate decoding strategy under different SNR conditions, remains an important direction in LDPC code decoding research. Summary of the Invention
[0008] In view of this, the purpose of the present invention is to provide an adaptive SPA decoding method for low-density parity-check (LDPC) code decoding, aiming to optimize the decoding performance of LDPC codes and reduce the computational complexity by adaptively selecting a decoding strategy according to the signal-to-noise ratio (SNR). This method effectively meets the decoding requirements under different channel conditions by dynamically selecting a decoding strategy, improves the decoding speed while ensuring decoding accuracy, and is particularly suitable for a changing communication channel environment.
[0009] To achieve the above object, the present invention provides the following technical solutions:
[0010] First, the algorithm determines the decoding strategy according to the SNR of the channel. When the SNR is lower than a preset threshold (such as 0.4 dB), a simplified version of the SPA algorithm is adopted; when the SNR is higher than this threshold, the standard SPA algorithm is adopted. By selecting different decoding strategies according to the SNR, the system can reduce the computational complexity at low SNR and improve the decoding accuracy at high SNR.
[0011] In the case of low SNR, the simplified SPA decoding algorithm reduces the computational amount by reducing the number of check nodes to be updated in each iteration. The specific steps include: first calculating the residual value of each check node, where the residual reflects the error degree between the check node and the corresponding variable node; then sorting the residual values from large to small and selecting the top 15% of the check nodes for update. In this way, only part of the check nodes participate in the update, thus significantly reducing the content to be calculated in each iteration and reducing the computational complexity. During the update process, still based on the update rule of the standard SPA, the updated information is passed to the variable nodes. The updated variable nodes then calculate their log-likelihood ratio (LLR) values according to the new information and perform a hard decision based on the LLR values to obtain the decoding result. Finally, it is judged whether the decoding is successful through the checksum.
[0012] When the signal-to-noise ratio is relatively high, the standard SPA algorithm can fully utilize its high-precision advantage and avoid the errors that may occur in the simplified SPA. The steps of the standard SPA are similar to those of the simplified SPA, but all check nodes participate in the update during this process. Each check node updates its message and passes the updated message to the variable nodes. The variable nodes update their LLR values according to the messages received from the check nodes and perform hard decisions to obtain the decoding result. Finally, check whether the checksum is zero, and if the condition is met, it is determined that the decoding is successful.
[0013] During the entire decoding process, the algorithm dynamically selects whether to use the simplified SPA or the standard SPA for decoding according to the real-time signal-to-noise ratio. When the signal-to-noise ratio changes, the system can automatically switch the decoding strategy to ensure optimal decoding performance under various channel conditions.
[0014] The beneficial effects of the present invention are as follows: The adaptive LDPC decoding method of the present invention optimizes the performance of the traditional SPA algorithm under different channel conditions by dynamically selecting the decoding strategy according to the signal-to-noise ratio. On the premise of ensuring decoding accuracy, this method significantly reduces the computational complexity in the case of low signal-to-noise ratio, improves the decoding speed, especially in the scenario of low signal-to-noise ratio, it can reduce unnecessary calculations and improve the computational efficiency. At the same time, when the signal-to-noise ratio is relatively high, the standard SPA algorithm can fully utilize its precision advantage to ensure the accuracy of the decoding result. Therefore, the present invention is applicable to LDPC decoding tasks that require low latency, high efficiency, and accuracy in various communication systems, especially for high-efficiency decoding tasks under complex channel conditions.
[0015] Other advantages, objectives, and features of the present invention will be described to some extent in the subsequent specification, and to some extent, they will be obvious to those skilled in the art based on the study of the following text, or can be taught from the practice of the present invention. The objectives and other advantages of the present invention can be realized and obtained through the following specification. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] In order to make the objectives, technical solutions, and advantages of the present invention clearer, the present invention will be described in detail preferably with reference to the accompanying drawings, where:
[0017] Figure 1 is the flowchart of the adaptive SPA decoding method for decoding low-density parity-check (LDPC) codes according to the present invention;
[0018] Figure 2 is the flowchart of the simplified SPA algorithm according to the present invention;
[0019] Figure 3 is the flowchart of the standard SPA algorithm according to the present invention;
[0020] Figure 4It is the flowchart of residual calculation inside the simplified SPA algorithm of the present invention;
[0021] Figure 5 It is the comparison diagram of bit error rate curves of the method proposed by the present invention, the independent simplified SPA algorithm, and the standard SPA algorithm at various signal-to-noise ratios;
[0022] Figure 6 It is the comparison diagram of average time per iteration curves of the method proposed by the present invention, the independent simplified SPA algorithm, and the standard SPA algorithm at various signal-to-noise ratios. Specific implementation manners
[0023] The following uses specific specific examples to illustrate the implementation manners of the present invention. Those skilled in the art can easily understand other advantages and effects of the present invention from the content disclosed in this specification. The present invention can also be implemented or applied through other different specific implementation manners. Various details in this specification can also be modified or changed based on different viewpoints and applications without departing from the spirit of the present invention. It should be noted that the diagrams provided in the following embodiments only illustrate the basic concept of the present invention in a schematic manner. Without conflict, the following embodiments and the features in the embodiments can be combined with each other.
[0024] Among them, the attached drawings are only used for exemplary illustration, showing only schematic diagrams, rather than physical diagrams, and cannot be understood as a limitation to the present invention; in order to better illustrate the embodiments of the present invention, some components in the attached drawings will be omitted, enlarged or reduced, and do not represent the dimensions of actual products; for those skilled in the art, it is understandable that some well-known structures and their descriptions in the attached drawings may be omitted.
[0025] In the attached drawings of the embodiments of the present invention, the same or similar reference numerals correspond to the same or similar components; in the description of the present invention, it should be understood that if there are terms such as "upper", "lower", "left", "right", "front", "rear", etc. indicating the orientation or positional relationship, it is based on the orientation or positional relationship shown in the attached drawings. It is only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation. Therefore, the terms describing the positional relationship in the attached drawings are only used for exemplary illustration and cannot be understood as a limitation to the present invention. For those of ordinary skill in the art, the specific meanings of the above terms can be understood according to specific situations.
[0026] Figure 1 It is the flowchart of the adaptive SPA decoding algorithm of the present invention. This algorithm can selectively apply the conventional SPA decoding algorithm or the simplified SPA decoding algorithm according to the different signal-to-noise ratios (SNRs) to improve the decoding efficiency and accuracy.
[0027] First, perform the signal-to-noise ratio (SNR) judgment. Measure the SNR of the current communication environment and compare it with the preset threshold of 0.4 dB. If the SNR is less than 0.4 dB, the conventional SPA decoding algorithm is adopted. This algorithm includes the following steps:
[0028] Initialize the parameters of the decoding algorithm to ensure that all variables and nodes are in their initial states. Then, perform the message passing from the check nodes to the variable nodes and from the variable nodes to the check nodes. This process involves the internal information exchange of the algorithm for subsequent checksum calculation. Next, calculate and check the checksum of the check nodes to ensure the consistency and correctness of the data. If the checksum does not meet the preset conditions, repeat the message passing and checksum checking steps until the conditions are met. Finally, when the checksum meets the conditions, output the final decoding result.
[0029] If the SNR is greater than 0.4 dB, the simplified SPA decoding algorithm is adopted. This algorithm also starts with initialization and then performs the message passing from the check nodes to the variable nodes and from the variable nodes to the check nodes. Next, introduce the residual calculation, calculate the residual of each check node, sort them from large to small according to the residual values, and select the top 15% of the check nodes to participate in the subsequent message passing. This step aims to reduce unnecessary calculations and improve the efficiency of the algorithm. Then, calculate and check the checksum of the selected check nodes. If the checksum does not meet the preset conditions, repeat the residual calculation, node selection, message passing, and checksum checking steps until the conditions are met. Finally, when the checksum meets the conditions, output the final decoding result.
[0030] The adaptive SPA decoding algorithm of the present invention effectively reduces the number of message passing by introducing the residual calculation and node selection mechanism under high SNR conditions, thereby improving the decoding efficiency. At the same time, by adaptively selecting the decoding algorithm, it ensures the best decoding performance under different SNR conditions.
[0031] When implementing the present invention, the specific parameters of the residual calculation and node selection can be adjusted according to the SNR characteristics of different communication environments to further optimize the decoding performance. In addition, the method of the present invention can be applied to various communication systems, including but not limited to wireless communication, satellite communication, and optical fiber communication, etc.
[0032] Figure 2 This is the flowchart of the simplified SPA algorithm of the present invention, which starts with the initialization phase to prepare the necessary parameters and environment settings for the operation of the algorithm. Then, the algorithm receives the parity-check matrix, which is a key component in the decoding process for subsequent calculations and decisions.
[0033] Subsequently, the algorithm receives the input signal and calculates the statistical characteristics of the signal using the Log - Likelihood Ratio (LLR) formula. The formula for LLR is LLR(x) = log(P(x = 1) / P(x = 0)), where P(x = 1) and P(x = 0) represent the probabilities that the input signal is 1 and 0 respectively. This step is crucial for determining the reliability of the signal.
[0034] After calculating the LLR, the algorithm evaluates the residuals of the check nodes. The residual is an indicator that measures the difference between the state of the check node and the expected state, and it plays an important role in determining which nodes need further processing.
[0035] Next, the algorithm sorts the check nodes and selects the top 15% of the check nodes. This step is to optimize the efficiency of the algorithm. By concentrating on processing the nodes that are most likely to affect the decoding result, the overall decoding performance is improved.
[0036] After sorting, the algorithm performs the message - passing process, including message - passing from check nodes to variable nodes and from variable nodes to check nodes. This process involves information exchange within the algorithm and is the core computational step in the decoding process.
[0037] After message - passing, the algorithm makes a hard decision for the end of the iteration, that is, makes a final decoding decision based on the current calculation results. Finally, the algorithm checks the bit error rate and evaluates the accuracy of the decoding result to ensure the effectiveness of the decoding process.
[0038] The simplified SPA algorithm of the present invention significantly improves the decoding accuracy and efficiency through precise LLR calculation, effective node selection, and optimized message - passing. This method is particularly suitable for communication systems that require high reliability and high efficiency, especially in scenarios where resources are limited or there are high requirements for computational efficiency.
[0039] Figure 3 This is the flowchart of the standard SPA decoding algorithm of the present invention. The execution of the algorithm starts from the initialization step, which is to prepare all the parameters and environmental settings required in the decoding process to ensure the smooth progress of the algorithm.
[0040] Immediately afterwards, the algorithm receives the parity - check matrix, which is the basis in the decoding process and contains the necessary information for error detection and correction.
[0041] Then, the algorithm receives the input signal and calculates the statistical characteristics of the signal by applying the Log - Likelihood Ratio (LLR) formula. The formula for LLR is LLR(x) = log(P(x = 1) / P(x = 0)), and this calculation step is crucial for evaluating the reliability of the signal and making subsequent decoding decisions.
[0042] After the LLR calculation is completed, the algorithm enters the message passing phase. First, message passing from the check nodes to the variable nodes is performed. This step updates the information of the variable nodes according to the parity check matrix and the LLR. Subsequently, the algorithm executes message passing from the variable nodes to the check nodes, and in this step, the variable nodes update the status of the check nodes based on the received information.
[0043] After the message passing is completed, the algorithm makes a hard decision for the iteration to end. In this step, the algorithm makes a final decoding decision based on the current message passing result to determine the final state of the signal.
[0044] Finally, the algorithm checks the bit error rate. This is a crucial step in evaluating the accuracy of the decoding result to ensure the effectiveness and reliability of the decoding process.
[0045] The standard version SPA algorithm of the present invention provides high-accuracy decoding performance through precise LLR calculation and an effective message passing mechanism. This method is applicable to application scenarios with high requirements for decoding accuracy and can provide stable performance while ensuring the decoding quality.
[0046] Figure 4 This is the residual calculation process in the simplified version SPA algorithm of the present invention. The specific steps are as follows: First, the algorithm initializes the LLR values. This step is to prepare the initial values of the log-likelihood ratio (LLR), which is a key indicator for measuring the reliability of the input signal.
[0047] Next, the algorithm calculates the residual of each check node. The residual is an indicator for measuring the information difference between the check node and the variable nodes connected to it. By calculating the residual, the algorithm can identify which check nodes need further processing.
[0048] Then, the algorithm selects the check nodes that need to be updated according to the residual values. This step involves evaluating the residuals of all check nodes and selecting those with larger residual values because these nodes may contain more error information and need to be processed preferentially.
[0049] Finally, the algorithm updates the information of the selected check nodes. This step adjusts the status of the check nodes according to the newly calculated residual values to improve the decoding accuracy.
[0050] Through this residual calculation process, the simplified version SPA algorithm can effectively concentrate resources to process the check nodes most likely to make mistakes, thereby reducing the computational amount and improving the efficiency of the algorithm while maintaining the decoding performance. This method is particularly applicable to occasions with limited computing resources or in application scenarios where fast decoding is required.
[0051] Figure 5It is a comparison graph of the bit error rate curves of the method proposed by the present invention, an independent simplified version of the SPA algorithm, and the standard SPA algorithm at various signal-to-noise ratios. The adaptive SPA algorithm of the present invention exhibits excellent bit error rate (BER) performance under all tested signal-to-noise ratio (Eb / N0) conditions. Under low signal-to-noise ratio conditions, such as when Eb / N0 is -2 dB, the adaptive SPA algorithm can achieve a relatively low BER, indicating its robustness under harsh channel conditions. As the signal-to-noise ratio increases, the BER of the adaptive SPA algorithm drops rapidly, and its performance advantage is more obvious especially under high signal-to-noise ratio conditions.
[0052] In contrast, the simplified version of the SPA algorithm has similar performance to the adaptive SPA algorithm under low signal-to-noise ratio conditions, but under high signal-to-noise ratio conditions, its BER is significantly higher than that of the adaptive SPA algorithm. This indicates that while the simplified version of the SPA algorithm improves computational efficiency, it sacrifices some decoding performance.
[0053] The performance of the standard SPA algorithm lies between that of the adaptive SPA algorithm and the simplified version of the SPA algorithm. Under all tested signal-to-noise ratio conditions, the BER of the standard SPA algorithm is higher than that of the adaptive SPA algorithm, and the performance gap is more significant especially under high signal-to-noise ratio conditions.
[0054] Through these comparisons, we can conclude that the adaptive SPA algorithm of the present invention can provide excellent bit error rate performance under different signal-to-noise ratio conditions, especially under high signal-to-noise ratio conditions, where its performance advantage is more prominent. This indicates that the adaptive SPA algorithm can provide more reliable data transmission quality in practical applications and is an efficient and accurate decoding solution.
[0055] Figure 6 It is a comparison graph of the average time per iteration curves of the method proposed by the present invention, an independent simplified version of the SPA algorithm, and the standard SPA algorithm at various signal-to-noise ratios. In the adaptive SPA algorithm of the present invention, we adopted different strategies to optimize the iteration time according to different signal-to-noise ratios (Eb / N0). Under the condition that the signal-to-noise ratio is lower than 0.4 dB, the adaptive SPA algorithm and the simplified version of the SPA algorithm perform similarly because in a low signal-to-noise ratio environment, the residual calculation and sorting strategy of the simplified version of the SPA algorithm can effectively reduce the iteration time while maintaining relatively high decoding performance.
[0056] However, when the signal-to-noise ratio reaches 0.4 dB and above, the adaptive SPA algorithm switches to the strategy of the standard SPA algorithm. This shift is because under higher signal-to-noise ratio conditions, the standard SPA algorithm can achieve a shorter average iteration time due to its more direct message passing mechanism. Although the simplified SPA algorithm has advantages at low signal-to-noise ratios, the complexity of its residual calculation and sorting may lead to additional time overhead at high signal-to-noise ratios. Therefore, the adaptive SPA algorithm adopts the standard SPA algorithm at high signal-to-noise ratios to take advantage of its efficiency in these conditions.
[0057] As can be seen from the graph, the simplified SPA algorithm maintains a low average iteration time under all tested signal-to-noise ratio conditions, indicating its advantage in computational efficiency. The standard SPA algorithm has a high average iteration time under low signal-to-noise ratio conditions, but its iteration time decreases significantly as the signal-to-noise ratio increases, showing its efficiency under high signal-to-noise ratio conditions.
[0058] The adaptive SPA algorithm of the present invention achieves the goal of maintaining a low iteration time while also adapting to the requirements of different signal-to-noise ratio environments by selecting the most suitable algorithm strategy under different signal-to-noise ratio conditions. This adaptability enables the algorithm to provide good performance in various communication environments, especially in application scenarios where it is necessary to balance computational efficiency and decoding performance. Through this strategy, the adaptive SPA algorithm can dynamically adjust the algorithm complexity according to the change of the signal-to-noise ratio while ensuring the decoding performance, thereby achieving the optimal iteration time under different communication conditions, which is of great significance for improving the overall efficiency and performance of the communication system.
[0059] 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 preferred embodiments, those of ordinary skill in the art should understand that the technical solutions of the present invention can be modified or equivalently replaced without departing from the spirit and scope of the present technical solution, and they should all be covered within the scope of the claims of the present invention.
Claims
1. An adaptive SPA decoding method for low-density parity check LDPC code decoding, characterized in that: The following steps are involved: According to the received noisy signal, the log-likelihood ratio (LLR) value of each variable node is calculated; Obtain the signal-to-noise ratio (SNR) of the current channel, and select a decoding strategy based on the relationship between the SNR and a preset threshold: When the SNR is less than a preset threshold, a simplified SPA decoding strategy is executed, including: calculating a residual value of each check node, selecting a preset proportion of check nodes for updating based on the residual value, and updating the LLR value of the variable node by iteratively passing messages; When the SNR is greater than or equal to the preset threshold, a standard SPA decoding strategy is executed, including: all check nodes participate in the update, the LLR values of the variable nodes are updated by iterative message transmission, and the residual calculation and sorting process are omitted; In each iteration, a hard decision is made based on the updated LLR value and a checksum is calculated; If the checksum meets the conditions, the decoding is considered successful, otherwise the iteration is repeated until the maximum number of iterations is reached or the decoding is successful.
2. The adaptive SPA decoding method for low-density parity check LDPC code decoding according to claim 1, characterized in that: The residual selection process in the simplified SPA decoding strategy specifically includes: Calculate the residual value of each check node, where the residual value is the absolute value of the current checksum of the check node; Sort the check nodes by residual value from large to small, and select the top 15% of the check nodes to participate in the update.
3. The adaptive SPA decoding method for low-density parity check LDPC code decoding according to claim 1, characterized in that: The preset threshold is 0.4dB.
4. The adaptive SPA decoding method for low-density parity check LDPC code decoding according to claim 1, characterized in that: In the standard SPA decoding strategy, the message transmission process between the check node and the variable node follows the full-node update rule of the standard SPA algorithm.
5. The adaptive SPA decoding method for low-density parity check LDPC code decoding according to claim 1, characterized in that: The method is implemented in Python and supports dynamic adjustment of the number of iterations and the residual update ratio.
6. The adaptive SPA decoding method for low-density parity check LDPC code decoding according to claim 1, characterized in that: The determination condition of the hard decision is the sign of the LLR value of the variable node, a positive sign corresponds to bit 1, and a negative sign corresponds to bit 0.
7. The adaptive SPA decoding method for low-density parity check LDPC code decoding according to claim 1, characterized in that: The checksum determination condition is whether the calculation results of all check nodes are zero.
8. The adaptive SPA decoding method for low-density parity check LDPC code decoding according to claim 1, characterized in that: The preset ratio of check nodes ranges from 10% to 20%.
9. The adaptive SPA decoding method for low-density parity check LDPC code decoding according to claim 1, characterized in that: The updating rules of message passing in the iterative process include: message passing from check nodes to variable nodes adopts the minimization approximation method of the sum-product algorithm SPA.
10. The adaptive SPA decoding method for low-density parity check LDPC code decoding according to claim 1, characterized in that: The method also includes real-time monitoring of the channel SNR and automatically switching the decoding strategy according to the dynamic change of the SNR.