System convolutional code parameter blind identification method and device and storage medium

Through the combination of Walsh-Hadamard transformation and Gaussian elimination method, the problems of slow recognition of system convolution code parameters and low fault tolerance in the prior art are solved, and the recognition of system convolution code parameters with fast and low data volume is achieved, which is suitable for fields such as electronic confrontation and radio signal detection.

CN120128196APending Publication Date: 2025-06-10CHENGDU SIDU SPACE TECH CO LTD

Patent Information

Application Number
CN202510604866.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-12
Publication Date
2025-06-10

AI Technical Summary

Technical Problem

The prior art has problems such as slow identification speed, large amount of data required, and low fault tolerance when identifying system convolutional code parameters in non-cooperative communications.

Method used

Using a combination of Walsh-Hadamard transformation and Gaussian elimination method, the coefficient matrix is constructed, the Walsh transformation is performed, and the number of peaks is counted, the code length and constraint length are traversed, and the correct starting position and verification matrix are obtained using Gaussian transformation to identify the parameters of the system convolution code.

Benefits of technology

It realizes the rapid identification of system convolutional code parameters, reduces the data volume requirement, improves fault tolerance, and is suitable for high code rate identification.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120128196A_ABST
    Figure CN120128196A_ABST
Patent Text Reader

Abstract

The invention discloses a system convolutional code parameter blind identification method and device and a storage medium, and belongs to the technical field of digital communication. The method comprises the following steps: S1, acquiring binary code stream data and constraint length of a system convolutional code; s2, constructing a coefficient matrix according to the initial constraint length and the initial code length, performing Walsh transformation and counting the number of peak values; s3, traversing the code length and the constraint length of the convolutional code of the system; s4, obtaining a correct code length and a correct constraint length from the binary code stream data; s5, selecting an initial position according to the correct code length and the correct constraint length; s6, traversing the initial position, and performing Gaussian transformation on the system matrix; and S7, according to the matrix after Gaussian transformation of the system convolutional code, obtaining a correct initial position and a check matrix so as to obtain parameter information of the system convolutional code. The method has the advantages of being high in recognition speed, small in required data size, high in fault tolerance, capable of meeting the recognition requirement of a high code rate and the like.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of digital communication technologies, and particularly relates to a method, apparatus, and storage medium for blindly identifying system convolutional code parameters. Background Art

[0002] In a digital communication system, there are various interferences and noises in the channel, resulting in errors in the information during the transmission process. To ensure the reliability of the transmission process and reduce the impact of error codes on the correct information, channel coding technologies are usually adopted. For non-cooperative communication, under the condition of no prior information or only a small amount of prior information, completing the identification of the coding type and the estimation of the coding parameters is an important means to obtain information of non-cooperative parties in fields such as intelligent communication, communication detection, and communication countermeasure.

[0003] As a channel coding widely used in digital communication, convolutional codes can be divided into systematic convolutional codes and non-systematic convolutional codes according to whether the information in the codeword changes. If the first bits in the code packet of the bit length are the original input information elements, it is called a systematic convolutional code, otherwise it is a non-systematic convolutional code. The properties of systematic codes and non-systematic codes are basically the same. The difference is that a systematic code can obtain a unique generator matrix from the parity-check matrix, while a non-systematic code cannot obtain a unique generator matrix.

[0004] The output codeword of the systematic convolutional code at the current moment is obtained by linearly combining the current input codeword and the input codewords at several previous moments. Therefore, the convolutional code has memory, that is, there is a correlation between codewords. Therefore, an analysis matrix can be constructed from the received codewords, then elementary row transformations are performed, and finally the relationship between the matrix and the coding parameters is used to realize the identification of the convolutional code. This method requires known prior conditions to complete the identification.

[0005] The Euclidean algorithm finds the greatest common divisor of two numbers by performing multiple divisions with remainders until the remainder is 0. Therefore, this algorithm can be used to solve the greatest common factor between polynomials to complete the identification of convolutional codes. This method is mainly for the identification of convolutional codes with a code rate of 1 / 2.

