Normalized minimum sum decoding and post-processing decoding method for BCH codes

By optimizing the check matrix and improving the decoding algorithm, combined with deep learning technology, the problems of high computational complexity and large time delay in HDPC decoding are solved, and more efficient BCH code decoding performance and low latency are achieved.

CN119154894BActive Publication Date: 2025-04-18SHANDONG INST OF BUSINESS & TECH

Patent Information

Application Number
CN202411666758.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-21
Publication Date
2025-04-18
Estimated Expiration
2044-11-21

AI Technical Summary

Technical Problem

When the prior art applies the BP decoding algorithm to high density parity check code (HDPC), there are problems such as high computational complexity, large time delay, and failure to fully utilize the characteristics of the encoding scheme.

Method used

By optimizing the check matrix, the improved normalized minimum sum (NMS) algorithm and post-process-enhanced ordered statistical decoder (OSD) algorithm are adopted, combined with the DIA neural network model in deep learning technology, to achieve more efficient BCH code decoding.

Benefits of technology

The low density of the check matrix, the reduction of the number of short loops and the uniform distribution of column weights are achieved, the decoding performance of BP-type algorithms is improved, and the high throughput and low latency are maintained, especially in the decoding of HDPC.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119154894B_ABST
    Figure CN119154894B_ABST
Patent Text Reader

Abstract

The present invention belongs to the technical field of decoding algorithms, and specifically relates to normalized minimum sum decoding of BCH codes and post-processing decoding methods thereof, the steps of which include optimizing the standard form of the check matrix of the BCH code to obtain the best check matrix; inputting the received sequence into the improved normalized minimum sum decoding algorithm NMS based on the best check matrix for decoding; if the decoding is successful, outputting the best decoding estimate; if the decoding fails, inputting the sequence iteration trajectory after the NMS decoding failure into the DIA neural network model, analyzing and outputting the reliability metric of each bit, and then decoding again through the ordered statistical decoder OSD to obtain the best decoding estimate. The present invention successfully achieves the low density of the check matrix, the reduction of the number of short loops, and the uniform distribution of column weights through an innovative check matrix optimization algorithm, and provides a more efficient and better performance BCH code decoding solution.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the technical field of decoding algorithms, and in particular relates to a normalized minimum sum decoding of a BCH code and a post-processing decoding method thereof. Background Art

[0002] At present, for low-density parity-check (LDPC) codes, efficient belief propagation (BP) iterative decoding algorithms have been widely studied, and theoretically proved to be able to approach the Shannon limit. However, in practical application scenarios such as the Internet of Things, 5G, and 6G, due to the constraints of computational complexity, time delay, and energy consumption, medium- and short-length coding schemes are more preferred. For these scenarios, BCH codes are valued for their excellent designable minimum code distance, but directly applying the BP decoding algorithm to high-density parity-check codes (HDPC) results in poor performance due to the large number of short loops in the Tanner graph.

[0003] For high-density parity check codes such as BCH codes, existing technologies attempt to improve decoding performance by optimizing the check matrix. For example, the algorithm proposed by Halford reduces the number of short cycles in the Tanner graph through row operations, while the mRRD and PBP algorithms increase decoding diversity through random permutations and the application of automorphism group elements. Although these methods have improved decoding performance to a certain extent, they still have problems such as high computational complexity and large time delay, and fail to fully utilize the characteristics of the coding scheme.

[0004] In the design of decoding algorithms, the existing technologies often ignore the specific structure and characteristics of the coding scheme, which makes it difficult to achieve a balance between decoding performance and efficiency. Especially in the case of high-density parity check matrices, how to effectively apply BP-based iterative decoding algorithms to achieve high decoding throughput and low latency has become a bottleneck in the development of technology. Summary of the invention

[0005] In view of the above deficiencies in the prior art, the purpose of the present invention is to provide a normalized minimum sum decoding of BCH code and a post-processing decoding method thereof, and to achieve a more efficient and better performance BCH code decoding scheme through innovative check matrix optimization, improved NMS algorithm and post-processing enhanced OSD algorithm.

[0006] To achieve the above object, the technical solution adopted by the present invention is a normalized minimum sum decoding and post-processing decoding method of BCH code, comprising the following steps:

[0007] S1. For the BCH code, optimize the standard check matrix to obtain the best check matrix;

[0008] S2, inputting the received sequence into an improved normalized minimum sum decoding algorithm NMS based on an optimal check matrix for decoding;

[0009] S3. If the decoding is successful, the best decoding estimate is output; if the decoding fails, the sequence iteration trajectory after the NMS decoding failure is input into the DIA neural network model, and the reliability measure of each bit is analyzed and output, and then it is decoded again through the ordered statistical decoder OSD to obtain the best decoding estimate.

