CN116743189A - Tail-biting convolutional code coding method and decoding method adopting hash function - Google Patents

Tail-biting convolutional code coding method and decoding method adopting hash function Download PDF

Info

Publication number
CN116743189A
CN116743189A CN202210199768.0A CN202210199768A CN116743189A CN 116743189 A CN116743189 A CN 116743189A CN 202210199768 A CN202210199768 A CN 202210199768A CN 116743189 A CN116743189 A CN 116743189A
Authority
CN
China
Prior art keywords
sequence
hash
decoding
codeword
sub
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210199768.0A
Other languages
Chinese (zh)
Inventor
白宝明
王元
袁瑞敏
陈佩瑶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN202210199768.0A priority Critical patent/CN116743189A/en
Publication of CN116743189A publication Critical patent/CN116743189A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
    • H03M13/235Encoding of convolutional codes, e.g. methods or arrangements for parallel or block-wise encoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • H03M13/413Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors tail biting Viterbi decoding

Abstract

The invention discloses a tail biting convolutional code coding method and a decoding method adopting a hash function, wherein the coding method comprises the following steps: segmenting an information sequence to be coded according to a preset segmentation strategy to obtain a plurality of subsequences; encoding each sub-sequence by using an encoder to generate a check sequence, and combining the check sequence with the current sub-sequence to form a sub-code word sequence; combining all sub-codeword sequences according to a preset combination mode to obtain a codeword sequence, and performing tail biting convolutional code coding on the codeword sequence; performing rate matching on the coded sequence according to a pre-stored rate matching algorithm; the rate-matched sequence is modulated by a modulator. The invention divides the information sequence into a plurality of sub-sequences and generates a corresponding check sequence for any sub-sequence, thereby enabling the segmented decoding during decoding, reducing the false alarm rate and the block error rate, reducing the decoding delay, reducing the power consumption and improving the system performance.

Description