[0006] The Gaussian elimination method realizes the identification of convolutional codes by solving a system of linear equations. This method requires that the intercepted convolutional code sequence must be error-free and long enough to complete the identification. The Walsh-Hadamard algorithm uses the method of solving an error-containing system of equations to identify and analyze the convolutional code sequence with errors. Existing identification methods have problems such as slow identification speed, large amount of required data, and low fault tolerance. Summary of the Invention

[0007] The purpose of the present invention is to overcome the deficiencies of the prior art and provide a method, apparatus, and storage medium for blindly identifying system convolutional code parameters.

[0008] The object of the present invention is achieved by the following technical solutions: In the first aspect of the present invention, there is provided a method for blindly identifying the parameters of a systematic convolutional code, including the following steps: S1: Obtain the binary code stream data and the constraint length of the systematic convolutional code; S2: Construct a coefficient matrix according to the starting constraint length and the starting code length, perform Walsh transform and count the number of peaks; S3: Traverse the code length and the constraint length of the systematic convolutional code; S4: Obtain the correct code length and the correct constraint length from the binary code stream data; S5: Select the starting position according to the correct code length and the correct constraint length; S6: Traverse the starting position and perform Gaussian transform on the system matrix; S7: Obtain the correct starting position and the parity-check matrix according to the matrix after Gaussian transform of the systematic convolutional code, so as to obtain the parameter information of the systematic convolutional code.

[0009] Preferably, step S3 further includes the following steps: Obtain the total data of the codewords and the data of the current codeword constraint length of the binary code stream data; According to the total data of the codewords and the data of the current codeword constraint length, traverse the code length and the constraint length of the systematic convolutional code and construct a Hadamard matrix.

[0010] Preferably, step S4 further includes the following steps: Perform Walsh transform according to the system matrix and the Hadamard matrix, and count the number of Walsh spectrum values after segmentation; then judge whether there is a peak except at the 0-point position. If there is a peak, the correct code length and the correct constraint length are identified; if there is no peak, return to step S3 and execute the subsequent steps.

[0011] Preferably, step S7 further includes the following steps: Calculate the binary value of the matrix after Gaussian transform, compare the binary value with the correct constraint length. If they are equal, the identification is correct and the parameter information of the systematic convolutional code is output; if they are not equal, continue to traverse the starting position, repeat step S6 and execute the subsequent steps.

[0012] Preferably, the parameter information of the systematic convolutional code includes the correct starting position, the parity-check matrix, the constraint length, the code length and the information bit length.

[0013] In the second aspect of the present invention, there is provided a device for blindly identifying the parameters of a systematic convolutional code, which is used to implement any one of the above methods for blindly identifying the parameters of a systematic convolutional code, including: A data acquisition module, which is used to obtain the binary code stream data and the constraint length of the systematic convolutional code; The Walsh transform module is used to construct a coefficient matrix according to the starting constraint length and the starting code length, perform the Walsh transform, and count the number of peaks. The traversal module is used to traverse the code length and the constraint length of the systematic convolutional code. The verification module is used to obtain the correct code length and the correct constraint length from the binary code stream data. The selection module is used to select the starting position according to the correct code length and the correct constraint length. The Gaussian transform module is used to traverse the starting position and perform the Gaussian transform on the system matrix. The parameter output module is used to obtain the correct starting position and the parity-check matrix according to the matrix after the Gaussian transform of the systematic convolutional code, so as to obtain the parameter information of the systematic convolutional code and output it.

[0014] The third aspect of the present invention provides: a computer-readable storage medium, in which computer-executable instructions are stored, and when the computer-executable instructions are loaded and executed by a processor, any of the above-mentioned systematic convolutional code parameter blind recognition methods is implemented.

[0015] The beneficial effects of the present invention are as follows: 1) The method of combining walsh-Hadamard and Gaussian elimination method is used for recognition, which has the advantages of fast recognition speed, less required data volume, high fault tolerance, and can meet the recognition requirements of higher code rates. Description of the Drawings

[0016] Figure 1 It is a flow chart of the systematic convolutional code parameter blind recognition method. Specific Embodiments

[0017] Next, the technical solutions of the present invention will be described clearly and completely in conjunction with the embodiments. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative efforts shall fall within the protection scope of the present invention.