[0010] As a preferred solution of the present invention, in S1, the process of obtaining the best check matrix is:

[0011] S1.1. The standard form of BCH code is H, where H represents the standard check matrix, and its dimension is (NK) × N. K and N represent the length of the message and codeword respectively. H is simplified to its row echelon form H r ;

[0012] S1.2. Reduce H r The density of non-zero elements of is:

[0013] S1.2.1. Initialize two sets S t and S is an empty set;

[0014] S1.2.2. For the first-level loop variable i, execute the loop from 1 to NK, and define w g is a variable that stores the currently known minimum row Hamming weight, w g Initialized to H r The i-th row r i Hamming weight , and r i Add to the set S;

[0015] S1.2.3. For the second-level loop variable j from 1 to NK, and j≠i, execute the loop and calculate , Indicates bitwise XOR operation, t mp It is a temporary variable used to store the result of the bitwise XOR operation. j Yes H r The jth row of

[0016] If the Hamming Less than w g , then update , and t mp Assign it to S as the only set element;

[0017] If the Hamming Equal to w g , then t mp Add to the set S;

[0018] If the Hamming Greater than w g , no operation and continue;

[0019] S1.2.4. Add the elements in set S after the second layer of loop to set S t In the middle; after the first layer of loop is completed, the set S t The elements in are used to construct the temporary matrix H r1 All possible rows of ;

[0020] S1.3. Remove set S t After any shift repeat row, H is accumulated r1 , the shift repetition line is the repetition line obtained by the circular shift operation;

[0021] S1.4. For H r1 , execute S1.2 and S1.3 in the same way. During the execution, H r H r1 Replacement, r j quilt replace, Indicates H r1 The j-th row in the matrix is ​​shifted q positions in turn, and the resulting new row set is N, where q = 0, 1, 2, ..., N-1; finally, another temporary matrix H is generated. r2 ;

[0022] S1.5, H r2 Add redundant rows to form the expanded matrix H o ;

[0023] S1.6, using simulated annealing algorithm to reduce H o The number of short loops of length 4 in the medium, while balancing H o The column weight distribution is used to obtain the temporary optimal check matrix H b ;

[0024] S1.7, Removal of H b After all the repeated rows in , we get the optimal check matrix H s .

[0025] As a preferred solution of the present invention, in S1.5, the method of adding redundant rows is:

[0026] S1.5.1. Let the rank of the standard check matrix H be m r =NK, redundancy factor r f =2,H o Initialized to H r2 ;

[0027] S1.5.2 If Hr2 number of rows , then the number of redundant rows added is p r for:

[0028] ;

[0029] The addition process is, for the loop variable m from 1 to p r Execute the loop and obtain the index number , H r2 The Jth row is added to H o The bottom of

[0030] If H r2 number of rows , do nothing and continue.

[0031] As a preferred solution of the present invention, in S1.6, a temporary optimal check matrix H is obtained. b The method is:

[0032] S1.6.1. Define the loss function L oss :

[0033] L oss = the number of cycles of length 4 in the check matrix + β × the variance of the column Hamming weight of the check matrix;

[0034] Where β is a hyperparameter used to adjust the relative importance of two different parts in the loss function;

[0035] S1.6.2, in the simulated annealing algorithm, set the initial temperature G = 1000, the cooling rate =0.995, number of iterations I s =10000, temporary optimal check matrix H b and the current check matrix H c And its corresponding loss function value and Both are initialized to H o And its loss function value ;

[0036] S1.6.3, for loop variable z from 1 to I s Execute the loop and find H c The number of short loops of length 4 in each row is normalized to the probability of selecting each row; the loop process is:

[0037] Assume that row l r l is selected, and the next step is to randomly select an integer Q between 1 and N, with r l The circular shift row Alternative l , get the updated temporary check matrix Hn , calculate H n The loss function value , and generate a random number P between 0 and 1 d , make a judgment:

[0038] if Less than or , H c Updated to H n , L c Updated to L n ; L c That is ; L n That is ; Otherwise continue;

[0039] if Less than , then H b Updated to H c , L b Updated to L c ; L b That is ; Otherwise continue;

[0040] G is updated to The value of .

[0041] As a preferred embodiment of the present invention, in S2, the improvement of NMS is specifically as follows:

[0042] S2.1. Input transformation: The received sequence is represented as y u , u=1, 2, ..., N, N is the length of the codeword; y u Multiple permutation types of are combined together to form an extended input, which is used as the input of each NMS iteration;

