Improved PAC code fast list decoding method and related device

Through the improved fast PAC code list decoding method, combined with dynamic and fixed node thresholds and adaptive path pruning technology, the problem of PAC code list decoding delay is solved, the efficient decoding process is realized and high error correction performance is maintained.

CN120017077AActive Publication Date: 2025-05-16COMMUNICATION UNIVERSITY OF CHINA

Patent Information

Application Number
CN202510081135.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-20
Publication Date
2025-05-16
Estimated Expiration
2045-01-20

AI Technical Summary

Technical Problem

The decoding delay of the existing PAC code list decoding algorithm is relatively long, which limits the application of PAC code in communication systems, especially how to further improve the practicality of PAC code while ensuring error correction performance.

Method used

The improved PAC code fast list decoding method is adopted to obtain and initialize the decoding parameters, update the log-likelihood ratio, judge the node type and perform path expansion or path deletion operations, combine dynamic and fixed node thresholds, and adaptive path pruning technology to reduce unnecessary path expansion and sorting operations.

Benefits of technology

It effectively reduces the delay of the PAC code list decoder, improves the decoding speed, and ensures the high error correction performance of the PAC code, and improves its application reliability in communication systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120017077A_ABST
    Figure CN120017077A_ABST
Patent Text Reader

Abstract

The invention discloses an improved PAC code fast list decoding method and a related device, and relates to the technical field of communication, and the method comprises the steps: obtaining data; decoding parameters are initialized; judging the type of the current node; when the node is a low-code-rate node, executing a path expansion operation according to a fixed node threshold value; performing path deletion by using a fixed path threshold value; when the node is a high-code-rate node, sorting the logarithm likelihood ratios of the updated code words to be decoded, and updating a dynamic node threshold parameter so as to execute path expansion operation; performing path deletion by using the dynamic path threshold value and the fixed path threshold value; updating the dynamic path threshold value and the hard decision data; and sorting all updated path metric values from small to large, and taking the decoding code word of the path with the minimum path metric value as a final decoding result. According to the invention, the decoding speed of the list decoding algorithm of the PAC code can be improved; and meanwhile, the high error correction performance of the PAC code is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to an improved PAC code fast list decoding method and related devices. Background Art

[0002] Error correction coding plays an important role in ensuring reliable communication over wireless channels. Among various error correction codes, polar codes proposed by Arikan are the first channel codes that can reach the capacity of any symmetrical binary input discrete memoryless channels (BI-DMCs). However, finite-length polar codes under successive cancellation (SC) decoding algorithms do not provide competitive error correction performance. To address this limitation, the SC list (SCL) decoding algorithm was introduced, which effectively narrowed the gap between SC and maximum-likelihood (ML) decoding. In addition, in the prior art, polar codes are cascaded with cyclic redundancy check (CRC) codes, and a CRC-aided SCL (CA-SCL) decoding algorithm is proposed, which further improves the error correction performance of the SCL decoder. These improvements have led to the adoption of polar codes in key channels in the 5G new radio (NR) system standardized by 3GPP.

[0003] Polarization-adjusted convolutional (PAC) codes introduce a new polar code variant by cascading a convolution pre-transform with a code rate of 1 and a polarization transform, which significantly improves the performance of polar codes. Specifically, PAC codes with a code length N of 128 and a code rate R of 0.5 can achieve capacity constraints under finite length using the Fano sequence decoding algorithm. At the same time, a list decoding algorithm for PAC codes with fixed complexity has also been proposed. Compared with the Fano sequential decoding algorithm, this decoding algorithm is a non-backtracking decoding algorithm and has advantages in terms of complexity in the worst case. However, in order to achieve similar error correction performance to the Fano sequential decoding algorithm, the list decoding algorithm must use a larger list size, which leads to unbearable decoding delays.

[0004] In order to reduce the delay of list decoding algorithms, some fast list decoding algorithms for PAC codes have been proposed. (1) A four-node fast list decoding algorithm for PAC codes is used to improve the decoding complexity, including Rate-0 node, Rate-1 node, single parity check node (SPC) and reversal node (Rev). (2) A fast list decoding algorithm based on sequence repetition (SR) nodes is used to further reduce the decoding delay. (3) A more generalized T-type node is used to optimize the decoding delay. Although the fast list decoding algorithm can complete decoding at a higher level of the decoding tree, thereby avoiding the delay caused by traversing the entire code tree, the two basic modules in list decoding: list sorting and list copying still cause significant delays. To solve this problem, a series of schemes have been proposed to avoid unnecessary sorting operations caused by path extension, such as threshold-based list decoding algorithms, tree pruning techniques and path splitting key sets. However, the decoding delay caused by the sorting operation still has the potential to be further reduced.

[0005] Therefore, how to further improve the practicality of the PAC code while ensuring the error correction performance, so as to ensure that the PAC code can provide more reliable communication services in future communication systems, has become a technical problem that urgently needs to be solved in this field. Summary of the invention

[0006] The purpose of the present application is to provide an improved PAC code fast list decoding method and related devices, which can improve the decoding speed of the PAC code list decoding algorithm; while ensuring the high error correction performance of the PAC code.

[0007] To achieve the above objectives, this application provides the following solutions:

[0008] In a first aspect, the present application provides an improved PAC code fast list decoding method, the improved PAC code fast list decoding method comprising:

[0009] Obtaining the code type, basic parameters, decoding parameters and log-likelihood ratio of the codeword to be decoded of the decoding processing data; the code type of the decoding processing data includes: code rate and code length; the basic parameters include: bit threshold parameter, list size, convolution sequence and convolution limit length; the decoding parameters include: special node matrix, first dynamic node threshold parameter, second dynamic node threshold parameter, fixed node threshold and fixed path threshold.

[0010] The decoding parameters are initialized to obtain initialized decoding parameters.

[0011] The log-likelihood ratio of the codeword to be decoded is updated, and the type of the current node is determined.

[0012] When the current node is a low-code rate node, a path extension operation is performed according to the fixed node threshold.

[0013] The fixed path threshold is used to delete the path.

[0014] When the current node is a high code rate node, the updated log-likelihood ratio values ​​of the codewords to be decoded are sorted, and the first dynamic node threshold parameter and the second dynamic node threshold parameter are updated.

[0015] The path extension operation is performed according to the updated first dynamic node threshold parameter and the second dynamic node threshold parameter.

[0016] The path is deleted using the dynamic path threshold and the fixed path threshold; the dynamic path threshold is a threshold for path acquisition based on the maximum path metric value.

[0017] The dynamic path threshold and the hard decision data are updated to determine an updated path metric value and an updated hard decision data.

[0018] All updated path metric values ​​are sorted from small to large, and the decoded codeword of the path with the smallest path metric value is taken as the final decoding result.

[0019] In a second aspect, the present application provides a computer device, comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement any of the above-described improved PAC code fast list decoding methods.

[0020] In a third aspect, the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements any of the above-described improved PAC code fast list decoding methods.

[0021] In a fourth aspect, the present application provides a computer program product, including a computer program, which, when executed by a processor, implements any of the improved PAC code fast list decoding methods described above.

[0022] According to the specific embodiments provided in this application, this application discloses the following technical effects:

[0023] The present application provides an improved PAC code fast list decoding method and related devices, the method comprising: obtaining a code type, basic parameters, decoding parameters and a log-likelihood ratio of a codeword to be decoded of decoding processing data; the code type of the decoding processing data comprises: a code rate and a code length; the basic parameters comprise: a bit threshold parameter, a list size, a convolution sequence and a convolution limit length; the decoding parameters comprise: a special node matrix, a first dynamic node threshold parameter, a second dynamic node threshold parameter, a fixed node threshold and a fixed path threshold; initializing the decoding parameters to obtain the initialized decoding parameters; updating the log-likelihood ratio of the codeword to be decoded and determining the type of the current node; when the current node is a low code rate node, performing a path extension operation according to the fixed node threshold ; Path deletion is performed using the fixed path threshold; when the current node is a high code rate node, the updated log-likelihood ratio values ​​of the codewords to be decoded are sorted, and the first dynamic node threshold parameter and the second dynamic node threshold parameter are updated; path extension operation is performed according to the updated first dynamic node threshold parameter and the second dynamic node threshold parameter; path deletion is performed using the dynamic path threshold and the fixed path threshold; the dynamic path threshold is a threshold obtained based on the path of the maximum path metric value; the dynamic path threshold and the hard decision data are updated to determine the updated path metric value and the updated hard decision data; all updated path metric values ​​are sorted from small to large, and the decoded codeword of the path with the minimum path metric value is used as the final decoding result. This application combines node threshold and adaptive path pruning technology; node threshold is used to optimize the path expansion rule, effectively avoiding unnecessary path expansion on high-reliability information bits; adaptive path pruning technology is used to reduce the number of sorting operations, thereby effectively improving the computational efficiency. Finally, a fixed path threshold is introduced to further reduce the number of surviving paths, thereby effectively reducing the decoding delay and ensuring the high error correction performance of the PAC code. BRIEF DESCRIPTION OF THE DRAWINGS

[0024] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0025] Figure 1 This is a diagram of the application environment of an improved PAC code fast list decoding method in one embodiment of the present application.

[0026] Figure 2 A flowchart of an improved PAC code fast list decoding method provided in one embodiment of the present application.

[0027] Figure 3 A schematic diagram of the implementation steps of the decoding processing stage provided in one embodiment of the present application.

[0028] Figure 4 A schematic diagram of the implementation steps of the parameter initialization phase provided in one embodiment of the present application.

[0029] Figure 5 This is a schematic diagram comparing the error correction performance of this application with different decoding algorithms.

[0030] Figure 6 A schematic diagram of the structure of a computer device provided in one embodiment of the present application. DETAILED DESCRIPTION

[0031] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0032] In order to make the above-mentioned objects, features and advantages of the present application more obvious and easy to understand, the present application is further described in detail below in conjunction with the accompanying drawings and specific implementation methods.

[0033] As mentioned above, the decoding delay of the current PAC code list decoding algorithm has room for further reduction, especially the decoding delay caused by the sorting operation. At the same time, the high decoding delay also limits the application of PAC codes in actual communication systems. The present application can reduce the huge delay of the list decoder, improve the decoding speed of the PAC code list decoding algorithm, and ensure the high error correction performance of the PAC code.

[0034] The improved PAC code fast list decoding method provided in the embodiment of the present application can be applied to Figure 1In the application environment shown, the terminal 102 communicates with the server 104 through a network. The data storage system can store data that the server 104 needs to process. The data storage system can be set up separately, integrated on the server 104, or placed on the cloud or other servers. The terminal 102 can send the acquired code type, basic parameters, decoding parameters and log-likelihood ratio of the decoded processing data to the server 104, wherein the code type of the decoded processing data includes: code rate and code length; the basic parameters include: bit threshold parameter, list size, convolution sequence and convolution limit length; the decoding parameters include: special node matrix, first dynamic node threshold parameter, second dynamic node threshold parameter, fixed node threshold and fixed path threshold; after the server 104 receives the code type, basic parameters, decoding parameters and log-likelihood ratio of the decoded processing data, the server 104 initializes the decoding parameters to obtain the initialized decoding parameters; updates the log-likelihood ratio of the code word to be decoded, and determines the type of the current node; when the current node is a low code rate node, the root Perform path extension operation according to the fixed node threshold; use the fixed path threshold to delete the path; when the current node is a high code rate node, sort the updated log-likelihood ratio values ​​of the codewords to be decoded, and update the first dynamic node threshold parameter and the second dynamic node threshold parameter; perform path extension operation according to the updated first dynamic node threshold parameter and the second dynamic node threshold parameter; use the dynamic path threshold and the fixed path threshold to delete the path; the dynamic path threshold is a threshold obtained based on the path with the maximum path metric value; update the dynamic path threshold and hard decision data, determine the updated path metric value and the updated hard decision data; sort all updated path metric values ​​from small to large, and use the decoded codeword of the path with the smallest path metric value as the final decoding result. The server 104 can feed back the final decoding result obtained to the terminal 102. In addition, in some embodiments, the improved PAC code quick list decoding method can also be implemented independently by the server 104 or the terminal 102. For example, the terminal 102 can directly decode the code type, basic parameters, decoding parameters and log-likelihood ratio of the codeword to be decoded of the acquired decoding processing data, or the server 104 can acquire the code type, basic parameters, decoding parameters and log-likelihood ratio of the codeword to be decoded of the decoding processing data from the data storage system, and decode the acquired data.

[0035] The terminal 102 may be, but is not limited to, various desktop computers, laptop computers, smart phones, and tablet computers. The server 104 may be implemented as an independent server or a server cluster consisting of multiple servers, or may be a cloud server.

[0036] In an exemplary embodiment, Figure 2 and Figure 3 As shown, an improved PAC code fast list decoding method is provided, which is executed by a computer device, and can be executed by a computer device such as a terminal or a server alone, or by a terminal and a server together. In the embodiment of the present application, the method is applied to Figure 1 The server 104 in the example is used for explanation, and the method includes the following steps S1 to S10.

[0037] in:

[0038] S1: Obtain the code type, basic parameters, decoding parameters and log-likelihood ratio of the codeword to be decoded of the decoding processing data; the code type of the decoding processing data includes: code rate and code length; the basic parameters include: bit threshold parameter, list size, convolution sequence and convolution limit length; the decoding parameters include: special node matrix, first dynamic node threshold parameter, second dynamic node threshold parameter, fixed node threshold and fixed path threshold.

[0039] S2: Initialize the decoding parameters to obtain initialized decoding parameters.

[0040] S3: Update the log-likelihood ratio of the codeword to be decoded, and determine the type of the current node.

[0041] S4: When the current node is a low-code rate node, a path extension operation is performed according to the fixed node threshold.

[0042] S5: Deleting paths using the fixed path threshold.

[0043] S6: When the current node is a high code rate node, sort the updated log-likelihood ratios of the codewords to be decoded, and update the first dynamic node threshold parameter and the second dynamic node threshold parameter.

[0044] S7: Perform a path extension operation according to the updated first dynamic node threshold parameter and the second dynamic node threshold parameter.

[0045] S8: Deleting a path using a dynamic path threshold and the fixed path threshold; the dynamic path threshold is a threshold for path acquisition based on a maximum path metric value.

[0046] S9: updating the dynamic path threshold and the hard decision data, and determining an updated path metric value and an updated hard decision data.

[0047] S10: Sort all updated path metric values ​​from small to large, and take the decoded codeword of the path with the smallest path metric value as the final decoding result.

[0048] The decoding method designed in this application mainly includes two parts: the first step is to initialize and configure the parameters required for decoding according to the specific requirements of decoding. According to the code type of the decoded data, that is, the code rate and code length, the special node position is determined and the corresponding decoding parameters are initialized; the second step is to decode the data to be decoded, and output the decoding result after the decoding is completed.

[0049] Implementing the above steps S1 to S10 can reduce the processing delay of the PAC decoder without reducing the high error correction performance of the PAC code, which is specifically embodied in:

[0050] (1) This application proposes a dynamic node threshold and a fixed node threshold to avoid unnecessary path extension in the fast list decoding process. Based on the proposed node threshold, a new path extension rule is constructed by distinguishing the reliability of information bits, thereby significantly reducing the decoding delay.

[0051] (2) This application proposes an adaptive path pruning technology to remove unreliable paths from the list. The technology includes two parts: a dynamic path threshold and a fixed path threshold. The first part proposes a dynamic path threshold based on the existing path sorting without introducing any additional computational overhead. The second part introduces a fixed path threshold to further reduce the number of surviving paths, thereby effectively reducing the decoding delay.

[0052] like Figure 4 As shown, in an exemplary embodiment, initializing the special node matrix specifically includes:

[0053] A1: Obtain the code rate, the code length and the bit threshold parameter.

[0054] A2: construct a polarized channel according to the construction mode and the code length, and determine a frozen bit position according to the code rate.

[0055] A3: Determine the type of the current node according to the code length and the frozen bit position.

[0056] A4: If only the first bit of the current node is a frozen bit, the current node is determined to be an SPC node, classified as a high-rate node, and the current node index and the current node length are recorded in the special node matrix.

[0057] A5: If all bits of the current node are information bits, the current node is determined to be a Rate-1 node, classified as a high-rate node, and the current node index and the current node length are recorded in the special node matrix.

[0058] A6: If the number of information bits of the current node is less than or equal to the bit threshold parameter, the current node is determined to be a T-type node, classified as a low-code rate node, and the current node index and the current node length are recorded in the special node matrix.

[0059] Specifically, the initialization of the special node matrix n_martix can be divided into the following steps:

[0060] 1. Input code rate R, code length N and bit threshold parameter T.

[0061] 2. Select a construction method, construct a polarized channel according to the code length N, and select a frozen bit position A according to the code rate R.

[0062] 3. Determine the type of node based on the code length N and the frozen bit position A.

[0063] 3.1. If only the first bit of the node is frozen, it is determined to be an SPC node, classified as a high-rate node, and the node index and length N are recorded. S to the special node matrix n_martix.

[0064] 3.2. If all bits of the node are information bits, it is determined to be a Rate-1 node, classified as a high-rate node, and the node index and length N are recorded. S to the special node matrix n_martix.

[0065] 3.3. If the number of information bits of a node is less than or equal to T, it is judged as a T-type node, classified as a low-code rate node, and the node index and length N are recorded. S to the special node matrix n_martix.

[0066] 4. Output the special node matrix n_martix.

[0067] In an exemplary embodiment, initializing the first dynamic node threshold parameter specifically includes:

[0068] B1: Obtain the code rate, code length, frozen bit position, list size, special node matrix and signal-to-noise ratio to be tested.

[0069] B2: Obtain the maximum length of the SPC node in the special node matrix according to the code rate, the code length, the frozen bit position, the list size, the special node matrix and the signal-to-noise ratio to be tested.

[0070] B3: Set the preset parameter to i=0, obtain the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculate the frame error rate performance loss;

[0071] B4: Determine whether the frame error rate performance loss is less than 1% to obtain a first determination result.

[0072] B5: If the first judgment result is yes, then i is used as the optimal value of the first dynamic node threshold parameter under the signal-to-noise ratio to be tested.

[0073] B6: If the first judgment result is no, then set the preset parameter to i=i+1, and judge Whether it is established, the second judgment result is obtained; wherein, is the maximum length of the SPC node in the special node matrix, and L is the list size.

[0074] B7: If the second judgment result is no, return to the step of "obtaining the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculating the frame error rate performance loss".

[0075] B8: If the second judgment result is yes, i is used as the optimal value of the first dynamic node threshold parameter under the signal-to-noise ratio to be tested.

[0076] Specifically, for the dynamic node threshold parameter S SPC The initialization can be divided into the following steps:

[0077] 1. Input code rate R, code length N, frozen bit position A, list size L, special node matrix n_martix and signal-to-noise ratio Y to be tested.

[0078] 2. Calculate the maximum length of the SPC node in n_martix and set it as a parameter

[0079] 3. Set the preset parameter i=0.

[0080] 4. Test S SPC = i, the frame error rate performance FLD of the decoding algorithm proposed in this application at the signal-to-noise ratio Y to be tested FER .

[0081] 5. Calculate the frame error rate performance loss Loss according to the following formula FER .

[0082]

[0083] List FER is the frame error rate performance of the list decoding algorithm at the signal-to-noise ratio Y to be tested. If Loss FER <1%, jump to step 7, otherwise proceed to the next step.

[0084] 6. Set parameter i=i+1. If If yes, execute the next step; otherwise, jump to step 4.

[0085] 7. Output i value as S SPC The best value under the signal-to-noise ratio Y to be tested.

[0086] In an exemplary embodiment, initializing the second dynamic node threshold parameter specifically includes:

[0087] C1: Get the code rate, code length, frozen bit position, list size, special node matrix, and signal-to-noise ratio to be tested.

[0088] C2: Obtain the maximum length of the Rate-1 node in the special node matrix according to the code rate, the code length, the frozen bit position, the list size, the special node matrix and the signal-to-noise ratio to be tested.

[0089] C3: Set the preset parameter to i=0, obtain the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculate the frame error rate performance loss.

[0090] C4: Determine whether the frame error rate performance loss is less than 1%, and obtain a third determination result.

[0091] C5: If the third judgment result is yes, then i is used as the optimal value of the second dynamic node threshold parameter under the signal-to-noise ratio to be tested.

[0092] C6: If the third judgment result is no, then set the preset parameter to i=i+1, and judge Whether it is established, the fourth judgment result is obtained; wherein, is the maximum length of the Rate-1 node in the special node matrix, and L is the list size.

[0093] C7: If the fourth judgment result is no, return to the step of "obtaining the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculating the frame error rate performance loss".

[0094] C8: If the fourth judgment result is yes, i is used as the optimal value of the second dynamic node threshold parameter under the signal-to-noise ratio to be tested.

[0095] Specifically, for the dynamic node threshold parameter S Rate-1 The initialization can be divided into the following steps:

[0096] 1. Input code rate R, code length N, list size L, frozen bit position A, special node matrix n_martix, and signal-to-noise ratio Y to be tested.

[0097] 2. Calculate the maximum length of the Rate-1 node in n_martix and set it as a parameter

[0098] 3. Set parameter i=0.

[0099] 4. Test S Rate-1 = i, the frame error rate performance FLD of the decoding algorithm proposed in this application at the signal-to-noise ratio Y to be tested FER .

[0100] 5. Calculate the frame error rate performance loss Loss according to formula (1) FER If Loss FER <1%, jump to step 7, otherwise proceed to the next step.

[0101] 6. Set parameter i=i+1. If If yes, execute the next step; otherwise, jump to step 4.

[0102] 7. Output i value as S Rate-1 The best value under the signal-to-noise ratio Y to be tested.

[0103] In an exemplary embodiment, initializing the fixed node threshold specifically includes:

[0104] D1: Get the code rate, code length, frozen bit position, list size, and signal-to-noise ratio to be tested.

[0105] D2: Set the preset parameter to i=0 and determine the search interval.

[0106] D3: Obtain the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculate the frame error rate performance loss.

[0107] D4: Determine whether the frame error rate performance loss is less than 1% to obtain a fifth determination result.

[0108] D5: If the fifth judgment result is no, the preset parameter is set to i=i+i_interval, and the process returns to the step of "obtaining the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculating the frame error rate performance loss"; wherein i_interval is the searched interval.

[0109] D6: If the fifth judgment result is yes, i is used as the optimal value of the fixed node threshold under the signal-to-noise ratio to be tested.

[0110] Specifically, for fixed node threshold The initialization can be divided into the following steps:

[0111] 1. Input the code rate R, code length N, frozen bit position A, list size L, and signal-to-noise ratio Y to be tested.

[0112] 2. Set parameter i=0 and search interval i_interval.

[0113] 3. Testing The frame error rate performance FLD of the decoding algorithm proposed in this application at the signal-to-noise ratio Y to be tested is FER .

[0114] 4. Calculate the frame error rate performance loss Loss according to formula (1) FER If Loss FER <1%, jump to step 6, otherwise proceed to the next step.

[0115] 5. Set parameter i=i+i_interval and jump to step 3.

[0116] 6. Output the value of i as The best value under the signal-to-noise ratio Y to be tested.

[0117] In an exemplary embodiment, initializing the fixed path threshold specifically includes:

[0118] E1: Get the code rate, code length, frozen bit position, list size, and signal-to-noise ratio to be tested.

[0119] E2: Set the preset parameter to i=0 and determine the search interval.

[0120] E3: Obtain the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculate the frame error rate performance loss.

[0121] E4: Determine whether the frame error rate performance loss is less than 1% to obtain a sixth determination result.

[0122] E5: If the sixth judgment result is no, the preset parameter is set to i=i+i_interval, and the process returns to the step of "obtaining the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculating the frame error rate performance loss"; wherein i_interval is the searched interval.

[0123] E6: If the sixth judgment result is yes, i is used as the optimal value of the fixed path threshold under the signal-to-noise ratio to be tested.

[0124] Specifically, for a fixed path threshold The initialization can be divided into the following steps:

[0125] 1. Input the code rate R, code length N, frozen bit position A, list size L, and signal-to-noise ratio Y to be tested.

[0126] 2. Set parameter i=0 and search interval i_interval.

[0127] 3. Testing The frame error rate performance FLD of the decoding algorithm proposed in this application at the signal-to-noise ratio Y to be tested is FER .

[0128] 4. Calculate the frame error rate performance loss Loss according to formula (1) FER If Loss FER <1%, jump to step 6, otherwise proceed to the next step.

[0129] 5. Set parameter i=i+i_interval and jump to step 3.

[0130] 6. Output the value of i as The best value under the signal-to-noise ratio Y to be tested.

[0131] In an exemplary embodiment, the decoding process can be divided into the following steps:

[0132] 1. Input code length N, list size L, frozen bit position A, convolution sequence c, convolution limit length m, special node matrix n_martix, dynamic node threshold parameter S SPC and S Rate-1 , Fixed node threshold Fixed path threshold And the log-likelihood ratio LLR of the codeword to be decoded.

[0133] 2. Initialize i=1.

[0134] 3. Update the log-likelihood ratio of each path in the list Value, where l represents the position parameter of the current path in the list, t represents the level in the decoding code tree, and o represents the oth node located at the tth level of the decoding code tree.

[0135] 3.1 If i = 1, then according to the LLR value Assignment.

[0136] 3.2 If i>1, then use the following formula to Perform the calculation:

[0137]

[0138] Among them, l represents the position parameter of the current path in the list, t represents the level in the decoding code tree, and o represents the oth node located at the tth level of the decoding code tree. Value representation and The corresponding hard decision data.

[0139] 4. Determine the type of the current node and perform corresponding decoding processing.

[0140] 4.1 If it is a high-rate node, extract the length N of the current node according to the special node matrix n_martix S , then perform the following operations.

[0141] 4.1.1 Current Sorting is performed according to the dynamic threshold parameter S SPC and S Rate-1 Update dynamic node threshold

[0142] 4.1.2 Set j=1.

[0143] 4.1.3 If Directly perform the hard decision operation, and then go to step 4.1.5; otherwise go to step 4.1.4.

[0144] 4.1.4 If Directly perform hard decision operation, otherwise perform path extension operation.

[0145] 4.1.5 If the current path number L S If it is greater than the number of lists L, then L paths with the minimum path metric PM are retained, and the dynamic path threshold is updated according to the following formula Otherwise no action is performed.

[0146]

[0147] Among them, l max Represents the position of the path with the maximum path metric value in the list at the current stage.

[0148] 4.1.6 Let j=j+1.

[0149] 4.1.7 If j>N S , go to step 5, otherwise go to step 4.1.3.

[0150] 4.2 If it is a low-bitrate node, extract the length N of the current node according to the special node matrix n_martix S , then perform the following operations.

[0151] 4.2.1 Perform path extension operation based on the following formula.

[0152]

[0153] Among them, u l [i] represents the hard decision value of the current stage, is the log-likelihood ratio value of each path in the list, l is the position parameter of the current path in the list, t is the level of the decoding tree, o is the oth node located at the tth level of the decoding tree, k is the current preset parameter, is the fixed node threshold.

[0154] 4.2.2 Update the path metric value of each path based on the following formula.

[0155]

[0156] in,

[0157] 4.2.3 If the current path Greater than Delete the current path, otherwise do nothing.

[0158] 4.2.4 If the current path number L S If it is greater than the number of lists L, then retain L paths with the minimum path metric PM and update according to formula (4) Otherwise no action is performed.

[0159] 5. For each path in the list The value is updated according to the following formula:

[0160]

[0161] Among them, l represents the position parameter of the current path in the list, t represents the level in the decoding code tree, and o represents the oth node located at the tth level of the decoding code tree.

[0162] 6. Let i=i+N S , if i<N, jump to step 3, otherwise execute the next step.

[0163] 7. Sort the path metric values ​​of all paths from small to large, and output the decoding codeword of the path with the smallest path metric value as the final decoding result.

[0164] Compared with the current fast list decoding algorithm, this application reduces the processing delay of the list decoding algorithm while ensuring the high error correction performance of the PAC code. In order to reflect the beneficial effect of the algorithm proposed in this application compared with the current algorithm, we verified it from two aspects. First, the decoding delay of this application was calculated and compared with the current algorithm; second, the frame error rate performance of the algorithm under different bit rates and code lengths of PAC codes was tested.

[0165] The test uses binary phase shift keying (BPSK) modulation to send codewords on an additive white Gaussian noise (AWGN) channel. For N∈{128,256} and N=64, we use Reed-Muller (RM) construction and Monte-Carlo (MC) construction, respectively. The method proposed in this application ensures that the frame error rate loss is less than 1% at each test signal-to-noise ratio. The generator coefficient of the convolution operation in the PAC code is c=(1,0,1,1,0,1,1,0,1,1). In order to ensure reliable results, at least 500 error frames were collected at each test signal-to-noise ratio.

[0166] The calculation of decoding delay is divided into two cases: limited resources and unlimited resources.

[0167] Table 1 The delay reduction ratio of this application compared with the T-node optimization method under limited resources

[0168]

[0169] Table 1 shows the comparison of decoding delay under limited resources. The calculation rules used are as follows: First, the decoding delay of Rate-0 nodes is set as the benchmark, that is, 1 cycle. Second, compared with Rate-0 nodes, T-type nodes need to r The decoding operation is performed on the path, where K r represents the number of low reliability information bits after the threshold is selected. Therefore, a T-type node requires 2K r cycles to complete decoding. Third, the high-code rate node needs to decode the information bits sequentially, and each low-reliability information bit needs to perform a path extension operation. Fourth, if the high-code rate node has no information bits that need to perform a path extension operation, its decoding delay is one cycle. It can be seen that compared with the T-type node optimization method, the improved fast list decoding algorithm proposed in this application has a maximum delay reduction of 75.18%.

[0170] Table 2 The delay reduction ratio of this application compared with the T-node optimization method under the condition of unlimited resources

[0171]

[0172] Table 2 gives a comparison of decoding delays without resource constraints. The calculation rules used are as follows: First, since there are no resource constraints, all parallelizable operations can be completed within 1 cycle. Second, the replication of L paths, the sorting of the corresponding path metric values ​​of 2L paths, and the selection of the most reliable L paths are all completed in 1 cycle. Third, the sorting operation of the log-likelihood ratio is completed in one cycle. Fourth, the hard decision operation of the log-likelihood ratio, polarization conversion, and single-bit convolution operations can all be executed instantly without consuming delay. Fifth, each multi-bit convolution operation consumes one cycle. The data in Table 2 show that compared with the T-node optimization method, the improved fast list decoding algorithm proposed in this application can reduce the decoding delay by up to 60.99%.

[0173] Figure 5 The error correction performance comparison between the present application and different decoding algorithms at different code rates and code lengths is shown. Since the error correction performance loss of introducing T-type nodes is negligible compared to the traditional list algorithm, the present application adopts the T-type node optimization method as the comparison algorithm. It can be seen that under different code rates and code lengths, the present application has similar error correction performance compared to the T-type node optimization method. Compared with the polar code using the simplified successive cancellation (SSC) decoding algorithm and the CA-SCL decoding algorithm in the 5G standard, the present application also demonstrates better error correction performance, which further illustrates the application potential of the present application in mobile communication systems. In addition, Figure 5 The frame error rate performance of the present application using floating point quantization and fixed point quantization when L=4 is also shown. It can be seen that the error correction performance loss caused by using fixed point quantization to the present application is negligible. The test results show that the fast list decoding algorithm proposed by the present invention can further reduce the decoding delay and ensure the high error correction performance of the PAC code.

[0174] The present application also provides an application scenario, which applies the above-mentioned improved PAC code fast list decoding method. Specifically: the improved PAC code fast list decoding method provided in this embodiment can be applied in communication technology scenarios. The communication technology scenario includes: data acquisition link, initialization link, node type judgment link, first path expansion link, first path deletion link, first sorting and first update link, second path expansion link, second path deletion link, second update link and second sorting link; specifically: obtain the code type, basic parameters, decoding parameters and log-likelihood ratio of the codeword to be decoded of the decoding processing data; the code type of the decoding processing data includes: code rate and code length; the basic parameters include: bit threshold parameters, list size, convolution sequence and convolution limit length; the decoding parameters include: special node matrix, first dynamic node threshold parameter, second dynamic node threshold parameter, fixed node threshold and fixed path threshold; initialize the decoding parameters to obtain the initialized decoding parameters; update the log-likelihood ratio of the codeword to be decoded, and judge the type of the current node; When the current node is a low-code rate node, a path extension operation is performed according to the fixed node threshold; the fixed path threshold is used to delete the path; when the current node is a high-code rate node, the updated log-likelihood ratio values ​​of the codewords to be decoded are sorted, and the first dynamic node threshold parameter and the second dynamic node threshold parameter are updated; a path extension operation is performed according to the updated first dynamic node threshold parameter and the second dynamic node threshold parameter; the path is deleted using the dynamic path threshold and the fixed path threshold; the dynamic path threshold is a threshold obtained based on the path with the maximum path metric value; the dynamic path threshold and hard decision data are updated to determine the updated path metric value and the updated hard decision data; all updated path metric values ​​are sorted from small to large, and the decoded codeword of the path with the smallest path metric value is used as the final decoding result.

[0175] In an exemplary embodiment, a computer device is provided. The computer device may be a server or a terminal. The internal structure diagram thereof may be as follows: Figure 6As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. The processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store the code type, basic parameters, decoding parameters and log-likelihood ratio of the codeword to be decoded for decoding processing data. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, an improved PAC code fast list decoding method is implemented.

[0176] Those skilled in the art will understand that Figure 6 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0177] In an exemplary embodiment, a computer device is further provided, including a memory and a processor, wherein a computer program is stored in the memory, and the above-mentioned method embodiments are implemented when the processor executes the computer program.

[0178] In an exemplary embodiment, a computer-readable storage medium is provided, storing a computer program, and when the computer program is executed by a processor, the above-mentioned method embodiments are implemented.

[0179] In an exemplary embodiment, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the above-mentioned method embodiments are implemented.

[0180] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.

[0181] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM may be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).

[0182] The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. The non-relational database may include a distributed database based on blockchain, etc., but is not limited thereto. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., but is not limited thereto.

[0183] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0184] This article uses specific examples to illustrate the principles and implementation methods of this application. The description of the above embodiments is only used to help understand the method and core ideas of this application. At the same time, for those skilled in the art, according to the ideas of this application, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as limiting this application.

Claims

1. An improved PAC code fast list decoding method, characterized in that: The improved PAC code fast list decoding method comprises: Obtaining a code type, basic parameters, decoding parameters and log-likelihood ratio of a codeword to be decoded of the decoding processing data; the code type of the decoding processing data includes: code rate and code length; the basic parameters include: bit threshold parameter, list size, convolution sequence and convolution limit length; the decoding parameters include: special node matrix, first dynamic node threshold parameter, second dynamic node threshold parameter, fixed node threshold and fixed path threshold; Initializing the decoding parameters to obtain initialized decoding parameters; Updating the log-likelihood ratio of the codeword to be decoded, and determining the type of the current node; When the current node is a low-code rate node, performing a path extension operation according to the fixed node threshold; Deleting a path using the fixed path threshold; When the current node is a high code rate node, sorting the updated log-likelihood ratio values ​​of the codewords to be decoded, and updating the first dynamic node threshold parameter and the second dynamic node threshold parameter; performing a path extension operation according to the updated first dynamic node threshold parameter and the second dynamic node threshold parameter; Utilizing the dynamic path threshold and the fixed path threshold to perform path deletion; the dynamic path threshold is a threshold for path acquisition based on the maximum path metric value; Updating the dynamic path threshold and the hard decision data to determine an updated path metric value and an updated hard decision data; All updated path metric values ​​are sorted from small to large, and the decoded codeword of the path with the smallest path metric value is taken as the final decoding result.

2. The improved PAC code fast list decoding method according to claim 1, characterized in that: Initializing the special node matrix specifically includes: Obtaining the code rate, the code length and the bit threshold parameter; constructing a polarized channel according to the construction mode and the code length, and determining a frozen bit position according to the code rate; Determining the type of the current node according to the code length and the frozen bit position; If only the first bit of the current node is a frozen bit, the current node is determined to be an SPC node, classified as a high-rate node, and the current node index and the current node length are recorded in the special node matrix; If all bits of the current node are information bits, the current node is determined to be a Rate-1 node, classified as a high-rate node, and the current node index and the current node length are recorded in the special node matrix; If the number of information bits of the current node is less than or equal to the bit threshold parameter, the current node is determined to be a T-type node, classified as a low-code rate node, and the current node index and the current node length are recorded in the special node matrix.

3. The improved PAC code fast list decoding method according to claim 2, characterized in that: Initializing the first dynamic node threshold parameter specifically includes: Get the code rate, code length, frozen bit position, list size, special node matrix and signal-to-noise ratio to be tested; Obtaining a maximum length of an SPC node in the special node matrix according to the code rate, the code length, the frozen bit position, the list size, the special node matrix, and the signal-to-noise ratio to be tested; Set the preset parameter i=0, obtain the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculate the frame error rate performance loss; Determine whether the frame error rate performance loss is less than 1%, and obtain a first determination result; If the first judgment result is yes, i is used as the optimal value of the first dynamic node threshold parameter under the signal-to-noise ratio to be tested; If the first judgment result is no, the preset parameter is set to i=i+1, and the judgment Whether it is established, the second judgment result is obtained; wherein, is the maximum length of the SPC node in the special node matrix, and L is the list size; If the second judgment result is no, return to the step of "obtaining the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculating the frame error rate performance loss"; If the second judgment result is yes, i is used as the optimal value of the first dynamic node threshold parameter under the signal-to-noise ratio to be tested.

4. The improved PAC code fast list decoding method according to claim 3, characterized in that: Initializing the second dynamic node threshold parameter specifically includes: Get the code rate, code length, frozen bit position, list size, special node matrix and signal-to-noise ratio to be tested; Obtaining a maximum length of a Rate-1 node in the special node matrix according to the code rate, the code length, the frozen bit position, the list size, the special node matrix, and the signal-to-noise ratio to be tested; Set the preset parameter i=0, obtain the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculate the frame error rate performance loss; Determine whether the frame error rate performance loss is less than 1%, and obtain a third determination result; If the third judgment result is yes, i is used as the optimal value of the second dynamic node threshold parameter under the signal-to-noise ratio to be tested; If the third judgment result is no, the preset parameter is set to i=i+1, and the judgment Whether it is established, the fourth judgment result is obtained; wherein, is the maximum length of the Rate-1 node in the special node matrix, and L is the list size; If the fourth judgment result is no, return to the step of "obtaining the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculating the frame error rate performance loss"; If the fourth judgment result is yes, i is used as the optimal value of the second dynamic node threshold parameter under the signal-to-noise ratio to be tested.

5. The improved PAC code fast list decoding method according to claim 4, characterized in that: Initializing the fixed node threshold specifically includes: Get the code rate, code length, frozen bit position, list size and signal-to-noise ratio to be tested; Set the preset parameter to i=0 and determine the search interval; Obtain the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculate the frame error rate performance loss; Determine whether the frame error rate performance loss is less than 1%, and obtain a fifth determination result; If the fifth judgment result is no, the preset parameter is set to i=i+i_interval, and the process returns to the step of "obtaining the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculating the frame error rate performance loss"; wherein i_interval is the searched interval; If the fifth judgment result is yes, i is used as the optimal value of the fixed node threshold under the signal-to-noise ratio to be tested.

6. The improved PAC code fast list decoding method according to claim 5, characterized in that: Initializing the fixed path threshold specifically includes: Get the code rate, code length, frozen bit position, list size and signal-to-noise ratio to be tested; Set the preset parameter to i=0 and determine the search interval; Obtain the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculate the frame error rate performance loss; Determine whether the frame error rate performance loss is less than 1%, and obtain a sixth determination result; If the sixth judgment result is no, the preset parameter is set to i=i+i_interval, and the process returns to the step of "obtaining the frame error rate performance at the signal-to-noise ratio to be tested at this time, and calculating the frame error rate performance loss"; wherein i_interval is the searched interval; If the sixth judgment result is yes, i is used as the optimal value of the fixed path threshold under the signal-to-noise ratio to be tested.

7. The improved PAC code fast list decoding method according to claim 6, characterized in that: The calculation formula of the path extension operation is: Among them, u l [i] is the hard decision value of the current stage, is the log-likelihood ratio value of each path in the list, l is the position parameter of the current path in the list, t is the level of the decoding tree, o is the oth node located at the tth level of the decoding tree, k is the current preset parameter, is the fixed node threshold.

8. A computer device comprising: A memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the improved PAC code fast list decoding method according to any one of claims 1 to 7.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the improved PAC code fast list decoding method described in any one of claims 1 to 7 is implemented.

10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the improved PAC code fast list decoding method described in any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • List search construction method for PAC codes or polarization codes

    CN116470923A

  • Mixed state-based PAC code list Viterbi decoding algorithm, device and equipment

    CN116545584A

  • List decoding method and system for Polar and PAC codes

    CN117134780A

  • PAC code list decoding method and system, storage medium and equipment

    CN117749198A

  • Quick list decoding method for polarization-adjusted convolutional code special nodes

    WO2024244182A1

Cited By

  • PAC code low-complexity sequential decoding method and device, medium and product

    CN121193274A