Tail-biting convolutional code coding method and decoding method adopting hash function
Technical Field
The invention belongs to the technical field of communication, and particularly relates to a tail biting convolutional code coding method and a decoding method adopting a hash function.
Background
Since convolutional codes have been invented, they have been applied in communication systems as an efficient channel coding technique. The LTE (Long Term Evolution ) system is a wireless air interface technology evolution proposed by a 3GPP standardization organization, and is currently being developed and deployed in a global scope, and the system needs to achieve higher bandwidth, larger capacity, higher data transmission rate, lower transmission delay and lower operation cost, and simultaneously, in order to meet the high-rate requirements of users for real-time services such as broadcast and multicast services, the LTE system adopts Turbo coding and tail biting convolutional code coding according to different transmission channels in the channel coding process, wherein the tail biting convolutional coding is mainly used in the coding process of broadcasting channels pbch, uplink and downlink control channel information dci and uci, and the coding schemes and coding rates used for different types of transmission channels and control channels are different. Tail biting convolutional code encoding processes use tail biting techniques, i.e., ensuring that the trellis starts and ends in the same state, which requires the last few bits of the encoded data block to be the initial state of the register.
The convolutional code encoded by the tail biting method not only eliminates the bit error rate loss caused by initializing the encoder by using the known bits, but also can provide the same protection capability for all information bits by the tail biting structure. Because of these advantages of tail-biting convolutional codes, it is widely used in various communication systems as a coding scheme for control signaling. For shorter information sequences, the protection of the code rate by tail biting coding is considerable, such as broadcasting channels in LTE, and there are 40 bits after adding the cyclic redundancy check bits, and the code rate loss of the 40-bit information sequence reaches 13% if the tail biting coding technology is not used.
The tail biting convolutional code coding and decoding modes in the prior art comprise CRC (Cyclic Redundancy Check ) assisted tail biting convolutional code coding and decoding. FIG. 1 is a schematic diagram of a CRC-assisted tail-biting convolutional code encoding and decoding method in the prior art, the CRC-assisted tail-biting convolutional code encoding and decoding process comprising: firstly, an original information sequence to be encoded is encoded by a CRC encoder to generate a corresponding CRC sequence, then the original information sequence and the CRC sequence are sent to a TBCC (Tailing Biting Convolution Code, tail biting convolutional code) encoder together, and after encoding, the original information sequence and the CRC sequence are modulated by a modulator and then sent to a receiving end through a channel; during decoding, a tail biting convolutional code and a CRC joint decoder are adopted for decoding a bit stream demodulated by a demodulator, a CRC-assisted Serial List Viterbi (SLV) decoding algorithm is mainly adopted, when a decoding result of final decoding is selected during decoding, the tail biting convolutional code and the CRC joint decoder firstly restore all candidate code words into candidate information sequences containing CRC, CRC decoding processing is carried out on all candidate information sequences which do not exceed the maximum list number, and the candidate information sequences which pass through CRC decoding and have the highest reliability are used as the final decoding result.
To improve the performance of tail-biting convolutional code decoding, a serial list viterbi algorithm is typically employed. For decoding of CRC-assisted tail-biting convolutional codes, the path selection of list Viterbi decoding is performed by using the additional CRC bits during decoding, which results in an increase in false alarm rate. The false alarm rate is an important performance evaluation of the control channel, and a high false alarm rate can improve the uplink collision probability of the UE (User Equipment), improve the power consumption of the UE, and reduce the system performance.
Disclosure of Invention
In order to solve the problems in the prior art, the invention provides a tail biting convolutional code coding method and a decoding method adopting a hash function, which are used for solving the problem of reducing the decoding verification processing time delay of the tail biting convolutional code and reducing the false alarm rate and the false alarm rate. The technical problems to be solved by the invention are realized by the following technical scheme:
one aspect of the present invention provides a tail-biting convolutional code encoding method employing a hash function, comprising:
segmenting an information sequence to be coded according to a preset segmentation strategy to obtain a plurality of subsequences;
encoding each sub-sequence by using an encoder to generate a check sequence, combining the check sequence with the current sub-sequence to form a sub-code word sequence, and obtaining a plurality of sub-code word sequences;
combining all sub-codeword sequences to obtain a codeword sequence, and performing tail biting convolutional code coding on the codeword sequence;
performing rate matching on the coded sequence according to a pre-stored rate matching algorithm;
the sequence after rate matching is modulated by a modulator and is sent to a receiving end.
In one embodiment of the invention, for each sub-sequence m i All through corresponding encoders H i Encodes it, the encoder H i Is a Hash encoder, comprising two input ends and an output end, wherein the first input end inputs a corresponding subsequence m i The second input is input with an encoder H i-1 Output hash sequence S i-1 The output end outputs the current subsequence m i Processed hash sequence S i
In one embodiment of the present invention, encoding each sub-sequence with an encoder to generate a check sequence, and combining the check sequence with a current sub-sequence to form a sub-codeword sequence includes:
each subsequence m i And the corresponding v-bit state value output Hash encoder H i In (3) through a Hash encoder H i Encoding processing is carried out to obtain a hash sequence S i
By means of a truncation function T i For hash sequence S i Intercepting part or all of the data to obtain a check sequence h i
The subsequence m i And the check sequence h i Combining to generate sub-code word sequence c i
In one embodiment of the present invention, the v-bit state value of the first bit encoder is preset to 0, and the v-bit state values of the remaining encoders are hash sequences output by the previous bit encoder.
In one embodiment of the present invention, the S2 includes: cut-off function T i The intercepting mode of (a) is as follows: presetting the length of hash sequence to be intercepted or the length of hash sequence to be interceptedPosition.
In one embodiment of the present invention, combining all sub-codeword sequences to obtain a codeword sequence, and tail biting convolutional code encoding the codeword sequence, includes:
combining all sub-codeword sequences according to a preset mode to obtain a codeword sequence;
and performing tail biting convolutional code coding on the codeword sequence d by using a polarization code encoder to obtain a coded sequence.
Another aspect of the present invention provides a method for decoding a tail-biting convolutional code using a hash function, which is applied to a receiving end corresponding to the encoding method described in any one of the foregoing embodiments, where the decoding method includes:
receiving a codeword from a transmitting end, demodulating and performing rate de-matching to obtain a codeword subjected to rate de-matching;
and carrying out list Viterbi decoding on the code words subjected to rate de-matching to obtain a decoding result.
In one embodiment of the present invention, performing list viterbi decoding on the code word after rate dematching includes:
sending the code word after rate de-matching into a TBCC-Hash joint decoder, checking the code word segment by using the corresponding check code word according to the segmentation strategy, and obtaining a final decoding result.
In one embodiment of the present invention, performing serial list viterbi decoding on a code word after rate dematching includes:
first, codeword sequence c 'is decoded' 1 Assuming that the decoder is preset with L paths reserved, L codeword sequences c 'are obtained' 1 For L code word sequences c' 1 Each codeword sequence c' 1 All through the Hash encoder H 1 Corresponding Hash decoder T 1 Checking if L code word sequences c' 1 All fail to pass the verification, the decoding fails and the final decoding is carried out in advance, otherwise, the Hash decoder T is reserved 1 Decoding the sequence and checking the sequence h 1 Equal paths and proceeding with subsequent segments based on the reserved pathsDecoding of codewords.
In one embodiment of the present invention, list viterbi decoding is performed on the code words after rate dematching, and the method further includes:
decoding a codeword sequence c 'at a TBCC-Hash joint decoder according to the segmentation strategy and based on the paths that have passed the verification' I At this time, it is assumed that Q paths are reserved to obtain Q codeword sequences c' I For the Q codeword sequences c' I Is a sequence of code words c' I All sequentially pass through the Hash encoder H according to the corresponding candidate path accumulated measurement I Corresponding Hash decoder T I Check if the Q codeword sequences c' I If none of the code word sequences passes the verification, Q code word sequences c 'are output' I The sequence in the path with the maximum path metric value is used as the decoding output result, otherwise, the Q code word sequences c 'are used' I The first strip of (a) passes through the decoder T I And taking the checked sequence as a decoding output result.
Compared with the prior art, the invention has the beneficial effects that:
the invention divides the information sequence to be coded into a plurality of sub-sequences, and generates a corresponding check sequence for any sub-sequence, thereby being capable of carrying out sectional decoding according to a sectional strategy when decoding, checking the sub-sequence obtained by decoding according to the check sequence corresponding to the sub-sequence, terminating decoding when checking is not passed, and terminating decoding when checking is not passed for any sub-sequence, and not carrying out checking after the whole information sequence is obtained by decoding, thereby not only reducing the alarm rate and the block error rate, but also reducing the delay of decoding, thereby being capable of reducing the power consumption of UE and improving the system performance. In addition, in order to improve the accuracy of the false alarm rate, all the Hash encoders corresponding to the sub-sequences may be considered.
The present invention will be described in further detail with reference to the accompanying drawings and examples.
Drawings
FIG. 1 is a schematic diagram of a CRC-aided tail-biting convolutional code encoding and decoding method in the prior art;
FIG. 2 is a flow chart of a tail biting convolutional code encoding method using a hash function provided in an embodiment of the present invention;
FIG. 3 is a schematic diagram of a processing procedure for tail biting convolutional code encoding according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of a structure for generating a hash sequence according to an embodiment of the present invention;
fig. 5 is a schematic diagram of a processing procedure of tail biting convolutional code decoding according to an embodiment of the present invention.
Detailed Description
In order to further describe the technical means and effects adopted by the present invention to achieve the preset purpose, a tail biting convolutional code encoding method and decoding method using a hash function according to the present invention will be described in detail below with reference to the accompanying drawings and detailed description.
The foregoing and other features, aspects, and advantages of the present invention will become more apparent from the following detailed description of the preferred embodiments when taken in conjunction with the accompanying drawings. The technical means and effects adopted by the present invention to achieve the intended purpose can be more deeply and specifically understood through the description of the specific embodiments, however, the attached drawings are provided for reference and description only, and are not intended to limit the technical scheme of the present invention.
It should be noted that in this document relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that an article or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in an article or apparatus that comprises the element.
Example 1
Referring to fig. 2 and 3, fig. 2 is a schematic flow chart of a tail biting convolutional code coding method using a hash function according to an embodiment of the present invention, and fig. 3 is a schematic flow chart of a tail biting convolutional code coding process according to an embodiment of the present invention, where the coding method includes:
s1: and segmenting the information sequence to be coded according to a preset segmentation strategy to obtain a plurality of subsequences.
Segmenting an information sequence to be coded according to a segmentation strategy confirmed by both a transmitting end and a receiving end to generate I subsequences { m } 1 ,m 2 ,...,m i ,...,m I And I is greater than or equal to 1 and less than or equal to I, and I is greater than 1. The segmentation strategy can be an equal division strategy, a non-equal division strategy, a sequential division strategy, an out-of-order division strategy, a full division strategy and a partial division strategy.
Specifically, the information sequences to be encoded are segmented according to the segmentation strategy confirmed by the transceiver and the I sub-sequences, and when the I sub-sequences are generated, the I sub-sequences can be obtained by equally dividing the information sequences (equal division strategy), or can be obtained by non-equally dividing the information sequences (non-equal division strategy), or can be obtained by sequentially dividing the information sequences (sequential division strategy), or can be obtained by non-sequentially dividing the information sequences (out-of-sequential division strategy), namely, the information sequences are obtained by out-of-sequential division; all bits of the information sequence may be involved in the segmentation (all division policy), or part of bits of the information sequence may be involved in the segmentation (part division policy), so long as the segmentation policy is known to both transceivers, that is, the segmentation policy adopted during encoding is guaranteed and the segmentation policy adopted during decoding is the same.
In the process of simulation, the information sequence can be randomly generated by simulation equipment, and in the process of actual data transmission, the information sequence to be encoded carries the data to be transmitted. The length of the information sequence is determined by the code length and the code rate of the tail biting convolutional code, for example, in the simulation process, when the tail biting convolutional code length is 128 bits and the code rate is 1/2, the simulation device randomly generates the information sequence with the length of 64 bits and takes the information sequence as the information sequence to be coded.
S2: each sub-sequence is encoded by an encoder to generate a check sequence, and the check sequence is combined with the current sub-sequence to form a sub-codeword sequence, so that a plurality of sub-codeword sequences are obtained.
In this embodiment, the encoder may be a linear encoder or a nonlinear encoder. When the encoder is a linear encoder, the encoder may be a linear block code encoder, for example, the encoder employs a CRC (Cyclic Redundancy Check ) encoder. When the encoder is a nonlinear encoder, the encoder may be a nonlinear block code encoder or a nonlinear convolutional code encoder.
It should be noted that the encoder processing each sub-sequence in this embodiment may be the same, i.e., the Hash encoder H 1 To the Hash encoder I may be identical, e.g. the Hash encoder H 1 Hash encoder H 2 Hash encoder H I The length of the generated hash sequences is 8 bits; hash encoder H 1 Hash encoder H 2 To Hash encoder H I May also be different, e.g. Hash encoder H 1 Hash encoder H 2 The Hash sequences generated are all 8 bits in length, and the Hash encoder H i The length of the generated Hash sequence is 32 bits, so long as the Hash encoder adopted in the encoding process is ensured to be the same as the Hash encoder adopted in the decoding process.
The Hash function adopted by the Hash encoder in the embodiment of the invention is an improved 'one-at-a-time' Hash function (consistent Hash function), in the Hash function, the output value of the Hash function is called as v-bit state, v is less than or equal to 32, two inputs a and b of the Hash function respectively represent the v-bit state corresponding to the previous subsequence of the current subsequence and the current subsequence information, one output of the Hash function represents the v-bit state corresponding to the subsequence, and if the subsequence is the first subsequence, the v-bit state value is a preset value 0.
As shown in fig. 3, in this embodiment, each sub-sequence is encoded by a corresponding encoder. For any subsequence m i According to the corresponding encoder H i Generating a check sequence, and dividing the subsequence m i And said check sequence to form a sequence c of sub-codewords 1 . Specifically, it can be based on the subsequence m i Length of (d) and subsequence m i Corresponding encoder for generating sub-sequence m i A corresponding check sequence; can also be based on the subsequence m i Content and subsequence m of (2) i A corresponding encoder for generating a check sequence; can also be based on the subsequence m i Length and content of (a) and subsequence m i And a corresponding encoder for generating a check sequence. Wherein, according to the subsequence m i Content and subsequence m of (2) i Corresponding encoder, when generating check sequence, can according to sub-sequence m i All of the contents and subsequence m of (2) i A corresponding encoder for generating a check sequence; or according to partial content of subsequence and subsequence m i And a corresponding encoder for generating a check sequence.
Further, in the case of sub-sequence m i And the check sequence to form a sub-code word sequence c 1 In this case, any combination is possible, for example the subsequence m i Before the check sequence is followed by the sub-sequence m, which may be the check sequence before the check sequence i After that, it is only necessary to ensure that both the transmission and reception sides of the combination scheme used in encoding are known.
In this embodiment, the encoder uses a nonlinear block code Hash encoder for each sub-sequence m i All through corresponding encoders H i Encodes it, the encoder H i Is a Hash encoder, comprising two input ends and an output end, wherein the first input end inputs a corresponding subsequence m i The second input is input with an encoder H i-1 Output hash sequence S i-1 The output end outputs the current subsequence m i Processed hash sequence S i
As shown in fig. 3, the transmitting end first confirms to both the transmitting and receiving endThe segmentation strategy divides the information sequence m to be encoded into I sub-sequences, which are respectively marked as { m } 1 ,m 2 ,...,m i ,...,m I }. Then the subsequence m 1 Input corresponding Hash encoder H 1 In obtaining a hash sequence S 1 Then hash sequence S 1 Input truncation function T 1 Intercepting to generate a check sequence h 1 Subsequently, the subsequence m 1 And check sequence h 1 Combining to generate sub-code word sequence c 1
Specifically, in generating the check sequence h 1 When on the one hand the subsequence m 1 Input Hash encoder H for converting into decimal value 1 On the other hand, a Hash encoder H known to both transmitting and receiving sides 1 V-bit state value input Hash encoder H 1 Thereby generating a Hash encoder H 1 Output value of (a), i.e. hash sequence S 1 The hash sequence S is then 1 Converting into bit stream, and intercepting part or all of the bit stream to be used as check sequence h corresponding to the information sequence 1 Subsequence m 1 And check sequence h 1 Combining to generate a sequence of sub-codewords c 1
Specifically, in the present embodiment, the first bit encoder H 1 The v-bit state value of (2) is a preset value of 0, and the subsequence m is 1 Hash encoder H for inputting first bit with preset v-bit state value 0 1 Obtaining a hash sequence S 1 Hash sequence S by using truncated function T1 1 Intercepting part or all of the data to obtain a check sequence h 1 Subsequence m 1 And check sequence h 1 Combining to generate sub-code word sequence c 1
Sub-sequence m 2 And a first bit Hash encoder H 1 Is a hash sequence S of (1) 1 Input second bit Hash encoder H 2 Obtaining a hash sequence S 2 Hash sequence S by using truncated function T2 2 Intercepting part or all of the data to obtain a check sequence h 2 Subsequence m 2 And check sequence h 2 Combining to generate sub-code word sequence c 2
Similarly, according to the subsequence m 3 And a second bit Hash encoder H 2 Is a hash sequence S of (1) 2 Input third bit Hash encoder H 3 Obtaining a hash sequence S 3 Hash sequence S is subjected to truncation function T3 3 Intercepting part or all of the data to obtain a check sequence h 3 Subsequence m 3 And check sequence h 3 Combining to generate sub-code word sequence c 3 The method comprises the steps of carrying out a first treatment on the surface of the And so on, finally obtaining the sub-codeword sequence c 1 Sub-codeword sequence c 2 Sub-codeword sequence c 3 … … subcode sequence c I . Cut-off function T 1 Function T of truncation 2 Cut-off function T I The bit numbers of the intercepted corresponding Hash encoders can be the same or different, so long as the knowledge of the transmitting and receiving parties is ensured.
The interception may be performed according to a predetermined method when intercepting part or all of the bitstream. For example, the hash sequences corresponding to the length are truncated in the bit stream if the length of the hash sequences to be obtained is set. The interception may be performed from a set position, which may be the first bit or not, may be from the first bit to the rear, may be from the end to the front, or the like. The method only needs to ensure that the interception mode of the hash sequence adopted in the encoding is the same as the interception mode adopted in the decoding. In this embodiment, the length of the hash sequence obtained by the interception is not greater than 32 bits. The hash sequence may be 8 bits, 32 bits, or the like, for example. In this embodiment, the Hash encoder is characterized in that the change of the bit state corresponding to the sub-sequence causes the random change of the bit state corresponding to the next sub-sequence, that is, the avalanche effect, so that the Hash encoder can further reduce the false alarm rate.
Referring to fig. 4, fig. 4 is a schematic structural diagram of generating a hash sequence according to an embodiment of the present invention, wherein the number of subsequences obtained by segmenting an information sequence with code is I, and the I subsequences are respectively m after being sequenced 1 、m 2 … and m I The Hash encoder H has twoInput and output, wherein the two inputs are respectively a subsequence and a Hash encoder H corresponding to the last subsequence of the subsequence i Output hash sequences, i.e. 32-bit state S i-1 Output is Hash encoder H corresponding to the sub-sequence i Output value, i.e. 32-bit state S i That is, the corresponding 32-bit state S after the previous subsequence is processed by the Hash function i Input as a Hash function of the next sub-sequence adjacent thereto, i.e. S i =h(S i-1 ,k i ) I is more than or equal to 1 and less than or equal to I; for the subsequence k ordered as the first bit 1 The output value of the Hash function corresponding to the last subsequence of the subsequence is the 32-bit state S 0 Is a preset value of 0.
Specifically, for subsequence m 1 And an initial 32-bit state S 0 The subsequence m obtained after Hash function processing 1 Corresponding 32-bit state S 1 For subsequence m 2 And subsequence m 1 Corresponding 32-bit state S 1 The subsequence m obtained after Hash function processing 2 Corresponding 32-bit state S 2 .. for subsequence m I And subsequence m I-1 Corresponding 32-bit state S I-1 The subsequence m obtained after Hash function processing I Corresponding 32-bit state S I
S3: and combining all the subcode sequences according to a preset combination mode to obtain a codeword sequence, and performing tail biting convolutional code coding on the codeword sequence.
The step S3 comprises the following steps:
s31: sequence c of I sub-codewords 1 、c 1 …c I And combining to obtain a code word sequence d.
In particular, the I sub-codeword sequences c may be ordered in sequence number order 1 、c 1 …c I The combination is carried out to obtain a codeword sequence d, the I sub-codeword sequences can be combined according to any sequence to obtain a codeword sequence, and the I sub-codeword sequences can be combined in other modes to obtain a codeword sequence, so long as the combination mode adopted in the encoding process is ensured to be the same as the combination mode adopted in the decoding processI sub-codeword sequences may also be subjected to parallel-to-serial conversion to obtain codeword sequences, for example.
S32: after the I sub-codeword sequences are combined to obtain a codeword sequence d, the codeword sequence d is subjected to tail biting convolutional code coding by a polarization code encoder, and a coded sequence is obtained.
Specifically, the transmitting end may store a coding matrix encoded by a polar code, and when performing tail biting convolutional coding on the codeword sequence, the codeword sequence and the stored generator polynomial matrix may perform multiplication and addition operation on a binary domain, so as to obtain a sequence encoded by the tail biting convolutional code, where the process of encoding by the tail biting convolutional code belongs to the prior art, and is not described in detail in the embodiments of the present invention.
S4: and carrying out rate matching on the coded sequence according to a pre-stored rate matching algorithm.
Specifically, the transmitting end pre-stores a rate matching algorithm (rate matching), and after performing tail biting convolutional code encoding on the second codeword sequence, the encoded sequence may be rate matched according to the pre-stored rate matching algorithm. Preferably, the rate matching sequences used in rate matching can be obtained in a gaussian method or other rate matching sequences insensitive to signal-to-noise ratio SNR.
S5: the sequence after rate matching is modulated by a modulator and is sent to a receiving end.
Specifically, the codeword sequence is finally sent to a tail biting convolutional code encoder for encoding, and interleaving and rate matching (rate matching) are performed, that is, a shortening (puncturing) or puncturing (puncturing) operation is performed, and the encoded sequence is modulated by a modulator and can be sent to a receiving end in a channel.
The coding method of the tail biting convolutional code provided by the embodiment of the invention is applied to a transmitting end, wherein the transmitting end can be a base station or UE.
In this embodiment, the information sequence to be encoded is divided into a plurality of sub-sequences according to a preset segmentation strategy, and a corresponding check sequence is generated for any sub-sequence, so that an encoding method of a tail biting convolutional code is provided, and the encoding method is used for encoding, so that segmentation decoding can be performed according to the corresponding segmentation strategy during decoding, thereby reducing the false alarm rate and the block error rate, reducing the decoding delay, and improving the system performance.
Example two
On the basis of the above embodiment, this embodiment provides a tail biting convolutional code decoding method using a hash function. The decoding method of the present embodiment includes:
s1: and receiving the code words from the transmitting end, demodulating and carrying out rate de-matching to obtain code words after rate de-matching.
Referring to fig. 5, fig. 5 is a schematic diagram illustrating a processing procedure of tail biting convolutional code decoding according to an embodiment of the present invention. After receiving the code word sent by the sending end, the receiving end sends the code word to the demodulator for demodulation and rate-de-matching. In performing the rate de-matching, the rate matching sequences employed may preferably be obtained using a gaussian method, or other rate matching sequences that are insensitive to signal-to-noise ratio (Signal Noise Ratio, SNR). The rate de-rate method of the receiving end corresponds to the rate matching method of the transmitting end.
S2: and carrying out list Viterbi decoding on the code words subjected to rate de-matching to obtain a decoding result.
Sending the code word after rate de-matching into a TBCC-Hash joint decoder, checking the code word segment by using the corresponding check code word according to the segmentation strategy, and obtaining a final decoding result.
Specifically, the code word after rate de-matching is sent to a TBCC-Hash joint decoder for parallel list Viterbi decoding, and at this time, the TBCC-Hash joint decoder decodes the code word sequence c according to the corresponding segmentation strategy in the first embodiment 1 Corresponding codeword sequence c' 1 Assuming that L (L is equal to or greater than 1 and L is a preset value) paths are reserved at this time, L codeword sequences c 'can be obtained' 1 At this time, for L codeword sequences c' 1 Is a sequence of code words c' 1 All through the Hash encoder H in the first embodiment 1 Corresponding Hash decoder T 1 Check if L code word sequences c' 1 All pass through Hash decoder T 1 And (3) considering the decoding failure and finally decoding in advance. Otherwise, the Hash decoder T is reserved 1 Decoding sequence and original check sequence h 1 Equal paths and based on these paths, the decoding of the subsequent segment codewords proceeds.
Similarly, the TBCC-Hash joint decoder decodes the codeword sequence c 'according to the segmentation strategy and based on the paths which pass the verification' 2 When each path is checked, if the check is passed, the Hash decoder 2 decodes the sequence and the original check sequence h 2 Equal paths and continue decoding based on these paths.
Decoding a codeword sequence c 'at a TBCC-Hash joint decoder according to the segmentation strategy and based on the paths that have passed the verification' 3 When each path is checked, if the check is passed, the Hash decoder 3 decodes the sequence and the original check sequence h 3 Equal paths and continue decoding based on these paths.
And so on, decoding a codeword sequence c 'in the TBCC-Hash joint decoder according to the segmentation strategy and based on the paths which pass the verification' I At this time, it is assumed that Q (Q.ltoreq.L) paths are reserved, and Q codeword sequences c 'are obtained' I At this time, for Q codeword sequences c' I Is a sequence of code words c' I All through and Hash encoder H I Corresponding Hash decoder T I Check if the Q codeword sequences c' I The check of the Hash decoder is not discussed, Q codeword sequences c 'are output' I The sequence in the path with the largest path metric value is used as the decoding output. Otherwise, Q codeword sequences c' I The first strip of (a) passes through the decoder T I The verified sequence is output as a decoded signal.
According to the above, it can be seen that, since the information sequence to be encoded is divided into a plurality of sub-sequences, and the corresponding check sequence is generated for any sub-sequence, so that the sub-sequence obtained by decoding can be decoded in a segmented manner according to the segmentation strategy during decoding, and the sub-sequence obtained by decoding can be checked according to the check sequence corresponding to the sub-sequence, and when the check is not passed, the decoding is terminated, and the whole information sequence is not checked again after the decoding is obtained, therefore, not only the alarm rate and the block error rate can be reduced, but also the decoding delay can be reduced, so that the UE power consumption can be reduced, and the system performance can be improved. In addition, in order to improve the accuracy of the false alarm rate, all the Hash encoders corresponding to the sub-sequences may be considered.
The foregoing is a further detailed description of the invention in connection with the preferred embodiments, and it is not intended that the invention be limited to the specific embodiments described. It will be apparent to those skilled in the art that several simple deductions or substitutions may be made without departing from the spirit of the invention, and these should be considered to be within the scope of the invention.