[0043] S2.2. Processing of each iteration output: At the tth iteration, the posterior probability obtained after the iteration , perform the inverse operation corresponding to the expanded input to disassemble , and average the disassembled results bit by bit to get the received sequence x u and its corresponding hard decision ,in is a hard decision, expressed as:

[0044] ;

[0045] if , exit the loop and return the decoded estimate , H s is the optimal check matrix, T represents transposition; otherwise, the received sequence yu Update to y u +x u And start the next iteration until the maximum number of iterations is reached, then exit and return the last hard decision.

[0046] As a preferred solution of the present invention, in the above-mentioned S2.1, three types of arrangement are applied, namely interlaced arrangement, Frobenius arrangement and cyclic movement.

[0047] As a preferred solution of the present invention, the interleaving arrangement is to combine the interleaving of the even index bits and the odd index bits, that is, to extract the even index bits and the odd index bits in the received sequence respectively, and then interleave them together to form a new arrangement;

[0048] The Frobenius permutation is, for each bit index u, Arrangement of

[0049] The circular move is, combined with the step size d p and random offset d o ,based on Perform circular moves, where s = 0, 1, 2, that is, generate three different arrangements for each circular move.

[0050] As a preferred solution of the present invention, in S3, the ordered statistical decoder OSD is, assuming that the input of OSD is a standard check matrix H, and H is full rank, the order of OSD is p, and the received sequence y u The output of the DIA neural network model corresponding to each bit is recombined into a new received sequence and sorted in ascending order of amplitude to obtain the sequence ;

[0051] Get with Corresponding column arrangement , is H sorted in ascending order, and then Perform Gaussian elimination on it and simplify it to the system form , where I is the identity matrix with dimensions ;Q 2 The dimension is , K represents the length of the message;

[0052] At the same time, In the process of Gaussian elimination to simplify the system form, there is a second column arrangement ,exist Down, Arranged into sequence ,at this time, The indexes of the leftmost NK bits form an unreliable code position index column, and the indexes of the other bits belong to the reliable code position index column;

[0053] The potential codeword sequence considered during the decoding process is each codeword candidate , , ,in , are the unreliable code bit sequence and the reliable code bit sequence corresponding to the candidate codeword respectively; Equal to the experimental error pattern set e v The bitwise sum of the hard decisions of the bits corresponding to the reliable code bit index column, e v It consists of all possible error patterns. The common feature of these error patterns is that the Hamming weight of any error pattern does not exceed p, and the length of each error pattern is N;

[0054] Depend on The constraints are derived from , T represents transposition, and the codeword transmitted accordingly is selected as the variable solution to the following minimal optimization problem:

[0055] ;

[0056] In the formula, Yes The hard decision of the u-th position; express The u-th bit value of ; The original received sequence without the DIA neural network model to improve the reliability and The amplitude value of the uth position after two permutations, Represents the indicator function.

[0057] The algorithm involved in the present invention can be executed by an electronic device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and the above algorithm calculation is implemented by executing the software by the processor.

[0058] The beneficial effects of the present invention are:

[0059] The present invention successfully achieves low density of the check matrix, reduction of the number of short cycles and uniform distribution of column weights through an innovative check matrix optimization algorithm, which are key prerequisites for improving the effective iterative decoding of BP algorithms. This optimization not only improves the decoding performance, but also maintains high throughput and low latency in the decoding process, especially in the decoding of high-density parity-check codes (HDPC).

[0060] The improved normalized minimum sum (NMS) algorithm proposed in the present invention aggregates the automorphism group elements of three arrangements simultaneously in each iteration, significantly accelerating the BP iterative decoding process. This improvement not only reduces the number of required iterations, but also reduces the overall computational complexity, making the decoding algorithm more efficient, especially in the decoding of high-density parity-check codes such as BCH codes.

[0061] This paper introduces the idea of ​​deep learning technology into the decoding process, and enhances the new measure of bit reliability through the designed DIA (Decoding Information Aggregation) model, thus providing a new idea for narrowing the performance gap between the actual BP decoder and the maximum likelihood (ML) limit. This hybrid architecture not only improves the accuracy of decoding, but also maintains the efficiency of the decoding process, especially when NMS decoding fails, the decoding performance is further improved through the post-processing enhanced OSD algorithm. BRIEF DESCRIPTION OF THE DRAWINGS

[0062] Figure 1 It is a schematic diagram of the process of the present invention;

[0063] Figure 2 It is a schematic diagram of the bit error rate BER corresponding to each decoding algorithm in the verification process of the present invention. DETAILED DESCRIPTION

[0064] The embodiments of the present invention are further described below in conjunction with the accompanying drawings:

[0065] like Figure 1 As shown, the normalized minimum sum decoding and post-processing decoding method of the BCH code includes the following steps:

[0066] S1. For the BCH code, optimize the standard check matrix to obtain the best check matrix;

[0067] S2, inputting the received sequence into an improved normalized minimum sum decoding algorithm NMS based on an optimal check matrix for decoding;

[0068] S3. If the decoding is successful, the best decoding estimate is output; if the decoding fails, the sequence iteration trajectory after the NMS decoding failure is input into the DIA neural network model, and the reliability measure of each bit is analyzed and output, and then it is decoded again through the ordered statistical decoder OSD to obtain the best decoding estimate.

[0069] The check matrix is ​​a matrix used to define linear codes in coding theory, and is used to determine the legitimacy of codewords. The DIA neural network model uses the DIA disclosed in the paper "Boosting ordered statistics decoding of short LDPC codes with simple neural network models" published by Guangwen Li and Xiao Yu. The paper discloses that "A neural network model known as decoding information aggregation (DIA) is developed" and gives the specific setting method of DIA.

[0070] At the same time, the ordered statistical decoder OSD used in S3 can also adopt the improved OSD proposed in this paper.

[0071] Normalized Min-Sum Decoding is a simplified BP decoding algorithm that improves decoding efficiency by minimizing the value in message passing.

[0072] The sequence iteration trajectory after decoding failure means that during the decoding process, when encountering a situation where the decoding cannot be correctly performed, the system will record the entire sequence change process from the initial state to the moment when the decoding fails.

[0073] In S1, the process of obtaining the optimal check matrix is:

[0074] S1.1. The standard form of BCH code is H, where H represents the standard check matrix, and its dimension is (NK) × N. K and N represent the length of the message and codeword respectively. H is simplified to its row echelon form H r ;

[0075] S1.2. Reduce H r The density of non-zero elements of is:

[0076] S1.2.1. Initialize two sets S t and S is an empty set;

[0077] S1.2.2. For the first-level loop variable i, execute the loop from 1 to NK, and define w g is a variable that stores the currently known minimum row Hamming weight, w g Initialized to H r The i-th row r i Hamming weight , and r i Add to the set S;

[0078] S1.2.3. For the second-level loop variable j from 1 to NK, and j≠i, execute the loop and calculate , Indicates bitwise XOR operation, t mp It is a temporary variable used to store the result of the bitwise XOR operation. j Yes H r The jth row of

[0079] If the Hamming Less than w g , then update , and t mp Assign it to S as the only set element;

[0080] If the Hamming Equal to w g , then t mp Add to the set S;

[0081] If the Hamming Greater than w g , no operation and continue;

[0082] S1.2.4. Add the elements in set S after the second layer of loop to set S t In the middle; after the first layer of loop is completed, the set S t The elements in are used to construct the temporary matrix H r1 All possible rows of ;

[0083] S1.3. Remove set S t After any shift repeat row, H is accumulated r1 , the shift repetition line is the repetition line obtained by the circular shift operation;

[0084] S1.4. For H r1 , execute S1.2 and S1.3 in the same way. During the execution, H r H r1 Replacement, r j quilt replace, Indicates H r1 The j-th row in the matrix is ​​shifted q positions in turn, and the resulting new row set is N, where q = 0, 1, 2, ..., N-1; finally, another temporary matrix H is generated. r2 ;

[0085] S1.5, H r2 Add redundant rows to form the expanded matrix H o ;

[0086] S1.6, using simulated annealing algorithm to reduce H oThe number of short loops of length 4 in the medium, while balancing H o The column weight distribution is used to obtain the temporary optimal check matrix H b ;

[0087] S1.7, Removal of H b After all the repeated rows in , we get the optimal check matrix H s .

[0088] In S1.5, the method to add redundant rows is:

[0089] S1.5.1. Let the rank of the standard check matrix H be m r =NK, redundancy factor r f =2,H o Initialized to H r2 ;

[0090] S1.5.2 If H r2 number of rows , then the number of redundant rows added is p r for:

[0091] ;

[0092] The addition process is, for the loop variable m from 1 to p r Execute the loop and obtain the index number , H r2 The Jth row is added to H o The bottom of

[0093] If H r2 number of rows , no operation and continue. After the loop ends, the expanded matrix H can be obtained o .

[0094] In S1.6, the temporary optimal check matrix H is obtained b The method is:

[0095] S1.6.1. Define the loss function L oss :

[0096] L oss = the number of cycles of length 4 in the check matrix + β × the variance of the column Hamming weight of the check matrix;

[0097] Where β is a hyperparameter used to adjust the relative importance of two different parts in the loss function. In this embodiment, β is set to 1.

