High-speed polar decoding method for improving polar special node processing

By classifying and special processing of polar decoding nodes, the decoding delay and improving efficiency are reduced, and the problems of decoding time extension and parallelism increase in the ordering complexity in the existing technology are solved, thus achieving more efficient polar translation code.

CN119210470APending Publication Date: 2024-12-27THE 54TH RESEARCH INSTITUTE OF CHINA ELECTRONICS TECHNOLOGY GROUP CORPORATION
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411354357.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-27
Publication Date
2024-12-27

AI Technical Summary

Technical Problem

The existing polar decoding method is extended when decoding in the downlink control channel, and the sorting complexity increases exponentially when the parallelism increases, limiting the improvement of decoding efficiency.

Method used

The nodes are classified according to the characteristics of the polar decoding node, and special processing methods are adopted, including building a sequence of coded bit attributes and updating the LLR value, and only path splitting and sorting are performed at special nodes, reducing the number of sorting and decoding delay.

Benefits of technology

It reduces the decoding delay and improves the decoding efficiency, especially in high-parallel scenarios, which significantly improves the decoding performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure BDA0005063171140000024
    Figure BDA0005063171140000024
  • Figure BDA0005063171140000031
    Figure BDA0005063171140000031
  • Figure BDA0005063171140000041
    Figure BDA0005063171140000041
Patent Text Reader

Abstract

The invention discloses a high-speed polar decoding method for improving polar special node processing, and relates to the technical field of information transmission and processing. The high-speed polar decoding method comprises the following steps: firstly constructing a coding bit attribute sequence, then executing FG operation in an SCL algorithm, classifying nodes according to characteristics of polar decoding nodes, and finally performing PM updating, path selection and node decoding according to node types, thereby completing high-speed polar decoding for improving polar special node processing. According to the method, the nodes are classified according to the characteristics of the polar decoding nodes, and different nodes are specially processed, so that the decoding time delay is reduced, and the decoding efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the technical field of information transmission and processing, and in particular to a high-speed polar decoding method for improving polar special node processing. Background Art

[0002] Polar code is the only linear error correction channel coding technology that has been theoretically proven to reach the Shannon limit and has practical linear complexity coding capability. It is the channel coding scheme for the control channel in the 5G NR protocol. In the downlink control channel, the user equipment needs to perform blind detection search among multiple members, that is, perform multiple polar decoding. Therefore, the decoding delay of the polar decoder is an important technical indicator in implementation.

[0003] Reference [1] proposed a polar serial interference cancellation (SC) algorithm. Due to its serial decoding properties, the SC algorithm has a large decoding delay and poor decoding error rate performance in practical short and medium code length scenarios. Reference [2] proposed a list serial interference cancellation SCL algorithm. This algorithm retains L paths during the decoding process and improves the bit error rate performance. In order to improve the decoding efficiency, reference [3] proposed an efficient parallel SCL decoding algorithm. This algorithm supports parallel decoding. When the parallelism is m, it can decode 2 m bits, but the complexity of sorting in the algorithm increases exponentially with the degree of parallelism, so the degree of parallelism should not be too high, which has certain limitations on reducing the decoding delay.

[0004] [1]Arikan E.Channel polarization:A method for constructing capacity-achieving codes for symmetric binary-input memoryless channels[J].IEEE,2008.

[0005] [2]Tal I,Vardy A.List Decoding of Polar Codes[J].IEEE,2012.

[0006] [3] Yuan B, Parhi KK. Low-Latency Successive-Cancellation List Decoders for Polar Codes With Multibit Decision[J]. IEEE Transactions on Very LargeScale Integration (VLSI) Systems, 2014, 23(10). Summary of the invention

[0007] In view of this, the present invention proposes a high-speed polar decoding method for improving polar special node processing. The method classifies nodes according to the characteristics of polar decoding nodes and performs special processing on different nodes, thereby reducing decoding delay and improving decoding efficiency.

[0008] In order to achieve the above object, the technical solution adopted by the present invention is as follows:

[0009] A high-speed polar decoding method for improving polar special node processing comprises the following steps:

[0010] Step 1: record the polar sequence defined by the NR protocol as Take out the elements whose values ​​are less than N and keep their original relative positions to get the subsequence Q N , N is the actual code length of the received signal, and the subsequence Q N The first NK element values ​​in are recorded as frozen bit positions, and the subsequence Q N The last K element values ​​in are recorded as information bit positions, and K is the information bit length;

[0011] Step 2, construct a coding bit attribute sequence of length N: among the N elements of the coding bit attribute sequence, the sequence element corresponding to the frozen bit position is 0, and the sequence element corresponding to the information bit position is 1; the number of consecutive elements 0 at the beginning segment of the coding bit attribute sequence is recorded as F;

[0012] Step 3, let stage = log2(N), record the initial channel information metric value of the received signal as y; record the decoding position as bit_count, and initialize Indicates rounding down; the current number of paths is recorded as L, initialized to L = 1, and the initial PM value of all paths is recorded as 0;

[0013] Step 4, calculate the LLR value of the next level:

[0014] When calculating the left subtree of the binary tree, perform the F operation to update the LLR:

[0015]

[0016] When calculating the right subtree of the binary tree, perform the G operation to update the LLR:

[0017]

[0018] Among them, LL is the LLR value of stage-1, L1 is the LLR value of the current stage, the LLR value corresponding to stage = log2(N) is y, and the superscript i represents the i-th leaf node of the binary tree, 0≤i≤2 stage-1 -1, subscript l indicates the path index, 0≤l≤L-1;

[0019] sign() represents the sign operation, that is:

[0020]

[0021] beta represents the partial sum of decoded bits;

[0022] Step 5, let stage = stage - 1, if stage ≤ 5, then go to step 6, otherwise continue to step 4;

[0023] Step 6: Take bit_count+1 to bit_count+2 from the coded bit attribute sequence stage A subsequence of elements, denoted as u_bit, this subsequence constitutes the root node of a sub-binary tree, determine the node type;

[0024] Step 7, perform PM update, path selection and node decoding according to the node type, and complete high-speed polar decoding for improved polar special node processing.

[0025] Furthermore, the specific method of step 6 is:

[0026] If the values ​​of the elements in u_bit are all 0, the node type is recorded as rate0 node;

[0027] If the values ​​of the elements in u_bit are all 1, the node type is recorded as rate1 node;

[0028] If the first element in u_bit is 0 and the rest are 1, the node type is recorded as an SPC node;

[0029] If the last element in u_bit is 1 and the rest are 0, the node type is recorded as a REP node;

[0030] If u_bit does not meet all the above characteristics, the node is recorded as Other node.

[0031] Furthermore, the specific method of step 7 is:

[0032] Step 701, if the node type is rate0 node, execute step 702, if the node type is rate1 node, execute step 703, if the node type is SPC node, execute step 704, if the node type is REP node, execute step 705, if the node type is Other node, return to step 4;

[0033] Step 702: When the node type is a rate0 node, PM update is performed directly:

[0034]

[0035] Among them, PM t-1 Indicates the PM value obtained from the last update, PM t It refers to the new PM value obtained in this update, and H() represents the hard decision calculation, namely:

[0036]

[0037] And bit_count+1 to bit_count+2 in the current subsequence u_bit stage The decoding results of the corresponding positions are all 0;

[0038] If bit_count = N, then end the loop and complete polar decoding, otherwise set bit_count =

[0039] bit_count+2 stage , determine the value of stage according to the level of the sub-binary tree where the current decoding position bit_count is located, and return to step 4;

[0040] Step 703: When the node type is rate1 node, the following process is performed:

[0041] Step 703-1, set loop variable k, set k=1;

[0042] Step 703-2, sort the LL absolute values ​​of the L paths in ascending order, and for the kth value of |LL| of the lth path after sorting, record its corresponding leaf node index value as m(l,k), and split the rate1 node into 2L paths from L paths. The LLR values ​​of the two new paths split from each path are consistent with the LLR value of the source path; thus, the PM is updated as follows:

[0043]

[0044] If 2L is greater than 8, sort and select the paths, retain the 8 paths with the smallest PM values, and update L = min{2L, 8};

[0045] Step 703-3, determine whether k=2 is true, if so, execute step 703-4, otherwise set k=k+1 and execute step 703-2;

[0046] Step 703-4, in the current subsequence u_bit, for the path The value of the m(l,k)th bit is 0, for the path The value of the m(l,k)th bit is 1, where k∈{1,2}; hard decisions are made on bits other than m(l,k) to obtain the corresponding value results; and finally all bits from bit_count+1 to bit_count+2 are obtained. stage After the position is taken, the value is coded with a length of 2 stage The polar coding is used to obtain the final decoding result;

[0047] Step 703-5, if bit_count=N, then end the loop and complete polar decoding, otherwise set bit_count=bit_count+2 stage , determine the value of stage according to the level of the sub-binary tree where the current decoding position bit_count is located, and execute step 4;

[0048] Step 704: When the node type is an SPC node, the following process is performed:

[0049] Step 704-1, calculate the checksum of the hard decision of the node:

[0050]

[0051] The LL absolute values ​​of the L paths are sorted in ascending order. For the first value of |LL| after sorting of the l-th path, the corresponding leaf node index value is recorded as m(l,1), then:

[0052]

[0053] Update PM to:

[0054]

[0055] Step 704-2, set loop variable k, set k=2;

[0056] Step 704-3, for the kth value after sorting |LL| of the lth path, record its corresponding leaf node index value as m(l,k), and the SPC node splits the path, and the number of paths is split from L to 2L; thus, PM is updated as:

[0057]

[0058] If 2L is greater than 8, sort and select the paths, retain the 8 paths with the smallest PM values, and update L = min{2L, 8};

[0059] Step 704-4, determine whether k=4 is true, if so, execute step 704-5, otherwise set k=k+1 and execute step 704-3;

[0060] Step 704-5, in the subsequence u_bit, if Then the value of the m(l,1)th position is like Then the value of the m(l,1)th position is

[0061] For the path The value of the m(l,k)th bit is 0, for the path The value of the m(l,k)th bit is 1, where k∈{2,3,4};

[0062] Perform hard decisions on bits other than m(l,1), m(l,2), m(l,3) and m(l,4) to obtain corresponding value results;

[0063] Update the first bit, which is equal to the modulo 2 sum of all other bits;

[0064] Get all bit_count+1 to bit_count+2 stage After the position is taken, the value is coded with a length of 2 stage The polar coding is used to obtain the final decoding result;

[0065] Step 704-6, if bit_count=N, then end the loop and complete polar decoding, otherwise set bit_count=bit_count+2 stage , determine the value of stage according to the level of the sub-binary tree where the current decoding position bit_count is located, and execute step 4;

[0066] Step 705: When the node type is a REP node, the REP node splits the path, and the number of paths is split from L to 2L, so that PM is updated as follows:

[0067]

[0068] If 2L is greater than 8, sort and select the paths, retain the 8 paths with the smallest PM values, and update L = min{2L, 8};

[0069] In the current subsequence u_bit, for the path bit_count+2stage The bit decoding result is 0, for path bit_count+2 stage The decoding result of the bit is 1; the decoding results of the remaining positions of the current subsequence u_bit are all 0;

[0070] If bit_count = N, then end the loop and complete polar decoding, otherwise set bit_count =

[0071] bit_count+2 stage , determine the value of stage according to the level of the sub-binary tree where the current decoding position bit_count is located, and execute step 4.

[0072] Due to the adoption of the above technical solution, the beneficial effects of the present invention compared with the prior art are:

[0073] 1. Compared with the traditional SCL algorithm which needs to perform FG operation from the root node to the leaf node, the FG operation in the present invention only needs to be performed to the stage of the special node, which improves the decoding efficiency.

[0074] 2. The traditional SCL algorithm needs to perform a PM sort for each information bit. In the present invention, for rate1 nodes and SPC nodes, only the path expansion of the positions with lower credibility is required, which reduces the number of sorting times.

[0075] 3. Compared with the two parallel decoding algorithms, since the lengths of the special nodes are all greater than or equal to 2, the decoding parallelism of the present invention is improved. DETAILED DESCRIPTION

[0076] The present invention will be further described below in conjunction with specific embodiments.

[0077] A high-speed polar decoding method for improving polar special node processing comprises the following steps:

[0078] Step 1: record the polar sequence defined by the NR protocol as exist Take out the elements whose values ​​are less than N and keep their original relative positions to get the subsequence Q N , N is the actual code length of the received signal, and the subsequence Q N The first NK element values ​​in are recorded as frozen bit positions, and the subsequence Q N The last K element values ​​in are recorded as information bit positions, and K is the information bit length;

[0079] Step 2, construct a coding bit attribute sequence of length N: among the N elements of the coding bit attribute sequence, the sequence element corresponding to the frozen bit position is 0, and the sequence element corresponding to the information bit position is 1; the number of consecutive elements 0 at the beginning segment of the coding bit attribute sequence is recorded as F;

[0080] Specifically, in one embodiment, N=16, K=6, then from Take out the elements whose values ​​are less than 16 and get Q 16 =[0,1,2,4,8,3,5,9,6,10,12,7,11,13,14,15]; therefore, [12,7,11,13,14,15] bits of the coded bit attribute sequence are information bits, and the rest are frozen bits. Therefore, the coded bit attribute sequence is [0,0,0,0,0,0,0,1,0,0,0,1,1,1,1,1], and F of the coded bit attribute sequence is 7.

[0081] Step 3, let stage = log2(N), record the initial channel information metric value of the received signal as y; record the decoding position as bit_count, and initialize Indicates rounding down; the current number of paths is recorded as L, initialized to L = 1, and the initial PM value of all paths is recorded as 0;

[0082] Step 4, calculate the LLR value of the next level:

[0083] When calculating the left subtree of the binary tree, perform the F operation to update the LLR:

[0084]

[0085] When calculating the right subtree of the binary tree, perform the G operation to update the LLR:

[0086]

[0087] Among them, LL is the LLR value of stage-1, L1 is the LLR value of the current stage, the LLR value corresponding to stage = log2(N) is y, and the superscript i represents the i-th leaf node of the binary tree, 0≤i≤2 stage-1 -1, subscript l indicates the path index, 0≤l≤L-1;

[0088] sign() represents the sign operation, that is:

[0089]

[0090] beta represents the partial sum of decoded bits;

[0091] Step 5, let stage = stage - 1, if stage ≤ 5, then go to step 6, otherwise continue to step 4;

[0092] Step 6: Take bit_count+1 to bit_count+2 from the coded bit attribute sequence stage A subsequence of elements, denoted as u_bit, this subsequence constitutes the root node of a sub-binary tree, determine the node type;

[0093] Step 7, perform PM update, path selection and node decoding according to the node type, and complete high-speed polar decoding for improved polar special node processing.

[0094] Furthermore, the specific method of step 6 is:

[0095] If the values ​​of the elements in u_bit are all 0, the node type is recorded as rate0 node;

[0096] If the values ​​of the elements in u_bit are all 1, the node type is recorded as rate1 node;

[0097] If the first element in u_bit is 0 and the rest are 1, the node type is recorded as an SPC node;

[0098] If the last element in u_bit is 1 and the rest are 0, the node type is recorded as a REP node;

[0099] If u_bit does not meet all the above characteristics, the node is recorded as Other node.

[0100] Furthermore, the specific method of step 7 is:

[0101] Step 701, if the node type is rate0 node, execute step 702, if the node type is rate1 node, execute step 703, if the node type is SPC node, execute step 704, if the node type is REP node, execute step 705, if the node type is Other node, return to step 4;

[0102] Step 702: When the node type is rate0 node, it means that all root nodes under the binary tree are frozen bits. Since the frozen bit value is fixed to 0, there is no path extension, and PM can be updated directly according to soft information without PM sorting. Direct PM update:

[0103]

[0104] Among them, PM t-1Indicates the PM value obtained from the last update, PM t It refers to the new PM value obtained in this update, and H() represents the hard decision calculation, namely:

[0105]

[0106] And bit_count+1 to bit_count+2 in the current subsequence u_bit stage The decoding results of the corresponding positions are all 0;

[0107] If bit_count = N, then end the loop and complete polar decoding, otherwise set bit_count = bit_count + 2 stage , determine the value of stage according to the level of the sub-binary tree where the current decoding position bit_count is located, and return to step 4;

[0108] Step 703: When the node type is rate1 node, the following process is performed:

[0109] Step 703-1, set loop variable k, set k=1;

[0110] Step 703-2, sort the LL absolute values ​​of the L paths in ascending order, and for the kth value of |LL| of the lth path after sorting, record its corresponding leaf node index value as m(l,k), and split the rate1 node into 2L paths from L paths. The LLR values ​​of the two new paths split from each path are consistent with the LLR value of the source path; thus, the PM is updated as follows:

[0111]

[0112] If 2L is greater than 8, sort and select the paths, retain the 8 paths with the smallest PM values, and update L = min{2L, 8};

[0113] Step 703-3, determine whether k=2 is true, if so, execute step 703-4, otherwise set k=k+1 and execute step 703-2;

[0114] Step 703-4, in the current subsequence u_bit, for the path The value of the m(l,k)th bit is 0, for the path The value of the m(l,k)th bit is 1, where k∈{1,2}; hard decisions are made on bits other than m(l,k) to obtain the corresponding value results; and finally all bits from bit_count+1 to bit_count+2 are obtained. stage After the position is taken, the value is coded with a length of 2 stageThe polar coding is used to obtain the final decoding result;

[0115] Step 703-5, if bit_count=N, then end the loop and complete polar decoding, otherwise set bit_count=bit_count+2 stage , determine the value of stage according to the level of the sub-binary tree where the current decoding position bit_count is located, and execute step 4;

[0116] Step 704: When the node type is an SPC node, the following process is performed:

[0117] Step 704-1, calculate the checksum of the hard decision of the node:

[0118]

[0119] The LL absolute values ​​of the L paths are sorted in ascending order. For the first value of |LL| after sorting of the l-th path, the corresponding leaf node index value is recorded as m(l,1), then:

[0120]

[0121] Update PM to:

[0122]

[0123] The mod function is the remainder function, which means the summation result is modulo 2. argmin means that The smallest value of i.

[0124] Step 704-2, set loop variable k, set k=2;

[0125] Step 704-3, for the kth value after sorting |LL| of the lth path, record its corresponding leaf node index value as m(l,k), and the SPC node splits the path, and the number of paths is split from L to 2L; thus, PM is updated as:

[0126]

[0127] If 2L is greater than 8, sort and select the paths, retain the 8 paths with the smallest PM values, and update L = min{2L, 8};

[0128] Step 704-4, determine whether k=4 is true, if so, execute step 704-5, otherwise set k=k+1 and execute step 704-3;

[0129] Step 704-5, in the subsequence u_bit, if Then the value of the m(l,1)th position is like Then the value of the m(l,1)th position is

[0130] For the path The value of the m(l,k)th bit is 0, for the path The value of the m(l,k)th bit is 1, where k∈{2,3,4};

[0131] Perform hard decisions on bits other than m(l,1), m(l,2), m(l,3) and m(l,4) to obtain corresponding value results;

[0132] Update the first bit, which is equal to the modulo 2 sum of all other bits;

[0133] Get all bit_count+1 to bit_count+2 stage After the position is taken, the value is coded with a length of 2 stage The polar coding is used to obtain the final decoding result;

[0134] Step 704-6, if bit_count=N, then end the loop and complete polar decoding, otherwise set bit_count=bit_count+2 stage , determine the value of stage according to the level of the sub-binary tree where the current decoding position bit_count is located, and execute step 4;

[0135] Step 705: When the node type is a REP node, only the last bit is an information bit, and the remaining bits are frozen bits. The REP node splits the path, and the number of paths is split from L to 2L, so that PM is updated as follows:

[0136]

[0137] If 2L is greater than 8, sort and select the paths, retain the 8 paths with the smallest PM values, and update L = min{2L, 8};

[0138] In the current subsequence u_bit, for the path bit_count+2 stage The bit decoding result is 0, for path bit_count+2 stage The decoding result of the bit is 1; the decoding results of the remaining positions of the current subsequence u_bit are all 0;

[0139] If bit_count = N, then end the loop and complete polar decoding, otherwise set bit_count = bit_count + 2 stage , determine the value of stage according to the level of the sub-binary tree where the current decoding position bit_count is located, and execute step 4.

[0140] In summary, the present invention classifies nodes according to the characteristics of polar decoding nodes and performs special processing on different nodes, thereby reducing decoding delay and improving decoding efficiency.

[0141] Those skilled in the art will appreciate that the embodiments described are intended to help readers understand the principles of the present invention, and should be understood that the scope of protection of the present invention is not limited to the embodiments described. For those skilled in the art, the present invention may have various changes and variations. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of the claims of the present invention.

Claims

1. A high-speed polar decoding method for improving polar special node processing, characterized in that: The steps include: Step 1: record the polar sequence defined by the NR protocol as N max =1024, in Take out the elements whose values ​​are less than N and keep their original relative positions to get the subsequence Q N , N is the actual code length of the received signal, and the subsequence Q N The first NK element values ​​in are recorded as frozen bit positions, and the subsequence Q N The last K element values ​​in are recorded as information bit positions, and K is the information bit length; Step 2, construct a coding bit attribute sequence of length N: among the N elements of the coding bit attribute sequence, the sequence element corresponding to the frozen bit position is 0, and the sequence element corresponding to the information bit position is 1; the number of consecutive elements 0 at the beginning segment of the coding bit attribute sequence is recorded as F; Step 3, let stage = log2(N), and record the initial channel information metric value of the received signal as y; Record the decoded position as bit_count, initialize Indicates rounding down; the current number of paths is recorded as L, initialized to L = 1, and the initial PM value of all paths is recorded as 0; Step 4, calculate the LLR value of the next level: When calculating the left subtree of the binary tree, perform the F operation to update the LLR: When calculating the right subtree of the binary tree, perform the G operation to update the LLR: Among them, LL is the LLR value of stage-1, L1 is the LLR value of the current stage, the LLR value corresponding to stage = log2(N) is y, and the superscript i represents the i-th leaf node of the binary tree, 0≤i≤2 stage-1 -1, subscript l indicates the path index, 0≤l≤L-1; sign() represents the sign operation, that is: beta represents the partial sum of decoded bits; Step 5, let stage = stage - 1, if stage ≤ 5, then go to step 6, otherwise continue to step 4; Step 6: Take bit_count+1 to bit_count+2 from the coded bit attribute sequence stage A subsequence of elements, denoted as u_bit, this subsequence constitutes the root node of a sub-binary tree, determine the node type; Step 7, perform PM update, path selection and node decoding according to the node type, and complete high-speed polar decoding for improved polar special node processing.

2. A high-speed polar decoding method for improving polar special node processing according to claim 1, characterized in that: The specific method of step 6 is: If the values ​​of the elements in u_bit are all 0, the node type is recorded as rate0 node; If the values ​​of the elements in u_bit are all 1, the node type is recorded as rate1 node; If the first element in u_bit is 0 and the rest are 1, the node type is recorded as an SPC node; If the last element in u_bit is 1 and the rest are 0, the node type is recorded as a REP node; If u_bit does not meet all the above characteristics, the node is recorded as Other node.

3. A high-speed polar decoding method for improving polar special node processing according to claim 2, characterized in that: The specific method of step 7 is: Step 701, if the node type is rate0 node, execute step 702, if the node type is rate1 node, execute step 703, if the node type is SPC node, execute step 704, if the node type is REP node, execute step 705, if the node type is Other node, return to step 4; Step 702: When the node type is a rate0 node, PM update is performed directly: Among them, PM t-1 Indicates the PM value obtained from the last update, PM t It refers to the new PM value obtained in this update, and H() represents the hard decision calculation, namely: And the current subsequence u_bit has bit_count+1 to bit_count+2 stage The decoding results of the corresponding positions are all 0; If bit_count = N, then end the loop and complete polar decoding, otherwise set bit_count = bit_count + 2 stage , determine the value of stage according to the level of the sub-binary tree where the current decoding position bit_count is located, and return to step 4; Step 703: When the node type is rate1 node, the following process is performed: Step 703-1, set loop variable k, set k=1; Step 703-2, sort the LL absolute values ​​of the L paths in ascending order, and for the kth value of |LL| of the lth path after sorting, record its corresponding leaf node index value as m(l,k), and split the rate1 node into 2L paths from L paths. The LLR values ​​of the two new paths split from each path are consistent with the LLR value of the source path; thus, the PM is updated as follows: If 2L is greater than 8, sort and select the paths, retain the 8 paths with the smallest PM values, and update L = min{2L, 8}; Step 703-3, determine whether k=2 is true, if so, execute step 703-4, otherwise set k=k+1 and execute step 703-2; Step 703-4, in the current subsequence u_bit, for the path The value of the m(l,k)th bit is 0, for the path The value of the m(l,k)th bit is 1, where k∈{1,2}; hard decisions are made on bits other than m(l,k) to obtain the corresponding value results; and finally all bits from bit_count+1 to bit_count+2 are obtained. stage After the position is taken, the value is coded with a length of 2 stage The polar coding is used to obtain the final decoding result; Step 703-5, if bit_count=N, then end the loop and complete polar decoding, otherwise set bit_count=bit_count+2 stage , determine the value of stage according to the level of the sub-binary tree where the current decoding position bit_count is located, and execute step 4; Step 704: When the node type is an SPC node, the following process is performed: Step 704-1, calculate the checksum of the hard decision of the node: The LL absolute values ​​of the L paths are sorted in ascending order. For the first value of |LL| after sorting of the l-th path, the corresponding leaf node index value is recorded as m(l,1), then: Update PM to: Step 704-2, set loop variable k, set k=2; Step 704-3, for the kth value after sorting |LL| of the lth path, record its corresponding leaf node index value as m(l,k), and the SPC node splits the path, and the number of paths is split from L to 2L; thus, PM is updated as: If 2L is greater than 8, sort and select the paths, retain the 8 paths with the smallest PM values, and update L = min{2L, 8}; Step 704-4, determine whether k=4 is true, if so, execute step 704-5, otherwise set k=k+1 and execute step 704-3; Step 704-5, in the current subsequence u_bit, if Then the value of the m(l,1)th position is like Then the value of the m(l,1)th position is For the path The value of the m(l,k)th bit is 0, for the path The value of the m(l,k)th bit is 1, where k∈{2,3,4}; Perform hard decisions on bits other than m(l,1), m(l,2), m(l,3) and m(l,4) to obtain corresponding value results; Update the first bit, which is equal to the modulo 2 sum of all other bits; Get all bit_count+1 to bit_count+2 stage After the position is taken, the value is coded with a length of 2 stage The polar coding is used to obtain the final decoding result; Step 704-6, if bit_count=N, then end the loop and complete polar decoding, otherwise set bit_count=bit_count+2 stage , determine the value of stage according to the level of the sub-binary tree where the current decoding position bit_count is located, and execute step 4; Step 705: When the node type is a REP node, the REP node splits the path, and the number of paths is split from L to 2L, so that PM is updated as follows: If 2L is greater than 8, sort and select the paths, retain the 8 paths with the smallest PM values, and update L = min{2L, 8}; In the current subsequence u_bit, for the path bit_count+2 stage The bit decoding result is 0, for path bit_count+2 stage The decoding result of the bit is 1; the decoding results of the remaining positions of the current subsequence u_bit are all 0; If bit_count = N, then end the loop and complete polar decoding, otherwise set bit_count = bit_count + 2 stage , determine the value of stage according to the level of the sub-binary tree where the current decoding position bit_count is located, and execute step 4.

Citation Information

Cited By

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

    CN121193274A