Claims (10)

1. A tail-biting convolutional code encoding method employing a hash function, comprising:
segmenting an information sequence to be coded according to a preset segmentation strategy to obtain a plurality of subsequences;
encoding each sub-sequence by using an encoder to generate a check sequence, combining the check sequence with the current sub-sequence to form a sub-code word sequence, and obtaining a plurality of sub-code word sequences;
combining all sub-codeword sequences to obtain a codeword sequence, and performing tail biting convolutional code coding on the codeword sequence;
performing rate matching on the coded sequence according to a pre-stored rate matching algorithm;
the sequence after rate matching is modulated by a modulator and is sent to a receiving end.
2. The method for tail-biting convolutional code encoding using a hash function as defined in claim 1, wherein for each sub-sequence m i All through corresponding encoders H i Encodes it, the encoder H i Is a Hash encoder, comprising two input ends and an output end, wherein the first input end inputs a corresponding subsequence m i The second input is input with an encoder H i-1 Output hash sequence S i-1 The output end outputs the current subsequence m i Processed hash sequence S i
3. The method for encoding tail-biting convolutional codes using a hash function as defined in claim 2, wherein encoding each sub-sequence with an encoder to generate a check sequence and combining the check sequence with the current sub-sequence to form a sub-codeword sequence comprises:
each subsequence m i And the corresponding v-bit state value output Hash encoder H i In (3) through a Hash encoder H i Encoding processing is carried out to obtain a hash sequence S i
By means of a truncation function T i For hash sequence S i Intercepting part or all of the data to obtain a check sequence h i
The subsequence m i And the check sequence h i Combining to generate sub-code word sequence c i
4. The tail biting convolutional code encoding method of claim 3, wherein the v-bit state value of the first bit encoder is preset to 0, and the v-bit state values of the remaining encoders are hash sequences output from the previous bit encoder.
5. The tail biting convolutional code encoding method employing a hash function as claimed in claim 3, wherein said S2 comprises: cut-off function T i The intercepting mode of (a) is as follows: the length of the hash sequence to be intercepted or the intercepting position is preset.
6. The method for tail-biting convolutional code encoding using a hash function as defined in claim 1, wherein combining all subcode word sequences to obtain a codeword sequence and tail-biting convolutional code encoding said codeword sequence comprises:
combining all sub-codeword sequences according to a preset mode to obtain a codeword sequence;
and performing tail biting convolutional code coding on the codeword sequence d by using a polarization code encoder to obtain a coded sequence.
7. A tail-biting convolutional code decoding method using a hash function, applied to a receiving end corresponding to the coding method of any one of claims 1 to 6, the decoding method comprising:
receiving a codeword from a transmitting end, demodulating and performing rate de-matching to obtain a codeword subjected to rate de-matching;
and carrying out list Viterbi decoding on the code words subjected to rate de-matching to obtain a decoding result.
8. The method for decoding tail-biting convolutional codes using a hash function as defined in claim 7, wherein list viterbi decoding of the de-rate matched codewords comprises:
sending the code word after rate de-matching into a TBCC-Hash joint decoder, checking the code word segment by using the corresponding check code word according to the segmentation strategy, and obtaining a final decoding result.
9. The method for decoding tail-biting convolutional codes using a hash function as defined in claim 7, wherein list viterbi decoding of the de-rate matched codewords comprises:
first, codeword sequence c 'is decoded' 1 Assuming that the decoder is preset with L paths reserved, L codeword sequences c 'are obtained' 1 For L code word sequences c' 1 Each codeword sequence c' 1 Sequentially passing through the Hash encoder H according to the accumulated metric of the candidate paths corresponding to the Hash encoder H 1 Corresponding Hash decoder T 1 Checking, if L code word sequencesc' 1 All fail to pass the verification, the decoding fails and the final decoding is carried out in advance, otherwise, the Hash decoder T is reserved 1 Decoding the sequence and checking the sequence h 1 Equal paths and proceeds with decoding of subsequent segment codewords based on the reserved paths.
10. The method for decoding tail-biting convolutional codes using a hash function as defined in claim 7, wherein list viterbi decoding is performed on the de-rate matched codewords, further comprising:
decoding a codeword sequence c 'at a TBCC-Hash joint decoder according to the segmentation strategy and based on the paths that have passed the verification' I At this time, it is assumed that Q paths are reserved to obtain Q codeword sequences c' I For the Q codeword sequences c' I Is a sequence of code words c' I All sequentially pass through the Hash encoder H according to the corresponding candidate path accumulated measurement I Corresponding Hash decoder T I Check if the Q codeword sequences c' I If none of the code word sequences passes the verification, Q code word sequences c 'are output' I The sequence in the path with the maximum path metric value is used as the decoding output result, otherwise, the Q code word sequences c 'are used' I The first strip of (a) passes through the decoder T I And taking the checked sequence as a decoding output result.
CN202210199768.0A 2022-03-01 2022-03-01 Tail-biting convolutional code coding method and decoding method adopting hash function Pending CN116743189A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210199768.0A CN116743189A (en) 2022-03-01 2022-03-01 Tail-biting convolutional code coding method and decoding method adopting hash function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210199768.0A CN116743189A (en) 2022-03-01 2022-03-01 Tail-biting convolutional code coding method and decoding method adopting hash function