[0098] S1.6.2, in the simulated annealing algorithm, set the initial temperature G = 1000, the cooling rate =0.995, number of iterations I s=10000, temporary optimal check matrix H b and the current check matrix H c And its corresponding loss function value and Both are initialized to H o And its loss function value ;

[0099] S1.6.3, for loop variable z from 1 to I s Execute the loop and find H c The number of short loops of length 4 in each row is normalized to the probability of selecting each row; the loop process is:

[0100] Assume that row l r l is selected, and the next step is to randomly select an integer Q between 1 and N, with r l The circular shift row Alternative l , get the updated temporary check matrix H n , calculate H n The loss function value , and generate a random number P between 0 and 1 d , make a judgment:

[0101] if Less than or , H c Updated to H n , L c Updated to L n ; L c That is ; L n That is ; Otherwise continue;

[0102] if Less than , then H b Updated to H c , L b Updated to L c ; L b That is ; Otherwise continue;

[0103] G is updated to The value of .

[0104] In S2, the improvements of NMS are as follows:

[0105] S2.1. Input transformation: The received sequence is represented as y u , u=1, 2, ..., N, N is the length of the codeword; y uMultiple permutation types of are combined together to form an extended input, which is used as the input of each NMS iteration;

[0106] S2.2. Processing of each iteration output: At the tth iteration, the posterior probability obtained after the iteration , perform the inverse operation corresponding to the expanded input to disassemble , and average the disassembled results bit by bit to get the received sequence x u and its corresponding hard decision ,in is a hard decision (a hard decision is composed of N hard decisions, and the square brackets indicate that the subscript u ranges from 1 to N), expressed as:

[0107] ;

[0108] if , exit the loop and return the decoded estimate , H s is the optimal check matrix, T represents transposition; otherwise, the received sequence y u Update to y u +x u And start the next iteration until the maximum number of iterations is reached, then exit and return the last hard decision.

[0109] In S2.1, three types of permutations are applied, namely interleaved permutation, Frobenius permutation and cyclic shift.

[0110] The interleaving arrangement is performed by combining the interleaving of the even index bits and the odd index bits, that is, extracting the even index bits and the odd index bits in the received sequence respectively, and then interleaving them together to form a new arrangement;

[0111] The Frobenius permutation is, for each bit index u, Arrangement of

[0112] The circular move is, combined with the step size d p and random offset d o ,based on Perform circular movement, where s = 0, 1, 2 (s represents a variable, which is used to provide an additional offset for the circular movement, so that different arrangements can be generated each time the circular movement occurs), that is, three different arrangements are generated for each circular movement.

[0113] In S3, the ordered statistical decoder OSD is, assuming that the input of OSD is the standard check matrix H, and H is full rank, the order of OSD is p, and the received sequence y uThe output of the DIA neural network model corresponding to each bit is recombined into a new received sequence and sorted in ascending order of amplitude to obtain the sequence ;

[0114] Get with Corresponding column arrangement , is H sorted in ascending order, and then Perform Gaussian elimination on it and simplify it to the system form , where I is the identity matrix with dimensions ;Q 2 The dimension is , K represents the length of the message;

[0115] At the same time, In the process of Gaussian elimination to simplify the system form, there is a second column arrangement ,exist Down, Arranged into sequence ,at this time, The indexes of the leftmost NK bits form an unreliable code position index column, and the indexes of the other bits belong to the reliable code position index column;

[0116] The potential codeword sequence considered during the decoding process is each codeword candidate , , ,in , are the unreliable code bit sequence and the reliable code bit sequence corresponding to the candidate codeword respectively; Equal to the experimental error pattern set e v The bitwise sum of the hard decisions of the bits corresponding to the reliable code bit index column, e v It consists of all possible error patterns. The common feature of these error patterns is that the Hamming weight of any error pattern does not exceed p, and the length of each error pattern is N;

[0117] Depend on The constraints are derived from , T represents transposition, and the codeword transmitted accordingly is selected as the variable solution to the following minimal optimization problem:

[0118] ;

[0119] In the formula, Yes The hard decision of the u-th position; express The u-th bit value of ; The original received sequence without the DIA neural network model to improve the reliability and The amplitude value of the uth position after two permutations, Represents an indicator function; argmin is used to find the variable value that minimizes a function.

[0120] The verification process is:

[0121] For the standard check matrix H and the optimal check matrix H obtained according to this embodiment s , the key parameters of the two are compared as follows:

[0122] Table 1 shows the optimized and optimized check matrices (i.e., H and H) of three BCH coding schemes with code length of 63 and increasing coding rates: (63, 36), (63, 39), and (63, 45). s )’s key parameters comparison.

[0123] Table 1 Comparison of key parameters of the check matrix of three BCH coding schemes before and after optimization

[0124]

[0125] For the (63, 36) code, the Hamming weight of each row in H is 18, and H s The Hamming weight of the matrix is ​​reduced to 14 and 16 rows. Although the variance increases slightly from 0 to 0.4, the density of non-zero elements in the matrix decreases. In addition, the number of short loops increases sharply from 5909 to 114196, which is mainly caused by the increase of a large number of redundant rows, that is, from 27 rows to 183 rows. The simulation shows that even if the number of short loops is greatly increased, the introduction of redundant rows can still effectively counteract the negative effects of short loops and ensure the normalized minimum sum iterative decoding performance. It is worth noting that H s The range of Hamming re-values ​​in the middle column is stabilized from 1 to 13 to 44 to 49, and the ratio of variance to mean is sharply reduced, which improves the iterative decoding performance of the normalized minimum sum.

[0126] For (63, 39), there are 24 rows in H, 32625 short loops, and H s There are 41 rows, 17 more redundant rows than H, but only 2932 short cycles. In addition, its non-zero density is significantly reduced, which can be clearly seen from the reduction of the row Hamming weight from 28 to 14. The range of column Hamming weight and the ratio of variance to mean have similar conclusions to the (63, 36) code.

[0127] For (63, 45), there are 18 rows in H and 7251 short cycles, while H sThere are 33 rows, 15 more redundant rows than H, but only 3066 short cycles. In addition, its non-zero density is also reduced accordingly, which can be clearly seen from the reduction of the row Hamming weight from 24 to 16. The range of column Hamming weight and the ratio of variance to mean have similar conclusions to the (63, 39) code.

[0128] From the simulation results of the three coding schemes provided above, it can be seen that the optimization goals of the standard check matrix H have been achieved.

[0129] Parameters and performance comparison between the improved normalized minimum sum decoding algorithm NMS and the existing technology:

[0130] Taking BCH (63, 45) code as an example, the hybrid architecture of the improved NMS and its post-processing algorithm ordered statistical decoder OSD is referred to as NDO (4, 1), where "D" means that there is an auxiliary DIA model, the number of iterations of the first-level NMS is 4, and the order of the second-level OSD is p = 1. The improved NMS (4) alone means that its number of iterations is 4. The comparison of different decoding algorithms is shown in Table 2, where I 1 ,I 2 ,I 3 represents the number of iterations of the three-layer iteration, I m It represents the number of iterations of one layer, and the complexity ratio refers to the ratio of the computational complexity of different decoding algorithms during execution relative to the benchmark algorithm.

[0131] Table 2 Comparison of different decoding algorithms

[0132]

[0133] Among them, RRD is the decoding algorithm in the paper "Generating code representations suitable for belief propagation decoding"; mRRD (1) is the decoding algorithm in the paper "Pseudocodewords of Tannergraphs"; PBP is the decoding algorithm in the paper "Deep learning methods for improved decoding of linear codes"; MBBP is the decoding algorithm in the paper "Learned belief propagation decoding with simple scaling and SNR adaptation"; BP-RNN is the decoding algorithm in the paper "On iterative soft-decision decoding of linear binary block codes and product codes".

[0134] The benchmark algorithm uses mRRD (1). It can be found that whether it is RRD, mRRD (1) or PBP, three layers of iteration are required, while MBBP requires two layers of iteration, but different check matrices need to be called to obtain gain (so it is shown as three layers of iteration in the table). In terms of the number of iterations alone, the improved NMS is 4, while other existing decoders require hundreds or more. Considering that the complexity is proportional to the total number of iterations, the number of rows of the check matrix, and the number of types called in each iteration, the last column of the table shows the relative complexity ratio of each algorithm. The improved NMS and its hybrid architecture in this embodiment have obvious advantages.

[0135] It is worth noting that for a hybrid architecture like NDO, when estimating its complexity, it can be approximately considered equal to that of NMS, because the model complexity of DIA depends on the number of iterations of NMS. m =4 makes the complexity of the DIA model implemented by a simple two-layer neural network extremely low. In addition, considering this hybrid architecture, the OSD decoding of the latter level is only started when the decoding of the previous level NMS fails. When NMS can correctly decode most of the received sequences, the subsequent OSD only needs to deal with sporadic failed decoding. Therefore, the decoding complexity introduced by DIA and low-order OSD is negligible in most SNR areas.

[0136] The exception is BP-RNN, which is the result of the neural network of the standard BP algorithm. It only needs to set the number of iterations to 5, and the complexity is the lowest. Figure 2As shown in the BER performance curve, BP-RNN lags behind the improved NMS (4) by more than 1dB.