[0018] Refer to Figure 1 , the first aspect of the present invention provides: a systematic convolutional code parameter blind recognition method, including the following steps: S1: Obtain the binary code stream data and the constraint length of the systematic convolutional code; S2: Construct a coefficient matrix according to the starting constraint length and the starting code length, perform the Walsh transform, and count the number of peaks; S3: Traverse the code length and the constraint length of the systematic convolutional code; S4: Obtain the correct code length and the correct constraint length from the binary code stream data; S5: Select the starting position according to the correct code length and the correct constraint length; S6: Traverse the starting position and perform Gaussian transformation on the system matrix; S7: Obtain the correct starting position and the parity-check matrix based on the matrix after Gaussian transformation of the systematic convolutional code, so as to obtain the parameter information of the systematic convolutional code.

[0019] In this embodiment, the code rate and the constraint length are identified based on the Walsh-Hadamard transform. Assume is the convolutional code sequence received in the noise environment. According to the properties of the convolutional code, the following binary-domain linear equations can be constructed: ; A row in the coefficient matrix is denoted as a vector with length y i , and it is converted to a decimal number v i . Using v i to construct a vector with length V i . The construction method is to set the position in the vector v i corresponding to the decimal number to m ( m is the number of times this decimal number appears and also the number of times this codeword appears), and the rest are set to 0. For example, v i = 10, then 1 is set at , and the rest are set to 0.

[0020] ; Assume there are N more equations in the system of equations. Then the vector V corresponding to the coefficient matrix of the system of equations is: ; Then the Walsh-Hadamard transform of the vector V corresponding to the coefficients of the system of equations can be expressed as: , where is the Walsh spectrum of the vector V ; is the m -dimensional Hadamard matrix: , for example: .

[0021] If n andK If both are correct, then V a peak will appear in the Walsh spectrum of h except at the zero point. Convert the value at this peak position into a binary vector h , then n and K is the parity-check vector. If

[0022] Identify the generator matrix based on Gaussian elimination. From the generator polynomial matrix of the systematic convolutional code G ( x ), the parity-check subsequence C p ( x ) is: ; where is the polynomial of the i -th input information sequence. The C p ( x ) L -th component is: ; Therefore, there is: ; It can be seen that to determine the sub-generator polynomial , the coefficients of each term of these polynomials need to be determined. Since each sub-generator polynomial has 𝐾 + 1 components, to determine these 𝑘 sub-generator polynomials, the following system of equations needs to be solved: ; In the formula can take any positive integer not less than 𝐾, as long as the resulting equations are linearly independent. In practice, starting from the (𝐾 + 1)-th sub-code, 𝑘(𝐾 + 1) code elements of the (𝑘 + 1)-th parity-check subsequence can be taken sequentially.

[0023] Similarly, to determine the sub-generator polynomial , the following system of equations needs to be solved: ; Finally, to determine the sub-generator polynomial , the following system of equations needs to be solved: ; Each time a system of equations composed of k ( K +1) equations is solved,k sub-generator polynomials, so to obtain the n, k, K system convolutional code of k ( n - k ) sub-generator polynomials, it is necessary to solve n - k such systems of equations.

[0024] Output the relevant parameters of the systematic convolutional code. After adding errors to the encoded sequence, use the Walsh-Hadamard algorithm to respectively identify the information bits, code length, and constraint length. Identify the generator matrix from the correctly identified code length and constraint length, and transpose the generator matrix to obtain the parity-check matrix. During the process of identifying the generator matrix, traverse to obtain the correct starting position, thereby completing the identification of the systematic convolutional code.

[0025] The present invention identifies the starting position and the parity-check matrix through Gaussian elimination. Without knowing the encoding parameters of the binary sequence systematic convolutional code, blind identification of the encoding parameters of the systematic convolutional code is achieved through traversal to identify parameters such as the constraint length, code length, information bit length, starting point, and parity-check matrix of the systematic convolutional code of the binary code stream, and blind identification of the channel systematic convolutional code encoding in fields such as communication signal reconnaissance, radio signal detection, and electronic countermeasure can be realized. In addition, the blind identification method of the systematic convolutional code parameters proposed by the present invention has low computational complexity, is easy to implement in engineering, has a high identification probability, and can achieve blind identification of the binary code stream for the systematic convolutional code, which has important significance in fields such as electronic countermeasure, electronic reconnaissance, and radio signal detection.

[0026] In some embodiments, step S3 further includes the following steps: Obtain the total data of the codewords and the current codeword constraint length data of the binary code stream data; According to the total data of the codewords and the current codeword constraint length data, traverse the code length and constraint length of the systematic convolutional code and construct a Hadamard matrix.

[0027] In some embodiments, step S4 further includes the following steps: Perform Walsh transform according to the system matrix and the Hadamard matrix, and count the number of Walsh spectrum values after segmentation; then determine whether there is a peak except at the 0-point position. If there is a peak, identify the correct code length and correct constraint length; if there is no peak, return to step S3 and execute the subsequent steps.

[0028] In some embodiments, step S7 further includes the following steps: Calculate the binary value of the matrix after Gaussian transformation, compare the binary value with the correct constraint length. If they are equal, the recognition is correct and the parameter information of the systematic convolutional code is output; if they are not equal, continue to traverse the starting position, repeat step S6 and execute the subsequent steps.

[0029] In some embodiments, the parameter information of the systematic convolutional code includes the correct starting position, parity-check matrix, constraint length, code length, and information-bit length.

[0030] In this embodiment, let (b 1 , b 2 , ⋯ b n ) be the binary code stream data with error codes to be recognized, simulate the interference and noise during transmission, and the binary code stream data is the binary code stream data after systematic convolutional coding. Assume that the starting code length of the systematic convolutional code is n 0 , the constraint length is k 0 , and the length of the binary code stream data is N 1 . n 0 The range of n 0 is 2 ≤ n 0 ≤ 8, and traverse the code length range according to the n 0 value. k 0 The initial length of

[0031] is 3. n 0 Assume that j is the number of peaks of the j-th hadamard-walsh transform. If there are peaks, the recognition is correct and the constraint length K, code length n, and information-bit length k are output. If there are no peaks, judge whether n 0 is greater than 8. If so, end the program and the recognition fails. If finally n 0 < 8, then n 0 = n 0 + 1, and search for the next correct codeword j again. Count the number of peaks by judging the number of peaks outside the threshold value. The calculation method of the threshold value is 0.7 times the number of rows and the minimum spectral value.

[0032] According to the constraint length K, code length n, and information-bit length k, traverse the starting position s 0 , s 0 The range of s 0 is 1 ≤ s 0 ≤ 1000. According to the length N of the binary code stream data 1, construct the coefficient matrix and perform Gaussian transformation. According to the values of the generated matrix, determine whether the required generated matrix is correct. If it is correct, output the correct starting position and the parity-check matrix H. If it is incorrect and the starting position is less than 1000, continue to traverse the starting position. s 0 , perform the corresponding Gaussian transformation and compare the values of the generated matrix until the correct generated matrix is obtained. Otherwise, exit the program and output recognition failure.

[0033] Based on the previously obtained starting position and the parity-check matrix H, the binary data (b 1 , b 2 , ⋯ b n ) parameters such as the correct constraint length K, code length n, information-bit length k, starting position, and parity-check matrix of the systematic convolutional code of the bit stream can be obtained.

[0034] The second aspect of the present invention provides: A device for blindly identifying parameters of a systematic convolutional code, which is used to implement any of the above methods for blindly identifying parameters of a systematic convolutional code, including: A data acquisition module, which is used to acquire the binary code stream data and the constraint length of the systematic convolutional code; A Walsh transform module, which is used to construct a coefficient matrix according to the starting constraint length and the starting code length, perform Walsh transform and count the number of peaks; A traversal module, which is used to traverse the code length and the constraint length of the systematic convolutional code; A verification module, which is used to obtain the correct code length and the correct constraint length from the binary code stream data; A selection module, which is used to select the starting position according to the correct code length and the correct constraint length; A Gaussian transformation module, which is used to traverse the starting position and perform Gaussian transformation on the system matrix; A parameter output module, according to the matrix after Gaussian transformation of the systematic convolutional code, obtains the correct starting position and the parity-check matrix, thereby obtaining the parameter information of the systematic convolutional code and outputting it.

[0035] The third aspect of the present invention provides: A computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are loaded and executed by a processor, any of the above methods for blindly identifying parameters of a systematic convolutional code is implemented.