Publications (1)

Publication Number Publication Date
CN116743189A true CN116743189A (en) 2023-09-12

Family

ID=87913771

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210199768.0A Pending CN116743189A (en) 2022-03-01 2022-03-01 Tail-biting convolutional code coding method and decoding method adopting hash function

Country Status (1)

Country Link
CN (1) CN116743189A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117156138A (en) * 2023-10-31 2023-12-01 季华实验室 Method, device, equipment and storage medium for variable-length depth hash coding of image

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117156138A (en) * 2023-10-31 2023-12-01 季华实验室 Method, device, equipment and storage medium for variable-length depth hash coding of image
CN117156138B (en) * 2023-10-31 2024-02-09 季华实验室 Method, device, equipment and storage medium for variable-length depth hash coding of image

Similar Documents

Publication Publication Date Title
JP3860218B2 (en) A coding scheme for digital communication systems.
US6810502B2 (en) Iteractive decoder employing multiple external code error checks to lower the error floor
JP4992900B2 (en) Receiving device and decoding method thereof
JP3349114B2 (en) Error correction encoding device and decoding device
CN1235342C (en) Method and apparatus for concatenated channel coding
US7779328B2 (en) Method and apparatus for efficiently decoding concatenated burst in a WiBro system
CN109964426B (en) Signal receiver and method for analyzing received signal, communication system
CN108631792B (en) Method and device for encoding and decoding polarization code
US6606724B1 (en) Method and apparatus for decoding of a serially concatenated block and convolutional code
JP2000516415A (en) Decoder using soft information output to minimize error rate
JPH09116440A (en) Encoding device and decoding device for error correction code and communication system
CN106992841B (en) Hard decision iterative decoding method for packet Markov superposition coding
CN108288970B (en) Method and device for encoding and decoding polarization code
CN1369980B (en) Encoding and decoding method in communication device, and a decoding device
GB2428545A (en) Blind transport format detection with cyclic redundancy check and a variable threshold value
CN116743189A (en) Tail-biting convolutional code coding method and decoding method adopting hash function
Luyi et al. Forward error correction
JP4138723B2 (en) Decoding processing method and communication apparatus
CN106233683B (en) Method and apparatus for generating codeword and method and apparatus for recovering codeword
US6438121B1 (en) Recognition and utilization of auxiliary error control transmissions
US6192500B1 (en) Method and apparatus for enhanced performance in a system employing convolutional decoding
EP3338370A1 (en) Tail-biting convolutional codes with very short information blocks
WO2017157105A1 (en) Modulation method and device
KR20050054405A (en) Rate matching method and apparatus for multiplexing channels with different transmission time intervals in communication systems
KR100880630B1 (en) Transmission chain in communication system and method for transmitting and detecting physical channel format uging the same

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination