A method for blind identification of parameters of a punctured polar code based on structure characteristics of a coding matrix

CN115622573BActive Publication Date: 2026-09-11HANGZHOU DIANZI UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202211375922.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-04
Publication Date
2026-09-11
Estimated Expiration
2042-11-04

AI Technical Summary

Technical Problem

[0003]然而,针对极化码参数识别的研究目前还不是很多,对于非合作通信领域而言极化码参数识别问题已经是研究的热点

Benefits of technology

[0047]本发明的有益效果:本发明对删余极化码盲识别问题进行了计算和分析,当接收方无法得知截获信号任何参数设置时,需要对信号的各项参数编码进行盲识别,本发明对码长、信息比特位和冻结比特位进行了识别,在接收端获取到了有效信息。本发明还突破了标准非删余极化码码长需满足N=2n的条件,总结了删余极化码的特点,通过计算匹配度缩小备选码长的范围,通过进一步减小码率来锁定待识别码长,把删余极化码的特点与生成矩阵、码字矩阵与行置换矩阵之间的约束关系进行结合,参考不同参数之间的影响。本发明识别性能优于已有方法,工程实用性更强。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115622573B_ABST
    Figure CN115622573B_ABST
Patent Text Reader

Abstract

The application discloses a method for blind identification of punctured polar code parameters based on coding matrix structure characteristics, and belongs to the field of polar code blind identification. Firstly, the punctured polar code is constructed through a puncturing mode and a puncturing criterion. Secondly, a code word matrix is constructed by using an intercepted code stream sequence l, and a generating matrix used in a polar code coding process is obtained. Then, code length identification is performed. Finally, information bit identification and frozen bit identification are performed through a row permutation matrix, and the whole punctured polar code identification is completed. The application obtains effective information at a receiving end, breaks through the condition that the code length of a standard non-punctured polar code needs to satisfy N=2 n , and has better identification performance than existing methods and stronger engineering practicability.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of blind polar code recognition, specifically relating to a blind recognition method for pruning polar code parameters based on the structural features of the coding matrix. Background Technology

[0002] To achieve stable and reliable communication, channel coding techniques are widely used in various digital communication systems. Among them, polar codes are the only known channel coding method that has been rigorously proven to achieve the Shannon limit in binary discrete memoryless channels, and have been selected as the control channel coding scheme for 5G enhanced mobile broadband scenarios. It is foreseeable that in the near future, digital communication systems employing polar codes will become increasingly common.

[0003] However, research on polar code parameter identification is still limited, although it has become a hot research topic in non-cooperative communication. While polar codes are linear block codes and can be decoded using algorithms suitable for linear block codes, traditional blind channel coding identification methods are not applicable to pruned polar codes because they are generally non-systematic codes and lack cyclic code characteristics, especially pruned polar codes. Summary of the Invention

[0004] The purpose of this invention is to address the shortcomings of existing technologies by providing a blind identification method for pruning polar code parameters based on the structural features of the encoding matrix. This method effectively identifies the polar code length, information, and frozen bit positions based on the structural features of the encoding matrix.

[0005] The present invention adopts the following technical solution: constructing a pruned polar code, and obtaining the recognition result of the pruned polar code by analyzing the received codeword and the relationship between the polar code generator matrix and the row permutation matrix.

[0006] To achieve the above objectives, the present invention specifically includes the following steps:

[0007] (1) Constructing cleaved polar codes

[0008] By applying the pruning pattern to a length of N=2 m The polar codes are used to obtain the polar codes of the required length M, where m is a positive integer, and the required length M represents the bit channel sequence. According to the pruning criterion, the frozen set F should include the column vector g. i In the text, all positions marked with "1" indicate that i represents the index of the column vector of the generated matrix.

[0009] Use u Q (g i ) represents the index as Q(g) i The information bits and code bits x)i =ug i Just through u Q (g i Obtain, freeze bit u Q (g i ) and punched bit x i All of these are known to the decoder. Given a length M, P represents the number of bits to be pierced, requiring |P| = NM bits to be pierced. Under the condition i ∈ P, by Q(g i If )∈F, we can obtain:

[0010]

[0011] If the lower bound of the cardinality of Q(P) is NM, then:

[0012] |Q(P)|≥|P|=NM (2)

[0013] According to (1), the upper bound of the bitrate can be obtained:

[0014]

[0015] To minimize the cardinality of Q(P), for any M≤N, |Q(P)|=NM should be satisfied. For M=N-1, |Q(P)|=1, that is, the column weight of the column vector corresponding to the pruning position is 1. This indicates that the pruning mode can be selected based on the column weight of 1.

[0016] In each step of the pruning process, a column with a weight of 1 is always selected to ensure that the equation |Q(P)|=|P| is satisfied. According to the properties of polar codes, there always exists a column with a weight of 1. The indexes of the deleted rows form the initial frozen set F0.

[0017] By removing the codewords at the corresponding positions from the initial frozen set, the pruned polar code is obtained.

[0018] (2) Construct a codeword matrix R using the intercepted code stream sequence l:

[0019]

[0020] The polar code encoding process can be represented in the form of a generator matrix as follows:

[0021] c 1×N =u 1×N G N (5)

[0022] Among them, u 1×N For the original bit sequence, c 1×N G is the encoded bit sequence. N To generate the matrix.

[0023] Because the generator matrix is ​​a full-rank matrix, its row vectors correspond one-to-one with the sub-channels, and A represents the row index of the sub-channel corresponding to each information bit. c Let A = {π(1), π(2), ..., π(k)} be the complement of A. u A For the information bits to be transmitted, To freeze the bits, the encoding process is represented as follows:

[0024]

[0025] In general, the frozen bits of polar codes are all set to 0, and the encoding process can be further simplified to:

[0026] c 1×N =u A G N (A) (7)

[0027] (3) Code length recognition

[0028] Assume the code length of the un-pruned copolar code is N = 2. m First, construct the m-th power Kronecker matrix, that is:

[0029]

[0030] in, It is a dimension of 2 m×1 ×2 m×1 A matrix of all zeros. Passing through matrix B... n After row permutation Change to G n .

[0031] The deletion probability ε of the binary deletion channel ranges from 0 to 1, and the code rate r always takes the maximum value of 1 / 2. The supervision-monitor matrix for different code lengths M is constructed, denoted as H. M (1 / 2, ε). The initial bitstream is iteratively multiplied with the supervision matrix with different parameters to calculate their matching degree η. The M values ​​with η equal to 0 or close to 0 are excluded, and the M value corresponding to the maximum η value is taken as the candidate code length.

[0032] Further reduce the code rate r of the supervision matrix, for example, by taking H M (1 / 3, ε), H M (1 / 4, ε), H M (1 / 5, ε), etc., continue to calculate the matching degree η under different ε and M, exclude N values ​​where η is equal to 0 or close to 0, and take the M value corresponding to the maximum η value as the candidate code length. Continue to repeat the above operation until only one M value has a large η value under each ε and other values ​​are close to 0. Then determine that the code length is the code length N0 to be identified.

[0033] (4) Identification of the number of information bits

[0034] Even after identifying the code length, all ε values ​​are still iterated over, and the number of information bits k in the supervision matrix ranges from 1 to M / 2, that is, taking... Similarly, multiply by the initial bitstream iterations to obtain their matching degree η.

[0035] When the value of k increases from k0-1 to the number of information bits to be identified k0, the matching degree will show a significant increase. Therefore, the difference between the matching degree of all information bit values ​​k and k-1 is calculated, and the number of information bits with the largest matching degree difference is the number of information bits k to be found.

[0036] (5) Information bit identification and frozen bit identification

[0037] For matrix R and matrix Multiplying these results in matrix φ. Under error-free conditions, the positions of the zero column vectors in matrix φ correspond one-to-one with the positions of the frozen bits. Therefore, finding the set of zero column vectors in matrix φ allows us to identify the frozen bits. φ is:

[0038]

[0039] Where R is the received codeword matrix, and U is the information matrix. and Let P be the Kronecker product matrix. k×N It is a full-rank row matrix used to select G. N Bank of China's index belongs to the row of set A, B N Let be a row permutation matrix.

[0040] Considering matrix B N For a row permutation matrix, each row and each column has exactly one element that is 1. The positions of the 1s are different between rows and between columns. Equation (9) can be simplified to:

[0041] φ=UP k×M B N =UΓ (10)

[0042] Where, Γ=[γ1 T γ2 T , ..., γ k T ], γ i Let be the i-th row vector of matrix Γ.

[0043] According to the encoding properties of polar codes, the generator matrix G N With matrix The correspondence between the positions of the row vectors is determined by matrix B. NDecision. When the generating matrix G is removed. N The matrix is ​​obtained after the i-th row. There exists a B N The determined transformation π(·) makes the matrix The dual vector is The π(i)th column. Then the set of row indices for the sub-channels corresponding to the information bits and frozen bits are respectively:

[0044] A={π -1 [α(1)],π -1 [α(2)],...,π -1 [α(k)]} (11)

[0045] A c ={π -1 [β(1)],π -1 [β(2)],...,π -1 [β(k)]} (12)

[0046] This completes the identification of information bits and frozen bits, thus completing the identification of the entire pruned polar code.

[0047] The beneficial effects of this invention are as follows: This invention calculates and analyzes the blind identification problem of pruned polar codes. When the receiver cannot know any parameter settings of the intercepted signal, it is necessary to blindly identify the encoded parameters of the signal. This invention identifies the code length, information bits, and frozen bits, thus obtaining valid information at the receiving end. This invention also overcomes the limitation that the standard non-pruned polar code code length must satisfy N=2. n This invention summarizes the characteristics of pruning polar codes, narrows down the range of candidate code lengths by calculating the matching degree, and locks in the code length to be identified by further reducing the code rate. It combines the characteristics of pruning polar codes with the constraints between the generator matrix, codeword matrix, and row permutation matrix, taking into account the influence of different parameters. The recognition performance of this invention is superior to existing methods, and it has stronger engineering practicality. Attached Figure Description

[0048] Figure 1 This is a flowchart of the method of the present invention. Detailed Implementation

[0049] The following specific examples illustrate the implementation of the present invention. Those skilled in the art can easily understand other advantages and effects of the present invention from the content disclosed in this specification. The present invention can also be implemented or applied through other different specific embodiments, and various details in this specification can also be modified or changed based on different viewpoints and applications without departing from the spirit of the present invention. It should be noted that, unless otherwise specified, the following embodiments and features described therein can be combined with each other.

[0050] The main function of this example is to construct a pruned polar code by utilizing the structural features of the polar code encoding matrix, and then reduce the code rate of the supervision matrix and the relationship between the generator matrix and the row permutation matrix to obtain the code length and information of the pruned polar code and the frozen bits, thereby achieving the purpose of blind recognition of the pruned polar code.

[0051] See flowchart for details Figure 1 This embodiment provides a blind identification method for pruning polar code parameters based on the structural features of the coding matrix. The steps are as follows:

[0052] Step 1: Construct the pruning polar code. This is done by applying the pruning pattern to a length of N=2. m The polar codes are used to obtain the polar codes of the required length M, where m is a positive integer and the required length M represents the bit channel sequence. i Represents the generator matrix G N The i-th column vector, Q(g) i ) represents g i The set of indices at positions "1" in the middle. According to the pruning criterion, the frozen set F should include column vector g. i All the "1" positions in the middle, that is

[0053] Use u Q (g i ) represents the index as Q(g) i The information bits, code bits x i =ug i Just through u Q (g i Obtain, freeze bit u Q (g i ) and punched bit x i All of these are known to the decoder. Given the code length M, P represents the number of puncture bits, requiring |P| = NM puncture bits. Under the condition i ∈ P, by Q(g i If )∈F, we can obtain:

[0054]

[0055] Typically, the frozen set is selected based on the sub-channel error probability; however, the set Q(P) is an additional frozen set that is not selected by the error probability. Generating matrix Bit-reversed matrix B N It only affects the arrangement of the matrix. For convenience, we use matrices. Use the column vectors of the index generator matrix, the matrix The entries on the main diagonal are all "1". If i∈P, because the column vector g i If the i-th entry is 1, then i∈Q(g)i Assume P = {p1, p2, ..., p} N-M},but If the lower bound of the cardinality of Q(P) is NM, then:

[0056] |Q(P)|≥|P|=NM (2)

[0057] According to (1), the upper bound of the bitrate can be obtained:

[0058]

[0059] To minimize the cardinality of Q(P), for any M≤N, |Q(P)|=NM should be satisfied. For M=N-1, |Q(P)|=1, that is, the column weight of the column vector corresponding to the pruning position is 1. This indicates that the pruning mode can be selected based on the column weight of 1.

[0060] In each pruning step, a column with a weight of 1 is always selected to ensure that the equation |Q(P)|=|P| is satisfied. According to the properties of polar codes, there is always a column with a weight of 1. The index of the deleted row forms the initial frozen set F0. The codewords at the corresponding positions are deleted from the frozen set to obtain the pruned polar code.

[0061] Step 2: Assuming no errors, the receiver receives a bit stream consisting of 100 polar codes with a code length of M = 125, and uses a binary deletion channel with a deletion probability of ε0 = 0.5.

[0062] Construct a codeword matrix R using the intercepted bitstream sequence l:

[0063]

[0064] The polar code encoding process can be represented in the form of a generator matrix as follows:

[0065] c 1×N =u 1×N G N (5)

[0066] Among them, u 1×N For the original bit sequence, c 1×N G is the encoded bit sequence. N To generate the matrix.

[0067] Because the generator matrix is ​​a full-rank matrix, its row vectors correspond one-to-one with the sub-channels. A represents the row number of the sub-channel corresponding to each information bit. c Let A = {π(1), π(2), ..., π(k)} be the complement of A. u A For the information bits to be transmitted, To freeze the bits, the encoding process is represented as follows:

[0068]

[0069] In general, the frozen bits of polar codes are all set to 0, and the encoding process can be further simplified to:

[0070] c 1×N =u A G N (A) (7)

[0071] As can be seen from the polar code encoding principle, given a code length, the encoding and decoding structure of a polar code will be uniquely determined, and the encoding process can be represented in the form of a generator matrix. Therefore, the ultimate goal of pruning polar code identification is to identify the polar code length, information bits, and frozen bits.

[0072] Step 3: Code Length Recognition

[0073] Assume the code length of the un-pruned copolar code is N = 2. m First, construct the m-th power Kronecker matrix, that is:

[0074]

[0075] in, It is a dimension of 2 m×1 ×2 m×1 A matrix of all zeros; after matrix B n After row permutation Change to G n .

[0076] Because polar codes are non-systematic codes, their generator matrix G N It is a full-rank N×N square matrix, defined as G. M (A) is the generating matrix G N The submatrix containing the rows corresponding to the frozen positions, after removing the submatrix, has its null space matrix in the binary field defined as H. M (A), then G M (A)·H M (A) = 0.

[0077] Combining equation (7), we can conclude that:

[0078] c 1×M ·H M (A)=0 (13)

[0079] That is, the product of the codeword matrix and the null space matrix is ​​0. The code length is M. The intercepted bitstream (length L) is iteratively multiplied with the null space matrix. After each multiplication, the null space matrix is ​​shifted right by M bits and the multiplication continues. The number of iterations is L / M. The result is rounded down. The number of times the product is 0 is recorded as z. The ratio of z to the number of iterations is defined as the matching degree η.

[0080]

[0081] The deletion probability ε of the binary deletion channel ranges from 0 to 1, using a fixed code rate of 1 / 2, and a parity-check matrix H with different code lengths and information bit distributions. 125 The matching degree is obtained by iteratively multiplying (1 / 2, ε) with the bitstream. Then, the code rate of the supervision matrix is ​​further reduced to increase the number of linearly independent vector groups in the supervision matrix, making the codeword verification more rigorous to eliminate interference. When the matching degree is at its maximum and other values ​​approach 0, the remaining unique code length is obtained as the polar code length, and the estimated code length N0 is 128.

[0082] Step 4: Identify the number of information bits

[0083] After obtaining the code length, the parity-check matrix iterates through all ε values ​​to calculate the matching degree. The number of information bits k in the parity-check matrix ranges from 1 to M / 2, i.e., ... Similarly, multiply by the initial bitstream iterations to obtain their matching degree η.

[0084] Find the difference in matching degree between the k-value and its adjacent k-value. When the difference in matching degree corresponding to the k-value is the largest, the number of information bits obtained is the desired number of information bits k.

[0085] Step 5: Information bit identification and frozen bit identification. For matrix R and matrix... Multiplying them yields matrix φ:

[0086]

[0087] Where R is the received codeword matrix, and U is the information matrix. and Let P be the Kronecker product matrix. k×N Let B be a full-rank row matrix used to select rows in GN whose row indices belong to set A. N It is a row permutation matrix.

[0088] Considering matrix B N For a row permutation matrix, each row and each column has exactly one element that is 1. The positions of the 1s are different between rows and between columns. Equation (9) can be simplified to:

[0089] φ=UP k×M B N =UΓ (10)

[0090] Where, Γ=[γ1 T γ2 T , ..., γ k T ], γ i Let be the i-th row vector of matrix Γ.

[0091] Under error-free conditions, the positions of the zero column vectors in matrix φ correspond one-to-one with the positions of the frozen bits. Finding the set of zero column vectors in matrix φ allows identification of the frozen bits. Based on the properties of polar code encoding, the generator matrix G... N With matrix The correspondence between the positions of the row vectors is determined by matrix B. N Decision. When the generating matrix G is removed. N The matrix is ​​obtained after the i-th row. There exists a B N The determined transformation π(·) makes the matrix The dual vector is The π(i)th column. Then the set of row indices for the sub-channels corresponding to the information bits and frozen bits are respectively:

[0092] A={π -1 [α(1)],π -1 [α(2)],...,π -1 [α(k)]} (11)

[0093] A c ={π -1 [β(1)],π -1 [β(2)],...,π -1 [β(k)]} (12)

[0094] Complete the identification of the entire pruned polar code.

[0095] In summary, this invention studies the blind recognition problem of pruned polar codes, proves the constraint relationship between the generator matrix, codeword matrix, and row permutation matrix, as well as the influence of different parameters, and proposes a blind recognition algorithm for pruned polar codes based on the above. The proposed algorithm has better recognition performance than existing algorithms and is more practical for engineering applications.

[0096] It should be understood that the above description of the preferred embodiments is quite detailed and should not be construed as a limitation on the scope of protection of this invention. Any substitutions or modifications made by those skilled in the art under the guidance of this invention without departing from the scope of protection of the claims shall fall within the scope of protection of this invention. The scope of protection of this invention shall be determined by the appended claims.

Claims

1. A blind identification method for cleaved polar code parameters based on the structural features of the coding matrix, characterized in that... Specifically, the following steps are included: Step 1: Construct a pruning polar code and apply the pruning mode to a length of N=2. m The polar code is obtained by taking the required length M, where m is a positive integer and the required length M represents the bit channel sequence; the frozen set F includes column vector g i All positions with "1" in the matrix, where i is the index of the column vector of the generated matrix, i.e. P represents the number of puncture sites, where |P| = NM puncture sites. Given i ∈ P, Q(g) i )∈F, we get: If the lower bound of the cardinality of Q(P) is NM, then: |Q(P)|≥|P|=NM (2) The upper bound of the bitrate is obtained according to equation (1): For M = N-1, |Q(P)| = 1, which means that the column weight of the column vector corresponding to the deletion position is 1, indicating that the column selection deletion mode is based on the column weight of 1. In each step of the deletion process, a column with a weight of 1 is selected, satisfying the equation |Q(P)|=|P|; according to the properties of polar codes, there is always a column with a weight of 1, and the index of the deleted row forms the initial frozen set F0; Based on the initial frozen set, remove the codewords at the corresponding positions to obtain the pruning polar code; Step 2: Construct a codeword matrix R using the intercepted code stream sequence l: The polar code encoding process can be represented in the form of a generator matrix as follows: c 1×N =u 1×N G N (5) Among them, u 1×N For the original bit sequence, c 1×N G is the encoded bit sequence. N To generate the matrix, A is the row number of the sub-channel corresponding to each element of the information bit. c Let A be the complement of A, and let the set of information bit positions in the polar code be A = {π(1), π(2), ..., π(k)}, u A For the transmitted information bits, To freeze bits, the encoding process is represented as follows: Step 3, code length identification: The code length of the un-pruned co-polarized code is N = 2. m Construct the m-th power Kronecker matrix: in, It is a dimension of 2 m×1 ×2 m×1 A matrix of all zeros, after passing through matrix B n After row permutation Change to G n ; The deletion probability ε of the binary deletion channel ranges from 0 to 1, and the code rate r always takes the maximum value of 1 / 2. The supervision-monitor matrix for different code lengths M is constructed, denoted as H. M (1 / 2, ε); Iteratively multiply the initial bit stream with the supervision matrix with different parameters, calculate the matching degree η, and take the M value corresponding to the maximum η as the candidate code length; Reduce the code rate r of the supervision matrix, continue to calculate the matching degree η under different ε and N, and take the N value corresponding to the maximum value of η as the candidate code length; repeat the above operation until only one N value has a large value of η under each ε and other values ​​are close to 0. This code length is the code length N0 to be identified. Step 4, Information bit count identification: After identifying the code length, traverse all ε values, and take the information bit count k of the supervision matrix from 1 to M / 2. Iterate and multiply it with the initial bit stream to find the matching degree η. Calculate the difference between the matching degree of all possible information bit count values ​​k and k-1. The information bit count with the largest difference is the desired information bit count k. Step 5: Information bit identification and frozen bit identification. Based on the polar code encoding properties, generate matrix G. N With matrix Kronecker product matrix The correspondence between the positions of the row vectors is determined by matrix B. N Decision; when the generating matrix G is removed N The matrix is ​​obtained after the i-th row. There exists a B N The determined transformation π(·) makes the matrix The dual vector is In the π(i)th column, the set of row indices for the sub-channels corresponding to the information bits and frozen bits are as follows: A={π -1 [a(1)], p -1 [α(2)],...,π -1 [a(k)]} (8) A c ={π -1 [β(1)],π -1 [β(2)],...,π -1 [β(k)]} (9) This completes the identification of information bits and frozen bits, thus completing the identification of the entire pruned polar code.

2. The blind identification method for cleaved polar code parameters based on the structural features of the coding matrix according to claim 1, characterized in that: The generating matrix is ​​a full-rank matrix, and its row vectors correspond one-to-one with the sub-channels.

3. The blind identification method for cleaved polar code parameters based on the structural features of the coding matrix according to claim 1, characterized in that: In step 1, u Q (g i ) indicates that the index is Q(g) i The information bits, code bits x i =ug i via u Q (g i Obtain, freeze bit u Q (g i ) and punched bit x i All of these are known to the decoder.

4. The blind identification method for cleaved polar code parameters based on coding matrix structure features according to claim 1, characterized in that: In step 3, all frozen bits of the polar code are set to 0, further simplifying the encoding process as follows: c 1×N =u A G N (A) (10) Polar codes are non-systematic codes, and their generator matrix G N It is a full-rank N×N square matrix, defined as G. M (A) is the generating matrix G N The submatrix containing the rows corresponding to the frozen positions, after removing the submatrix, has its null space matrix in the binary field defined as H. M (A), then G M (A)·H M (A) = 0; Combining equation (7), we get: c 1×M ·H M (A)=0 (11) That is, the product of the codeword matrix and the null space matrix is ​​0; the intercepted bit stream is iteratively multiplied with the null space matrix, and after each multiplication, the null space matrix is ​​shifted right by M bits and multiplied again. The number of iterations is L / M, and the result is rounded down; the number of times the product result is 0 is recorded as z, and the ratio of z to the number of iterations is defined as the matching degree η: The length of the intercepted bit stream is L.

5. The blind identification method for cleaved polar code parameters based on coding matrix structure features according to claim 1, characterized in that: In step 5, under error-free conditions, the positions of the zero column vectors in matrix φ correspond one-to-one with the positions of the frozen bits: Where R is the received codeword matrix, and U is the information matrix. and Let P be the Kronecker product matrix. k×N B is a full-rank row matrix. N It is a row permutation matrix; Equation (9) simplifies to: φ=UP k×M B N =UΓ (14) Where, Γ=[γ1 T γ2 T , ..., γ k T ], γ i Let be the i-th row vector of matrix Γ.