[0036] The above are only the preferred embodiments of the present invention. It should be understood that the present invention is not limited to the forms disclosed herein, should not be regarded as excluding other embodiments, but can be used in various other combinations, modifications and environments, and can be changed within the scope of the concept described herein through the above teachings or the technology or knowledge in related fields. Any changes and modifications made by those skilled in the art without departing from the spirit and scope of the present invention shall fall within the protection scope of the appended claims of the present invention.

Claims

1. A method for blindly identifying system convolutional code parameters, characterized in that: The following steps are involved: S1: Obtain binary code stream data and constraint length of the system convolutional code; S2: construct a coefficient matrix according to the starting constraint length and the starting code length, perform Walsh transform and count the number of peaks; S3: traverse the code length and constraint length of the systematic convolutional code; S4: Obtaining the correct code length and the correct constraint length from the binary code stream data; S5: Select the starting position according to the correct code length and the correct constraint length; S6: traverse the starting position and perform Gaussian transformation on the system matrix; S7: According to the matrix after Gaussian transformation of the system convolutional code, the correct starting position and the check matrix are obtained, thereby obtaining parameter information of the system convolutional code.

2. The method for blindly identifying system convolutional code parameters according to claim 1, characterized in that: The S3 further comprises the following steps: Obtain the total codeword data and current codeword constraint length data of the binary code stream data; According to the total codeword data and the current codeword constraint length data, the code length and constraint length of the system convolutional code are traversed, and the Hadamard matrix is ​​constructed.

3. The method for blindly identifying system convolutional code parameters according to claim 2, characterized in that: The S4 further comprises the following steps: Walsh transform is performed according to the system matrix and the Hadamard matrix, and the number of segmented Walsh spectrum values ​​is counted; then it is determined whether there is a peak except the 0 point position. If there is a peak, the correct code length and the correct constraint length are identified; if there is no peak, return to step S3 and execute subsequent steps.

4. The method for blindly identifying system convolutional code parameters according to claim 3, characterized in that: The S7 further comprises the following steps: Calculate the binary value of the matrix after Gaussian transformation, compare the binary value with the correct constraint length, if they are equal, the recognition is correct, and the parameter information of the system convolutional code is output; if they are not equal, continue to traverse the starting position, repeat step S6 and execute subsequent steps.

5. The method for blindly identifying system convolutional code parameters according to any one of claims 1 to 4, characterized in that: The parameter information of the system convolutional code includes the correct starting position, check matrix, constraint length, code length and information bit length.

6. A system convolutional code parameter blind identification device, characterized in that: The method for blindly identifying system convolutional code parameters according to any one of claims 1 to 5 comprises: A data acquisition module, used for acquiring binary code stream data and constraint length of the system convolutional code; Walsh transformation module, used to construct a coefficient matrix according to the starting constraint length and the starting code length, perform Walsh transformation and count the number of peaks; A traversal module, used for traversing the code length and constraint length of the system convolutional code; A verification module, used for obtaining a correct code length and a correct constraint length from binary code stream data; A selection module, used for selecting a starting position according to a correct code length and a correct constraint length; Gaussian transformation module, used to traverse the starting position and perform Gaussian transformation on the system matrix; The parameter output module obtains the correct starting position and the check matrix according to the matrix after Gaussian transformation of the system convolution code, thereby obtaining the parameter information of the system convolution code and outputting it.

7. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, and when the computer-executable instructions are loaded and executed by the processor, the method for blindly identifying system convolutional code parameters as described in any one of claims 1 to 5 is implemented.

Citation Information

Patent Citations

  • Blind identification method for (n, 1 and m) convolutional code with error codes

    CN103401650A

  • Parameter blind identification method of puncturing turbo code component coder

    CN104683072A

  • System convolutional code blind recognition method with error tolerance code

    CN108933606A

  • Blind identification method for non-system convolutional code coding parameters under high error codes

    CN110098839A

  • LDPC code length and codeword starting point identification method based on minimum error decision criterion

    CN113067583A

Cited By

  • Non-system convolutional code parameter blind identification method, medium and program product

    CN120498600A

  • TCM code parameter blind identification method and device and storage medium

    CN120675677A

  • A TCM code parameter blind identification method and device and a storage medium

    CN120675677B