[0137] Figure 2 In this paper, EPCM is the decoding algorithm in the paper "Random redundant soft-in soft-out decoding of linearblock codes"; mRRD (3) is the decoding algorithm in the paper "Pseudocodewords of Tanner graphs"; MBBD is the decoding algorithm in the paper "Learning to decode linear codes using deep learning".

[0138] Figure 2 In the EPCM, the strategy of simply adding cyclic rows to form redundant rows is used, but its BER performance is the worst, which once again proves the necessity of optimizing the check matrix. Only observing the BER curve, the performance of mRRD (3), MBBD, and PBP exceeds that of NMS (4), but the performance of NDO (4, 1) is very close to the BER of the former decoders.

[0139] In summary, the NDO hybrid architecture of this embodiment achieves the most competitive balance between bit error rate and complexity in comparison with existing decoding algorithms.

Claims

1. Normalized minimum sum decoding of BCH code and its post-processing decoding method, characterized in that The following steps are involved: S1. For the BCH code, optimize the standard check matrix to obtain the best check matrix; S2, inputting the received sequence into an improved normalized minimum sum decoding algorithm NMS based on an optimal check matrix for decoding; S3, if the decoding is successful, the best decoding estimate is output; if the decoding fails, the sequence iteration trajectory after the NMS decoding failure is input into the DIA neural network model, and the reliability metric of each bit is analyzed and output, and then the ordered statistical decoder OSD is used for re-decoding to obtain the best decoding estimate; In S1, the process of obtaining the optimal check matrix is: S1.

1. The standard form of BCH code is H, where H represents the standard check matrix, and its dimension is (NK) × N. K and N represent the length of the message and codeword respectively. H is simplified to its row echelon form H r ; S1.

2. Reduce H r The density of non-zero elements of is: S1.2.

1. Initialize two sets S t and S is an empty set; S1.2.

2. For the first-level loop variable i, execute the loop from 1 to NK, and define w g is a variable that stores the currently known minimum row Hamming weight, w g Initialized to H r The i-th row r i Hamming weight , and r i Add to the set S; S1.2.

3. For the second-level loop variable j from 1 to NK, and j≠i, execute the loop and calculate , Indicates bitwise XOR operation, t mp It is a temporary variable used to store the result of the bitwise XOR operation. j Yes H r The jth row of If the Hamming Less than w g , then update , and t mp Assign it to S as the only set element; If the Hamming Equal to w g , then t mp Add to the set S; If the Hamming Greater than w g , no operation and continue; S1.2.

4. Add the elements in set S after the second layer of loop to set S t In the middle; after the first layer of loop is completed, the set S t The elements in are used to construct the temporary matrix H r1 All possible rows of ; S1.

3. Remove set S t After any shift repeat row, H is accumulated r1 , the shift repetition line is the repetition line obtained by the circular shift operation; S1.

4. For H r1 , execute S1.2 and S1.3 in the same way. During the execution, H r H r1 Replacement, r j quilt replace, Indicates H r1 The j-th row in the matrix is ​​shifted q positions in turn, and the resulting new row set is N, where q = 0, 1, 2, ..., N-1; finally, another temporary matrix H is generated. r2 ; S1.5, H r2 Add redundant rows to form the expanded matrix H o ; S1.6, using simulated annealing algorithm to reduce H o The number of short loops of length 4 in the medium, while balancing H o The column weight distribution is used to obtain the temporary optimal check matrix H b ; S1.7, Removal of H b After all the repeated rows in , we get the optimal check matrix H s ; In S2, the improvements of NMS are as follows: S2.

1. Input transformation: The received sequence is represented as y u , u=1, 2, ..., N, N is the length of the codeword; y u Multiple permutation types of are combined together to form an extended input, which is used as the input of each NMS iteration; S2.

2. Processing of each iteration output: At the tth iteration, the posterior probability obtained after the iteration , perform the inverse operation corresponding to the expanded input to disassemble , and average the disassembled results bit by bit to get the received sequence x u and its corresponding hard decision ,in is a hard decision, expressed as: ; if , exit the loop and return the decoded estimate , H s is the optimal check matrix, T represents transposition; otherwise, the received sequence y u Update to y u +x u And start the next iteration until the maximum number of iterations is reached, then exit and return the last hard decision.

2. The normalized minimum sum decoding and post-processing decoding method of BCH code according to claim 1, characterized in that: In the above S1.5, the method of adding redundant rows is: S1.5.

