A method for decoding a fast-converging LDPC code in underwater acoustic communication
Patent Information
- Application Number
- CN202310525237.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-11
- Publication Date
- 2026-09-25
- Estimated Expiration
- 2043-05-11
AI Technical Summary
但是该方法并不能提前检测到不成功的迭代过程进而提前退出译码过程,在译码不成功时会陷入到无效迭代的过程中,而且也会损失译码性能
[0045]本发明方法的串行译码方法结合了动态以及静态的调度策略。静态调度时考虑校验节点的度对信息更新的影响,预先确定了校验节点的更新顺序。动态调度时,考虑了更新过程中的节点信息可靠度的变化来对校验节点的更新顺序进行动态调整。在高信噪比区域,两种方法均能译码成功,但是本方法所需要的迭代次数更少,收敛速度更快。因此,本发明方法在译码成功和译码失败时均能有效地减小了译码所需要的的迭代次数,降低了译码时延。
Smart Images

Figure CN116545449B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of communication technology and relates to a belief propagation (BP) decoding method for low-density parity check (LDPC) codes suitable for underwater acoustic communication. Specifically, it considers the influence of impulse noise in the underwater acoustic communication channel, designs an LDPC code decoder, and reduces the number of iterations required for decoding without reducing decoding performance, thereby improving the decoding convergence speed and reducing decoding delay. Background Technology
[0002] Underwater information transmission technology has become crucial for marine informatization, enabling the informatization and intelligentization of the ocean. Underwater communication technology plays a vital role in national marine resource exploitation, marine environmental monitoring, and safeguarding marine security. The main information carriers for underwater wireless signal transmission are electromagnetic waves, light waves, and sound waves. However, electromagnetic waves suffer significant loss in water, hindering reliable transmission over medium to long distances, while light waves also experience significant dissipation in the underwater environment, limiting transmission to short distances. Underwater acoustic technology enables medium to long-distance underwater communication; sound signals are currently the only information transmission carrier for medium to long-distance wireless transmission underwater. Furthermore, underwater acoustic communication eliminates the need to consider cable deployment and maintenance costs, allowing for greater flexibility. Therefore, sound waves are commonly used as the information carrier for long-distance communication in underwater scenarios. With the rapid development of electronic, information, and computer technologies, hardware processing capabilities have been greatly enhanced, leading to the rapid development of underwater acoustic communication technology.
[0003] However, underwater acoustic communication suffers from harsh channel conditions, such as severe multipath transmission, limited bandwidth, and severe Doppler effects. Ensuring communication reliability is therefore a primary concern. Channel coding is one of the key technologies for achieving reliable underwater acoustic communication. Early underwater acoustic communication often used traditional coding methods such as BCH codes and convolutional codes, but these error-correcting codes have limited error-correcting capabilities. In recent years, LDPC codes and Turbo codes, with their excellent performance approaching the Shannon limit, have been widely used in underwater acoustic communication.
[0004] Currently, the application of LDPC codes in underwater acoustic communication channels mainly considers short LDPC codes, and rarely combines them with specific underwater acoustic communication channels. Patent No. 202010490139.4 discloses an optimization method for prototype LDPC codes in underwater acoustic channels. This method applies prototype LDPC codes to underwater acoustic communication channels, considers the influence of the intrinsic acoustic ray model on the error plane of the LDPC code, and designs a prototype LDPC code suitable for underwater acoustic communication channels. It improves the error plane of the LDPC code with a small loss in decoding performance, but it does not address the decoding design for noise types in underwater acoustic communication channels, nor does it address the decoding overhead of applying LDPC codes in actual underwater acoustic communication systems. Patent No. 201910184758.8 discloses a fast-converging LDPC code decoding algorithm. This method improves the minimum-sum decoding algorithm and proposes a dynamic weighting method to update nodes. Each update requires a decision, which can accelerate the convergence speed of the LDPC code. However, this method cannot detect unsuccessful iterations in advance and exit the decoding process prematurely. When decoding fails, it gets stuck in an invalid iteration process and also loses decoding performance. Patent application No. 201810415350.2 discloses an improved LDPC code and product decoding scheme. By observing the impact of the information of the check node on the bit error rate, the update order of the check node is dynamically adjusted, which can effectively accelerate the convergence process of LDPC code and increase decoding performance. However, this method only updates the check node sequentially and then updates it dynamically again, and it cannot terminate unnecessary failed iterations in advance.
[0005] Because underwater acoustic communication channels have limited bandwidth, the codewords used in channel coding should not be too long. This would lead to a decrease in the decoding performance of the LDPC codes used, failing to meet the error correction requirements in underwater acoustic communication. Furthermore, the decoding delay caused by the computational overhead of LDPC codes is also a significant factor in practical applications. Therefore, channel decoding in underwater acoustic communication requires a comprehensive consideration of both decoding performance and decoding delay. In summary, to reduce the computational overhead of decoding, one can start by reducing the number of iterations required for decoding, thereby minimizing the number of iterations without sacrificing decoding performance. Summary of the Invention
[0006] The purpose of this invention is to provide a fast-converging LDPC code decoding method for underwater acoustic communication, which addresses the impulse noise present in underwater acoustic communication channels.
[0007] Application background of this invention: For an (N,K) LDPC code, there is a (NK)×N parity check matrix H, and N variable nodes V are distributed on its bipartite graph. i and (NK) check nodes C jLet i = 1, 2, ..., N, j = 1, 2, ..., NK; if H[j][i] = 1, then the variable node V on the bipartite graph... i Connect to verification node C j The number of edges connected to a check node is the degree of the check node, and the number of edges connected to a variable node is the degree of the variable node; iterative decoding is performed by passing log-likelihood ratio (LLR) information on the bipartite graph.
[0008] The specific steps of the method of this invention are as follows:
[0009] Step (1) Determine the update order of the check nodes based on the check matrix H:
[0010] (1-1) Determine the degree of each verification node Initialize all variable nodes to have an update count of 0, RnCnt i =0, update the ordered set
[0011] (1-2) From the set of node degrees of the verification node {d j Choose the verification node with the lowest degree. The set of verification nodes with the smallest degree of constitutiveness s m For set The m-th verification node, where m = 1, ..., M;
[0012] (1-3) Traversal In the verification nodes, calculate the number of times the variable nodes connected to each verification node are updated. m′ is s m Verify the node indices on the bipartite graph of the verification matrix H; from Delete update count Cnt m Largest verification node That is If there are multiple verification nodes with the highest update frequency, randomly select one of them to delete, and then delete the remaining set.
[0013] (1-4) Verify the node Add to the ordered set Verification node The degree is set to the maximum value, that is... For verification nodes Verify the node index on the bipartite graph of the verification matrix H; [The sentence is incomplete and requires more context to translate accurately.] The update count of all connected variable nodes is incremented by 1, i.e. If set If not empty, return (1-3) and continue deleting;
[0014] (1-5) If Return to (1-2) until... Determine the set of check node update order
[0015] Step (2) Information initialization:
[0016] The sending end constructs an LDPC code of code length N and information bit length K, which carries the message information sequence U = [u1, u2, ..., u K After encoding, the codeword sequence X = [x1, x2, ..., x] is obtained. N The first K bits are information bits, and the following NK bits are check bits; 0s in the codeword are mapped to high level, and 1s are mapped to low level; the codeword passes through a power of σ. 2 Channel transmission scrambled by impulse noise;
[0017] The receiver receives the sequence Y = [y1, y2, ..., y]. N After that, calculate the received log-likelihood ratio llr for each variable node i. i llr i =2y i / σ 2 ;
[0018] Initialize the number of iterations l = 1, and set the maximum number of iterations iter max Received log-likelihood ratio threshold α; average reliability of initialization information γ pre =0, unreliable iteration counter counter=0, threshold β for small changes in information reliability, maximum number of unreliable iterations η, set of verification nodes not updated temporarily.
[0019] Step (3) Initialize the channel log-likelihood ratio information:
[0020] Check the received log-likelihood ratio of each variable node and remove outliers, i.e., when |llr i When |>α, llr i =0;
[0021] Initialize each variable node V i The total log-likelihood of the channel is greater than that of the information. For the variable node V in the l-th iteration i The total log-likelihood ratio of the channel, l = 1, 2, ..., iter max ;
[0022] Initialize variable node V iThe initial log-likelihood ratio of the channel information L i =llr i ;
[0023] Initialize variable node V i Passed to verification node C j The log-likelihood ratio of information L (1) (q ij )=llr i L (l) (q ij ) initializes the variable node V during the l-th iteration. i Passed to verification node C j The log-likelihood ratio information;
[0024] Initialize verification node C j Passed to variable node V i The log-likelihood ratio of information L (1) (r ji ) = 0, L (l) (r ji ) represents the verification node C during the l-th iteration. j Passed to variable node V i The log-likelihood ratio is more informational than the log-likelihood ratio.
[0025] Step (4) Select a verification node to update information:
[0026] (4-1) Let the judgment variable flag = 0, indicating false; set Traversal P=NK, select the check node o to be updated. p , p = 1, 2, ..., P, execute steps (5) and (6);
[0027] (4-2) Let the judgment variable flag = 1, indicating that it is true; traverse Select the verification node t to be updated. q , q = 1, 2, ..., Q, execute steps (5) and (6);
[0028] (4-3) All nodes have been updated. Proceed to step (7).
[0029] Step (5) Based on the selected verification node, calculate the information update of the verification node, the information update of the adjacent variable nodes, and the total likelihood ratio information update.
[0030] (5-1) For variable nodes Update verification node C j Passed to the adjacent variable node V i Information, namely L cur (r ji) indicates that node C was verified in this update. j Passed to variable node V i The log-likelihood ratio is more informational than the log-likelihood ratio. Indicates the verification node C j The set of all variable nodes connected, C j o p or t q ;in, x is a variable.
[0031] (5-2) For variable nodes Update adjacent variable nodes V i Passed to the verification node C j Information, namely L cur (q ij ) indicates the variable node V in this update. i Passed to verification node C j The log-likelihood ratio information, χ i To be with V i The set of all connected verification nodes.
[0032] (5-3) For variable nodes Update and verify node C j Adjacent variable nodes V i The total likelihood information, i.e. This indicates that variable node V is in this update. i The total log-likelihood ratio is the information.
[0033] Step (6) Determine whether to accept this update;
[0034] if If flag = 0, then abandon this update and verify node C. j Add to the set of verification nodes that will not be updated for the time being Otherwise, accept this update, i.e., L. (l) (r ji ) = L cur (r ji ), L (l) (q ij ) = L cur (q ij ),
[0035] Step (7) Determine whether the current iteration is reliable:
[0036] The total likelihood of information after one iteration update is greater than the mean of information. γ represents the average reliability of information after one round of iterations; if γ-γ preIf <β, the current iteration is deemed unreliable, and the unreliable iteration counter is incremented by 1.
[0037] Step (8) Hard decision decoding:
[0038] The judgment code is The decision result for the nth bit is:
[0039] Step (9) Determine whether to terminate the iteration prematurely:
[0040] If counter > η or l == iter max If the decoding process is deemed to have failed, step (11) is executed directly to end the decoding process; otherwise, step (10) is executed.
[0041] Step (10) Determine whether decoding was successful based on the verification relationship:
[0042] if If decoding is successful, proceed to step (11), where the superscript T indicates transpose; otherwise, set γ. pre =γ, return to step (4) and proceed to the next iteration.
[0043] Step (11) Output the decoded codeword
[0044] This invention improves upon the traditional BP algorithm by combining an early termination iteration method with a serial decoding method. It detects potential decoding failures by calculating changes in the average reliability of the information, thus terminating the iteration process early. In low signal-to-noise ratio regions, this invention can terminate the iteration process early, thereby reducing unnecessary computational overhead.
[0045] The serial decoding method of this invention combines dynamic and static scheduling strategies. Static scheduling considers the impact of the check node's degree on information updates and pre-determines the update order of the check nodes. Dynamic scheduling considers changes in the reliability of node information during the update process to dynamically adjust the update order of the check nodes. In high signal-to-noise ratio regions, both methods can decode successfully, but this method requires fewer iterations and converges faster. Therefore, this invention effectively reduces the number of iterations required for decoding, both successfully and unsuccessfully, thus lowering decoding latency. Attached Figure Description
[0046] Figure 1 This is a flowchart of the present invention;
[0047] Figure 2 The bipartite graph of an LDPC code with code length N=8;
[0048] Figure 3 This paper compares the performance of our decoding method with that of the traditional BP algorithm in the Bellhop underwater acoustic communication channel with 20 iterations.
[0049] Figure 4 This study compares the number of iterations required for decoding using this method and the traditional BP decoding algorithm under different signal-to-noise ratio conditions, with Gaussian noise scrambling. Detailed Implementation
[0050] The present invention will be further described in detail below with reference to the accompanying drawings and embodiments.
[0051] This invention proposes a fast convergence LDPC code decoding algorithm suitable for underwater acoustic communication, the flowchart of which is shown below. Figure 1 As shown, taking an LDPC code of length 8 as an example, its corresponding parity-check matrix H is as follows:
[0052] Its bipartite graph is as follows Figure 2 As shown.
[0053] This is achieved through the following steps:
[0054] Step (1) Determine the update order of the check nodes based on the check matrix H:
[0055] (1-1) Determine the degree of each verification node Initialize all variable nodes to have an update count of 0, RnCnt i =0, update the ordered set
[0056] (1-2) From the set of node degrees of the verification node {d j Choose the verification node with the lowest degree. The set of verification nodes with the smallest degree of constitutiveness s m For set The m-th verification node, where m = 1, ..., M;
[0057] (1-3) Traversal In the verification nodes, calculate the number of times the variable nodes connected to each verification node are updated. m′ is s m Verify the node indices on the bipartite graph of the verification matrix H; from Delete update count Cnt m Largest verification node That is If there are multiple verification nodes with the highest update frequency, randomly select one of them to delete, and then delete the remaining set.
[0058] (1-4) Verify the node Add to the ordered set Verification node The degree is set to the maximum value, that is... For verification nodes Verify the node index on the bipartite graph of the verification matrix H; [The sentence is incomplete and requires more context to translate accurately.] The update count of all connected variable nodes is incremented by 1, i.e. If set If not empty, return (1-3) to continue deletion;
[0059] (1-5) If Return to (1-2) until... Determine the set of check node update order Obtain the check node update order of the LDPC code
[0060] Step (2) Information initialization.
[0061] The transmitting end constructs an LDPC code with a code length N = 8 and an information bit length K = 4. Assume the transmitted information bit sequence is U = [1,1,1,1] containing 4 information bits. After encoding using the parity check matrix, the codeword sequence X = [1,1,1,1,1,0,1,0] is obtained, where the first four bits are information bits and the last four bits are parity bits. 0s in the codeword are mapped to high levels, and 1s to low levels; the codeword is then processed by a power of σ... 2 Channel transmission scrambled with impulse noise of 0.6;
[0062] After receiving the sequence Y = [y1, y2, ..., y8], the receiver calculates the received log-likelihood ratio llr. i = -0.8, -1.2, 7, -2.6, -0.5, 0.9, -1.1, 1.3, where llr i =2y i / σ 2 , i = 1, 2, ..., 8;
[0063] Set the initial iteration count l = 1, and the maximum iteration count iter max =10, threshold α=6; initialize channel average reliability γ pre =0, unreliable iteration counter counter=0, small change threshold of information reliability β=0.00001, maximum number of unreliable iterations η=3, set of check nodes that are not updated temporarily.
[0064] Step (3) Initialize the channel log-likelihood ratio information:
[0065] Check the received log-likelihood ratio of each variable node and remove outliers, i.e., when |llr i When |>α, llr i =0; llr2=0.
[0066] Initialize each variable node V i The total log-likelihood of the channel is greater than that of the information. For the variable node V in the l-th iteration i The total log-likelihood ratio of the channel, l = 1, 2, ..., 10;
[0067] Initialize variable node V i The initial log-likelihood ratio of the channel information L i =llr i ;
[0068] Initialize variable node V i Passed to verification node C j The log-likelihood ratio of information L (1) (q ij )=llr i L (l) (q ij ) initializes the variable node V during the l-th iteration. i Passed to verification node C j The log-likelihood ratio information;
[0069] Initialize verification node C j Passed to variable node V i The log-likelihood ratio of information L (1) (r ji ) = 0, L (l) (r ji ) represents the verification node C during the l-th iteration. j Passed to variable node V i The log-likelihood ratio is more informational than the log-likelihood ratio.
[0070] Step (4) Select a verification node to update information:
[0071] (4-1) Let the judgment variable flag = 0, indicating false; set Traversal P=4, select the check node to be updated. p , p = 1, 2, ..., P, execute steps (5) and (6);
[0072] (4-2) Let the judgment variable flag = 1, indicating that it is true; traverse Select the verification node t to be updated. q , q = 1, 2, ..., Q, execute steps (5) and (6);
[0073] (4-3) All nodes have been updated. Proceed to step (7).
[0074] Step (5) Based on the selected verification node, calculate the information update of the verification node, the information update of the adjacent variable nodes, and the total likelihood ratio information update.
[0075] (5-1) For variable nodes Update verification node C j Passed to the adjacent variable node V i Information, namely L cur (r ji ) indicates that node C was verified in this update. j Passed to variable node V i The log-likelihood ratio is more informational than the log-likelihood ratio. Indicates the verification node C j The set of all variable nodes connected, C j o p or t q ;in, x is a variable.
[0076] (5-2) For variable nodes Update adjacent variable nodes V i Passed to the verification node C j Information, namely L cur (q ij ) indicates the variable node V in this update. i Passed to verification node C j The log-likelihood ratio information, χ i To be with V i The set of all connected verification nodes.
[0077] (5-3) For variable nodes Update and verify node C j Adjacent variable nodes V i The total likelihood information, i.e. This indicates that variable node V is in this update. i The total log-likelihood ratio is the information.
[0078] Step (6) Determine whether to accept this update;
[0079] if If flag = 0, then abandon this update and verify node C. j Add to the set of verification nodes that will not be updated for the time being Otherwise, accept this update, i.e., L. (l) (r ji) = L cur (r ji ), L (l) (q ij ) = L cur (q ij ), When updating the verification node C1, Add this verification node to the middle Right now
[0080] Step (7) Determine whether the current iteration is reliable:
[0081] The total likelihood of information after one iteration update is greater than the mean of information. γ represents the average reliability of information after one round of iterations; if γ-γ pre If <β, the current iteration is deemed unreliable, and the unreliable iteration counter is incremented by 1.
[0082] Step (8) Hard decision decoding:
[0083] The judgment code is The decision result for the nth bit is: After the first three rounds of iteration The decoded codeword can be determined as follows:
[0084] Step (9) Determine whether to terminate the iteration prematurely:
[0085] If counter > 3 or l == 10, the decoding process is considered to have failed, and step (11) is executed directly to end the decoding process; otherwise, step (10) is executed. After the first three iterations, counter = 1 and l = 3, step (10) is executed.
[0086] Step (10) Determine whether decoding was successful based on the verification relationship:
[0087] if If decoding is successful, proceed to step (11), where the superscript T indicates transpose; otherwise, set γ. pre =γ, return to step (4) and proceed to the next iteration. Calculated... Perform step (11).
[0088] Step (11) Output the decoded codeword
[0089] like Figure 3The figure shows the decoding performance of a 384-code-length QC-LDPC (Quasi-Cyclic, LDPC) code used in a Bellhop communication channel, where the codeword rate is 1 / 2. The figure compares the decoding performance of the traditional BP algorithm and this method when the maximum number of iterations is set to 20. Under the premise of a limited number of decoding iterations, this method can effectively improve decoding performance.
[0090] like Figure 4 The diagram shows the number of iterations required for decoding by this method and the traditional backpropagation (BP) algorithm under different signal-to-noise ratio (SNR) conditions. Fewer iterations result in less computational overhead and reduced decoding latency. In the low SNR region, this method can terminate the iteration process earlier, thus reducing unnecessary computational overhead. In the high SNR region, both methods can decode successfully, but this method requires fewer iterations and converges faster.
[0091] The above description of the embodiments is merely an enumeration of implementations of the present invention. The scope of protection of the present invention should not be limited to the specific forms described in the embodiments. Any improvements and modifications made by those skilled in the art based on the disclosure of the present invention should be within the scope of protection of the present invention.
Claims
1. A fast-converging LDPC code decoding method for underwater acoustic communication, wherein for an (N,K) LDPC code, there is a (NK)×N parity check matrix H, and N variable nodes V are distributed on its bipartite graph. i and (NK) check nodes C j Let i = 1, 2, ..., N, j = 1, 2, ..., NK; if H[j][i] = 1, then the variable node V on the bipartite graph... i Connect to verification node C j The number of edges connected to a node is equal to the degree of the node; its characteristic is that... Iterative decoding by transmitting log-likelihood ratio information on a bipartite graph includes the following steps: Step (1) Determine the set of check node update order based on the check matrix H. Step (2) Information initialization: The sending end constructs an LDPC code of code length N and information bit length K, which carries the message information sequence U = [u1, u2, ..., u K After encoding, the codeword sequence X = [x1, x2, ..., x] is obtained. N The first K bits are information bits, and the following NK bits are check bits; 0s in the codeword are mapped to high level, and 1s are mapped to low level; the codeword passes through a power of σ. 2 Transmission through a channel scrambled by impulse noise; the receiver receives the sequence Y = [y1, y2, ..., y...]. N After that, calculate the received log-likelihood ratio llr for each variable node i. i llr i =2y i / σ 2 ; Initialize the number of iterations l = 1, and set the maximum number of iterations iter max Received log-likelihood ratio threshold α; initialization information average reliability γ pre =0, unreliable iteration counter counter=0, threshold β for small changes in information reliability, maximum number of unreliable iterations η, set of verification nodes not being updated temporarily. Step (3) Initialize the channel log-likelihood ratio information; Step (4) Select a verification node to update information: (4-1) Let the judgment variable flag = 0, indicating false; set Traversal Select the verification node to be updated. p , p = 1, 2, ..., P, execute steps (5) and (6); (4-2) Let the judgment variable flag = 1, indicating that it is true; traverse Select the verification node t to be updated. q , q = 1, 2, ..., Q, execute steps (5) and (6); (4-3) All nodes have been updated. Proceed to step (7). Step (5) Based on the selected verification node, calculate the information update of the verification node, the information update of the adjacent variable nodes, and the total likelihood ratio information update; Step (6) Determine whether to accept this update; if If flag = 0, then abandon this update and verify node C. j Add to the set of verification nodes that will not be updated for the time being Otherwise, accept this update, i.e., L. (l) (r ji ) = L cur (r ji ), L (l) (q ij ) = L cur (q ij ), L (l) (q ij ) initializes the variable node V during the l-th iteration. i Passed to verification node C j Log-likelihood ratio information, L (l) (r ji ) represents the verification node C during the l-th iteration. j Passed to variable node V i The log-likelihood ratio is more informational than the log-likelihood ratio. For the variable node V in the l-th iteration i The total log-likelihood ratio of the channel, l = 1, 2, ..., iter max ; Step (7) Determine whether the current iteration is reliable: The total likelihood of information after one iteration update is greater than the mean of information. γ represents the average reliability of information after one round of iterations; if γ-γ pre If the value is less than β, the current iteration is considered unreliable, and the unreliable iteration counter is incremented by 1. Step (8) Hard decision decoding: The judgment code is The decision result for the nth bit is: Step (9) Determine whether to terminate the iteration prematurely: If counter > η or l == iter max If the decoding process fails, proceed directly to step (11) to end the decoding process; otherwise, proceed to step (10). Step (10) Determine whether decoding was successful based on the verification relationship: if If decoding is successful, proceed to step (11), where the superscript T indicates transpose; otherwise, set γ. pre =γ, return to step (4) and proceed to the next iteration; Step (11) Output the decoded codeword 2. The fast-convergence LDPC code decoding method in underwater acoustic communication as described in claim 1, characterized in that, Step (1) specifically involves: (1-1) Determine the degree of each verification node Initialize all variable nodes to have an update count of 0, RnCnt i =0, update the ordered set (1-2) From the set of node degrees {d} j Choose the verification node with the lowest degree. The set of verification nodes with the smallest degree of constitutiveness s m For set The m-th verification node, where m = 1, ..., M; (1-3) Traversal In the verification nodes, calculate the number of times the variable nodes connected to each verification node are updated. m′ is s m Verify the node indices on the bipartite graph of the verification matrix H; from Delete update count Cnt m Largest verification node That is If there are multiple verification nodes with the highest update frequency, randomly select one of them to delete, and then delete the remaining set. (1-4) Verify the node Add to the ordered set Verification node The degree is set to the maximum value, that is... For verification nodes Verify the node index on the bipartite graph of the verification matrix H; Verification node The update count of all connected variable nodes is incremented by 1, i.e. If set If not empty, return (1-3) and continue deleting; (1-5) If Return to (1-2) until... Determine the set of check node update order 3. The fast-convergence LDPC code decoding method in underwater acoustic communication as described in claim 1, characterized in that, Step (3) specifically involves: Check the received log-likelihood ratio of each variable node and remove outliers, i.e., when |llr i When |>α, llr i =0; Initialize each variable node V i The total log-likelihood of the channel is greater than that of the information. Initialize variable node V i The initial log-likelihood ratio of the channel information L i =llr i ; Initialize variable node V i Passed to verification node C j The log-likelihood ratio of information L (1) (q ij )=llr i ; Initialize verification node C j Passed to variable node V i The log-likelihood ratio of information L (1) (r ji ) = 0.
4. The fast-convergence LDPC code decoding method in underwater acoustic communication as described in claim 1, characterized in that, Step (5) specifically involves: (5-1) For variable nodes Update verification node C j Passed to the adjacent variable node V i Information, namely L cur (r ji ) indicates that node C was verified in this update. j Passed to variable node V i The log-likelihood ratio is more informational than the log-likelihood ratio. Indicates the verification node C j The set of all variable nodes connected, C j o p or t q ;in, x is a variable; (5-2) For variable nodes Update adjacent variable nodes V i Passed to the verification node C j Information, namely This indicates that variable node V is in this update. i Passed to verification node C j The log-likelihood ratio information, χ i To be with V i The set of all connected verification nodes; (5-3) For variable nodes Update and verify node C j Adjacent variable nodes V i The total likelihood information, i.e. This indicates that variable node V is in this update. i The total log-likelihood ratio is the information.
Citation Information
Patent Citations
Improved LDPC code sum product decoding scheme
CN108574492A
Fast convergence LDPC code decoding algorithm
CN110022159A
Optimization method of protograph LDPC code under underwater acoustic channel
CN111628784A
Elementary check node-based syndrome decoding using pre-sorted inputs
CN107979445A
LDPC decoder, semiconductor memory system and operating method thereof
CN111200440A