An adaptive LDPC decoding method based on node reliability
By evaluating the reliability of nodes in the LDPC decoding process, dynamically adjusting the decoding strategy, and using different algorithms to handle nodes with different reliability levels, the problem of inaccurate node reliability assessment is solved, thereby improving decoding efficiency and accuracy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- GUILIN UNIV OF ELECTRONIC TECH
- Filing Date
- 2024-11-11
- Publication Date
- 2026-06-09
Smart Images

Figure CN119602811B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of channel coding and decoding technology, and more specifically, to an adaptive LDPC decoding method based on node reliability. Background Technology
[0002] Low-density parity-check (LDPC) codes were first discovered in 1962 but were quickly overlooked until their rediscovery in 1995. When using the belief propagation (BP) decoding algorithm, LDPC codes can approach channel capacity. Applying the traditional log-likelihood ratio belief propagation (LLR BP) decoding algorithm to LDPC codes, where decoding information is iteratively exchanged between variable nodes and check nodes, is a commonly used decoding algorithm and the most direct scheduling method. In this algorithm, all variable-to-check (V2C) messages and all check-to-variable (C2V) messages are continuously updated. As decoding progresses, different nodes have different levels of reliability. Generally, the more reliable a node is, the less computational resources it requires, as it does not change in subsequent decoding iterations. Therefore, an equal distribution of computation across all nodes and edges leads to a waste of limited computational resources.
[0003] To fully utilize the dynamic characteristics of decoded information, an increasing number of dynamic decoding algorithms based on different message selection and update strategies have been proposed, such as Variable Checking RBP (VC RBP), Dynamic Silent Variable Nodeless Scheduling (D-SVNFS), and Residual Belief Propagation Based on Residual Decay (RD RBP).
[0004] While the algorithms discussed above offer attractive performance in error correction and convergence speed, a problem remains in decoding. In dynamic scheduling decoding, inaccurate node reliability assessment leads to suboptimal scheduling order. This invention proposes an adaptive LDPC decoding method based on node reliability, primarily addressing the issues of inaccurate node reliability assessment and unclear node classification. By comprehensively utilizing different node reliability levels and dynamic update strategies, this invention aims to improve the efficiency and performance of LDPC decoding, reduce the bit error rate while lowering computational complexity, thereby achieving better performance in practical engineering applications. Summary of the Invention
[0005] To address the shortcomings of existing technologies, the purpose of this invention is to provide an adaptive LDPC decoding method based on node reliability.
[0006] The adaptive LDPC decoding method based on node reliability provided by the present invention includes the following steps:
[0007] Step 1: Initialize parameter configuration;
[0008] Step 2: Calculate the values of the variable nodes during the iteration process and determine the reliability of the variable nodes;
[0009] Step 3: Determine the reliability of the verification node based on the reliability of the variable node, and use the reliability value of the verification node to select an appropriate algorithm to calculate the value of the verification node;
[0010] Step 4: When the reliability of the verification node is higher than the threshold, a reset process is performed to avoid a high error rate in the decoding result.
[0011] Step 5: Verify the decision result. If the checksum is zero, the decoding ends and the decoding result is output. If the condition is not met, proceed to step 6.
[0012] Step 6: Determine whether the current iteration count has reached the preset maximum iteration count. If the maximum decoding count has not been reached, continue the loop iteration. When the preset iteration count is reached, the decoding ends.
[0013] Preferably, step 1 includes the following steps:
[0014] Step 1.1: Configure the maximum number of iterations to iterMax based on historical data;
[0015] Step 1.2: For the initialization of channel information, the initialization information value of the check node is set to 0, while the initial information value of the variable node comes from the channel initial message.
[0016]
[0017] L(P i ) represents the information value initially defined for the channel, i.e., the external information passed from the variable node to the check node during the first iteration; P i (b) indicates that the receiving end received y i Then, the corresponding sender codeword c i =The posterior probability of b, where b = 0, 1; v i Let i be the i-th variable node.
[0018] Preferably, step 2 includes the following steps:
[0019] Step 2.1: The calculation formula for the variable node is as follows:
[0020]
[0021] Where C(i)\j represents the set of other check nodes connected to the i-th variable node, excluding the j-th check node, C(i)\j={k:h ik =1,k≠j};
[0022] Step 2.2: If the sign of the variable node in two consecutive iterations, sign(Vij (l) (i, idx(j))), changes, then determine that this variable node is an unreliable node; otherwise, it is a reliable node.
[0023] Step 2.3: If the absolute value of the residual of the variable node in two consecutive iterations is less than the threshold threshoid, that is, it satisfies
[0024] |Vij (l) (i, idx(j)) - Vij (l-1) (i, idx(j))| < threshold, then determine that this variable node is a reliable node; otherwise, it is an unreliable node.
[0025] Preferably, the said Step 3 includes the following steps:
[0026] Step 3.1: In the formula for calculating the check node, the variable node needs to be used as the input of the formula. Therefore, when the reliability of the variable node is relatively high, the reliability of the check node calculated by substituting it into the check node equation at this time is also relatively high. If this variable node satisfies both the same sign in two consecutive iterations and the residual is within the specified threshold, then it is determined that the reliability of the corresponding check node is relatively high. If this variable node only satisfies the same sign in two consecutive iterations and does not satisfy the residual within the specified threshold, then it is determined that the reliability of the corresponding check node is average. If this variable node neither satisfies the same sign in two consecutive iterations nor satisfies the residual within the specified threshold, then it is determined that the reliability of the corresponding check node is relatively low.
[0027] Step 3.2: The check nodes with relatively high reliability maintain the values of the previous iteration and are not updated, reducing the computational amount of decoding and improving the decoding efficiency.
[0028] Step 3.3: The check nodes with average reliability are updated using the NMS decoding algorithm. This algorithm has much less computational amount than the BP algorithm and slightly lower decoding performance. It is suitable for check nodes with medium reliability. The formula of its NMS algorithm is as follows:
[0029] r ji = α·Π i′∈V(j)\i sgn(q i′j )·min i′∈V(j)\i (q i′j )
[0030] Where, represents the extrinsic information passed from the check node j to the variable node i in the l-th iteration, b = 0, 1; Denote the extrinsic information passed from variable node \(i\) to check node \(j\) in the \(l\)-th iteration, \(b = 0, 1\); \(V(j)\setminus i\) represents the set of other variable nodes connected to the \(j\)-th check node except the \(i\)-th variable node, \(V(j)\setminus i=\{k:h kj = 1,k\neq i\}\); \(\alpha\) is the scaling factor of the NMS algorithm.
[0031] Step 3.4: For unreliable check nodes, update them using the BP algorithm. The decoding performance of the BP algorithm is very good, approaching the Shannon limit approximately, and can correct unreliable check nodes. The formula of the BP algorithm is as follows:
[0032]
[0033] Preferably, the said Step 4 includes the following steps:
[0034] Step 4.1: When the reliability of the check node remains at a relatively high level continuously for 3 times during the iteration process, set the check node to 0. This can avoid the situation that a small number of nodes stop updating and short cycles occur, resulting in a relatively high error floor during decoding.
[0035] Preferably, the said Step 5 includes the following steps:
[0036] Step 5.1: The calculation of the full information of the variable node and the hard decision formula are as follows:
[0037]
[0038] When \(q ij >0\), that is, when the posterior probability is greater than 0, judge the \(i\)-th variable node \(v ij as 0, otherwise judge as 1.
[0039] Preferably, the said Step 6 includes the following steps:
[0040] Step 6.1: If \(iter < iterMax\), continue iterative decoding, otherwise stop iterative decoding.
[0041] Compared with the prior art, the present invention has the following beneficial effects:
[0042] (1) The present invention dynamically adjusts the decoding strategy according to the node reliability, improving the decoding efficiency and accuracy.
[0043] (2) The present invention effectively avoids a relatively high error floor in the decoding result by performing a reset process when the reliability of the check node is higher than the threshold.
[0044] (3) The present invention adopts a simple calculation process and less calculation amount, and is easy to implement and integrate into various LDPC communication systems.
[0045] (4) The present invention can reduce resource consumption and power consumption, improve system performance and efficiency, and is suitable for practical engineering application scenarios. Attached Figure Description
[0046] Other features, objects, and advantages of the invention will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:
[0047] Figure 1 This is a flowchart of an adaptive LDPC decoding method based on node reliability.
[0048] Figure 2 The BER data for each algorithm in Example 2 are shown.
[0049] Figure 3 This represents the complexity ratio of each algorithm in Example 2. Detailed Implementation
[0050] The present invention will be described in detail below with reference to specific embodiments. These embodiments will help those skilled in the art to further understand the present invention, but do not limit the present invention in any way. It should be noted that those skilled in the art can make several changes and improvements without departing from the concept of the present invention. These all fall within the protection scope of the present invention.
[0051] Example 1:
[0052] like Figure 1 The adaptive LDPC decoding method based on node reliability provided by the present invention includes the following steps:
[0053] Step 1: Initialize parameter configuration;
[0054] Step 2: Calculate the values of the variable nodes during the iteration process and determine the reliability of the variable nodes;
[0055] Step 3: Determine the reliability of the verification node based on the reliability of the variable node, and use the reliability value of the verification node to select an appropriate algorithm to calculate the value of the verification node;
[0056] Step 4: When the reliability of the verification node is higher than the threshold, a reset process is performed to avoid a high error rate in the decoding result.
[0057] Step 5: Verify the decision result. If the checksum is zero, the decoding ends and the decoding result is output. If the condition is not met, proceed to step 6.
[0058] Step 6: Determine whether the current iteration count has reached the preset maximum number of iterations. If the maximum number of decoding iterations has not been reached, continue the loop iteration. When the preset number of iterations is reached, the decoding ends.
[0059] The said step 1 includes the following steps:
[0060] Step 1.1: Configure the maximum number of iterations iterMax according to historical data;
[0061] Step 1.2: For the initialization process of channel information, set the initialization information value of the check node to 0, while the initial information value of the variable node comes from the channel initial message as
[0062]
[0063] L(P i ) represents the information value initially defined by the channel, that is, the extrinsic information passed from the variable node to the check node in the first iteration; P i (b) represents the posterior probability that the received codeword c i at the receiving end is equal to b after receiving y i = b, where b = 0, 1; v i is the i-th variable node.
[0064] The said step 2 includes the following steps:
[0065] Step 2.1: The calculation formula for the variable node is as follows:
[0066]
[0067] where C(i)\j represents the set of other check nodes connected to the i-th variable node except the j-th check node, C(i)\j = {k:h ik = 1, k ≠ j};
[0068] Step 2.2: If the sign of the variable node in two consecutive iterations sign(Vij (l) (i, idx(j))) changes, then determine that this variable node is an unreliable node, otherwise it is a reliable node;
[0069] Step 2.3: If the absolute value of the residual of the variable node in two consecutive iterations is less than the threshold threshoid, that is, it satisfies
[0070] |Vij (l) (i, idx(j)) - Vij (l-1) (i, idx(j))| < threshold, then determine that this variable node is a reliable node, otherwise it is an unreliable node.
[0071] The said step 3 includes the following steps:
[0072] Step 3.1: The formula for calculating the check node requires variable nodes as input. Therefore, if the reliability of a variable node is high, the reliability of the check node calculated in the check node equation at this time will also be high. If the variable node satisfies both the same sign in the two iterations and the residual is within the specified threshold, the corresponding check node is considered to have high reliability. If the variable node only satisfies the same sign in the two iterations but not the residual being within the specified threshold, the corresponding check node is considered to have moderate reliability. If the variable node satisfies neither the same sign in the two iterations nor the residual being within the specified threshold, the corresponding check node is considered to have low reliability.
[0073] Step 3.2: Verification nodes with high reliability retain the value from the previous iteration and do not update them, which reduces the computational load of decoding and improves decoding efficiency.
[0074] Step 3.3: For check nodes with moderate reliability, the NMS decoding algorithm is used for updating. This algorithm requires significantly less computation than the BP algorithm, although its decoding performance is slightly lower. It is suitable for check nodes with moderate reliability. The NMS algorithm formula is as follows:
[0075] r ji =α·Π i′∈V(j)\i sgn(q i′j )·min i′∈V(j)\i (q i′j )
[0076] in, This represents the external information passed from node j to variable node i in the l-th iteration, where b = 0, 1; V(j) represents the external information passed from variable node i to check node j in the l-th iteration, b = 0, 1; V(j) represents the set of other variable nodes connected to check node j, excluding the i-th variable node, V(j) = {k:h} kj =1,k≠i}; α is the scaling factor for the NMS algorithm.
[0077] Step 3.4: For unreliable check nodes, the BP algorithm is used for updating. The BP algorithm has excellent decoding performance, approximately reaching the Shannon limit, and can correct unreliable check nodes. The BP algorithm formula is as follows:
[0078]
[0079] Step 4 includes the following steps:
[0080] Step 4.1: When the reliability of the verification node is at a high level for three consecutive iterations, the verification node is set to 0. This can prevent a small number of nodes from no longer updating, resulting in short loops and a high error rate during decoding.
[0081] Step 5 includes the following steps:
[0082] Step 5.1: The calculation of the full information of the variable node and the hard decision formula are as follows:
[0083]
[0084] When q ij > 0, that is, when the posterior probability is greater than 0, the i-th variable node v ij is determined to be 0, otherwise it is determined to be 1.
[0085] Step 6 includes the following steps:
[0086] Step 6.1: If iter < iterMax, continue iterative decoding, otherwise stop iterative decoding.
[0087] Embodiment 2:
[0088] Embodiment 2 is a preferred example of Embodiment 1.
[0089] Next, taking the LDPC decoding scenario conforming to the 3GPP R15 standard as an example, the adaptive LDPC decoding method based on node reliability proposed by the present invention will be described. Specifically, the configuration of NR R15 LDPC is as follows: the information bit length kb = 18, the parity bit length mb = 18, the extended matrix Zc = 56, the code rate n = 1 / 2, the total bit length L = (kb + mb) * Zc = 2016, the modulation is BPSK modulation, and the transmission channel is an additive white Gaussian noise channel.
[0090] First, perform parameter initialization configuration. The SNR range to be tested is -0.2 to 2. In order to obtain more detailed experimental results, the SNR step value is set to 0.1. At each SNR, the maximum number of decoding iterations iterMax = 30, the maximum number of simulation blocks maxBlocks = 1000 at each SNR, and the maximum number of error blocks maxErrorBlocks = 50 at each SNR. The above parameters are all empirical values obtained through a large number of simulation experiments. Specifically, it is necessary to evaluate the decoding performance by simulating different LDPC code lengths, code rates, channel conditions, and various parameter configurations. On the premise of maintaining the decoding performance, select the parameter combination that can perform optimally in terms of the bit error rate performance. These optimized parameter combinations will form a parameter table, which can be used to guide the selection and configuration of LDPC codes in practical applications. By systematically studying the influence of different parameter values on the performance of LDPC codes, the design and application of LDPC codes can be optimized, thereby improving the reliability and efficiency of communication systems. This method helps to ensure that LDPC codes can perform excellently in various communication environments and provides the best parameter setting suggestions for specific application scenarios.
[0091] During LDPC iterative decoding, the value of the iteration counter variable `iter` gradually increases as iterations proceed. `iter` increments by 1 after each iteration. The iteration process continues as long as `iter` is less than the preset maximum number of iterations (`iterMax`); however, the decoding process terminates immediately when `iter` exceeds `iterMax`. This iterative control mechanism ensures that the LDPC decoding process operates effectively within a reasonable number of iterations, thereby improving decoding efficiency and accuracy.
[0092] In LDPC decoding, relying solely on the values of check nodes to assess reliability is insufficient. Sometimes, some check nodes may have values of 0, but this does not necessarily mean they are reliable. In fact, in such cases, two or more variable nodes may have erroneous values. Therefore, a more accurate assessment of check node reliability should consider the reliability of the variable nodes involved in the check node calculation. By comprehensively considering the variable nodes involved in the check node calculation, the reliability of the check node can be determined more accurately, thereby improving the accuracy and robustness of the LDPC decoding process.
[0093] Therefore, before evaluating the reliability of the check node, the following two steps are required: First, calculate the information of the variable node; second, calculate the reliability of the variable node. The reliability of the variable node is evaluated from two perspectives. First, reliability is judged based on whether the sign of the variable node is consistent between two iterations. Second, reliability is evaluated based on whether the absolute value of the residual between two iterations is less than a set threshold. Meeting the first condition indicates that the variable node has a moderate level of reliability, while meeting both conditions indicates that the variable node is relatively more reliable, and failing to meet both conditions indicates that the variable node is unreliable. This dual evaluation mechanism can more comprehensively assess the reliability of the variable node, thereby improving the accuracy and reliability of the LDPC decoding process.
[0094] according to Figure 1 The flowchart of the adaptive LDPC decoding method based on node reliability is shown below. The next step is to evaluate the reliability of the check node using the calculated reliability of the variable nodes. In the check node calculation algorithm, the values of the variable nodes are treated as variable inputs. When the variable nodes have higher reliability, the calculated check node will also be more reliable. Therefore, based on the reliability of the variable nodes, the check nodes are classified into three levels: unreliable, generally reliable, and relatively reliable. By carefully considering the reliability of the variable nodes, the reliability of the check node can be evaluated more accurately, providing more reliable support for the decoding quality of LDPC codes.
[0095] After obtaining the reliability of the verification node, the decoding method of the present invention will use different decoding algorithms for verification nodes with different reliability, and the BP algorithm and NMS algorithm were selected respectively.
[0096] a. The BP algorithm, the calculation formula for the information transmitted from the check node to the variable node is as follows:
[0097]
[0098] b. The NMS algorithm calculates the information transmitted from the verification node to the variable node using the following formula:
[0099] r ji =α·Π i′∈V(j)\i sgn(q i′j )·min i′∈V(j)\i (q i′j )
[0100] The BP algorithm can converge quickly to the correct solution in many cases, exhibiting excellent error rate performance and convergence, often approaching the channel capacity limit. However, the BP algorithm can sometimes exhibit slower convergence speed and higher computational complexity. In contrast, the NMS algorithm generally has a faster convergence speed, which helps improve decoding efficiency, but it is relatively simple to implement, and its decoding performance may not be as stable as the BP algorithm. Therefore, in the decoding process of LDPC codes, this invention fully utilizes the respective advantages and disadvantages of the BP and NMS algorithms, achieving a balance between decoding performance and efficiency.
[0101] Different decoding algorithm strategies are adopted for verification nodes with different reliability levels: for verification nodes with low reliability, the BP algorithm is used to improve their reliability; for verification nodes with moderate reliability, the NMS algorithm is selected to consolidate their reliability; and for relatively reliable nodes, updates are stopped, thereby saving decoding time and improving overall decoding efficiency.
[0102] Figure 2 The figure shows the bit error rate (BER) of various algorithms in Example 2 under different channel signal-to-noise ratio environments. It can be clearly seen from the figure that the adaptive LDPC decoding method based on node reliability (ANRA algorithm) proposed in this paper successfully reduces the decoding computation while ensuring that the decoding performance is no worse than that of the BP algorithm.
[0103] Figure 3 The diagram illustrates the complexity ratios of different algorithms in Example 2. Here, the complexity ratio is defined as the ratio of the number of times the check node is updated to the maximum number of times the check node can be updated at each signal-to-noise ratio. The diagram clearly shows that the ANRA algorithm has the lowest complexity, significantly reducing the computational burden of decoding.
[0104] Those skilled in the art will understand that, in addition to implementing the system, apparatus, and their modules provided by this invention in purely computer-readable program code, the same program can be implemented in the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers by logically programming the method steps. Therefore, the system, apparatus, and their modules provided by this invention can be considered as a hardware component, and the modules included therein for implementing various programs can also be considered as structures within the hardware component; alternatively, modules for implementing various functions can be considered as both software programs implementing the method and structures within the hardware component.
[0105] Specific embodiments of the present invention have been described above. It should be understood that the present invention is not limited to the specific embodiments described above, and those skilled in the art can make various changes or modifications within the scope of the claims, which do not affect the essence of the present invention. Unless otherwise specified, the embodiments and features described in this application can be arbitrarily combined with each other.
Claims
1. An adaptive LDPC decoding method based on node reliability, characterized in that, Includes the following steps: Step 1: Initialize parameter configuration; Step 2: Calculate the values of the variable nodes during the iteration process and determine the reliability of the variable nodes; Step 3: Determine the reliability of the verification node based on the reliability of the variable node, and use the reliability value of the verification node to select an appropriate algorithm to calculate the value of the verification node; Step 4: When the reliability of the verification node is higher than the threshold, a reset process is performed to avoid a high error rate in the decoding result. Step 5: Verify the decision result. If the checksum is zero, the decoding ends and the decoding result is output. If the condition is not met, proceed to step 6. Step 6: Determine whether the current iteration count has reached the preset maximum iteration count. If the maximum decoding count has not been reached, continue the loop iteration. When the preset iteration count is reached, the decoding ends.
2. The adaptive LDPC decoding method based on node reliability according to claim 1, characterized in that, Step 1 includes the following steps: Step 1.1: Configure the maximum number of iterations to iterMax based on historical data; Step 1.2: For the initialization of channel information, the initialization information value of the check node is set to 0, while the initial information value of the variable node comes from the channel initial message. , This represents the information value initially defined for the channel, i.e., the external information passed from the variable node to the verification node during the first iteration; This indicates that the receiving end has received... Then, the corresponding sender codeword The posterior probability, b = 0, 1; Let i be the i-th variable node.
3. The adaptive LDPC decoding method based on node reliability according to claim 2, characterized in that, Step 2 includes the following steps: Step 2.1: The calculation formula for the variable node is as follows: , in, This represents the set of other check nodes connected to the i-th variable node, excluding the j-th check node. ; Step 2.2: If the variable node symbols of the two iterations are... If the variable changes, the node is determined to be an unreliable node; otherwise, it is a reliable node. Step 2.3: If the absolute value of the residual of the variable node in two consecutive iterations is less than the threshold threshoid, then the condition is satisfied. If the variable node is found to be reliable, then it is considered a reliable node; otherwise, it is considered an unreliable node.
4. The adaptive LDPC decoding method based on node reliability according to claim 3, characterized in that, Step 3 includes the following steps: Step 3.1: In the formula for calculating the check node, the variable node needs to be used as the input of the formula. Therefore, when the reliability of the variable node is high, the reliability of the check node calculated by substituting it into the check node equation is also high. If the variable node satisfies both the same sign in the two iterations and the residual is within the specified threshold, then the corresponding verification node is judged to have high reliability. If the variable node only satisfies the condition that the signs are the same in the two iterations before and after, but does not satisfy the condition that the residual is within the specified threshold, then the reliability of the corresponding check node is judged to be average. If the variable node does not satisfy the requirement that the signs of the two iterations are the same, nor that the residual is within the specified threshold, then the corresponding verification node is judged to have low reliability. Step 3.2: Verification nodes with high reliability retain the value from the previous iteration and do not update them, which reduces the amount of computation in decoding and improves decoding efficiency; Step 3.3: For check nodes with moderate reliability, the NMS decoding algorithm is used for updating. This algorithm requires significantly less computation than the BP algorithm, although its decoding performance is slightly lower. It is suitable for check nodes with moderate reliability. The NMS algorithm formula is as follows: , in, This represents the external information passed from node j to variable node i in the l-th iteration, where b = 0, 1; This represents the external information passed from variable node i to check node j in the l-th iteration, where b = 0, 1; This represents the set of other variable nodes connected to the j-th check node, excluding the i-th variable node. ; This is the scaling factor for the NMS algorithm; Step 3.4: For unreliable check nodes, the BP algorithm is used for updating. The BP algorithm has excellent decoding performance, approximately reaching the Shannon limit, and can correct unreliable check nodes. The BP algorithm formula is as follows: 。 5. The adaptive LDPC decoding method based on node reliability according to claim 4, characterized in that, Step 4 includes the following steps: Step 4.1: When the reliability of the verification node is at a high level for three consecutive iterations, the verification node is set to 0. This can prevent a small number of nodes from no longer updating, resulting in short loops and a high error rate during decoding.
6. The adaptive LDPC decoding method based on node reliability according to claim 5, characterized in that, Step 5 includes the following steps: Step 5.1: The calculation of the full information of the variable nodes and the hard decision formula are as follows: , when That is, when the posterior probability is greater than 0, the first... Variable nodes The judgment is 0, otherwise the judgment is 1.
7. The adaptive LDPC decoding method based on node reliability according to claim 6, characterized in that, Step 6 includes the following steps: Step 6.1: If iter < iterMax, continue iterative decoding; otherwise, stop iterative decoding.