1. Let the rank of the standard check matrix H be m r =NK, redundancy factor r f =2,H o Initialized to H r2 ; S1.5.2 If H r2 number of rows , then the number of redundant rows added is p r for: ; The addition process is, for the loop variable m from 1 to p r Execute the loop and obtain the index number , H r2 The Jth row is added to H o The bottom of If H r2 number of rows , do nothing and continue.

3. The normalized minimum sum decoding and post-processing decoding method of BCH code according to claim 1, characterized in that: In S1.6, the temporary optimal check matrix H is obtained b The method is: S1.6.

1. Define the loss function L oss : L oss = the number of cycles of length 4 in the check matrix + β × the variance of the column Hamming weight of the check matrix; Where β is a hyperparameter used to adjust the relative importance of two different parts in the loss function; S1.6.2, in the simulated annealing algorithm, set the initial temperature G = 1000, the cooling rate =0.995, number of iterations I s =10000, temporary optimal check matrix H b and the current check matrix H c And its corresponding loss function value and Both are initialized to H o And its loss function value ; S1.6.3, for loop variable z from 1 to I s Execute the loop and find H c The number of short loops of length 4 in each row is normalized to the probability of selecting each row; the loop process is: Assume that row l r l is selected, and the next step is to randomly select an integer Q between 1 and N, with r l The circular shift row Alternative l , get the updated temporary check matrix H n , calculate H n The loss function value , and generate a random number P between 0 and 1 d , make a judgment: if Less than or , H c Updated to H n , L c Updated to L n ; L c That is ; L n That is ; Otherwise continue; if Less than , then H b Updated to H c , L b Updated to L c ; L b That is ; Otherwise continue; G is updated to The value of .

4. The normalized minimum sum decoding and post-processing decoding method of BCH code according to claim 1, characterized in that: In the above-mentioned S2.1, three types of arrangements are applied, namely interlaced arrangement, Frobenius arrangement and cyclic shift.

5. The normalized minimum sum decoding and post-processing decoding method of BCH code according to claim 4, characterized in that: The interleaving arrangement is performed by combining the interleaving of the even index bits and the odd index bits, that is, extracting the even index bits and the odd index bits in the received sequence respectively, and then interleaving them together to form a new arrangement; The Frobenius permutation is, for each bit index u, Arrangement of The circular movement is, combined with the step size d p and random offset d o ,based on Perform circular moves, where s = 0, 1, 2, that is, generate three different arrangements for each circular move.

6. The normalized minimum sum decoding and post-processing decoding method of BCH code according to claim 1, characterized in that: In S3, the ordered statistical decoder OSD is, assuming that the input of OSD is the standard check matrix H, and H is full rank, the order of OSD is p, and the received sequence y u The output of the DIA neural network model corresponding to each bit is recombined into a new received sequence and sorted in ascending order of amplitude to obtain the sequence ; Get with Corresponding column arrangement , is H sorted in ascending order, and then Perform Gaussian elimination on it and simplify it to the system form , where I is the identity matrix with dimensions ; Q2 is the dimension , K represents the length of the message; At the same time, In the process of Gaussian elimination to simplify the system form, there is a second column arrangement ,exist Down, Arranged into sequence ,at this time, The indexes of the leftmost NK bits form an unreliable code position index column, and the indexes of the other bits belong to the reliable code position index column; The potential codeword sequence considered during the decoding process is each codeword candidate , , ,in , are the unreliable code bit sequence and the reliable code bit sequence corresponding to the candidate codeword respectively; Equal to the experimental error pattern set e v The bitwise sum of the hard decisions of the bits corresponding to the reliable code bit index column, e v It consists of all possible error patterns. The common feature of these error patterns is that the Hamming weight of any error pattern does not exceed p, and the length of each error pattern is N; Depend on The constraints are derived from , T represents transposition, and the codeword transmitted accordingly is selected as the variable solution to the following minimal optimization problem: ; In the formula, Yes The hard decision of the u-th position; express The u-th bit value of ; The original received sequence without the DIA neural network model to improve the reliability and The amplitude value of the uth position after two permutations, Represents the indicator function.

Citation Information

Patent Citations

  • Multi-rate multi-code length LDPC code decoding method based on SIMD instruction set

    CN108365849A

  • Optimized LDPC (Low Density Parity Check Code) decoding method based on normalized minimum value

    CN108768409A

Cited By

  • Error correction decoding method based on BCH code

    CN120342407A

  • A BCH code-based error correction decoding method

    CN120342407B

  • Soft iterative decoding method of BCH code

    CN121864106A

  • Soft iterative decoding method for BCH codes

    CN121864106B

  • Quasi-belief propagation decoding method for BCH codes based on neural networks

    CN122553924A