WO2018127234A1 - 一种极化码编译码方法及装置 - Google Patents

一种极化码编译码方法及装置 Download PDF

Info

Publication number
WO2018127234A1
WO2018127234A1 PCT/CN2018/075770 CN2018075770W WO2018127234A1 WO 2018127234 A1 WO2018127234 A1 WO 2018127234A1 CN 2018075770 W CN2018075770 W CN 2018075770W WO 2018127234 A1 WO2018127234 A1 WO 2018127234A1
Authority
WO
WIPO (PCT)
Prior art keywords
sequence
information
subsequence
check
hash
Prior art date
Application number
PCT/CN2018/075770
Other languages
English (en)
French (fr)
Inventor
陈佩瑶
王加庆
白宝明
孙韶辉
Original Assignee
电信科学技术研究院有限公司
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
Priority claimed from CN201710118230.1A external-priority patent/CN108288970B/zh
Application filed by 电信科学技术研究院有限公司 filed Critical 电信科学技术研究院有限公司
Publication of WO2018127234A1 publication Critical patent/WO2018127234A1/zh

Links

Images

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/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a polarization code encoding and decoding method and apparatus.
  • the 4G the 4 th Generation mobile communication technology, the fourth generation mobile communication technology
  • the future fifth-generation mobile communications technology 5G 5 th Generation, fifth generation
  • Polar Codes which are 5G eMBB (Enhanced Moblie Broad Band) scene control channel coding schemes, are a new type of coding that can achieve binary symmetric channel capacity and have excellent decoding performance.
  • the polarization code encoding and decoding method includes a CRC (Cyclic Redundancy Check)-assisted polarization code encoding code and a PC (Parity Check)-assisted polarization code encoding code.
  • FIG. 1 is a schematic diagram of a CRC-assisted polarization code encoding and decoding process.
  • the CRC-assisted polarization code encoding and decoding process includes: first coding an information sequence to be encoded by a CRC encoder to generate a corresponding CRC sequence, and then decoding the information sequence and the CRC.
  • the sequence is sent to the Polar encoder together, modulated by the modulator, and then transmitted to the receiving end through the channel; when decoding, the demodulated bit stream is decoded by the Polar-CRC joint decoder, mainly
  • the CRC-assisted SCL (Successive Cancellation List) decoding algorithm is used to select the final decoded decoding result in the decoding, and the Polar-CRC joint decoder first restores all candidate code words to include CRC.
  • the candidate information sequence is subjected to CRC decoding processing for all candidate information sequences, and the candidate information sequence that is decoded by CRC and has the highest reliability is used as the final decoding result.
  • the PC-assisted polarization code encoding and decoding process includes: first encoding an information sequence to be encoded by a CRC encoder to generate a corresponding CRC sequence, and then decoding the information sequence and the CRC. The sequence is sent to the PC-Polar encoder, encoded and modulated by the modulator, and then transmitted to the receiving end through the channel; when decoding, the bit stream demodulated by the modulator is decoded by a Polar decoder, mainly using a PC.
  • the auxiliary SCL decoding algorithm when selecting the final decoded decoding result in decoding, the Polar decoder first restores the candidate codeword to a candidate information sequence containing a PC, and performs PC decoding on all candidate information sequences. Processing, the candidate information sequence decoded by the PC and having the highest reliability is used as the final decoding result.
  • the CRC-assisted polarization code encoding code and the PC-assisted polarization code encoding code require initial encoding by the CRC during the encoding phase.
  • the low false alarm rate is beneficial to reduce the uplink collision probability of the UE (User Equipment), reduce the power consumption of the UE, and improve system performance.
  • an SCL list decoding algorithm is generally employed.
  • the last additional N bits are only used for error detection and are not used for auxiliary decoding, so the false alarm rate does not deteriorate, but PC polar requires more parity bit overhead, resulting in BLER performance is degraded.
  • the invention provides a polarization code encoding and decoding method and device for providing a new polarization code encoding and decoding scheme.
  • the embodiment of the invention discloses a polarization code encoding method, and the method includes:
  • the information sequence, the first sequence, and the second sequence are combined, and the combined sequence is subjected to polarization code encoding.
  • one of the first sequence and the second sequence is used for path selection and detection of errors, and the other sequence is used for detecting errors.
  • attribute information of the information sequence to be encoded includes:
  • the length and/or content of the sequence of information to be encoded are the length and/or content of the sequence of information to be encoded.
  • the content of the information sequence to be encoded includes:
  • the generating the sequence according to the attribute information of the information sequence to be encoded and the preset sequence generating algorithm includes:
  • a sequence is generated according to the length of the information sequence to be encoded and a random function.
  • generating a sequence includes:
  • the generating the sequence according to the content of the information sequence to be encoded and the preset hash function includes:
  • the generating the sequence according to the content of the information sequence to be encoded and the preset hash function includes:
  • the determining the hash sequence corresponding to the information sequence according to the at least one subsequence and the preset hash function includes:
  • a hash function output value For each second subsequence that is sorted, a hash function output value, the second subsequence, and the first subsequence adjacent to the second subsequence and located before the second subsequence a hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is a subsequence ranked first, a hash of the first subsequence before the second subsequence
  • the function output value is a preset value
  • the Hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the method includes:
  • the second sequence is updated by using a preset algorithm, where the preset algorithm includes at least one of an exclusive OR processing algorithm, an interleaving algorithm, and an algorithm for updating a set bit.
  • updating the first sequence by using a preset algorithm and/or updating the second sequence by using a preset algorithm includes:
  • the first sequence and/or the second sequence are updated using a scrambling sequence.
  • the length of the first sequence is between 1 bit and 10 bits
  • the length of the second sequence is between 10 bits and 16 bits.
  • the embodiment of the invention discloses a polarization code encoding method, and the method includes:
  • the information sequence and the hash sequence are combined, and the combined sequence is subjected to polarization code encoding.
  • the acquiring the at least one subsequence in the information sequence to be encoded includes:
  • Combining the information sequence and the hash sequence, and performing polarization code encoding on the combined sequence includes:
  • the information sequence, the CRC sequence, and the Hash sequence are combined, and the combined sequence is subjected to polarization code encoding.
  • the acquiring the at least one subsequence in the combined sequence determined by the information sequence and the CRC sequence includes:
  • the combined sequence is divided into the number of subsequences according to a preset number of subsequences, wherein the number is an integer not less than one.
  • the determining the Hash sequence according to the at least one subsequence and a preset hash function includes:
  • a hash function output value For each second subsequence that is sorted, a hash function output value, the second subsequence, and the first subsequence adjacent to the second subsequence and located before the second subsequence a hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is a subsequence ranked first, a hash of the first subsequence before the second subsequence
  • the function output value is a preset value
  • the Hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the length of the hash sequence is no more than 32 bits.
  • the length of the CRC sequence is 8 bits, or 12 bits, or 16 bits, or 24 bits.
  • the embodiment of the invention discloses a polarization code decoding method, and the method includes:
  • Decoding results are determined according to a first check sequence and a second check sequence in each candidate path, wherein one of the first check sequence and the second check sequence is used for path selection and detection error Another check sequence is used to detect errors.
  • attribute information of the information sequence includes:
  • the content of the information sequence includes:
  • the determining the check sequence of the candidate path includes:
  • a check sequence is generated according to the length of the information sequence and a random function corresponding to the transmitting end.
  • the generating the check sequence according to the content of the information sequence and the CRC processing algorithm corresponding to the sending end includes:
  • generating the check sequence according to the content of the information sequence and the hash function corresponding to the sending end includes:
  • generating the check sequence according to the content of the information sequence and the hash function corresponding to the sending end includes:
  • the Hash sequence corresponding to the information sequence is determined according to the at least one subsequence and a hash function corresponding to the sending end, including:
  • a hash function output value For each second subsequence that is sorted, a hash function output value, the second subsequence, and the first subsequence adjacent to the second subsequence and located before the second subsequence a hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is a subsequence ranked first, a hash of the first subsequence before the second subsequence
  • the function output value is a preset value
  • the Hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the method further includes:
  • the second check sequence is updated by using an algorithm corresponding to the sender, where the algorithm corresponding to the sender includes at least one of an exclusive OR processing algorithm, an interleaving algorithm, and an algorithm for updating a set bit.
  • updating the first check sequence and/or updating the second check sequence by using an algorithm corresponding to the sending end includes:
  • the first check sequence and/or the second check sequence are updated using a scrambling sequence corresponding to the sender.
  • the decoding result is determined according to the first check sequence and the second check sequence in each candidate path, and determining the decoding result includes:
  • the decoding result is determined according to the first check sequence and the second check sequence in each candidate path, and determining the decoding result includes:
  • the embodiment of the invention discloses a polarization code decoding method, and the method includes:
  • the determining the information sequence and the Hash sequence in the candidate sequence according to the encoding method corresponding to the sending end includes:
  • Acquiring at least one subsequence in the information sequence according to the subsequence acquisition method corresponding to the sending end includes:
  • the acquiring the at least one subsequence in the combined sequence determined by the information sequence and the CRC sequence includes:
  • the combined sequence is divided into the number of subsequences according to a preset number of subsequences, wherein the number is an integer not less than one.
  • the determining the hash sequence according to the at least one subsequence and the preset hash function includes:
  • a hash function output value For each second subsequence that is sorted, a hash function output value, the second subsequence, and the first subsequence adjacent to the second subsequence and located before the second subsequence a hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is a subsequence ranked first, a hash of the first subsequence before the second subsequence
  • the function output value is a preset value
  • the check hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • selecting a decoding path according to the Hash sequence and the check Hash sequence includes:
  • the sequence is the result of the decoding.
  • the method further includes:
  • the candidate channel with the highest reliability among the plurality of candidate paths is determined as a decoding path, and the information sequence corresponding to the decoding path is a decoding result.
  • the length of the hash sequence is no more than 32 bits.
  • the length of the CRC sequence is 8 bits, or 12 bits, or 16 bits, or 24 bits.
  • the embodiment of the invention discloses a computer device, which comprises a memory, a processor and a computer program stored on the memory and operable on the processor, and the processor implements the following method when executing the computer program:
  • the information sequence, the first sequence, and the second sequence are combined, and the combined sequence is subjected to polarization code encoding.
  • the embodiment of the invention discloses a computer device, which comprises a memory, a processor and a computer program stored on the memory and operable on the processor, and the processor implements the following method when executing the computer program:
  • the information sequence and the hash sequence are combined, and the combined sequence is subjected to polarization code encoding.
  • the embodiment of the invention discloses a computer device, which comprises a memory, a processor and a computer program stored on the memory and operable on the processor, and the processor implements the following method when executing the computer program:
  • Decoding results are determined according to a first check sequence and a second check sequence in each candidate path, wherein one of the first check sequence and the second check sequence is used for path selection and detection error Another check sequence is used to detect errors.
  • the embodiment of the invention discloses a computer device, which comprises a memory, a processor and a computer program stored on the memory and operable on the processor, and the processor implements the following method when executing the computer program:
  • Embodiments of the present invention disclose a corresponding computer readable storage medium storing a computer program of the above method.
  • the embodiment of the invention discloses a polarization code encoding device, and the device comprises:
  • a sequence generator configured to generate a first sequence according to attribute information of the information sequence to be encoded and a preset first sequence generation algorithm
  • a sequence generator configured to generate a second sequence according to attribute information of the information sequence to be encoded and a preset second sequence generation algorithm
  • a polarization code Polar encoder configured to combine the information sequence, the first sequence and the second sequence, and perform polarization code encoding on the combined sequence.
  • the embodiment of the invention discloses a polarization code encoding device, and the device comprises:
  • a Hash state generator configured to acquire at least one subsequence in the information sequence to be encoded; and determine a Hash sequence corresponding to the information sequence according to the at least one subsequence and a preset hash function;
  • a polarization code Polar encoder is configured to combine the information sequence and the hash sequence, and perform polarization code encoding on the combined sequence.
  • the embodiment of the invention discloses a polarization code decoding device, and the device comprises:
  • a polarization code Polar decoder configured to perform SCL decoding on the sequence encoded by the received polarization code
  • a check sequence decoder configured to determine, in the candidate sequence of the plurality of candidate paths reserved for the SCL, the information sequence in the candidate sequence, and determine the first check sequence and the second check sequence of the candidate path Determining a decoding result according to a first check sequence and a second check sequence in each candidate path, wherein one of the first check sequence and the second check sequence is used for path selection and detection Error, another check sequence is used to detect errors.
  • the embodiment of the invention discloses a polarization code decoding device, and the device comprises:
  • Polar decoder configured to perform SCL decoding on the sequence encoded by the received polarization code
  • a Hash decoder configured to determine candidate sequences in the plurality of candidate paths reserved for SCL decoding, and determine an information sequence and a Hash sequence in the candidate sequence according to an encoding method corresponding to the transmitting end; and according to the subsequence corresponding to the transmitting end Obtaining a method, obtaining at least one subsequence in the information sequence, determining, according to the at least one subsequence and a preset hash function, a verification Hash sequence corresponding to the information sequence, according to the Hash sequence and the school The Hash sequence is selected to select the decoding path.
  • the embodiment of the invention discloses a polarization code encoding and decoding scheme, which comprises: generating a first sequence according to attribute information of an information sequence to be encoded and a preset first sequence generation algorithm; and attribute information according to the information sequence to be encoded And a preset second sequence generation algorithm, generating a second sequence; combining the information sequence, the first sequence and the second sequence, and performing polarization code encoding on the combined sequence.
  • the first sequence and the second sequence are generated according to the attribute information of the information sequence to be encoded and the preset first sequence generation algorithm and the second sequence generation algorithm, thereby realizing the pole of the information sequence. Code coding.
  • FIG. 1 is a schematic diagram of a CRC-assisted polarization code encoding code in the background art
  • FIG. 2 is a schematic diagram of a PC-assisted polarization code encoding code in the background art
  • FIG. 3 is a schematic diagram of a polarization code encoding process according to Embodiment 1 of the present invention.
  • FIG. 4 is a schematic diagram of a polarization code decoding process according to Embodiment 9 of the present invention.
  • FIG. 5A is a schematic diagram of a polarization code encoding according to an embodiment of the present invention.
  • FIG. 5B is a schematic diagram of a polarization code decoding according to an embodiment of the present invention.
  • FIG. 6 is a schematic diagram of a polarization code encoding process according to Embodiment 19 of the present invention.
  • FIG. 7 is a schematic diagram of a polarization code encoding process according to Embodiment 20 of the present invention.
  • FIG. 8 is a schematic structural diagram of generating a hash sequence according to Embodiment 21 of the present invention.
  • FIG. 9 is a schematic diagram of a polarization code decoding process according to Embodiment 22 of the present invention.
  • FIG. 10 is a schematic diagram of performance of a frame error rate and a false alarm rate of a CRC-assisted polarization code encoding code, a PC-assisted polarization code encoding code, and a Hash-assisted polarization code encoding code according to Embodiment 23 of the present invention;
  • FIG. 11 is a schematic diagram of a polarization code decoding process according to Embodiment 25 of the present invention.
  • FIG. 12 is a structural diagram of a polarization code encoding apparatus according to an embodiment of the present invention.
  • FIG. 13 is a structural diagram of a polarization code encoding apparatus according to an embodiment of the present invention.
  • FIG. 14 is a structural diagram of a polarization code decoding apparatus according to an embodiment of the present invention.
  • FIG. 15 is a structural diagram of a polarization code decoding apparatus according to an embodiment of the present invention.
  • the embodiment of the invention provides a new polarization code encoding and decoding scheme.
  • Embodiments 1, 2, 3, etc. For ease of reading, embodiments of some of the technical solutions are numbered, such as Embodiments 1, 2, 3, etc., to facilitate a certain degree of independence of the scheme, but numbering the embodiments does not mean Each of the embodiments is independent, and in fact, those skilled in the art can determine their relationship to each other and whether they can be combined to achieve other effects based on their effects.
  • FIG. 3 is a schematic diagram of a polarization code encoding process according to an embodiment of the present invention, where the process includes the following steps:
  • S301 Generate a first sequence according to attribute information of the information sequence to be encoded and a preset first sequence generation algorithm.
  • S302 Generate a second sequence according to the attribute information of the information sequence to be encoded and the preset second sequence generation algorithm.
  • the method for encoding a polarization code provided by the embodiment of the present invention may be applied to a transmitting end, where the transmitting end may be a base station or a UE.
  • the information sequence may be randomly generated by the simulation device, and the data sequence carries the data to be transmitted in the process of performing actual data transmission.
  • the length of the information sequence is determined by the code length of the polarization code and the code rate.
  • the code length of the polarization code is 96 bits (bits)
  • the code rate is 1/3
  • the length of the information sequence is 32 bits
  • the simulation device randomly generates a sequence of information having a length of 32 bits, and This information sequence is taken as a sequence of information to be encoded.
  • the first sequence generating algorithm is pre-stored in the sending end.
  • the first sequence may be generated according to the attribute information of the information sequence to be encoded and the first sequence generating algorithm saved in advance.
  • the second sequence generation algorithm is pre-stored in the sending end.
  • the second sequence may be generated according to the attribute information of the information sequence to be encoded and the second sequence generating algorithm saved in advance.
  • the first sequence generation algorithm and the second sequence generation algorithm may be the same or different.
  • the attribute information of the information sequence to be encoded may be the length of the information sequence to be encoded, the content of the information sequence to be encoded, or the length and content of the information sequence to be encoded.
  • the content of the information sequence to be encoded may be the entire content of the information sequence to be encoded, or may be part of the content of the information sequence to be encoded.
  • One of the first sequence and the second sequence is used for path selection and detection errors, and the other sequence is used to detect errors.
  • S303 Combine the information sequence, the first sequence, and the second sequence, and perform polarization code encoding on the combined sequence.
  • the process of performing polarization code encoding on the information sequence, the first sequence, and the second sequence may be combining the information sequence, the first sequence, and the second sequence, and then by polarization
  • a code encoder performs encoding of the sequence of information, the first sequence, and the second sequence.
  • the transmitting end stores the coding matrix encoded by the polarization code.
  • the information sequence, the first sequence, and the second sequence are coded by the polarization code, specifically, the information sequence and the first
  • the sequence and the second sequence are combined into one sequence, and the combined sequence and the saved coding matrix are multiplied and added on the binary domain to obtain a sequence encoded by the polarization code.
  • any combination may be used, for example, the information sequence may be preceded, the first sequence is in the middle, the second sequence is in the end, or may be The second sequence is located in the middle of the first sequence and the information sequence, and the information sequence, the first sequence, and the second sequence may also be interleaved.
  • the information sequence when combining the information sequence, the first sequence, and the second sequence, that is, performing parallel-to-serial conversion on the information sequence, the first sequence, and the second sequence, the information sequence may be
  • the bit is set on a bit with relatively high reliability, that is, a subchannel, and bits of the first sequence and the second sequence are set on bits with relatively low reliability.
  • a rate matching algorithm is pre-stored in the transmitting end, and the information sequence, the first sequence, and the second sequence are combined, and after the combined sequence is coded by the polarization code, the rate may be saved according to a pre-save rate.
  • the rate matching sequence used may preferably be obtained by using a Gaussian method or other rate matching sequences that are insensitive to SNR (Signal Noise Ratio).
  • the encoded sequence can be modulated by the modulator and sent to the receiving end.
  • the first sequence and the second sequence are generated according to the attribute information of the information sequence to be encoded and the preset first sequence generation algorithm and the second sequence generation algorithm, thereby realizing the pole of the information sequence.
  • Code coding
  • the generated sequence includes:
  • a sequence is generated according to the length of the information sequence to be encoded and a random function.
  • the process of generating the sequence may be used when generating the first sequence, may be used when generating the second sequence, or may be used simultaneously when generating the first sequence and the second sequence.
  • the first sequence generation algorithm saved in advance by the sending end may be a CRC processing algorithm, and when the first sequence is generated, The first sequence is generated according to the content of the information sequence to be encoded and the CRC processing algorithm.
  • the first sequence generating algorithm saved in advance by the sending end may be a hash function.
  • the first sequence may be generated according to the content of the information sequence to be encoded and the Hash function.
  • the first sequence generation algorithm saved in advance by the sending end may be a random function, and when the first sequence is generated, A first sequence is generated according to the length of the information sequence to be encoded and a random function.
  • the first sequence generation algorithm saved in advance by the sending end may be a CRC processing algorithm or a hash function, and the first is generated.
  • the sequence may be based on the length of the information sequence to be encoded as part of the content of the information sequence to be encoded, and the first sequence is generated according to the content of the information sequence to be encoded and the CRC processing algorithm or Hash function.
  • the generation process of the second sequence is similar to the generation process of the first sequence, which will be described below.
  • the second sequence generation algorithm saved in advance by the sending end may be a CRC processing algorithm
  • the second sequence may be generated according to the content of the information sequence to be encoded and the CRC processing algorithm.
  • the second sequence generating algorithm saved in advance by the sending end may be a hash function.
  • the second sequence may be generated according to the content of the information sequence to be encoded and the Hash function.
  • the second sequence generation algorithm saved in advance by the sending end may be a random function, and when the second sequence is generated, A second sequence is generated according to the length of the information sequence to be encoded and a random number function.
  • the second sequence generation algorithm saved in advance by the sending end may be a CRC processing algorithm or a Hash function, and the second is generated.
  • the sequence may be based on the length of the information sequence to be encoded as part of the content of the information sequence to be encoded, and the second sequence is generated according to the content of the information sequence to be encoded and the CRC processing algorithm or Hash function.
  • the method for generating the first sequence and the method for generating the second sequence may be the same or different.
  • the CRC processing algorithm may be used when generating the first sequence
  • the hash function or the random function may be used when generating the second sequence
  • the random function may be used when generating the first sequence
  • the random sequence may also be used when generating the second sequence. Function or CRC processing algorithm.
  • the first sequence and the second sequence may be directly generated according to the attribute information of the information sequence to be encoded and the preset sequence generation algorithm, but in order to ensure the security of the data transmission, the first sequence and/or the first sequence is generated.
  • the initial sequence may be generated according to the corresponding algorithm, and then the first sequence or the second sequence may be generated according to the initial sequence and the attribute information of the information sequence to be encoded and the preset sequence generation algorithm.
  • generating a sequence includes:
  • the process of generating the sequence may be used when generating the first sequence, may be used when generating the second sequence, or may be used simultaneously when generating the first sequence and the second sequence.
  • the first initial sequence may be generated according to the content of the information sequence to be encoded and the CRC processing algorithm, and then The content of the information sequence to be encoded, the first initial sequence, and the CRC processing algorithm generate a first sequence.
  • the first initial sequence may be generated according to the content of the information sequence to be encoded and the preset hash function, and then according to the content of the information sequence to be encoded, the first initial sequence, and the CRC processing.
  • the algorithm generates a first sequence.
  • the first initial sequence may be generated according to the length of the information sequence to be encoded and the random function, and then generated according to the content of the information sequence to be encoded, the first initial sequence, and the CRC processing algorithm.
  • the first sequence may be generated according to the length of the information sequence to be encoded and the random function, and then generated according to the content of the information sequence to be encoded, the first initial sequence, and the CRC processing algorithm. The first sequence.
  • the second initial sequence may be generated according to the content of the information sequence to be encoded and the CRC processing algorithm, and then The content of the information sequence to be encoded, the second initial sequence, and the CRC processing algorithm generate a second sequence.
  • the second initial sequence may be generated according to the content of the information sequence to be encoded and the preset hash function, and then according to the content of the information sequence to be encoded, the second initial sequence, and the CRC processing algorithm. , generating a second sequence.
  • the second initial sequence may be generated according to the length of the information sequence to be encoded and the random function, and then generated according to the content of the information sequence to be encoded, the second initial sequence, and the CRC processing algorithm.
  • the second sequence may be generated according to the length of the information sequence to be encoded and the random function, and then generated according to the content of the information sequence to be encoded, the second initial sequence, and the CRC processing algorithm. The second sequence.
  • the method of generating the first sequence and the method of generating the second sequence may be the same or different.
  • the first initial sequence is generated according to the content of the information sequence to be encoded and the CRC processing algorithm, and then according to the content of the information sequence to be encoded, the first The initial sequence and the CRC processing algorithm generate a first sequence;
  • the second initial sequence is generated according to the content of the information sequence to be encoded and a preset hash function, and then according to the A second sequence is generated by the content of the information sequence to be encoded, the second initial sequence, and the CRC processing algorithm.
  • the first initial sequence or the second initial sequence may be a known sequence, such as identification information of a terminal or a base station, or a random number or the like.
  • the first sequence and the second sequence may be directly generated according to the attribute information of the information sequence to be encoded and the preset sequence generation algorithm, but in order to ensure the security of the data transmission, the first sequence and/or the first sequence is generated.
  • the initial sequence may be generated according to the corresponding algorithm, and then the first sequence or the second sequence may be generated according to the initial sequence and the attribute information of the information sequence to be encoded and the preset sequence generation algorithm.
  • the generating a sequence according to the content of the information sequence to be encoded and a preset hash function includes:
  • the content when the sequence is generated according to the content of the information sequence to be encoded and the preset hash function, the content may be generated according to the content of the information sequence to be encoded and the CRC processing algorithm.
  • the first initial sequence is further generated according to the content of the information sequence to be encoded, the first initial sequence, and a preset hash function.
  • the first initial sequence may be generated according to the content of the information sequence to be encoded and the preset hash function, and then according to the content of the information sequence to be encoded, the first initial sequence, and a preset hash function. , generating the first sequence.
  • the first initial sequence may be generated according to the length of the information sequence to be encoded and the random function, and then generated according to the content of the information sequence to be encoded, the first initial sequence, and a preset hash function.
  • the first sequence may be generated according to the length of the information sequence to be encoded and the random function, and then generated according to the content of the information sequence to be encoded, the first initial sequence, and a preset hash function.
  • the second initial sequence may be generated according to the content of the information sequence to be encoded and the CRC processing algorithm. And generating a second sequence according to the content of the information sequence to be encoded, the second initial sequence, and a preset hash function.
  • the second initial sequence may be generated according to the content of the information sequence to be encoded and the preset hash function, and then according to the content of the information sequence to be encoded, the second initial sequence, and a preset hash function. , generating a second sequence.
  • the second initial sequence may be generated according to the length of the information sequence to be encoded and the random function, and then generated according to the content of the information sequence to be encoded, the second initial sequence, and a preset hash function.
  • the second sequence may be generated according to the length of the information sequence to be encoded and the random function, and then generated according to the content of the information sequence to be encoded, the second initial sequence, and a preset hash function.
  • the method of generating the first sequence and the method of generating the second sequence may be the same or different.
  • the first initial sequence is generated according to the content of the information sequence to be encoded and the CRC processing algorithm, and then according to the content of the information sequence to be encoded, the first The initial sequence and the preset hash function generate a first sequence;
  • the second initial sequence is generated according to the content of the information sequence to be encoded and the preset hash function, and then according to the A second sequence is generated by the content of the information sequence to be encoded, the second initial sequence, and the hash function.
  • the second sequence when generating the second sequence, may be generated according to the attribute information of the information sequence to be encoded and the first sequence, and the second sequence generation algorithm saved in advance.
  • the first sequence may be directly generated, for example, according to the content of the information sequence to be encoded and the CRC processing algorithm, directly generated first sequence; or according to the content of the information sequence to be encoded and the preset The Hash function, the first sequence directly generated; or the first sequence directly generated according to the length of the information sequence to be encoded and the random function.
  • the first sequence may also generate an initial sequence according to the content of the information sequence to be encoded and the CRC processing algorithm; generate a sequence according to the content of the information sequence to be encoded, the initial sequence, and the CRC processing algorithm. Or generating an initial sequence according to the content of the information sequence to be encoded and a preset hash function; generating a sequence according to the content of the information sequence to be encoded, the initial sequence, and the CRC processing algorithm; or And generating an initial sequence according to the length of the information sequence to be encoded and a random function; and generating a sequence according to the content of the information sequence to be encoded, the initial sequence, and the CRC processing algorithm.
  • the generating the sequence according to the content of the information sequence to be encoded and the preset hash function includes:
  • the method for generating a sequence by using a hash function according to an embodiment of the present invention is applied to a process of generating a sequence by using a hash function in each of the above embodiments.
  • the preset hash function determines a hash sequence corresponding to the information sequence, and uses the hash sequence as the generated first sequence.
  • the Hash function determines a Hash sequence corresponding to the information sequence, and uses the Hash sequence as the generated second sequence.
  • all or part of the information sequence may be used as a subsequence, and all or part of the information sequence may be used as a subsequence, or the information sequence may be used. All or part of it is taken as at least two subsequences and the like.
  • the subsequence may be acquired from the set bit in the information sequence to obtain a set length, or the information sequence may be divided into a set number of subsequences, and the length of the subsequence may be For any length, it is preferred that the length of the subsequence is not greater than the maximum length of 32 bits of the Hash sequence to be generated, and the number of the subsequences may be 1, 2, or 5, and so on.
  • the information sequence may also be divided into a plurality of sub-sequences according to the length of each sub-sequence, wherein the content of each sub-sequence may or may not overlap. As long as the sub-sequence used in the encoding is divided, the same as the decoding method used in the decoding.
  • the at least one subsequence is first converted into a decimal value, and is used as an input of the Hash function, thereby generating a Hash function output value, and then converting the Hash function output value into a bit stream, and intercepting the bit Part or all of the stream, thus serving as a hash sequence corresponding to the sequence of information.
  • the bit stream When part or all of the bit stream is intercepted, it may be intercepted according to a certain method. For example, if the length of the Hash sequence is set, the Hash sequence corresponding to the length may be intercepted in the bit stream, and the interception may be performed from the set position.
  • the fixed position may be the first position, or the first position, and may be intercepted from the first position, or may be intercepted from the end. As long as the interception mode of the hash sequence used in encoding is guaranteed, the interception method used in decoding is the same.
  • the determining the hash according to the at least one subsequence and the preset hash function includes:
  • a hash function output value For each second subsequence that is sorted, a hash function output value, the second subsequence, and the first subsequence adjacent to the second subsequence and located before the second subsequence a hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is a subsequence ranked first, a hash of the first subsequence before the second subsequence
  • the function output value is a preset value
  • the Hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the output value of the Hash function corresponding to the previous sub-sequence is determined, and the last sub-sequence is corresponding.
  • the Hash function output value is determined as the Hash sequence corresponding to the first sequence, thereby further reducing the false alarm rate.
  • the hash function is characterized by a change in the v-bit state corresponding to the subsequence, which causes the v-bit state corresponding to the next subsequence to be irregularly different, that is, an avalanche effect. Therefore, encoding by the hash function can further reduce the false alarm rate.
  • the initial sequence of the information sequence to be encoded is determined first, and then the first sequence or the second sequence is determined.
  • the Hash sequence corresponding to the information sequence is determined according to the at least one sub-sequence and the preset hash function
  • the initial sequence may be combined with the information sequence to be encoded, and obtained in the combined sequence. At least two of said subsequences.
  • the combination manner is arbitrary, and the initial sequence may be placed in front of the information sequence to be encoded, or the initial sequence may be placed behind the information sequence to be encoded. Alternatively, the initial sequence can also be inserted into a fixed bit of the information sequence to be encoded.
  • the information sequence, the first sequence and the second sequence are combined, and the combined sequence is further reduced.
  • the method includes:
  • the second sequence is updated by using a preset algorithm, where the preset algorithm includes at least one of an exclusive OR processing algorithm, an interleaving algorithm, and an algorithm for updating a set bit.
  • an algorithm for updating a sequence is saved in a transmitting end, and the information sequence, the first sequence, and the second sequence are combined, and a polarization code is performed on the combined sequence.
  • the sequence can be updated with a preset algorithm prior to encoding.
  • the first sequence may be updated by using only a preset algorithm
  • the second sequence may be updated only by using a preset algorithm, or may be performed by using a preset algorithm. Both the first sequence and the second sequence are updated.
  • the first sequence may be updated before the second sequence is generated, and after the second sequence is generated, And updating the second sequence, or after combining the second sequence, combining the information sequence, the first sequence, and the second sequence, and performing polarization code encoding on the combined sequence Previously, both the first sequence and the second sequence were updated.
  • the preset algorithm includes at least one of an exclusive OR processing algorithm, an interleaving algorithm, and an algorithm for updating a set bit.
  • the adopted algorithm may be the same, Can be different.
  • the algorithm used is an interleaving algorithm.
  • the algorithm used is an algorithm for updating a set bit, or may be when the first sequence is updated.
  • the algorithm used is an exclusive OR processing algorithm and an interleaving algorithm.
  • the updating the first sequence by using a preset algorithm and/or updating the second sequence by using a preset algorithm includes:
  • the first sequence and/or the second sequence are updated using a scrambling sequence.
  • the scrambling sequence is used for the scrambling process in the DCI (Downlink Control Indicator) in the downlink control channel of the LTE.
  • the specific scrambling sequence may be the UEID, and the scrambling sequence may be scrambled in the first In the sequence and/or the second sequence, the scrambling sequence scrambles the first sequence and/or the second sequence, for example, may perform an exclusive OR operation with the first sequence and/or the second sequence according to the scrambling sequence, Implicitly indicates the target user sent by the DCI. Therefore, the process of scrambling is actually a specific embodiment of updating the first sequence and/or the second sequence described above.
  • the process of the scrambling is applied to the downlink control channel of the LTE, and the embodiment of the present invention is not limited to the scenario. For other scenarios, the first sequence and/or the second sequence may also be updated.
  • the UEID may only scramble the first sequence, for example, the hash sequence is the first sequence, and when scrambling the hash sequence, it may be scrambled with the 8-bit UEID and the 8-bit hash sequence. Of course, the number 8 is only the UEID. A column that is no longer than the hash sequence.
  • the UEID may be divided into two segments according to a preset method, and the first sequence, that is, the hash sequence and the second sequence, that is, the CRC sequence, are scrambled, such as The first segment of the UEID is equal in length to the hash sequence, the first segment scrambles the hash sequence, and the remaining bits of the UEID scramble the CRC as the second segment.
  • UCI Uplink Control Information
  • DCI Downlink Control Information
  • the length of the first sequence is between 1 bit and 10 bits
  • the length of the second sequence is between 10 bits and 16 bits. If the first sequence is the first CRC sequence, the length of the first CRC sequence is 1-10 bits, and the second sequence is the second CRC sequence, and the length of the second CRC sequence is 10-16 bits.
  • the first sequence may be generated according to content of the information sequence to be encoded and a CRC processing algorithm, and the second sequence may be attribute information according to a sequence of information to be encoded, the first sequence, and the Generated by the CRC algorithm.
  • the first sequence and the second sequence are calculated. While ensuring the false alarm rate, the second sequence can effectively reduce the length of the first sequence, thereby reducing the overhead of the system.
  • FIG. 4 is a schematic diagram of a polarization code decoding process according to an embodiment of the present invention, where the process includes the following steps:
  • S401 Perform SCL decoding on the sequence encoded by the received polarization code.
  • the method for decoding a polarization code provided by the embodiment of the present invention is applied to a receiving end, and the receiving end may be a base station or a UE.
  • the coded sequence of the polarization code is subjected to rate matching processing and modulation, and then transmitted. After receiving the codeword, the receiving end needs demodulation and de-rate matching processing to determine the polarization corresponding to the received codeword.
  • the coded sequence When performing rate-matching, the rate matching sequence used may preferably be obtained by a Gaussian method or other rate matching sequences that are insensitive to SNR.
  • the rate matching method between the transmitting end and the receiving end is consistent with the de-rate matching method. That is, when the rate matching sequence used by the receiving end is preferably obtained by the Gaussian method, the sequence of the de-rate adopted by the receiving end is also obtained by using the Gaussian method. .
  • each candidate path includes a sequence encoded by the corresponding polarization code.
  • S402 Determine, in the candidate sequence of the multiple candidate paths reserved by the SCL, the information sequence in the candidate sequence, and determine the first check sequence and the second check sequence of the candidate path.
  • the determined information sequence, the first sequence and the second sequence may be different in order to be able to reconstruct the same first sequence and second sequence as the transmitting end, so that the determined decoding result is more Accurately, in the process of determining the information sequence, the first sequence, and the second sequence in the candidate sequence, it is determined according to an encoding manner corresponding to the transmitting end, that is, a process of determining the first sequence and the second sequence in the candidate sequence, The process of determining the first sequence and the second sequence is the same when it is required to encode with the transmitting end polarization code.
  • the number of paths is 1, and each time a bit is decoded, the number of paths is doubled.
  • the number of paths is greater than the set number, according to each The probability of the decoded bit in the strip path determines the probability of the path, selects a set number of paths with a higher probability as the candidate path, performs decoding of the next bit, and after decoding, determines for the next bit Whether the number of paths corresponding to the decoding result of the bit is greater than the set number. If yes, the above process is repeated until the last bit is successfully decoded, and the final candidate path is selected.
  • the SCL decoding is stored in advance.
  • the set number can be, for example, 4.
  • the process of determining the first check sequence it is determined according to the first sequence generation algorithm corresponding to the sender, that is, the process of determining the first check sequence needs to be
  • the process of generating the first sequence by the sender is the same.
  • the process of determining the second check sequence it is determined according to a second sequence generation algorithm corresponding to the sender, that is, the process of determining the second check sequence needs to be the same as the process of generating the second sequence by the sender.
  • the receiving end stores a first sequence generating algorithm and a second sequence generating algorithm corresponding to the sending end.
  • the receiving end determines the first check sequence according to the attribute information of the information sequence and the first sequence generation algorithm corresponding to the sending end, and according to the attribute information of the information sequence and the second sequence generating algorithm corresponding to the sending end, A second check sequence is determined.
  • the attribute information of the information sequence may be the length of the information sequence, may be the content of the information sequence, or may be the length and content of the information sequence.
  • the content of the information sequence may be the entire content of the information sequence or part of the information sequence.
  • the first check sequence and the second check sequence corresponding to the first sequence and the second sequence may be reconstructed in the foregoing manner.
  • the first sequence or the second sequence may be directly used as the first check sequence or the second check sequence.
  • the first sequence is a CRC sequence
  • the first sequence can be used as the first check CRC sequence.
  • S403 Determine a decoding result according to the first check sequence and the second check sequence in each candidate path, where one of the first check sequence and the second check sequence is used for path selection and An error is detected and another check sequence is used to detect the error.
  • the decoding result may be determined according to the first check sequence and the second check sequence in each candidate path.
  • Determining the decoding result according to the first check sequence and the second check sequence in each candidate path may determine, for each candidate path, the first sequence and the second sequence in the candidate path and the first school Whether the sequence and the second check sequence match, the decoding result is determined.
  • the information sequence and the first sequence or the second sequence may be input to the CRC decoder, according to the output of the decoder, Determine the target path.
  • the information sequence and the first sequence in the candidate path may be input to the CRC decoder, and if all of the bits of the output of the CRC decoder are zero, the candidate path is determined as the target path. Then, it is determined whether the second sequence and the second check sequence in the target path match, and if so, the information sequence in the target path is used as a decoding result.
  • the information sequence and the first sequence are input to the CRC decoder, and the target path is determined according to the output of the decoder. For example, when the bits output by the CRC decoder are all zero, the candidate path is determined as the target path. Then, it is determined whether the hash sequence in the target path is consistent with the determined check hash sequence, and if so, the information sequence in the target path is used as the decoding result.
  • the decoding structure is determined according to the first check sequence and the second check sequence, and one of the first check sequence and the second check sequence is used for path selection and detection error. Another check sequence is used to detect errors, thereby decoding the information sequence, reducing the false alarm rate and improving the performance of the system.
  • the determining the check sequence of the candidate path includes:
  • a check sequence is generated according to the length of the information sequence and a random function corresponding to the transmitting end.
  • the process of generating the check sequence may be used when generating the first check sequence, or may be used when generating the second check sequence, or may be generated by generating the first check sequence and the second Use the check sequence at the same time.
  • the process of determining the first check sequence by the receiving end needs to be determined according to the first sequence generating algorithm corresponding to the sending end, that is, the process of determining the first check sequence needs to be the same as the process of generating the first sequence by the sending end.
  • the transmitting end When the attribute information of the information sequence is the content of the information sequence, if the transmitting end generates the first sequence according to the content of the information sequence to be encoded and the CRC processing algorithm, the receiving end pre-saves and the transmitting end
  • the corresponding first sequence generation algorithm is a CRC processing algorithm.
  • the receiving end may generate a first check sequence according to the content of the information sequence and the CRC processing algorithm when generating the first check sequence.
  • the first sequence generating algorithm corresponding to the transmitting end saved in advance by the receiving end is a hash function.
  • the receiving end may generate a first check sequence according to the content of the information sequence and the Hash function when generating the first check sequence.
  • the first sequence generating algorithm corresponding to the transmitting end pre-stored by the receiving end is a random function.
  • the receiving end may generate a first check sequence according to the length of the information sequence and a random function when generating the first check sequence.
  • the attribute information of the information sequence is the content and length of the information sequence
  • the attribute information of the information sequence is the content and length of the information sequence
  • the content and the CRC processing algorithm or the hash function generate a first sequence
  • the first sequence generation algorithm corresponding to the transmitting end pre-stored by the receiving end is a CRC processing algorithm or a Hash function.
  • the receiving end may be part of the content of the information sequence according to the length of the information sequence, and generate a first check sequence according to the content of the information sequence and the CRC processing algorithm or the Hash function.
  • the receiving end needs to be determined according to a second sequence generation algorithm corresponding to the sending end, that is, the process of determining the second check sequence needs to be the same as the process of generating the second sequence by the sending end.
  • the generation process of the second check sequence is similar to the process of generating the first check sequence, which will be described below.
  • the transmitting end When the attribute information of the information sequence is the content of the information sequence, if the transmitting end generates the second sequence according to the content of the information sequence to be encoded and the CRC processing algorithm, the receiving end pre-saves and the transmitting end
  • the corresponding second sequence generation algorithm is a CRC processing algorithm. Receiving end.
  • the second sequence generating algorithm corresponding to the transmitting end saved in advance by the receiving end is a hash function.
  • the receiving end may generate a second check sequence according to the content of the information sequence and the Hash function when generating the second check sequence.
  • the second sequence generating algorithm corresponding to the transmitting end saved in advance by the receiving end is a random function.
  • the receiving end may generate a second check sequence according to the length of the information sequence and a random function when generating the second check sequence.
  • the attribute information of the information sequence is the content and length of the information sequence
  • the attribute information of the information sequence is the content and length of the information sequence
  • the content and the CRC processing algorithm or the hash function generate a second sequence
  • the second sequence generation algorithm corresponding to the transmitting end pre-stored by the receiving end is a CRC processing algorithm or a Hash function.
  • the receiving end may be part of the content of the information sequence according to the length of the information sequence, and generate a second check sequence according to the content of the information sequence and the CRC processing algorithm or the hash function.
  • the first check sequence and the second check sequence may be directly generated according to the attribute information of the information sequence and the sequence generation algorithm corresponding to the sender, but in order to ensure the security of the data transmission, the generation
  • the initial check sequence may be generated according to the corresponding algorithm, and then generated according to the initial check sequence and the attribute information of the information sequence and the sequence corresponding to the sender.
  • the algorithm generates a first check sequence or a second check sequence.
  • the generating a check sequence according to the content of the information sequence and the CRC processing algorithm corresponding to the sending end includes:
  • the process of generating the check sequence may be used when generating the first check sequence, or may be used when generating the second check sequence, or may be generated by generating the first check sequence and the second Use the check sequence at the same time.
  • the process of generating the first check sequence by the receiving end needs to be determined according to the first sequence generation algorithm corresponding to the sending end, that is, the process of determining the first check sequence needs to be the same as the process of generating the first sequence by the sending end.
  • the sending end And generating, by the sending end, the first initial sequence according to the content of the information sequence to be encoded and the CRC processing algorithm, and then, according to the content of the information sequence to be encoded, the first initial sequence, and the CRC processing algorithm, When the first sequence is generated.
  • the receiving end may first generate a first initial check sequence according to the content of the information sequence and a CRC processing algorithm corresponding to the sending end, and then according to the content and the content of the information sequence.
  • the first initial check sequence and the CRC processing algorithm corresponding to the transmitting end generate a first check sequence.
  • the receiving end may generate a first initial check sequence according to the content of the information sequence and a hash function corresponding to the sending end, and then according to the content of the information sequence, The first initial check sequence and the CRC processing algorithm corresponding to the transmitting end generate a first check sequence.
  • the receiving end may first generate a first initial check sequence according to the length of the information sequence and a random function corresponding to the sending end, and according to the content of the information sequence, The first initial check sequence and the CRC processing algorithm corresponding to the transmitting end generate a first check sequence.
  • the process of generating the second check sequence by the receiving end needs to be determined according to the second sequence generating algorithm corresponding to the sending end, that is, the process of determining the second check sequence needs to be the same as the process of generating the second sequence by the sending end.
  • the receiving end may generate a second initial check sequence according to the content of the information sequence and the CRC processing algorithm corresponding to the sending end, and then according to the content and the content of the information sequence.
  • the second initial check sequence and the CRC processing algorithm corresponding to the transmitting end generate a second check sequence.
  • Algorithm when generating the second sequence.
  • the receiving end may generate a second initial check sequence according to the content of the information sequence and the hash function corresponding to the sending end, and then according to the content of the information sequence,
  • the second initial check sequence and the CRC processing algorithm corresponding to the transmitting end generate a second check sequence.
  • the receiving end may generate a second initial check sequence according to the length of the information sequence and a random function corresponding to the sending end, and then, according to the content of the information sequence, The second initial check sequence and the CRC processing algorithm corresponding to the transmitting end generate a second check sequence.
  • the first check sequence and the second check sequence may be directly generated according to the attribute information of the information sequence and the sequence generation algorithm corresponding to the sender, but in order to ensure the security of the data transmission, the generation
  • the initial check sequence may be generated according to the corresponding algorithm, and then generated according to the initial check sequence and the attribute information of the information sequence and the sequence corresponding to the sender.
  • the algorithm generates a first check sequence or a second check sequence.
  • the process of generating the first check sequence by the receiving end needs to be determined according to the first sequence generating algorithm corresponding to the sending end, that is, the process of determining the first check sequence needs to be generated by the sending end.
  • the process of a sequence is the same.
  • the sending end generating, by the sending end, the first initial sequence according to the content of the information sequence to be encoded and the CRC processing algorithm, and then according to the content of the information sequence to be encoded, the first initial sequence, and the preset hash Function, when generating the first sequence.
  • the receiving end may first generate a first initial check sequence according to the content of the information sequence and a CRC processing algorithm corresponding to the sending end, and then according to the content and the content of the information sequence.
  • the first initial check sequence and the hash function corresponding to the transmitting end are generated to generate a first check sequence.
  • the receiving end may generate a first initial check sequence according to the content of the information sequence and a hash function corresponding to the sending end, and then according to the content of the information sequence, The first initial check sequence and the hash function corresponding to the transmitting end generate a first check sequence.
  • the receiving end may first generate a first initial check sequence according to the length of the information sequence and a random function, and then according to the content of the information sequence, the first initial check.
  • the sequence and the hash function corresponding to the sender end generate a first check sequence.
  • the process of generating the second check sequence by the receiving end needs to be determined according to the second sequence generating algorithm corresponding to the sending end, that is, the process of determining the second check sequence needs to be the same as the process of generating the second sequence by the sending end.
  • the receiving end may generate a second initial check sequence according to the content of the information sequence and the CRC processing algorithm corresponding to the sending end, and then according to the content and the content of the information sequence.
  • the second initial check sequence and the hash function corresponding to the transmitting end generate a second check sequence.
  • the sending end may generate a second initial check sequence according to the content of the information sequence and the hash function corresponding to the sending end, and then according to the content of the information sequence, The second initial check sequence and the hash function corresponding to the transmitting end generate a second check sequence.
  • the receiving end may generate a second initial check sequence according to the length of the information sequence and a random function, and then, according to the content of the information sequence, the second initial check.
  • the sequence and the hash function corresponding to the sender end generate a second check sequence.
  • the second sequence may be generated according to the attribute information of the information sequence to be encoded and the first sequence, and the second sequence generating algorithm saved in advance.
  • the receiving end may generate the second check sequence by generating the second check sequence, the attribute information of the sequence to be information and the first check sequence, and the second sequence generating algorithm corresponding to the generating end.
  • the first check sequence may be generated according to the information sequence and the first sequence generation algorithm corresponding to the sender, or may be generated according to the content of the information sequence and an algorithm corresponding to the sender.
  • the sequence further generates a second check sequence according to the first check initial sequence, the information sequence and an algorithm corresponding to the sender.
  • the generating the verification sequence according to the content of the information sequence and the hash function corresponding to the sending end includes:
  • a method for generating a check sequence by using a hash function according to an embodiment of the present invention is applied to a process of generating a check sequence by using a hash function in each of the foregoing embodiments.
  • At least one subsequence may be acquired in the information sequence, according to the at least one subsequence and A hash function corresponding to the sending end determines a hash sequence corresponding to the information sequence, and uses the hash sequence as the generated first check sequence.
  • At least one subsequence may be acquired in the information sequence, according to the at least one subsequence and the transmitting end.
  • Corresponding Hash function determining a Hash sequence corresponding to the information sequence, and using the Hash sequence as the generated second check sequence.
  • the method needs to be obtained according to the subsequence acquisition method corresponding to the sending end, that is, the process of acquiring at least one subsequence in the information sequence needs to be performed with the transmitting end.
  • the process of obtaining at least one subsequence in the information sequence is the same.
  • the at least one subsequence is first converted into a decimal value, and is used as an input of the Hash function, thereby generating a Hash function output value, and then converting the Hash function output value into a bit stream, and intercepting the bit Part or all of the stream, thus serving as a hash sequence corresponding to the sequence of information.
  • the bit stream When part or all of the bit stream is intercepted, it may be intercepted according to a certain method. For example, if the length of the Hash sequence is set, the Hash sequence corresponding to the length may be intercepted in the bit stream, and the interception may be performed from the set position.
  • the fixed position may be the first position, or the first position, and may be intercepted from the first position, or may be intercepted from the end. As long as the interception mode of the hash sequence used in encoding is guaranteed, the interception method used in decoding is the same.
  • the length of the hash sequence obtained in the embodiment of the present invention is not more than 32 bits.
  • the length of the hash sequence may be, for example, 8 bits, or 32 bits, or the like.
  • Determining the Hash sequence corresponding to the information sequence includes:
  • a hash function output value For each second subsequence that is sorted, a hash function output value, the second subsequence, and the first subsequence adjacent to the second subsequence and located before the second subsequence a hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is a subsequence ranked first, a hash of the first subsequence before the second subsequence
  • the function output value is a preset value
  • the Hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the output value of the Hash function corresponding to the previous sub-sequence is determined, and the last sub-sequence is corresponding.
  • the output value of the Hash function is determined as the verification Hash sequence corresponding to the combined sequence, thereby further reducing the false alarm rate.
  • the hash function is characterized by a change in the v-bit state corresponding to the subsequence, which causes the v-bit state corresponding to the next subsequence to be irregularly different, that is, an avalanche effect. Therefore, encoding by the hash function can further reduce the false alarm rate.
  • the transmitting end determines the first sequence or the second sequence, it is determined in an indirect manner, that is, the initial sequence of the information sequence to be encoded is determined first, and then the first sequence or the second sequence is determined.
  • the Hash sequence corresponding to the information sequence is determined according to the at least one sub-sequence and the preset hash function
  • the initial sequence may be combined with the information sequence to be encoded, and obtained in the combined sequence. At least two of said subsequences.
  • the combination manner is arbitrary, and the initial sequence may be placed in front of the information sequence to be encoded, or the initial sequence may be placed behind the information sequence to be encoded. Alternatively, the initial sequence can also be inserted into a fixed bit of the information sequence to be encoded.
  • the receiving end when determining the first check sequence and the second check sequence, the receiving end also determines in an indirect manner, that is, first determines an initial test sequence of the information sequence, and then determines a first test initial sequence or a second test initial sequence.
  • the Hash sequence corresponding to the information sequence is determined according to the at least one subsequence and the preset hash function, the check initial sequence and the information sequence may be combined, and at least the combined sequence is obtained. Two of the subsequences.
  • the combination mode is arbitrary, and the combination manner of the receiving end is the same as that of the transmitting end.
  • the transmitting end places the initial sequence in front of the information sequence to be encoded
  • the receiving end places the check initial sequence in front of the information sequence.
  • the transmitting end places the initial sequence behind the information sequence to be encoded
  • the receiving end places the check initial sequence behind the information sequence.
  • the transmitting end inserts the initial sequence into the fixed bit of the information sequence to be encoded
  • the receiving end inserts the initial sequence into the fixed bit of the information sequence.
  • the method before determining the decoding result according to the first check sequence and the second check sequence in each candidate path, the method also includes:
  • the second check sequence is updated by using an algorithm corresponding to the sender, where the algorithm corresponding to the sender includes at least one of an exclusive OR processing algorithm, an interleaving algorithm, and an algorithm for updating a set bit.
  • the receiving end in the process of updating the first check sequence and/or the second check sequence, the receiving end needs to determine according to the first sequence and/or the second sequence update algorithm corresponding to the sending end. That is, the process of updating the first check sequence and/or the second check sequence needs to be the same as the process of updating the first sequence and/or the second sequence by the transmitting end.
  • An algorithm for updating a sequence corresponding to the sending end is stored in the receiving end, and before determining the decoding result according to the first check sequence and the second check sequence in each candidate path, the corresponding end may be adopted.
  • the algorithm updates the sequence.
  • the sending end updates the first sequence by using only a preset algorithm
  • the receiving end may update the first check sequence by using only an algorithm corresponding to the sending end.
  • the sending end updates the second sequence by using only a preset algorithm
  • the receiving end may update the second check sequence by using only an algorithm corresponding to the sending end.
  • the sending end updates the first sequence and the second sequence by using a preset algorithm
  • the receiving end performs the first check sequence and the second check sequence by using an algorithm corresponding to the sending end. Update.
  • the sending end updates the first sequence and the second sequence by using a preset algorithm
  • the first sequence may be updated before the second sequence is generated, and the second sequence is generated. Then, the second sequence is updated, or after the second sequence is generated, the information sequence, the first sequence, and the second sequence are combined, and the combined sequence is polarized. Both the first sequence and the second sequence are updated before the code is encoded.
  • the receiving end may firstly perform the first before generating the second check sequence.
  • the check sequence is updated, and after the second check sequence is generated, the second check sequence is updated, or after the second check sequence is generated, according to the first check sequence in each candidate path.
  • the second check sequence before determining the decoding result, updating both the first check sequence and the second check sequence.
  • the preset algorithm includes at least one of an exclusive OR processing algorithm, an interleaving algorithm, and an algorithm for updating a set bit.
  • Updating the first check sequence by using an algorithm corresponding to the sending end, and/or updating the second check sequence by using an algorithm corresponding to the sending end includes:
  • the first check sequence and/or the second check sequence are updated using a scrambling sequence corresponding to the sender.
  • the transmitting end updates the first sequence and/or updates the second sequence by using a preset algorithm
  • the first sequence and/or the second sequence are updated by using a scrambling sequence.
  • the receiving end makes the determined decoding result more accurate in order to make the obtained first check sequence and/or the second check sequence more accurate, and updates the first check sequence by using an algorithm corresponding to the sending end and/or Or, when the second check sequence is updated by using an algorithm corresponding to the sender, the first check sequence and/or the second check sequence need to be updated by using a scrambling sequence corresponding to the sender.
  • the receiver uses and transmits The 8-bit UEID corresponding to the end is scrambled with the 8-bit second check sequence, that is, the hash sequence.
  • the number 8 is only one column when the length of the UEID is not greater than the hash sequence. If the length of the UEID is greater than the hash sequence and greater than the second sequence, that is, the CRC sequence, the transmitting end divides the UEID into two segments according to a preset method and respectively respectively.
  • the second sequence CRC sequence of the hash sequence is scrambled. For example, the first segment of the UEID is equal to the hash sequence. The first segment scrambles the hash sequence, and the remaining bits of the UEID are used as the second segment to scramble the CRC.
  • the receiving end divides the UEID corresponding to the sending end into two segments according to the method corresponding to the sending end, and respectively scrambles with the first check sequence, that is, the hash sequence and the second check sequence, that is, the CRC check sequence, such as the first segment of the UEID. It is equal to the first check sequence, that is, the hash sequence.
  • the first segment scrambles the first check sequence, that is, the hash sequence, and the remaining bits of the UEID are used as the second segment to scramble the second check sequence, that is, the CRC check.
  • the same processing as DCI can be performed for the uplink information (UPI) in the uplink control channel.
  • UCI uplink information
  • the length of the first check sequence is between 1 bit and 10 bits, and the length of the second check sequence is between 10 bits and 16 bits. If the first check sequence is the first CRC check sequence, the first CRC check sequence has a length of 1-10 bits, the second check sequence is a second CRC check sequence, and the second CRC check sequence The length is 10-16 bits.
  • the first check sequence may be generated according to the content of the information sequence and a CRC processing algorithm corresponding to the sending end, and the second check sequence may be attribute information according to the information sequence, the first checksum The sequence and the CRC algorithm corresponding to the sender are generated.
  • the first check sequence and the second check sequence are calculated according to the information sequence, and the second check sequence can effectively reduce the length of the first check sequence while ensuring the false alarm rate. , which reduces the overhead of the system.
  • Determining a decoding result according to the first check sequence and the second check sequence in each candidate path, and determining the decoding result includes:
  • the candidate path when the decoding result is determined according to the first check sequence and the second check sequence in each candidate path, and the decoding result is determined, specifically, the candidate path may be determined. Whether the first sequence matches the first check sequence, and if so, the candidate path is used as the target path; and determining whether the second sequence in the target path matches the second check sequence, and if so, the target path The sequence of information on is determined as the result of the decoding.
  • the first sequence is used for path selection, and the first sequence and the second sequence are jointly used for error detection. The matches are the same.
  • the first check sequence may be generated according to a CRC processing algorithm, may be generated according to a hash function, and the second check sequence may be generated according to a CRC processing algorithm, and may be generated according to a hash function, the first The check sequence and the second check sequence may be the same or different.
  • the information sequence and the first sequence when determining the decoding result, may be input to the CRC decoder, and the target path is determined according to the output of the decoder.
  • the information sequence and the first sequence in the candidate path may be input to the CRC decoder, and if all of the bits of the output of the CRC decoder are zero, the candidate path is determined as the target path. Then, it is determined whether the second sequence and the second check sequence in the target path match, and if so, the information sequence in the target path is used as a decoding result.
  • the reliability may be the highest among the multiple candidate paths.
  • the candidate path is determined as a decoding path, and the information sequence corresponding to the decoding path is a decoding result.
  • the candidate path with the highest reliability is the decoding path is a prior art, and will not be described again.
  • Determining the decoding result according to the first check sequence and the second check sequence in each candidate path, and determining the decoding result includes:
  • the candidate path when the decoding result is determined according to the first check sequence and the second check sequence in each candidate path, and the decoding result is determined, specifically, the candidate path may be determined. Whether the second sequence matches the second check sequence, and if so, the candidate path is used as the target path; and determining whether the first sequence in the target path matches the first check sequence, and if so, the target path The sequence of information on is determined as the result of the decoding.
  • the second sequence is used for path selection, and the first sequence and the second sequence are jointly used for error detection. The matches are the same.
  • the first check sequence may be generated according to a CRC processing algorithm, may be generated according to a hash function, and the second check sequence may be generated according to a CRC processing algorithm, and may be generated according to a hash function, the first The check sequence and the second check sequence may be the same or different.
  • the information sequence and the second sequence when determining the decoding result, may be input to the CRC decoder, and the target path is determined according to the output of the decoder.
  • the information sequence and the second sequence in the candidate path may be input to the CRC decoder, and if all of the bits of the output of the CRC decoder are zero, the candidate path is determined as the target path. Then, it is determined whether the first sequence and the first check sequence in the target path match, and if so, the information sequence in the target path is used as a decoding result.
  • both sequences are CRC check sequences
  • the target path may be determined according to the first CRC check sequence, and then the decoding result may be determined according to the second CRC check sequence, or may be determined according to the first
  • the second CRC check sequence determines the target path, and then determines the decoding result according to the first CRC check sequence.
  • the reliability may be the highest among the multiple candidate paths.
  • the candidate path is determined as a decoding path, and the information sequence corresponding to the decoding path is a decoding result.
  • the candidate path with the highest reliability is the decoding path is a prior art, and will not be described again.
  • FIG. 5A is a schematic diagram of a polarization code encoding according to an embodiment of the present invention.
  • the transmitting end uses the CRC1 encoder as the first-level encoding of the information sequence to be encoded, and obtains the first
  • the CRC sequence has the first CRC sequence as the first sequence, and the length of the first sequence is preferably between 1-10 bits.
  • the first sequence of bits is concatenated to the information sequence to be encoded and then sent to the CRC2 encoder to obtain a second CRC sequence, and the second CRC sequence is used as the second sequence, and the length of the second sequence is preferably located at 10- Between 16 bits.
  • the information sequence to be encoded is serially cascaded with the first sequence and the second sequence, and then mapped to different subchannels of the bit channel capacity according to different priorities, thereby realizing the information sequence, the first sequence and the second sequence and the bit channel mapping
  • the remaining positions are used as the freeze position 0, and then sent to the polar code encoder for encoding.
  • the length of the Polar mother code must be an integer power of 2, and the length of the output codeword may be arbitrary, so a rate matching operation is required, that is, a shortening or puncturing operation is performed.
  • the rate matching sequence used in the rate matching operation may preferably be obtained by a Gaussian approximation method, or another rate matching sequence that is insensitive to SNR, and the polar encoder outputs a code sequence after rate matching.
  • the encoded sequence is modulated by the modulator and sent to the receiver on the channel.
  • FIG. 5B is a schematic diagram of a polarization code decoding according to an embodiment of the present invention. As shown in FIG. 5B, after receiving the codeword sent by the transmitting end, the receiving end needs to send the codeword.
  • the demodulator demodulates and performs rate-matching, and then performs SCL decoding on the codeword to obtain L candidate sequences in the L candidate paths, where the candidate sequence includes the information sequence, the first sequence and the second sequence.
  • the receiving end first removes the second sequence of the reserved L candidate sequences, and performs path selection by using the first sequence, that is, the estimated value of the information sequence in the candidate path is used for CRC check by the CRC error detector, and if it can pass,
  • the candidate path is considered to be a target path
  • the second sequence is subjected to CRC check for the second sequence in the target path, and if passed, the information sequence in the target path is a polar decoding output. If the two CRC sequences do not pass as long as one of the checks fails, the decoding is considered to have failed.
  • the second sequence is only used for CRC check and does not participate in auxiliary decoding, there is no loss in false alarm performance. Since the first sequence and the second sequence are jointly used for error detection, the length of the second sequence can be reduced, which can maintain better false alarm performance and improve BLER performance.
  • the receiving end after receiving the codeword sent by the transmitting end, the receiving end needs to send the codeword to the demodulator for demodulation, perform de-rate matching, and then perform SCL decoding on the codeword to obtain L.
  • L candidate sequences in a candidate path the candidate sequence comprising an information sequence, a first sequence and a second sequence.
  • the receiving end first removes the first sequence of the reserved L candidate sequences, and performs path selection by using the second sequence, that is, the estimated value of the information sequence in the candidate path is subjected to CRC check by the CRC error detector, and if passed,
  • the candidate path is considered to be a target path
  • the first sequence is subjected to CRC check for the first sequence in the target path, and if passed, the information sequence in the target path is a polar decoding output. If the two CRC sequences do not pass as long as one of the checks fails, the decoding is considered to have failed.
  • the first sequence Since the first sequence is only used for CRC check and does not participate in auxiliary decoding, there is no loss in false alarm performance. Since the first sequence and the second sequence are jointly used for error detection, the length of the first sequence can be reduced, which can maintain better false alarm performance and improve BLER performance.
  • FIG. 6 is a schematic diagram of a polarization code encoding process according to Embodiment 19 of the present invention, where the process includes the following steps:
  • S601 Acquire at least one subsequence in the information sequence to be encoded.
  • the method for encoding a polarization code provided by the embodiment of the present invention is applied to a base station and a UE (User Equipment, User Equipment).
  • the information sequence may be randomly generated by the simulation device, and the data sequence carries the data to be transmitted in the process of performing actual data transmission.
  • the length of the information sequence is determined by the code length of the polarization code and the code rate.
  • the code length of the polarization code is 96 bits (bits)
  • the code rate is 1/3
  • the length of the information sequence is 32 bits
  • the simulation device randomly generates a sequence of information having a length of 32 bits, and This information sequence is taken as a sequence of information to be encoded.
  • all or part of the information sequence may be used as a subsequence, and all or part of the information sequence may be used as a subsequence, or the information sequence may be used. All or part of it is taken as at least two subsequences and the like.
  • the subsequence may be acquired from the set bit in the information sequence to obtain a set length, or the information sequence may be divided into a set number of subsequences, and the length of the subsequence may be For any length, it is preferred that the length of the subsequence is not greater than the maximum length of 32 bits of the Hash sequence to be generated, and the number of the subsequences may be 1, 2, or 5, and so on.
  • the information sequence may also be divided into a plurality of sub-sequences according to the length of each sub-sequence, wherein the content of each sub-sequence may or may not overlap. As long as the sub-sequence used in the encoding is divided, the same as the decoding method used in the decoding.
  • S602. Determine a Hash sequence corresponding to the information sequence according to the at least one subsequence and a preset hash function.
  • the at least one subsequence is first converted into a decimal value, and is used as an input of the Hash function, thereby generating a Hash function output value, and then converting the Hash function output value into a bit stream, and intercepting the bit Part or all of the stream, thus serving as a hash sequence corresponding to the sequence of information.
  • the bit stream When part or all of the bit stream is intercepted, it may be intercepted according to a certain method. For example, if the length of the Hash sequence is set, the Hash sequence corresponding to the length may be intercepted in the bit stream, and the interception may be performed from the set position.
  • the fixed position may be the first position, or the first position, and may be intercepted from the first position, or may be intercepted from the end. As long as the interception mode of the hash sequence used in encoding is guaranteed, the interception method used in decoding is the same.
  • the length of the hash sequence obtained in the embodiment of the present invention is not more than 32 bits.
  • the length of the hash sequence may be, for example, 8 bits, or 32 bits, or the like.
  • S603 Combine the information sequence and the Hash sequence, and perform polarization code encoding on the combined sequence.
  • the process of performing polarization code encoding on the information sequence and the Hash sequence may be combining the information sequence and the Hash sequence, and then completing the information sequence and the Hash sequence by a polarization code encoder. coding.
  • the transmitting end stores the coding matrix encoded by the polarization code.
  • the information sequence and the Hash sequence may be combined into one sequence. By performing a multiplication and addition operation on the binary field on the combined sequence and the stored coding matrix, the sequence encoded by the polarization code can be obtained.
  • any combination may be used, for example, the information sequence may be preceded, the hash sequence may be followed, or the hash sequence may be preceded, and the information sequence may be followed.
  • the information sequence and the hash sequence can also be interleaved.
  • the bit in the information sequence can be set at a position with high reliability, that is, a subchannel.
  • the bits of the Hash sequence are set at a position where the reliability is relatively low.
  • the information sequence and the Hash sequence are coded by the polarization code, they are modulated by the modulator and sent to the receiving end.
  • the Hash sequence corresponding to the information sequence is determined according to the information sequence and the hash function, and the information sequence and the Hash sequence are combined, and the combined sequence is performed.
  • the polarization code is encoded to complete the polarization code encoding of the sequence of information to be encoded.
  • the acquiring at least one subsequence in the information sequence to be encoded includes:
  • Combining the information sequence and the hash sequence, and performing polarization code encoding on the combined sequence includes:
  • the information sequence, the CRC sequence, and the Hash sequence are combined, and the combined sequence is subjected to polarization code encoding.
  • the length of the CRC sequence is 8 bits, or 12 bits, or 16 bits, or 24 bits.
  • the embodiment of the present invention is not limited by the length of the CRC sequence and the length of the Hash sequence.
  • the length of the CRC sequence may be the same as the length of the CRC sequence in the existing CRC-assisted polarization code encoding code, or may be The length of the longer or shorter CRC sequence is used.
  • all or part of the combined sequence may be a subsequence, and the combined sequence may also be the combination. All or part of the sequence may be a subsequence, and all or part of the combined sequence may be taken as at least two subsequences or the like.
  • the subsequence may be acquired from the set bit in the combined sequence to obtain a set length, or the combined sequence may be divided into a set number of subsequences, and the length of the subsequence may be For any length, it is preferred that the length of the subsequence is not greater than the maximum length of 32 bits of the Hash sequence to be generated, and the number of the subsequences may be 1, 2, or 5, and so on.
  • the combined sequence may also be divided into a plurality of sub-sequences according to the length of each sub-sequence, wherein the content included in each sub-sequence may or may not overlap. As long as the sub-sequence used in the encoding is divided, the same as the partition used in the decoding.
  • the sub-sequence acquisition method is to divide the combined sequence into a set number of sub-sequences, obtaining the at least one sub-sequence in the combined sequence determined by the information sequence and the CRC sequence includes:
  • the combined sequence is divided into the number of subsequences according to a preset number of subsequences, wherein the number is an integer not less than one.
  • the sub-sequences of the set number of divisions obtained may be overlapped or may not overlap each other.
  • the obtaining at least one subsequence in the combined sequence determined by the information sequence and the CRC sequence may be:
  • the corresponding bit is supplemented in the combined sequence, the length of the combined sequence after the complementary bit is an integer multiple of the number, and the combined sequence after the supplementary bit is divided into the number of mutually non-overlapping bits a sequence; or deleting a corresponding bit in the combined sequence, the length of the combined sequence after the bit is deleted is an integer multiple of the number, and the combined sequence after the bit is deleted is divided into the number of non-overlapping bits sequence.
  • the number of the preset sub-sequences is 1, and the length of the combined sequence is n bits. If it is determined that the length n of the combined sequence is an integer multiple of the number I, the combined sequence is divided. For each subsequence that does not overlap each other, the length of each subsequence is n/I bits, which satisfies 1 ⁇ n/I ⁇ 32, that is, the length n/I of each subsequence is not less than 1 and not more than 32, of which 32 bits The bit is the maximum length of the Hash sequence.
  • the corresponding bit is added or deleted in the combined sequence, such that the combined sequence after the corresponding bit is added or deleted is an integer multiple of the number.
  • the content and location of the supplementary or deleted corresponding bits are supplemented or deleted by a preset rule, for example, for supplementing the corresponding bit, the preset rule is to supplement at the end of the combined sequence, and supplement The content of the corresponding bit is 0.
  • the process of performing polarization code encoding on the information sequence, the CRC sequence, and the Hash sequence may be combining the information sequence, the CRC sequence, and the Hash sequence, and then using a polarization code encoder Encoding of the sequence in which the information sequence, the CRC sequence, and the Hash sequence are combined is completed.
  • the coding sequence of the polarization code is used for the process of encoding, and the description of Embodiment 19 is omitted.
  • combining the information sequence, the CRC sequence, and the Hash sequence may be bits of the information sequence
  • the position is set at the most reliable position, that is, the subchannel
  • the bit position of the CRC sequence is set to the position with the second highest reliability
  • the bit position of the Hash sequence is set at a position where the reliability is relatively low.
  • the information sequence, the CRC sequence and the Hash sequence are combined, and the combined sequence is coded by a polarization code, modulated by a modulator, and transmitted to a receiving end.
  • FIG. 7 is a schematic diagram of a polarization code encoding process according to an embodiment of the present invention.
  • the information sequence to be encoded is first encoded by a CRC encoder, and the information sequence is subjected to CRC. Processing, generating a CRC sequence corresponding to the information sequence, and then sending the information sequence and the CRC sequence together into the Hash state generator coding, dividing the information sequence and the CRC sequence into at least one subsequence, and using the Hash function to generate the corresponding Hash
  • the sequence, the information sequence, the CRC sequence and the Hash sequence are sent to the Polar encoder for polarization code encoding.
  • the polarization code is encoded and modulated by the modulator, and then transmitted to the receiving end through the channel.
  • the modulation mode of the modulator may be a QPSK (Quadrature Phase Shfit Keyin) modulation mode, and the channel may be an AWGN (Additive White Gaussian Noise) channel, and further, modulation Before the modulation, the sequence encoded by the Polar encoder can also be punctured by the Quip (Quasi-Uniform Puncturing) method, which is only a method of puncturing, and does not exclude any other The puncturing method performs puncturing on the coded codewords.
  • QPSK Quadrature Phase Shfit Keyin
  • AWGN Additional White Gaussian Noise
  • the information sequence to be encoded is subjected to CRC processing to generate a CRC sequence, and a Hash sequence of the information sequence is generated by using a hash function, which can effectively reduce the false alarm rate by using only CRC coding in the prior art.
  • Determining the Hash sequence includes:
  • a hash function output value For each second subsequence that is sorted, a hash function output value, the second subsequence, and the first subsequence adjacent to the second subsequence and located before the second subsequence a hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is a subsequence ranked first, a hash of the first subsequence before the second subsequence
  • the function output value is a preset value
  • the Hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the output value of the Hash function corresponding to the previous sub-sequence is determined, and the output value of the Hash function corresponding to the last sub-sequence is determined as The Hash sequence corresponding to the first sequence further reduces the false alarm rate.
  • the hash function is characterized by a change in the v-bit state corresponding to the subsequence, which causes the v-bit state corresponding to the next subsequence to be irregularly different, that is, an avalanche effect. Therefore, encoding by the hash function can further reduce the false alarm rate.
  • FIG. 8 is a schematic structural diagram of generating a Hash sequence according to an example of the present invention.
  • the number of obtained sub-sequences is one, and the sub-sequences are sorted into k 1 , k 2 ... and k I , respectively, and the hash function h has two inputs.
  • An output wherein the two inputs are respectively a subsequence and a Hash function output value corresponding to the previous subsequence of the subsequence, that is, a 32-bit state S i-1 , and the output is a Hash function output value corresponding to the subsequence, that is, 32-
  • the output value of the Hash function corresponding to the previous subsequence of the subsequence, that is, the 32-bit state S 0 is a preset value of zero.
  • the bit sequence of the information sequence, the CRC sequence, and the hash sequence S I subjected to the parallel-serial conversion is sent to the polarization code encoder. Any or all of the S I may be used as the Hash sequence corresponding to the combined sequence, as long as the decoding is performed in the same manner.
  • the hash function used in the embodiment of the present invention is an improved "one-at-a-time" Hash function, and the pseudo-code form of the process shown in FIG. 8 is implemented by using the hash function as follows:
  • the output value of the hash function is called a v-bit state, where v ⁇ 32, wherein the two inputs a and b of the hash function respectively represent the v corresponding to the previous subsequence of the subsequence a -bit state, the subsequence information corresponding to the subsequence, an output hash of the hash function indicating a v-bit state corresponding to the subsequence, and if the subsequence is a subsequence of the first bit, then a The value is the default value of 0.
  • the false alarm rate can be effectively reduced compared to the CRC coding only and the hash coding only.
  • FIG. 9 is a schematic diagram of a polarization code decoding process according to an embodiment of the present invention, where the process includes the following steps:
  • S901 Perform SCL decoding on the sequence encoded by the received polarization code.
  • the polarization code encoding method provided by the embodiment of the present invention is applied to a base station and a UE.
  • the sequence encoded by the polarization code will be punctured and modulated, and then transmitted. After receiving the codeword, the receiving end needs demodulation and puncturing processing to determine the pole corresponding to the received codeword.
  • the coded sequence is a coded sequence.
  • each candidate path includes a sequence encoded by the corresponding polarization code.
  • the candidate sequence in the multiple candidate paths reserved for SCL decoding is determined according to an encoding method corresponding to the sending end, and the information sequence and the Hash sequence in the candidate sequence are determined according to the sub-sequence obtaining method corresponding to the sending end. Obtaining at least one subsequence in the information sequence, determining a verification Hash sequence corresponding to the information sequence according to the at least one subsequence and a preset hash function, and selecting a translation according to the Hash sequence and the verification Hash sequence Code path.
  • the sequence determined by the information sequence and the Hash sequence may be different.
  • the process of determining the information sequence and the Hash sequence in the candidate sequence according to the coding method corresponding to the sender.
  • the process of determining the information sequence and the hash sequence in the candidate sequence needs to be the same as the process of determining the information sequence and the hash sequence when encoding the polarization code.
  • the number of paths is 1, and each time a bit is decoded, the number of paths is doubled.
  • the number of paths is greater than the set number, according to each The probability of the decoded bit in the path determines the probability of the path, selects a set number of paths with a higher probability as the candidate path, performs decoding of the next bit, and after decoding, determines for the next bit Whether the number of paths corresponding to the decoding result of the bit is greater than the set number. If yes, the above process is repeated until the last bit is successfully decoded, and the final candidate path is selected.
  • the SCL decoding is stored in advance.
  • the set number can be, for example, 4.
  • the process of acquiring at least one subsequence in the information sequence it is required to acquire according to the subsequence acquisition method corresponding to the sending end, that is, to obtain at least the information sequence.
  • the process of a subsequence needs to be the same as the process of acquiring at least one subsequence in the information sequence when encoding with the polarization code.
  • the at least one subsequence is first converted into a decimal value, and is used as an input of the Hash function, thereby generating a Hash function output value, and then converting the Hash function output value into a bit stream, and intercepting the bit Part or all of the stream, thus serving as a hash sequence corresponding to the sequence of information.
  • the bit stream When part or all of the bit stream is intercepted, it may be intercepted according to a certain method. For example, if the length of the Hash sequence is set, the Hash sequence corresponding to the length may be intercepted in the bit stream, and the interception may be performed from the set position.
  • the fixed position may be the first position, or the first position, and may be intercepted from the first position, or may be intercepted from the end. As long as the interception mode of the hash sequence used in encoding is guaranteed, the interception method used in decoding is the same.
  • the length of the hash sequence obtained in the embodiment of the present invention is not more than 32 bits.
  • the length of the hash sequence may be, for example, 8 bits, or 32 bits, or the like.
  • the candidate information sequence may be included in the decoding path as a decoding result.
  • the candidate information sequence in each candidate path of the SCL decoding is determined by using the same method as in the polarization code encoding method to determine the corresponding hash sequence. And selecting a decoding path according to the candidate hash sequence in the hash sequence and the candidate path, and using the candidate information sequence in the decoding path as a decoding result, thereby completing the polarization code of the sequence encoded by the polarization code. Decoding.
  • determining the information sequence and the Hash sequence in the candidate sequence according to the coding method corresponding to the sending end includes:
  • Acquiring at least one subsequence in the information sequence according to the subsequence acquisition method corresponding to the sending end includes:
  • the sequence determined by the information sequence, the CRC sequence and the Hash sequence may be different.
  • the encoding method corresponding to the end determines that the process of determining the information sequence, the CRC sequence and the Hash sequence in the candidate sequence needs to be the same as the process of determining the information sequence, the CRC sequence and the Hash sequence in the candidate sequence when encoding the polarization code.
  • the process of acquiring at least one subsequence in the combined sequence of the information sequence and the CRC sequence it is required to be obtained according to a combination manner and a subsequence acquisition method corresponding to the sender, that is, in the information sequence and the
  • the process of acquiring at least one subsequence in the combined sequence of the CRC sequence needs to be the same as the process of acquiring at least one subsequence in the combined sequence of the information sequence and the CRC sequence when encoding with the polarization code.
  • the length of the CRC sequence is 8 bits, or 12 bits, or 16 bits, or 24 bits, and the CRC sequence does not participate in decoding.
  • the embodiment of the present invention is not limited by the length of the CRC sequence and the length of the Hash sequence.
  • the length of the CRC sequence may be the same as the length of the CRC sequence in the existing CRC-assisted polarization code encoding code, or may be The length of the longer or shorter CRC sequence is used.
  • all or part of the combined sequence may be a subsequence, and the combined sequence may also be the combination. All or part of the sequence may be a subsequence, and all or part of the combined sequence may be taken as at least two subsequences or the like.
  • the subsequence may be acquired from the set bit in the combined sequence to obtain a set length, or the combined sequence may be divided into a set number of subsequences, and the length of the subsequence may be For any length, it is preferred that the length of the subsequence is not greater than the maximum length of 32 bits of the Hash sequence to be generated, and the number of the subsequences may be 1, 2, or 5, and so on.
  • the combined sequence may also be divided into a plurality of sub-sequences according to the length of each sub-sequence, wherein the content of each sub-sequence may or may not overlap. As long as the sub-sequence used in the encoding is divided, the same as the partition used in the decoding.
  • the obtaining at least one subsequence in the combined sequence determined by the information sequence and the CRC sequence may be:
  • the corresponding bit is supplemented in the combined sequence, the length of the combined sequence after the complementary bit is an integer multiple of the number, and the combined sequence after the supplementary bit is divided into the number of mutually non-overlapping bits a sequence; or deleting a corresponding bit in the combined sequence, the length of the combined sequence after the bit is deleted is an integer multiple of the number, and the combined sequence after the bit is deleted is divided into the number of non-overlapping bits sequence.
  • the corresponding bit is added or deleted in the combined sequence, such that the combined sequence after the corresponding bit is added or deleted is an integer multiple of the number.
  • the content and location of the supplementary or deleted corresponding bits are supplemented or deleted by a preset rule, for example, for supplementing the corresponding bit, the preset rule is to supplement at the end of the combined sequence, and supplement The content of the corresponding bit is 0.
  • FIG. 10 is a schematic diagram of performance of a frame error rate and a false alarm rate of a CRC-assisted polarization code encoding code, a PC-assisted polarization code encoding code, and a Hash-assisted polarization code encoding code according to an embodiment of the present invention, and a polarization code
  • the code length is 96 bits, and the number of paths reserved after SCL decoding is 8.
  • the code rate R is 1/3, and the length of the information sequence is 32 bits, which is modulated by QPSK.
  • the axis EsN0 (db) represents the signal to noise ratio
  • the vertical axis FER represents the false alarm rate and the frame error rate.
  • the false alarm rate error and the check number passing Hash and CRC. / Total number of errors.
  • CRC-aided Polar represents a CRC-assisted polarization code encoding code
  • PC Polar represents a PC-assisted polarization code encoding code
  • Hash Polar represents a hash-assisted polarization code encoding code
  • CRC-16 represents a CRC-assisted polarization.
  • the standard corresponding to the code encoding code and the PC-assisted polarization code encoding code is the CRC-16 standard.
  • the CRC-16 indicates that the Hash-assisted polarization code encoding code corresponds to the CRC-12 standard
  • FER indicates the frame error rate
  • FA indicates False alarm rate. It can be seen from Figure 10 that the false alarm rate is calculated by the CRC and Hash twice and the false alarm rate.
  • the false alarm rate which only passes the CRC checksum and only passes the hash check, is significantly reduced, and can be maintained below 10 -4 , and has a good frame error rate performance.
  • the length of the CRC sequence shown in Figure 10 is 12 bits, and the length of the Hash sequence is 8 bits. According to multiple simulations, after using a shorter CRC sequence length and a shorter Hash sequence length, the frame error rate will be Further decrease.
  • the false alarm rate can be effectively reduced compared to the hash check only by the CRC checksum.
  • the acquiring at least one subsequence in the combined sequence of the candidate information sequence and the candidate CRC sequence includes:
  • the combined sequence is divided into the number of subsequences according to a preset number of subsequences, wherein the number is an integer not less than one.
  • the combined sequence may also be divided into a plurality of sub-sequences according to the length of each sub-sequence, wherein the content included in each sub-sequence may or may not overlap. As long as the sub-sequence used in the encoding is divided, the same as the partition used in the decoding.
  • the sub-sequence of the set length is obtained by acquiring from the set bit in the combination, or the combined sequence may be divided into a set number of sub-sequences, and the length of the sub-sequence may be any Preferably, the length of the subsequence is less than a maximum length of 32 bits of the Hash sequence to be generated, and the number of the subsequences may be 1, 2, or 5, and so on.
  • the combined sequence may also be divided into a plurality of sub-sequences according to the length of each sub-sequence, wherein the content included in each sub-sequence may or may not overlap. As long as the sub-sequence used in the encoding is divided, the same as the partition used in the decoding.
  • the obtaining at least one subsequence in the combined sequence determined by the information sequence and the CRC sequence may be:
  • the corresponding bit is supplemented in the combined sequence, the length of the combined sequence after the complementary bit is an integer multiple of the number, and the combined sequence after the supplementary bit is divided into the number of mutually non-overlapping bits a sequence; or deleting a corresponding bit in the combined sequence, the length of the combined sequence after the bit is deleted is an integer multiple of the number, and the combined sequence after the bit is deleted is divided into the number of non-overlapping bits sequence.
  • the corresponding bit is added or deleted in the combined sequence, such that the combined sequence after the corresponding bit is added or deleted is an integer multiple of the number.
  • the content and location of the supplementary or deleted corresponding bits are supplemented or deleted by a preset rule, for example, for supplementing the corresponding bit, the preset rule is to supplement at the end of the combined sequence, and supplement The content of the corresponding bit is 0.
  • the determining the hash sequence according to the at least one subsequence and the preset hash function includes:
  • a hash function output value For each second subsequence that is sorted, a hash function output value, the second subsequence, and the first subsequence adjacent to the second subsequence and located before the second subsequence a hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is a subsequence ranked first, a hash of the first subsequence before the second subsequence
  • the function output value is a preset value
  • the check hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the output value of the Hash function corresponding to the previous sub-sequence is determined, and the output value of the Hash function corresponding to the last sub-sequence is determined as
  • the verification hash sequence corresponding to the combined sequence further reduces the false alarm rate.
  • the hash function is characterized by a change in the v-bit state corresponding to the subsequence, which causes the v-bit state corresponding to the next subsequence to be irregularly different, that is, an avalanche effect. Therefore, encoding by the hash function can further reduce the false alarm rate.
  • the false alarm rate can be effectively reduced compared to the hash check only by the CRC checksum.
  • the selecting a decoding path according to the Hash sequence and the check Hash sequence includes:
  • the sequence is the result of the decoding.
  • the method further includes:
  • the candidate channel with the highest reliability among the plurality of candidate paths is determined as a decoding path, and the information sequence corresponding to the decoding path is a decoding result.
  • the candidate path with the highest reliability is determined as the decoding path, and the information sequence corresponding to the decoding path is decoded. result.
  • the candidate path is filtered by using the hash function, and the decoding path is selected, so that the decoding path is used for transmission in the actual data transmission process, thereby further reducing the frame error rate and the false alarm rate.
  • FIG. 11 is a schematic diagram of a polarization code decoding process according to an embodiment of the present invention.
  • the coded coded sequence is modulated by the modulator, and then transmitted. After receiving the codeword, the receiving end needs to demodulate the received codeword through the demodulator to determine the pole corresponding to the received codeword.
  • the coded sequence is sent to the Polar decoder for decoding, mainly the SCL decoding algorithm, and the candidate sequence corresponding to the decoded candidate path is sent to the Hash decoder, and the Hash decoding is performed.
  • the device selects the information sequence from the candidate sequence, or the sequence of the information sequence and the corresponding part of the CRC information sequence, and uses the same Hash function as the polarization code encoding method to process the processed hash function and the processed checksum function.
  • the hash sequences in the candidate sequence are compared.
  • the corresponding information sequence is output as a decoding result. If they are the same, the corresponding information sequence is output as a decoding result. If the check hash function of each candidate path is different from the candidate hash sequence in the candidate sequence, the selection is reliable. The information sequence corresponding to the highest candidate path is output as a decoding result.
  • the Polar decoder and the Hash decoding may be combined into a Polar-Hash joint decoder for decoding, thereby outputting the decoding result.
  • the frame error rate and the false alarm rate are further reduced.
  • FIG. 12 is a structural diagram of a polarization code encoding apparatus according to an embodiment of the present invention, where the apparatus includes:
  • a sequence generator 121 configured to generate a first sequence according to attribute information of the information sequence to be encoded and a preset first sequence generation algorithm
  • the sequence generator 121 is further configured to generate a second sequence according to the attribute information of the information sequence to be encoded and the preset second sequence generation algorithm;
  • the Polar encoder 122 is configured to combine the information sequence, the first sequence, and the second sequence, and perform polarization code encoding on the combined sequence.
  • the sequence generator 121 is configured to generate a sequence according to the content of the information sequence to be encoded and the CRC processing algorithm; or generate a sequence according to the content of the information sequence to be encoded and a preset hash function; Or, generating a sequence according to the length of the information sequence to be encoded and a random function.
  • the sequence generator 121 is configured to generate an initial sequence according to the content of the information sequence to be encoded and a CRC processing algorithm; and according to the content of the information sequence to be encoded, the initial sequence, and the CRC processing algorithm Generating a sequence; or generating an initial sequence according to the content of the information sequence to be encoded and a preset hash function; generating according to the content of the information sequence to be encoded, the initial sequence, and the CRC processing algorithm Or generating an initial sequence according to the length of the information sequence to be encoded and a random function; and generating a sequence according to the content of the information sequence to be encoded, the initial sequence, and the CRC processing algorithm.
  • the sequence generator 121 is configured to generate an initial sequence according to the content of the information sequence to be encoded and a CRC processing algorithm; and according to the content of the information sequence to be encoded, the initial sequence, and a preset hash function. Generating a sequence; or generating an initial sequence according to the content of the information sequence to be encoded and a preset hash function; generating according to the content of the information sequence to be encoded, the initial sequence, and a preset hash function Or generating an initial sequence according to the length of the information sequence to be encoded and a random function; and generating a sequence according to the content of the information sequence to be encoded, the initial sequence, and a preset hash function.
  • the sequence generator 121 is configured to obtain at least one subsequence in the information sequence to be encoded, and determine a Hash sequence corresponding to the information sequence according to the at least one subsequence and a preset hash function, where the The Hash sequence is used as the generated sequence.
  • the sequence generator 121 is specifically configured to: if the subsequence includes at least two, sort the at least two subsequences; and for each second subsequence that is sorted, according to the second subsequence Determining a Hash function output value of the first subsequence preceding the second subsequence, the second subsequence, and the Hash function, determining a Hash function output value of the second subsequence, wherein When the second subsequence is a subsequence sorted into the first bit, the Hash function output value of the first subsequence before the second subsequence is a preset value;
  • the Hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the device includes:
  • the updating module 123 is configured to update the first sequence by using a preset algorithm; and/or update the second sequence by using a preset algorithm, where the preset algorithm includes an exclusive OR processing algorithm and interleaving At least one of an algorithm and an algorithm for updating a set bit.
  • the update module 123 is specifically configured to update the first sequence and/or the second sequence by using a scrambling sequence.
  • FIG. 13 is a structural diagram of a polarization code encoding apparatus according to an embodiment of the present disclosure, where the apparatus includes:
  • the Hash state generator 131 is configured to: acquire at least one subsequence in the information sequence to be encoded; and determine a Hash sequence corresponding to the information sequence according to the at least one subsequence and a preset hash function;
  • the Polar encoder 132 is configured to combine the information sequence and the Hash sequence, and perform polarization code encoding on the combined sequence.
  • the device also includes:
  • a CRC encoder 133 configured to perform CRC processing on the information sequence to be encoded, to generate a CRC sequence corresponding to the information sequence;
  • the Hash state generator 131 is further configured to acquire at least one subsequence in the combined sequence determined by the information sequence and the CRC sequence;
  • the Polar encoder 132 is further configured to combine the information sequence, the CRC sequence, and the Hash sequence, and perform polarization code encoding on the combined sequence.
  • the Hash state generator 131 is specifically configured to divide the combined sequence into the number of sub-sequences according to a preset number of sub-sequences, where the number is an integer not less than 1.
  • the Hash state generator 131 is specifically configured to sort the at least two sub-sequences; for each second sub-sequence that is sorted, according to the second sub-sequence and located in the second sub-sequence Determining, by the hash function output value of the first subsequence before the sequence, the second subsequence, and the hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is sorted as In the case of a subsequence, the Hash function output value of the first subsequence before the second subsequence is a preset value; and the Hash sequence is determined according to the Hash function output value of the subsequence sorted as the last bit.
  • FIG. 14 is a structural diagram of a polarization code decoding apparatus according to an embodiment of the present disclosure, where the apparatus includes:
  • Polar decoder 141 configured to perform SCL decoding on the sequence encoded by the received polarization code
  • a check sequence decoder 142 configured to determine a candidate sequence in the candidate sequence for the candidate sequence of the reserved candidate sequences, and determine a first check sequence and a second check of the candidate path a sequence; determining a decoding result according to a first check sequence and a second check sequence in each candidate path, wherein one of the first check sequence and the second check sequence is used for path selection and An error is detected and another check sequence is used to detect the error.
  • the check sequence decoder 142 is specifically configured to generate a check sequence according to the content of the information sequence and a CRC processing algorithm corresponding to the sending end; or, according to the content of the information sequence and the corresponding end of the information sequence
  • the Hash function generates a check sequence; or generates a check sequence according to the length of the information sequence and a random function corresponding to the transmitting end.
  • the check sequence decoder 142 is specifically configured to generate an initial check sequence according to the content of the information sequence and a CRC processing algorithm corresponding to the sending end; and according to the content of the information sequence, the initial check sequence And generating a check sequence by using a CRC processing algorithm corresponding to the sending end; or generating an initial check sequence according to the content of the information sequence and a hash function corresponding to the sending end; and according to the content of the information sequence, the initial a check sequence and a CRC processing algorithm corresponding to the sender to generate a check sequence; or, according to the length of the information sequence and a random function corresponding to the sender, generate an initial check sequence; according to the content of the information sequence, The initial check sequence and a CRC processing algorithm corresponding to the transmitting end generate a check sequence.
  • the check sequence decoder 142 is specifically configured to generate an initial check sequence according to the content of the information sequence and a CRC processing algorithm corresponding to the sending end; and according to the content of the information sequence, the initial check sequence And generating a check sequence by using a hash function corresponding to the sending end; or generating an initial check sequence according to the content of the information sequence and a hash function corresponding to the sending end; and according to the content of the information sequence, the initial calibration And generating a check sequence by using a hash function corresponding to the sending end; or generating an initial check sequence according to the length of the information sequence and a random function corresponding to the sending end; according to the content of the information sequence,
  • the initial check sequence and the hash function corresponding to the sender end generate a check sequence.
  • the check sequence decoder 142 is specifically configured to acquire at least one subsequence in the information sequence, and determine a Hash sequence corresponding to the information sequence according to the at least one subsequence and a hash function corresponding to the sending end.
  • the hash sequence is used as the generated check sequence.
  • the check sequence decoder 142 is specifically configured to: when the subsequence includes at least two, sort the at least two subsequences; and for each second subsequence that is sorted, according to the second Determining a Hash function output value of the first subsequence adjacent to the second subsequence and a second subsequence and the Hash function, determining a Hash function output value of the second subsequence, When the second subsequence is a subsequence sorted into the first bit, the Hash function output value of the first subsequence before the second subsequence is a preset value;
  • the Hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the device also includes:
  • the updating module 143 is configured to update the first check sequence by using an algorithm corresponding to the sending end, and/or update the second check sequence by using an algorithm corresponding to the sending end, where the sending and sending
  • the end-corresponding algorithm includes at least one of an exclusive-OR processing algorithm, an interleaving algorithm, and an algorithm for updating a set bit.
  • the updating module 143 is specifically configured to update the first check sequence and/or the second check sequence by using a scrambling sequence corresponding to the sending end.
  • the check sequence decoder 142 is specifically configured to select a target path according to a first check sequence of each candidate path, and determine a decoding result according to the second check sequence of the target path.
  • the check sequence decoder 142 is specifically configured to select a target path according to a second check sequence of each candidate path, and determine a decoding result according to the first check sequence of the target path.
  • FIG. 15 is a structural diagram of a polarization code decoding apparatus according to an embodiment of the present invention, where the apparatus includes:
  • Polar decoder 151 configured to perform SCL decoding on the sequence encoded by the received polarization code
  • a Hash decoder 152 configured to determine a candidate sequence in a plurality of candidate paths reserved for decoding, and determine an information sequence and a Hash sequence in the candidate sequence according to an encoding method corresponding to the transmitting end; and according to the subsequence corresponding to the transmitting end Obtaining a method, obtaining at least one subsequence in the information sequence, determining, according to the at least one subsequence and a preset hash function, a verification Hash sequence corresponding to the information sequence, according to the Hash sequence and the school The Hash sequence is selected to select the decoding path.
  • the Hash decoder 152 is further configured to determine, according to an encoding method corresponding to the sending end, the information sequence, the CRC sequence, and the Hash sequence in the candidate sequence;
  • the hash decoder 152 is further configured to acquire at least one subsequence in the combined sequence determined by the information sequence and the CRC sequence according to a combination manner and a subsequence acquisition method corresponding to the transmitting end.
  • the hash decoder 152 is specifically configured to divide the combined sequence into the number of sub-sequences according to a preset number of sub-sequences, where the number is an integer not less than one.
  • the Hash decoder 152 is specifically configured to sort the at least two sub-sequences; for each second sub-sequence that is sorted, according to the second sub-sequence and located in the second sub-sequence Determining, by the hash function output value of the first subsequence before the sequence, the second subsequence, and the hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is sorted as In the case of a sub-sequence, the Hash function output value of the first sub-sequence before the second sub-sequence is a preset value; and the check Hash sequence is determined according to the Hash function output value of the sub-sequence sorted as the last bit.
  • the Hash decoder 152 is specifically configured to determine, for each candidate path in the candidate path, whether the Hash sequence in the candidate sequence is the same as the determined check Hash sequence; if the same, determine that the candidate path is a translation
  • the code path, the information sequence corresponding to the decoding path is a decoding result.
  • the hash decoder 152 is further configured to determine a candidate path with the highest reliability among the plurality of candidate paths as a decoding path, where the information sequence corresponding to the decoding path is a decoding result.
  • the embodiment of the invention discloses a method and a device for encoding and encoding a polarization code, the method comprising: generating a first sequence according to attribute information of a sequence of information to be encoded and a preset first sequence generation algorithm; Attribute information of the information sequence and a preset second sequence generation algorithm to generate a second sequence; combining the information sequence, the first sequence and the second sequence, and performing polarization coding on the combined sequence coding.
  • the first sequence and the second sequence are generated according to the attribute information of the information sequence to be encoded and the preset first sequence generation algorithm and the second sequence generation algorithm, thereby realizing the pole of the information sequence. Code coding.
  • a computer device including a memory, a processor, and a computer program stored on the memory and operable on the processor, and the processor implements the following method when executing the computer program:
  • the information sequence, the first sequence, and the second sequence are combined, and the combined sequence is subjected to polarization code encoding.
  • one of the first sequence and the second sequence is used for path selection and detection errors, and the other sequence is used to detect errors.
  • the attribute information of the information sequence to be encoded includes:
  • the length and/or content of the sequence of information to be encoded are the length and/or content of the sequence of information to be encoded.
  • the content of the information sequence to be encoded includes:
  • the generating the sequence according to the attribute information of the information sequence to be encoded and the preset sequence generating algorithm includes:
  • a sequence is generated according to the length of the information sequence to be encoded and a random function.
  • generating a sequence includes:
  • the generating a sequence according to the content of the information sequence to be encoded and a preset hash function includes:
  • the generating a sequence according to the content of the information sequence to be encoded and a preset hash function includes:
  • the determining the Hash sequence corresponding to the information sequence according to the at least one subsequence and the preset hash function includes:
  • a hash function output value For each second subsequence that is sorted, a hash function output value, the second subsequence, and the first subsequence adjacent to the second subsequence and located before the second subsequence a hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is a subsequence ranked first, a hash of the first subsequence before the second subsequence
  • the function output value is a preset value
  • the Hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the method before combining the information sequence, the first sequence, and the second sequence, and performing polarization coding on the combined sequence, the method includes:
  • the second sequence is updated by using a preset algorithm, where the preset algorithm includes at least one of an exclusive OR processing algorithm, an interleaving algorithm, and an algorithm for updating a set bit.
  • the updating, by using a preset algorithm, the updating of the first sequence, and/or updating the second sequence by using a preset algorithm includes:
  • the first sequence and/or the second sequence are updated using a scrambling sequence.
  • the length of the first sequence is between 1 bit and 10 bits
  • the length of the second sequence is between 10 bits and 16 bits.
  • a computer device including a memory, a processor, and a computer program stored on the memory and operable on the processor, and the processor implements the following method when executing the computer program:
  • the information sequence and the hash sequence are combined, and the combined sequence is subjected to polarization code encoding.
  • the acquiring at least one subsequence in the information sequence to be encoded includes:
  • Combining the information sequence and the hash sequence, and performing polarization code encoding on the combined sequence includes:
  • the information sequence, the CRC sequence, and the Hash sequence are combined, and the combined sequence is subjected to polarization code encoding.
  • the acquiring at least one subsequence in the combined sequence determined by the information sequence and the CRC sequence includes:
  • the combined sequence is divided into the number of subsequences according to a preset number of subsequences, wherein the number is an integer not less than one.
  • the determining the Hash sequence according to the at least one subsequence and a preset hash function includes:
  • a hash function output value For each second subsequence that is sorted, a hash function output value, the second subsequence, and the first subsequence adjacent to the second subsequence and located before the second subsequence a hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is a subsequence ranked first, a hash of the first subsequence before the second subsequence
  • the function output value is a preset value
  • the Hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the length of the hash sequence is no more than 32 bits.
  • the length of the CRC sequence is 8 bits, or 12 bits, or 16 bits, or 24 bits.
  • a computer device comprising a memory, a processor, and a computer program stored on the memory and operable on the processor, wherein the processor executes the computer program to implement the following method:
  • Decoding results are determined according to a first check sequence and a second check sequence in each candidate path, wherein one of the first check sequence and the second check sequence is used for path selection and detection error Another check sequence is used to detect errors.
  • the attribute information of the information sequence includes:
  • the content of the information sequence includes:
  • the determining the check sequence of the candidate path includes:
  • a check sequence is generated according to the length of the information sequence and a random function corresponding to the transmitting end.
  • the generating the check sequence according to the content of the information sequence and the CRC processing algorithm corresponding to the sending end includes:
  • the generating the check sequence according to the content of the information sequence and the hash function corresponding to the sending end includes:
  • the generating the check sequence according to the content of the information sequence and the hash function corresponding to the sending end includes:
  • the Hash sequence corresponding to the information sequence is determined according to the at least one sub-sequence and a hash function corresponding to the sending end, and the Hash sequence corresponding to the information sequence is:
  • a hash function output value For each second subsequence that is sorted, a hash function output value, the second subsequence, and the first subsequence adjacent to the second subsequence and located before the second subsequence a hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is a subsequence ranked first, a hash of the first subsequence before the second subsequence
  • the function output value is a preset value
  • the Hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the method further includes: before determining the decoding result according to the first check sequence and the second check sequence in each candidate path, the method further includes:
  • the second check sequence is updated by using an algorithm corresponding to the sender, where the algorithm corresponding to the sender includes at least one of an exclusive OR processing algorithm, an interleaving algorithm, and an algorithm for updating a set bit.
  • the updating, by using an algorithm corresponding to the sending end, updating the first check sequence, and/or updating the second check sequence by using an algorithm corresponding to the sending end includes:
  • the first check sequence and/or the second check sequence are updated using a scrambling sequence corresponding to the sender.
  • determining, according to the first check sequence and the second check sequence in each candidate path, that the decoding result includes:
  • the decoding result is determined according to the first check sequence and the second check sequence in each candidate path, and determining the decoding result includes:
  • a computer device including a memory, a processor, and a computer program stored on the memory and operable on the processor, and the processor implements the following method when executing the computer program:
  • the determining the information sequence and the hash sequence in the candidate sequence according to the encoding method corresponding to the sending end includes:
  • Acquiring at least one subsequence in the information sequence according to the subsequence acquisition method corresponding to the sending end includes:
  • the acquiring at least one subsequence in the combined sequence determined by the information sequence and the CRC sequence includes:
  • the combined sequence is divided into the number of subsequences according to a preset number of subsequences, wherein the number is an integer not less than one.
  • the determining the Hash sequence according to the at least one subsequence and the preset hash function includes:
  • a hash function output value For each second subsequence that is sorted, a hash function output value, the second subsequence, and the first subsequence adjacent to the second subsequence and located before the second subsequence a hash function, determining a hash function output value of the second subsequence, wherein when the second subsequence is a subsequence ranked first, a hash of the first subsequence before the second subsequence
  • the function output value is a preset value
  • the check hash sequence is determined based on the Hash function output value sorted as the last subsequence.
  • the selecting a decoding path according to the Hash sequence and the check Hash sequence includes:
  • the sequence is the result of the decoding.
  • the method further includes:
  • the candidate channel with the highest reliability among the plurality of candidate paths is determined as a decoding path, and the information sequence corresponding to the decoding path is a decoding result.
  • the length of the hash sequence is no more than 32 bits.
  • the length of the CRC sequence is 8 bits, or 12 bits, or 16 bits, or 24 bits.
  • Also provided in the embodiment of the present invention is a computer readable storage medium corresponding to the above computer device, the computer readable storage medium storing a computer program for performing the above method.
  • embodiments of the present application can be provided as a method, system, or computer program product.
  • the present application can take the form of an entirely hardware embodiment, a fully applied embodiment, or a combination of application and hardware aspects.
  • the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a sequence of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种极化码编译码方法及装置,该方法包括:根据待编码的信息序列的属性信息及预设的第一序列生成算法,生成第一序列;根据待编码的信息序列的属性信息及预设的第二序列生成算法,生成第二序列;对所述信息序列、所述第一序列和所述第二序列进行组合,对组合后的序列进行极化码编码。由于在本发明实施例中,根据待编码的信息序列的属性信息及预设的第一序列生成算法和第二序列生成算法,生成第一序列和第二序列,从而实现了对信息序列的极化码编码。

Description

一种极化码编译码方法及装置
本申请要求在2017年1月9日提交中国专利局、申请号为201710014354.5、发明名称为“一种极化码编译码方法及装置”、在2017年3月1日提交中国专利局、申请号为201710118230.1、发明名称为“一种极化码编译码方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及通信技术领域,特别涉及一种极化码编译码方法及装置。
背景技术
目前,随着4G(the 4 th Generation mobile communication technology,第四代移动通信技术)进入规模商用阶段,面向未来的第五代移动通信技术5G(5 th Generation,第五代)已成为全球研发的热点。确定统一的5G概念,制定全球统一的5G标准,已经成为业界的共同呼声。作为5G的eMBB(Enhanced Moblie BroadBand,增强移动宽带)场景控制信道编码方案的极化码(Polar Codes),是一种可以达到二进制对称信道容量的新型编码方式,且具有优异的译码性能。
极化码编译码方式包括CRC(Cyclic Redundancy Check,循环冗余校验)辅助的极化码编译码和PC(Parity Check,奇偶校验)辅助的极化码编译码。图1为CRC辅助的极化码编译码的示意图,CRC辅助的极化码编译码过程包括:将待编码的信息序列首先经过CRC编码器编码,生成对应的CRC序列,再将信息序列和CRC序列一起送入Polar编码器,编码后经过调制器调制,再通过信道发送给接收端;译码时针对解调器解调后的比特流采用Polar-CRC联合译码器进行译码,主要是采用CRC辅助的SCL(Successive Cancellation List,连续删除列表)译码算法,在译码中选择最终译码的译码结果时,Polar-CRC联合译码器先将所有候选码字还原成含有CRC的候选信息 序列,对所有候选信息序列做CRC译码处理,将通过CRC译码并且可靠度最高的候选信息序列作为最终的译码结果。
图2为PC辅助的极化码编译码的示意图,PC辅助的极化码编译码过程包括:将待编码的信息序列首先经过CRC编码器编码,生成对应的CRC序列,再将信息序列和CRC序列一起送入PC-Polar编码器,编码后通过调制器调制,再通过信道发送给接收端;译码时针对调制器解调后的比特流采用Polar译码器进行译码,主要是采用PC辅助的SCL译码算法,在译码中选择最终译码的译码结果时,Polar译码器先将所述候选码字还原成含有PC的候选信息序列,对所有候选信息序列做PC译码处理,将通过PC译码并且可靠度最高的候选信息序列作为最终的译码结果。
CRC辅助的极化码编译码和PC辅助的极化码编译码,在编码阶段都需要经过CRC进行初次编码。
控制信道的性能评估标准metric除了BLER(block error rate,块出错率)以外,另一个重要的性能指标为虚警率(false alarm rates)。虚警率的计算方法有多种定义,常用的两种计算方法为:虚警率=错误且通过CRC校验的帧数/总的传输帧数,或者虚警率=错误且通过CRC校验的帧数/总的出错帧数。低的虚警率有利于降低UE(User Equipment,用户设备)上行碰撞概率,降低UE功耗,提高系统性能。
为了提高Polar译码的性能,一般采用SCL列表译码(list decoding)算法。对于CRC辅助的极化码译码(aided polar codes),由于译码时利用附加的CRC比特进行list decoding译码的路径选择,会导致虚警率的提高。如果虚警率为N个CRC比特决定的虚警率,当采用列表大小(list size)为L的CRC aided SCL译码算法时,在最差的情况下,L路径都需要用CRC进行校验选择,这就导致虚警率变为P fa,block=1-(1-p fa,path) L,且随着L的增大而增大,其中,Pfa,path为虚警率。
对于PC-polar来说最后附加的N个比特只用于检测错误(error detection)并不用于辅助译码,故虚警率不会变差,但PC polar需要较多的校验比特开 销,导致BLER性能变差。
发明内容
本发明提供一种极化码编译码方法及装置,用以提供一种新的极化码编译码方案。
本发明实施例公开了一种极化码编码方法,所述方法包括:
根据待编码的信息序列的属性信息及预设的第一序列生成算法,生成第一序列;
根据待编码的信息序列的属性信息及预设的第二序列生成算法,生成第二序列;
对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码。
进一步地,所述第一序列和第二序列中的一个序列用于路径选择和检测错误,另一个序列用于检测错误。
进一步地,所述待编码的信息序列的属性信息包括:
待编码的信息序列的长度和/或内容。
进一步地,所述待编码的信息序列的内容包括:
所述待编码的信息序列的全部内容和/或部分内容。
进一步地,所述根据待编码的信息序列的属性信息及预设的序列生成算法,生成序列包括:
根据所述待编码的信息序列的内容及CRC处理算法,生成序列;或,
根据所述待编码的信息序列的内容及预设的Hash(哈希)函数,生成序列;或,
根据所述待编码的信息序列的长度及随机函数,生成序列。
进一步地,所述根据所述待编码的信息序列的内容及CRC处理算法,生成序列包括:
根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根 据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,
根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,
根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列。
进一步地,所述根据所述待编码的信息序列的内容及预设的Hash函数,生成序列包括:
根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,
根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,
根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列。
进一步地,所述根据所述待编码的信息序列的内容及预设的Hash函数,生成序列包括:
在待编码的信息序列中获取至少一个子序列;
根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的序列。
进一步地,如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列包括:
将所述至少两个子序列进行排序;
针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述 Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
进一步地,所述对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码之前,所述方法包括:
采用预设的算法对所述第一序列进行更新;和/或,
采用预设的算法对所述第二序列进行更新,其中所述预设算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
进一步地,所述采用预设的算法对所述第一序列进行更新和/或采用预设的算法对所述第二序列进行更新包括:
采用加扰序列对第一序列和/或第二序列进行更新。
进一步地,所述第一序列的长度位于1比特到10比特之间,所述第二序列的长度位于10比特到16比特之间。
本发明实施例公开了一种极化码编码方法,所述方法包括:
在待编码的信息序列中获取至少一个子序列;
根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列;
对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
进一步地,所述在待编码的信息序列中获取至少一个子序列包括:
对待编码的信息序列进行CRC处理,生成所述信息序列对应的CRC序列;
在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列;
所述对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码包括:
对所述信息序列、所述CRC序列和所述Hash序列进行组合,并对组合 后的序列进行极化码编码。
进一步地,所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列包括:
根据预设的子序列的数量,将所述组合序列划分为所述数量个子序列,其中所述数量为不小于1的整数。
进一步地,如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定所述Hash序列包括:
将所述至少两个子序列进行排序;
针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
进一步地,Hash序列的长度不大于32比特位。
进一步地,所述CRC序列的长度为8比特位、或12比特位、或16比特位、或24比特位。
本发明实施例公开了一种极化码译码方法,所述方法包括:
对接收到的极化码编码后的序列进行SCL译码;
针对SCL译码保留的多条候选路径中的候选序列,确定该候选序列中的信息序列,并确定该候选路径的第一校验序列和第二校验序列;
根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,其中,第一校验序列和第二校验序列中的一个校验序列用于路径选择和检测错误,另一个校验序列用于检测错误。
进一步地,所述信息序列的属性信息包括:
信息序列的长度和/或内容。
进一步地,所述信息序列的内容包括:
所述信息序列的全部内容和/或部分内容。
进一步地,所述确定该候选路径的校验序列包括:
根据所述信息序列的内容及与发送端对应的CRC处理算法,生成校验序列;或,
根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列;或,
根据所述信息序列的长度及与发送端对应的随机函数,生成校验序列。
进一步地,所述根据所述信息序列的内容及与发送端对应的CRC处理算法,生成校验序列包括:
根据所述信息序列的内容及与发送端对应的CRC处理算法,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列;或,
根据所述信息序列的内容及与发送端对应的Hash函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列;或,
根据所述信息序列的长度及与发送端对应的随机函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列。
进一步地,所述根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列包括:
根据所述信息序列的内容及与发送端对应的CRC处理算法,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列;或,
根据所述信息序列的内容及与发送端对应的Hash函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列;或,
根据所述信息序列的长度及与发送端对应的随机函数,生成初始校验序 列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列。
进一步地,所述根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列包括:
在所述信息序列中获取至少一个子序列;
根据所述至少一个子序列及与发送端对应的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的校验序列。
进一步地,如果所述子序列包括至少两个,所述根据所述至少一个子序列及与发送端对应的Hash函数,确定所述信息序列对应的Hash序列包括:
将所述至少两个子序列进行排序;
针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
进一步地,所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果之前,所述方法还包括:
采用与发送端对应的算法对所述第一校验序列进行更新;和/或,
采用与发送端对应的算法对所述第二校验序列进行更新,其中所述与发送端对应的算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
进一步地,所述采用与发送端对应的算法对所述第一校验序列进行更新和/或采用与发送端对应的算法对所述第二校验序列进行更新包括:
采用与发送端对应的加扰序列对第一校验序列和/或第二校验序列进行更新。
进一步地,所述根据每条候选路径中的第一校验序列和第二校验序列, 确定译码结果,确定译码结果包括:
根据每条候选路径的第一校验序列,选择目标路径;
根据所述目标路径的第二校验序列,确定为译码结果。
进一步地,所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,确定译码结果包括:
根据每条候选路径的第二校验序列,选择目标路径;
根据所述目标路径的第一校验序列,确定为译码结果。
本发明实施例公开了一种极化码译码方法,所述方法包括:
对接收到的极化码编码后的序列进行SCL译码;
针对SCL译码保留的多条候选路径中的候选序列,根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列;根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列,根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的校验Hash序列,根据所述Hash序列与所述校验Hash序列选择译码路径。
进一步地,所述根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列包括:
根据与发送端对应的编码方法,确定候选序列中的信息序列、CRC序列和Hash序列;
所述根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列包括:
根据与发送端对应的组合方式及子序列获取方法,在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列。
进一步地,所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列包括:
根据预设的子序列的数量,将所述组合序列划分为所述数量个子序列,其中所述数量为不小于1的整数。
进一步地,如果所述子序列包括至少两个,所述根据所述至少一个子序 列及预设的Hash函数,确定校验Hash序列包括:
将所述至少两个子序列进行排序;
针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定校验Hash序列。
进一步地,所述根据所述Hash序列与所述校验Hash序列选择译码路径包括:
针对每条候选路径中的候选序列,判断该候选序列中的Hash序列与确定的校验Hash序列是否相同;如果相同,则确定所述候选路径为译码路径,所述译码路径对应的信息序列为译码结果。
进一步地,如果每条候选路径对应的Hash序列与确定的校验Hash序列都不相同,所述方法还包括:
将所述多条候选路径中可靠度最高的候选路径确定为译码路径,所述译码路径对应的信息序列为译码结果。
进一步地,Hash序列的长度不大于32比特位。
进一步地,所述CRC序列的长度为8比特位、或12比特位、或16比特位、或24比特位。
本发明实施例公开了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下方法:
根据待编码的信息序列的属性信息及预设的第一序列生成算法,生成第一序列;
根据待编码的信息序列的属性信息及预设的第二序列生成算法,生成第二序列;
对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码。
本发明实施例公开了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下方法:
在待编码的信息序列中获取至少一个子序列;
根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列;
对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
本发明实施例公开了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下方法:
对接收到的极化码编码后的序列进行连续删除列表SCL译码;
针对SCL译码保留的多条候选路径中的候选序列,确定该候选序列中的信息序列,并确定该候选路径的第一校验序列和第二校验序列;
根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,其中,第一校验序列和第二校验序列中的一个校验序列用于路径选择和检测错误,另一个校验序列用于检测错误。
本发明实施例公开了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下方法:
对接收到的极化码编码后的序列进行SCL译码;
针对SCL译码保留的多条候选路径中的候选序列,根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列;根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列,根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的校验Hash序列,根据 所述Hash序列与所述校验Hash序列选择译码路径。
本发明实施例公开了相应的计算机可读存储介质,所述计算机可读存储介质存储有上述方法的计算机程序。
本发明实施例公开了一种极化码编码装置,所述装置包括:
序列产生器,用于根据待编码的信息序列的属性信息及预设的第一序列生成算法,生成第一序列;
序列产生器,还用于根据待编码的信息序列的属性信息及预设的第二序列生成算法,生成第二序列;
极化码Polar编码器,用于对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码。
本发明实施例公开了一种极化码编码装置,所述装置包括:
Hash状态产生器,用于在待编码的信息序列中获取至少一个子序列;根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列;
极化码Polar编码器,用于对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
本发明实施例公开了一种极化码译码装置,所述装置包括:
极化码Polar译码器,用于对接收到的极化码编码后的序列进行SCL译码;
校验序列译码器,用于针对SCL译码保留的多条候选路径中的候选序列,确定该候选序列中的信息序列,并确定该候选路径的第一校验序列和第二校验序列;根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,其中,第一校验序列和第二校验序列中的一个校验序列用于路径选择和检测错误,另一个校验序列用于检测错误。
本发明实施例公开了一种极化码译码装置,所述装置包括:
Polar译码器,用于对接收到的极化码编码后的序列进行SCL译码;
Hash译码器,用于针对SCL译码保留的多条候选路径中的候选序列,根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列;根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列,根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的校验Hash序列,根据所述Hash序列与所述校验Hash序列选择译码路径。
本发明实施例公开了一种极化码编译码方案,包括:根据待编码的信息序列的属性信息及预设的第一序列生成算法,生成第一序列;根据待编码的信息序列的属性信息及预设的第二序列生成算法,生成第二序列;对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码。由于在本发明实施例中,根据待编码的信息序列的属性信息及预设的第一序列生成算法和第二序列生成算法,生成第一序列和第二序列,从而实现了对信息序列的极化码编码。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为背景技术中中CRC辅助的极化码编译码的示意图;
图2为背景技术中PC辅助的极化码编译码的示意图;
图3为本发明实施例1提供的一种极化码编码过程示意图;
图4为本发明实施例9提供的一种极化码译码过程示意图;
图5A为本发明实施例提供的一种极化码编码的示意图;
图5B为本发明实施例提供的一种极化码译码的示意图;
图6为本发明实施例19提供的一种极化码编码过程示意图;
图7为本发明实施例20提供的一种极化码编码过程示意图;
图8为本发明实施例21提供的生成Hash序列的结构示意图;
图9为本发明实施例22提供的一种极化码译码过程示意图;
图10为本发明实施例23提供的CRC辅助的极化码编译码、PC辅助的极化码编译码和Hash辅助的极化码编译码的误帧率和虚警率的性能示意图;
图11为本发明实施例25提供的一种极化码译码过程示意图;
图12为本发明实施例提供的一种极化码编码装置结构图;
图13为本发明实施例提供的一种极化码编码装置结构图;
图14为本发明实施例提供的一种极化码译码装置结构图;
图15为本发明实施例提供的一种极化码译码装置结构图。
具体实施方式
本发明实施例提供了一种新的极化码编译码方案。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了便于阅读,对部分技术方案的实施例进行了编号,例如实施例1、2、3…等,这样便于强调该方案一定程度上的独立性,但是,对实施例进行编号这并不意味着每个实施例都是独立的,事实上,本领域技术人员可以根据它们的作用确定出它们彼此之间的联系以及是否可以组合以实现其它作用。
实施例1:
图3为本发明实施例提供的一种极化码编码过程示意图,该过程包括以下步骤:
S301:根据待编码的信息序列的属性信息及预设的第一序列生成算法,生成第一序列。
S302:根据待编码的信息序列的属性信息及预设的第二序列生成算法,生成第二序列。
本发明实施例提供的极化码编码方法可以应用于发送端,所述发送端可 以是基站,也可以是UE。
在进行仿真的过程中,信息序列可以由仿真设备随机产生,在进行实际的数据传输的过程中,信息序列中携带有待传输的数据。信息序列的长度由极化码的码长,以及码率共同决定。例如,在进行仿真的过程中,极化码的码长为96bit(比特位),码率为1/3,则信息序列的长度为32bit,则仿真设备随机产生长度为32bit的信息序列,并将该信息序列作为待编码的信息序列。
发送端中预先保存有第一序列生成算法,当发送端存在待编码的信息序列时,可以根据所述待编码的信息序列的属性信息及预先保存的第一序列生成算法,生成第一序列。并且发送端中预先保存有第二序列生成算法,当发送端存在待编码的信息序列时,可以根据所述待编码的信息序列的属性信息及预先保存的第二序列生成算法,生成第二序列。所述第一序列生成算法和第二序列生成算法可以相同,也可以不同。
所述待编码的信息序列的属性信息可以是待编码的信息序列的长度,也可以是待编码的信息序列的内容,也可以是待编码的信息序列的长度和内容。所述待编码的信息序列的内容可以是待编码的信息序列的全部内容,也可以是待编码的信息序列的部分内容。
第一序列和第二序列中的一个序列用于路径选择和检测错误,另一个序列用于检测错误。其中可以是第一序列用于路径选择和检测错误,第二序列用于检测错误,也可以是第二序列用于路径选择和检测错误,第一序列用于检测错误。
S303:对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码。
对所述信息序列、所述第一序列和所述第二序列进行极化码编码的过程可以是将所述信息序列、所述第一序列和所述第二序列进行组合,再由极化码编码器完成对所述信息序列、所述第一序列和所述第二序列的编码。发送端保存有极化码编码的编码矩阵,在对所述信息序列、所述第一序列和所述第二序列进行极化码编码时,具体的,可以是将所述信息序列和第一序列和 第二序列组合成一个序列,对组合后的序列和保存的编码矩阵进行二元域上的乘加运算,则可以得到极化码编码后的序列。在对将所述信息序列和第一序列和第二序列组合成一个序列时,可以是任意组合,例如可以是信息序列在前,第一序列在中间、第二序列在最后,也可以是第二序列位于第一序列和信息序列的中间,也可以将信息序列、第一序列和第二序列进行交织。
实施中,在对信息序列、所述第一序列和所述第二序列进行组合时,即对信息序列、所述第一序列和所述第二序列进行并串变换,可以将信息序列中的比特位设置在可靠性比较高的比特上,即子信道,将所述第一序列和所述第二序列的比特位设置在可靠性相对低的比特上。对比特位进行极化码编码的过程可以参见现有技术,在本发明实施例中对该过程不进行赘述。
发送端中预先保存有速率匹配算法,在对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码后,可以根据预先保存的速率匹配算法(rate matching),对编码后的序列进行速率匹配。在进行速率匹配时,所采用的rate matching序列较佳的可以利用高斯方法获得,或者采用对SNR(Signal Noise Ratio,信噪比)不敏感的其他rate matching序列。
在对编码后的序列完成速率匹配后,可以对编码后的序列再通过调制器进行调制,发送给接收端。
由于在本发明实施例中,根据待编码的信息序列的属性信息及预设的第一序列生成算法和第二序列生成算法,生成第一序列和第二序列,从而实现了对信息序列的极化码编码。
实施例2:
在上述实施例的基础上,在本发明实施例中,所述根据待编码的信息序列的属性信息及预设的序列生成算法,生成序列包括:
根据所述待编码的信息序列的内容及CRC处理算法,生成序列;或,
根据所述待编码的信息序列的内容及预设的Hash函数,生成序列;或,
根据所述待编码的信息序列的长度及随机函数,生成序列。
在本发明实施例中,上述生成序列的过程可以在生成第一序列时使用,也可以是在生成第二序列时使用,也可以在生成第一序列和第二序列时同时使用。
当所述待编码的信息序列的属性信息为所述待编码的信息序列的内容时,所述发送端预先保存的第一序列生成算法可以是CRC处理算法,则在生成第一序列时,可以是根据所述待编码的信息序列的内容及CRC处理算法,生成第一序列。
所述发送端预先保存的第一序列生成算法可以是Hash函数,则在生成第一序列时,可以是根据所述待编码的信息序列的内容及所述Hash函数,生成第一序列。
当所述待编码的信息序列的属性信息为所述待编码的信息序列的长度时,所述发送端预先保存的第一序列生成算法可以是随机函数,则在生成第一序列时,可以是根据所述待编码的信息序列的长度及随机函数,生成第一序列。
当所述待编码的信息序列的属性信息为所述待编码的信息序列的内容和长度时,所述发送端预先保存的第一序列生成算法可以是CRC处理算法或Hash函数,在生成第一序列时,可以是根据待编码的信息序列的长度作为待编码的信息序列的内容的一部分,并根据所述待编码的信息序列的内容及CRC处理算法或Hash函数,生成第一序列。
第二序列的生成过程与第一序列的生成过程类似,以下进行说明。
在本发明实施例中,当所述待编码的信息序列的属性信息为所述待编码的信息序列的内容时,所述发送端预先保存的第二序列生成算法可以是CRC处理算法,则在生成第二序列时,可以是根据所述待编码的信息序列的内容及CRC处理算法,生成第二序列。
所述发送端预先保存的第二序列生成算法可以是Hash函数,则在生成第二序列时,可以是根据所述待编码的信息序列的内容及Hash函数,生成第二序列。
当所述待编码的信息序列的属性信息为所述待编码的信息序列的长度时, 所述发送端预先保存的第二序列生成算法可以是随机函数,则在生成第二序列时,可以是根据所述待编码的信息序列的长度及随机数函数,生成第二序列。
当所述待编码的信息序列的属性信息为所述待编码的信息序列的内容和长度时,所述发送端预先保存的第二序列生成算法可以是CRC处理算法或Hash函数,在生成第二序列时,可以是根据待编码的信息序列的长度作为待编码的信息序列的内容的一部分,并根据所述待编码的信息序列的内容及CRC处理算法或Hash函数,在生成第二序列。
所述第一序列的生成方法和第二序列的生成方法可以是相同的,也可以是不同的。例如,可以是在生成第一序列时采用CRC处理算法,在生成第二序列时采用Hash函数或随机函数,也可以是在生成第一序列时采用随机函数,在生成第二序列时也采用随机函数或CRC处理算法。
实施例3:
在生成序列时,可以是根据待编码的信息序列的属性信息及预设的序列生成算法直接生成第一序列和第二序列,但是为了保证数据传输的安全性,在生成第一序列和/或第二序列时,也可以是先根据相应的算法生成初始序列,再根据所述初始序列以及待编码的信息序列的属性信息以及预设的序列生成算法,生成第一序列或第二序列。在上述各实施例的基础上,在本发明实施例中,所述根据所述待编码的信息序列的内容及CRC处理算法,生成序列包括:
根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,
根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,
根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所 述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列。
在本发明实施例中,上述生成序列的过程可以在生成第一序列时使用,也可以是在生成第二序列时使用,也可以在生成第一序列和第二序列时同时使用。
在根据所述待编码的信息序列的内容及CRC处理算法生成第一序列时,具体的,可以是先根据所述待编码的信息序列的内容及CRC处理算法,生成第一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及所述CRC处理算法,生成第一序列。
也可以是先根据所述待编码的信息序列的内容及预设的Hash函数,生成第一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及所述CRC处理算法,生成第一序列。
还可以是先根据所述待编码的信息序列的长度及随机函数,生成第一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及所述CRC处理算法,生成第一序列。
在根据所述待编码的信息序列的内容及CRC处理算法生成第二序列时,具体的,可以是先根据所述待编码的信息序列的内容及CRC处理算法,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及所述CRC处理算法,生成第二序列。
可以是先根据所述待编码的信息序列的内容及预设的Hash函数,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及所述CRC处理算法,生成第二序列。
还可以是先根据所述待编码的信息序列的长度及随机函数,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及所述CRC处理算法,生成第二序列。
第一序列的生成方法和第二序列的生成方法可以是相同的,也可以是不同的。例如,可以是在生成第一序列时,采用先根据所述待编码的信息序列的内容及CRC处理算法,生成第一初始序列,再根据所述待编码的信息序列 的内容、所述第一初始序列及所述CRC处理算法,生成第一序列;在生成第二序列时,采用先根据所述待编码的信息序列的内容及预设的Hash函数,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及所述CRC处理算法,生成第二序列。
所述第一初始序列或第二初始序列可以是一个已知的序列,例如可以是终端或基站的标识信息,或者是一个随机数等。
实施例4:
在生成序列时,可以是根据待编码的信息序列的属性信息及预设的序列生成算法直接生成第一序列和第二序列,但是为了保证数据传输的安全性,在生成第一序列和/或第二序列时,也可以是先根据相应的算法生成初始序列,再根据所述初始序列以及待编码的信息序列的属性信息以及预设的序列生成算法,生成第一序列或第二序列。在上述各实施例的基础上,在本发明实施例中,所述根据所述待编码的信息序列的内容及预设的Hash函数,生成序列包括:
根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,
根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,
根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列。
在本发明实施例中,在根据所述待编码的信息序列的内容及预设的Hash函数生成序列时,具体的,可以是先根据所述待编码的信息序列的内容及CRC处理算法,生成第一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及预设的Hash函数,生成第一序列。
可以是先根据所述待编码的信息序列的内容及预设的Hash函数,生成第 一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及预设的Hash函数,生成第一序列。
还可以是先根据所述待编码的信息序列的长度及随机函数,生成第一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及预设的Hash函数,生成第一序列。
在根据所述待编码的信息序列的内容及预设的Hash函数生成第二序列时,具体的,可以是先根据所述待编码的信息序列的内容及CRC处理算法,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及预设的Hash函数,生成第二序列。
可以是先根据所述待编码的信息序列的内容及预设的Hash函数,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及预设的Hash函数,生成第二序列。
还可以是先根据所述待编码的信息序列的长度及随机函数,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及预设的Hash函数,生成第二序列。
第一序列的生成方法和第二序列的生成方法可以是相同的,也可以是不同的。例如,可以是在生成第一序列时,采用先根据所述待编码的信息序列的内容及CRC处理算法,生成第一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及预设的Hash函数,生成第一序列;在生成第二序列时,采用先根据所述待编码的信息序列的内容及预设的Hash函数,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及所述Hash函数,生成第二序列。
另外,在本发明实施例中,在生成第二序列时,可以根据所述待编码的信息序列的属性信息和所述第一序列,及预先保存的第二序列生成算法,生成第二序列。
所述第一序列可以是直接生成的,例如根据所述待编码的信息序列的内容及CRC处理算法,直接生成的第一序列;或,根据所述待编码的信息序列 的内容及预设的Hash函数,直接生成的第一序列;或,根据所述待编码的信息序列的长度及随机函数,直接生成的第一序列。
所述第一序列也可以根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列。
根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,
根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,
根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列。
实施例5:
为了进一步降低虚警率,在上述各实施例的基础上,在本发明实施例中,所述根据所述待编码的信息序列的内容及预设的Hash函数,生成序列包括:
在待编码的信息序列中获取至少一个子序列;
根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的序列。
本发明实施例提供的采用Hash函数,生成序列的方法,应用于上述各实施例中的采用Hash函数,生成序列的过程中。
具体的,在根据所述待编码的信息序列的内容及预设的Hash函数,生成第一序列时,可以是在待编码的信息序列中获取至少一个子序列,根据所述 至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的第一序列。在根据所述待编码的信息序列的内容及预设的Hash函数,生成第二序列时,可以是在待编码的信息序列中获取至少一个子序列,根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的第二序列。
所述在待编码的信息序列中获取至少一个子序列时,可以是将该信息序列的全部或者部分作为子序列,可以将该信息序列的全部或部分作为一个子序列,也可以将该信息序列的全部或部分作为至少两个子序列等。还可以是在所述信息序列中从设定的比特位开始获取,获取设定长度的子序列,也可以是将所述信息序列划分成设定数量的子序列,所述子序列的长度可以为任意长度,较优的是所述子序列的长度不大于待生成的Hash序列的最大长度32比特位,所述子序列的数量可以是1个、2个或5个等。还可以按照每个子序列的长度,将该信息序列划分为多个子序列,其中每个子序列包含的内容可以重叠,也可以不重叠等。只要保证编码时采用的子序列的划分方式,与译码时采用的划分方式相同即可。
具体的在生成Hash序列时,先将该至少一个子序列转化为十进制数值,将其作为Hash函数的输入,从而生成Hash函数输出值,然后将该Hash函数输出值转化为比特流,截取该比特流的部分或全部,从而作为该信息序列对应的Hash序列。
在截取该比特流的部分或全部时,可以按照一定的方法来截取,例如设置了Hash序列的长度,则在该比特流中截取该长度对应的Hash序列,可以从设定位置截取,该设定位置可以是第一位,或者非第一位,可以是从第一位开始往后截取,也可以是从末尾往前开始截取等等。只要保证编码时采用的Hash序列的截取方式,与译码时采用的截取方式相同即可。
实施例6:
为了进一步降低虚警率,在上述各实施例的基础上,本发明实施例中,如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash 函数,确定Hash序列包括:
将所述至少两个子序列进行排序;
针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
在本发明实施例中,针对至少两个子序列,根据前一个子序列对应的Hash函数输出值,来确定与其相邻的后一个子序列对应的Hash函数输出值,并将最后一个子序列对应的Hash函数输出值,确定为第一序列对应的Hash序列,从而进一步降低了虚警率。
为了进一步降低虚警率,在本发明实施例中该Hash函数的特点为子序列对应的v-bit状态的变化,会引起下一个子序列对应的v-bit状态无规则的不同,即雪崩效应,从而通过该Hash函数进行编码可以进一步降低虚警率。
如果在确定第一序列或第二序列时,是先确定待编码的信息序列的初始序列,再确定第一序列或第二序列。这样在根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列时,可以是将所述初始序列与待编码的信息序列进行组合,在组合后的序列中获取至少两个所述子序列。在对初始序列和待编码的信息序列进行组合时,组合方式是任意的,可以是将初始序列放置于待编码的信息序列的前面,也可以是将初始序列放置于待编码的信息序列的后面,或者也可以将初始序列插入到待编码的信息序列的固定比特位上。
实施例7:
为了进一步降低虚警率,在上述各实施例的基础上,本发明实施例中,所述对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码之前,所述方法包括:
采用预设的算法对所述第一序列进行更新;和/或,
采用预设的算法对所述第二序列进行更新,其中所述预设算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
在本发明实施例中,发送端中保存有对序列进行更新的算法,在对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码之前,可以采用预设的算法对序列进行更新。在进行更新时,可以是只采用预设的算法对所述第一序列进行更新,可以是只采用预设的算法对所述第二序列进行更新,也可以是采用预设的算法对所述第一序列和所述第二序列均进行更新。
当采用预设的算法对所述第一序列和所述第二序列均进行更新时,具体的,可以是在生成第二序列之前,先对第一序列进行更新,在生成第二序列之后,再对第二序列进行更新,也可以是在生成第二序列之后,在对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码之前,对第一序列和第二序列均更新。
其中所述预设算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种,在对第一序列和第二序列进行更新时,采用的算法可以是相同的,也可以是不同的。例如,在对第一序列进行更新时,采用的算法是交织算法,在对第二序列进行更新时,采用的算法是更新设定比特位的算法,也可以是在对第一序列进行更新时,采用的算法为异或处理算法和交织算法,在对第二序列进行更新时,采用的是交织算法和更新设定比特位的算法。
所述采用预设的算法对所述第一序列进行更新和/或采用预设的算法对所述第二序列进行更新包括:
采用加扰序列对第一序列和/或第二序列进行更新。
由于在LTE的下行控制信道中的DCI(Downlink Control Indicator,下行控制指示)中需要采用加扰序列进行加扰处理,具体的该加扰序列可以为UEID,该加扰序列可以加扰在第一序列和/或第二序列中,加扰序列对第一序列和/或第二序列进行加扰,例如可以是根据该加扰序列与第一序列和/或第二 序列进行异或运算,以隐式表示该DCI发送的目标用户。因此该加扰的过程,实际上就是上述对第一序列和/或第二序列,进行更新的一种具体实施方式。只是该加扰的过程应用于LTE的下行控制信道,而本发明实施例并不限于该场景下,对于其他场景,也可以对该第一序列和/或第二序列进行更新。
由于是两个序列,因此在进行更新时,可以是只对其中一个序列加扰,或者也可以是对两个序列同时加扰。具体的,UEID可以只对第一序列加扰,例如hash序列为第一序列,在对hash序列加扰时,可以是用8比特的UEID与8比特的hash序列加扰,当然数字8只是UEID长度不大于hash序列时的一个列子。
如果UEID的长度大于hash序列,也大于CRC序列,CRC序列为第二序列,可以将UEID按照预设的方法分成两段分别与第一序列即hash序列和第二序列即CRC序列加扰,如UEID的第一段与hash序列等长,该第一段对hash序列加扰,UEID剩余的比特作为第二段对CRC加扰。
对于上行控制信道中的UCI(Uplink Control Information,上行控制信息)可以进行与DCI相同的处理。
实施例8:
在本发明上述实施例中,第一序列的长度位于1比特到10比特之间,所述第二序列的长度位于10比特到16比特之间。如果第一序列为第一CRC序列,则第一CRC序列的长度为1-10比特,第二序列为第二CRC序列,则第二CRC序列的长度为10-16比特。所述第一序列可以是根据所述待编码的信息序列的内容及CRC处理算法生成的,并且所述第二序列可以是根据待编码的信息序列的属性信息、所述第一序列以及所述CRC算法生成的。
现有LTE系统中控制信道要求的虚警率是16比特,在5G系统中将会保持该虚警率的要求。因此在该虚警率的要求下,计算的第一序列的长度应该是16比特,但如果第一序列的长度是16比特,则该第一序列不能进行路径的选择,因此为了保证路径选择,该第一序列的长度一般为16+5=21比特。而在本发明实施例中,根据信息序列,计算有第一序列和第二序列,在保证 虚警率的同时,第二序列可以有效的降低第一序列的长度,从而降低了系统的开销。
实施例9:
图4为本发明实施例提供的一种极化码译码过程示意图,该过程包括以下步骤:
S401:对接收到的极化码编码后的序列进行SCL译码。
本发明实施例提供的极化码译码方法应用于接收端,所述接收端可以是基站,也可以是UE。
通常情况下,极化码编码后的序列会做速率匹配处理和调制,再进行发送,接收端在接收到码字后需要解调和解速率匹配处理后,确定接收到的码字对应的极化码编码后的序列。在进行解速率匹配时,所采用的rate matching序列较佳的可以利用高斯方法获得,或者采用对SNR不敏感的其他rate matching序列。发送端与接收端的速率匹配方法与解速率匹配方法是一致的,即当接收端采用的rate matching序列较佳的可以利用高斯方法获得,则接收端采用的解速率的序列也是利用高斯方法获得的。
所述对接收到的极化码编码后的序列进行SCL译码的过程属于现有技术,在本发明实施例中对该过程不做赘述。
所述极化码编码后的序列经过SCL译码后,会根据设定保留多条候选路径,每条候选路径中包括对应的极化码编码后的序列。
S402:针对SCL译码保留的多条候选路径中的候选序列,确定该候选序列中的信息序列,并确定该候选路径的第一校验序列和第二校验序列。
对于不同的编码方式,确定的信息序列、第一序列和第二序列的方式可能不同,为了能够重构出与发送端相同的第一序列和第二序列,使确定的译码的结果的更加准确,在确定候选序列中的信息序列、第一序列和第二序列的过程中,需要根据与发送端对应的编码方式来确定,即确定候选序列中的第一序列和第二序列的过程,需要与发送端极化码编码时,确定第一序列和第二序列的过程相同。
接收端中在确定SCL译码保留的多条候选路径时,开始译码时,路径数是1,每译码出一个比特位,路径数加倍,当路径数大于设定的数量时,根据每条路径中译出的比特位的概率确定路径的概率,选择概率较高的设定数量的路径作为候选路径,进行下一比特位的译码,并在译码后,判断针对该下一比特位的译码结果对应的路径数量是否大于设定的数量,如果是,重复上述过程,直到最后一个比特位译码成功,并选择出最终的候选路径,一般的,SCL译码中保存有预先设定的数量,例如可以是4。
同理,为了使得译码的结果更加准确,在确定第一校验序列的过程中,需要根据与发送端对应的第一序列生成算法来确定的,即确定第一校验序列的过程需要与发送端生成第一序列的过程相同。
在确定第二校验序列的过程中,需要根据与发送端对应的第二序列生成算法来确定的,即确定第二校验序列的过程需要与发送端生成第二序列的过程相同。
具体的可以是接收端保存有与发送端对应的第一序列生成算法和第二序列生成算法。接收端根据所述信息序列的属性信息及与发送端对应的第一序列生成算法,确定第一校验序列,并根据所述信息序列的属性信息及与发送端对应的第二序列生成算法,确定第二校验序列。
所述信息序列的属性信息可以是信息序列的长度,可以是信息序列的内容,也可以是信息序列的长度和内容。所述信息序列的内容可以是信息序列的全部内容,也可以是信息序列的部分内容。
或者,在本发明实施例中,如果第一序列或第二序列为CRC序列,可以采用上述方式重构出与第一序列和第二序列对应的第一校验序列和第二校验序列,但为了进一步提高路径选择的效率,可以直接将第一序列或第二序列作为第一校验序列或第二校验序列。例如第一序列为CRC序列,则可以将第一序列作为第一校验CRC序列。
S403:根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,其中,第一校验序列和第二校验序列中的一个校验序列用于路径选择 和检测错误,另一个校验序列用于检测错误。
在确定出每条候选路径中的第一校验序列和第二校验序列后,可以根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果。
根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果时,可以是针对每条候选路径,确定该候选路径中的第一序列和第二序列与第一校验序列和第二校验序列是否匹配,确定译码结果。
如果第一序列或第二序列为CRC校验序列,则在确定译码结果时,可以是将信息序列和第一序列或第二序列输入到CRC译码器中,根据译码器的输出,确定目标路径。例如可以是将候选路径中的信息序列和第一序列输入到CRC译码器中,如果CRC译码器的输出的比特位的全部为零时,将该候选路径确定为目标路径。然后判断该目标路径中第二序列和第二校验序列是否匹配,如果是,则将该目标路径中的信息序列作为译码结果。
例如第一序列为CRC序列,第二序列为hash序列时,则将该将信息序列和第一序列输入到CRC译码器中,根据译码器的输出,确定目标路径。例如CRC译码器输出的比特位全部为零时,将该候选路径确定为目标路径。然后确定该目标路径中的hash序列与确定的校验hash序列是否一致,如果是,则将该目标路径中的信息序列作为译码结果。
由于在本发明实施例中,根据第一校验序列和第二校验序列,确定译码结构,第一校验序列和第二校验序列中的一个校验序列用于路径选择和检测错误,另一个校验序列用于检测错误,从而实现了对信息序列的译码,降低了虚警率,提高了系统的性能。
实施例10:
在上述实施例的基础上,在本发明实施例中,所述确定该候选路径的校验序列包括:
根据所述信息序列的内容及与发送端对应的CRC处理算法,生成校验序列;或,
根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列; 或,
根据所述信息序列的长度及与发送端对应的随机函数,生成校验序列。
在本发明实施例中,上述生成校验序列的过程可以在生成第一校验序列时使用,也可以是在生成第二校验序列时使用,也可以在生成第一校验序列和第二校验序列时同时使用。
接收端确定第一校验序列的过程中,需要根据与发送端对应的第一序列生成算法来确定的,即确定第一校验序列的过程需要与发送端生成第一序列的过程相同。
当所述信息序列的属性信息为所述信息序列的内容时,如果发送端是根据所述待编码的信息序列的内容及CRC处理算法,生成第一序列,则接收端预先保存的与发送端对应的第一序列生成算法为CRC处理算法。接收端在生成第一校验序列时,可以是根据所述信息序列的内容及所述CRC处理算法,生成第一校验序列。
如果发送端是根据所述待编码的信息序列的内容及所述Hash函数,生成第一序列,则接收端预先保存的与发送端对应的第一序列生成算法为Hash函数。接收端在生成第一校验序列时,可以是根据所述信息序列的内容及所述Hash函数,生成第一校验序列。
如果发送端是根据所述待编码的信息序列的长度及随机函数,生成第一序列,则接收端预先保存的与发送端对应的第一序列生成算法为随机函数。接收端在生成第一校验序列时,可以是根据所述信息序列的长度及随机函数,生成第一校验序列。
当所述信息序列的属性信息为所述信息序列的内容和长度时,如果是根据待编码的信息序列的长度作为待编码的信息序列的内容的一部分,并根据所述待编码的信息序列的内容及CRC处理算法或Hash函数,生成第一序列,则接收端预先保存的与发送端对应的第一序列生成算法为CRC处理算法或Hash函数。接收端在生成第一校验序列时,可以是根据信息序列的长度作为信息序列的内容的一部分,并根据所述信息序列的内容及CRC处理算法或 Hash函数,生成第一校验序列。
接收端在确定第二校验序列的过程中,需要根据与发送端对应的第二序列生成算法来确定的,即确定第二校验序列的过程需要与发送端生成第二序列的过程相同。第二校验序列的生成过程与第一校验序列的生成过程类似,以下进行说明。
当所述信息序列的属性信息为所述信息序列的内容时,如果发送端是根据所述待编码的信息序列的内容及CRC处理算法,生成第二序列,则接收端预先保存的与发送端对应的第二序列生成算法为CRC处理算法。接收端。
如果发送端是根据所述待编码的信息序列的内容及所述Hash函数,生成第二序列,则接收端预先保存的与发送端对应的第二序列生成算法为Hash函数。接收端在生成第二校验序列时,可以是根据所述信息序列的内容及所述Hash函数,生成第二校验序列。
如果发送端是根据所述待编码的信息序列的长度及随机函数,生成第二序列,则接收端预先保存的与发送端对应的第二序列生成算法为随机函数。接收端在生成第二校验序列时,可以是根据所述信息序列的长度及随机函数,生成第二校验序列。
当所述信息序列的属性信息为所述信息序列的内容和长度时,如果是根据待编码的信息序列的长度作为待编码的信息序列的内容的一部分,并根据所述待编码的信息序列的内容及CRC处理算法或Hash函数,生成第二序列,则接收端预先保存的与发送端对应的第二序列生成算法为CRC处理算法或Hash函数。接收端在生成第二校验序列时,可以是根据信息序列的长度作为信息序列的内容的一部分,并根据所述信息序列的内容及CRC处理算法或Hash函数,生成第二校验序列。
实施例11:
在生成校验序列时,可以是根据信息序列的属性信息及与发送端对应的序列生成算法直接生成第一校验序列和第二校验序列,但是为了保证数据传输的安全性,在生成第一校验序列和/或第二校验序列时,也可以是先根据相 应的算法生成初始校验序列,再根据所述初始校验序列以及信息序列的属性信息以及与发送端对应的序列生成算法,生成第一校验序列或第二校验序列。在上述各实施例的基础上,在本发明实施例中,所述根据所述信息序列的内容及与发送端对应的CRC处理算法,生成校验序列包括:
根据所述信息序列的内容及与发送端对应的CRC处理算法,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列;或,
根据所述信息序列的内容及与发送端对应的Hash函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列;或,
根据所述信息序列的长度及与发送端对应的随机函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列。
在本发明实施例中,上述生成校验序列的过程可以在生成第一校验序列时使用,也可以是在生成第二校验序列时使用,也可以在生成第一校验序列和第二校验序列时同时使用。
接收端生成第一校验序列的过程中,需要根据与发送端对应的第一序列生成算法来确定的,即确定第一校验序列的过程需要与发送端生成第一序列的过程相同。
当发送端是根据所述待编码的信息序列的内容及CRC处理算法,生成第一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及所述CRC处理算法,生成第一序列时。则接收端在生成第一校验序列时,可以是先根据所述信息序列的内容及与发送端对应的CRC处理算法,生成第一初始校验序列,再根据所述信息序列的内容、所述第一初始校验序列及与发送端对应的CRC处理算法,生成第一校验序列。
当发送端是根据所述待编码的信息序列的内容及预设的Hash函数,生成第一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及 所述CRC处理算法,生成第一序列时。则接收端在生成第一校验序列时,可以是先根据所述信息序列的内容及与发送端对应的Hash函数,生成第一初始校验序列,再根据所述信息序列的内容、所述第一初始校验序列及与发送端对应的CRC处理算法,生成第一校验序列。
当发送端是根据所述待编码的信息序列的长度及随机函数,生成第一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及所述CRC处理算法,生成第一序列时。则接收端在生成第一校验序列时,可以是先根据所述信息序列的长度及与发送端对应的随机函数,生成第一初始校验序列,再根据所述信息序列的内容、所述第一初始校验序列及与发送端对应的CRC处理算法,生成第一校验序列。
接收端生成第二校验序列的过程中,需要根据与发送端对应的第二序列生成算法来确定的,即确定第二校验序列的过程需要与发送端生成第二序列的过程相同。
当发送端是根据所述待编码的信息序列的内容及CRC处理算法,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及所述CRC处理算法,生成第二序列时。则接收端在生成第二校验序列时,可以是先根据所述信息序列的内容及与发送端对应的CRC处理算法,生成第二初始校验序列,再根据所述信息序列的内容、所述第二初始校验序列及与发送端对应的CRC处理算法,生成第二校验序列。
当发送端是根据所述待编码的信息序列的内容及预设的Hash函数,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及所述CRC处理算法,生成第二序列时。则接收端在生成第二校验序列时,可以是先根据所述信息序列的内容及与发送端对应的Hash函数,生成第二初始校验序列,再根据所述信息序列的内容、所述第二初始校验序列及与发送端对应的CRC处理算法,生成第二校验序列。
当发送端是根据所述待编码的信息序列的长度及随机函数,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及所述CRC 处理算法,生成第二序列时。则接收端在生成第二校验序列时,可以是先根据所述信息序列的长度及与发送端对应的随机函数,生成第二初始校验序列,再根据所述信息序列的内容、所述第二初始校验序列及与发送端对应的CRC处理算法,生成第二校验序列。
实施例12:
在生成校验序列时,可以是根据信息序列的属性信息及与发送端对应的序列生成算法直接生成第一校验序列和第二校验序列,但是为了保证数据传输的安全性,在生成第一校验序列和/或第二校验序列时,也可以是先根据相应的算法生成初始校验序列,再根据所述初始校验序列以及信息序列的属性信息以及与发送端对应的序列生成算法,生成第一校验序列或第二校验序列。在上述各实施例的基础上,在本发明实施例中,所述根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列包括:
根据所述信息序列的内容及与发送端对应的CRC处理算法,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列;或,
根据所述信息序列的内容及与发送端对应的Hash函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列;或,
根据所述信息序列的长度及与发送端对应的随机函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列。
在本发明实施例中,接收端生成第一校验序列的过程中,需要根据与发送端对应的第一序列生成算法来确定的,即确定第一校验序列的过程需要与发送端生成第一序列的过程相同。
当发送端是根据所述待编码的信息序列的内容及CRC处理算法,生成第一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及所述预设的Hash函数,生成第一序列时。则接收端在生成第一校验序列时,可 以是先根据所述信息序列的内容及与发送端对应的CRC处理算法,生成第一初始校验序列,再根据所述信息序列的内容、所述第一初始校验序列及与发送端对应的Hash函数,生成第一校验序列。
当发送端是根据所述待编码的信息序列的内容及预设的Hash函数,生成第一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及所述Hash函数,生成第一序列时。则接收端在生成第一校验序列时,可以是先根据所述信息序列的内容及与发送端对应的Hash函数,生成第一初始校验序列,再根据所述信息序列的内容、所述第一初始校验序列及与发送端对应的Hash函数,生成第一校验序列。
当发送端是根据所述待编码的信息序列的长度及随机函数,生成第一初始序列,再根据所述待编码的信息序列的内容、所述第一初始序列及所述Hash函数,生成第一序列时。则接收端在生成第一校验序列时,可以是先根据所述信息序列的长度及随机函数,生成第一初始校验序列,再根据所述信息序列的内容、所述第一初始校验序列及与发送端对应的Hash函数,生成第一校验序列。
接收端生成第二校验序列的过程中,需要根据与发送端对应的第二序列生成算法来确定的,即确定第二校验序列的过程需要与发送端生成第二序列的过程相同。
当发送端是根据所述待编码的信息序列的内容及CRC处理算法,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及所述预设的Hash函数,生成第二序列时。则接收端在生成第二校验序列时,可以是先根据所述信息序列的内容及与发送端对应的CRC处理算法,生成第二初始校验序列,再根据所述信息序列的内容、所述第二初始校验序列及与发送端对应的Hash函数,生成第二校验序列。
当发送端是根据所述待编码的信息序列的内容及预设的Hash函数,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及所述Hash函数,生成第二序列时。则接收端在生成第二校验序列时,可以是 先根据所述信息序列的内容及与发送端对应的Hash函数,生成第二初始校验序列,再根据所述信息序列的内容、所述第二初始校验序列及与发送端对应的Hash函数,生成第二校验序列。
当发送端是根据所述待编码的信息序列的长度及随机函数,生成第二初始序列,再根据所述待编码的信息序列的内容、所述第二初始序列及所述Hash函数,生成第二序列时。则接收端在生成第二校验序列时,可以是先根据所述信息序列的长度及随机函数,生成第二初始校验序列,再根据所述信息序列的内容、所述第二初始校验序列及与发送端对应的Hash函数,生成第二校验序列。
另外,如果接收端在生成第二序列时,可以根据所述待编码的信息序列的属性信息和所述第一序列,及预先保存的第二序列生成算法,生成第二序列。则接收端在生成第二校验序列时,可以是所述待信息序列的属性信息和所述第一校验序列,及与发生端对应的第二序列生成算法,生成第二校验序列。
其中所述第一校验序列可以是直接根据信息序列及与发送端对应的第一序列生成算法生成,也可以是先根据信息序列的内容及与发送端对应的算法,生成第一校验初始序列,再根据所述第一校验初始序列,所述信息序列及与发送端对应的算法生成第二校验序列。
实施例13:
为了进一步降低虚警率,在上述各实施例的基础上,在本发明实施例中,所述根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列包括:
在所述信息序列中获取至少一个子序列;
根据所述至少一个子序列及与发送端对应的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的校验序列。
本发明实施例提供的采用Hash函数,生成校验序列的方法,应用于上述各实施例中的采用Hash函数,生成校验序列的过程中。
具体的,在根据所述信息序列的内容及与发送端对应的Hash函数,生成第一校验序列时,可以是在所述信息序列中获取至少一个子序列,根据所述至少一个子序列及与发送端对应的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的第一校验序列。
在根据所述信息序列的内容及与发送端对应的Hash函数,生成第二校验序列时,可以是在所述信息序列中获取至少一个子序列,根据所述至少一个子序列及与发送端对应的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的第二校验序列。
在所述信息序列中获取至少一个子序列的过程中,需要根据与发送端对应的子序列获取方法来获取,即在所述信息序列中获取至少一个子序列的过程,需要与发送端在所述信息序列中获取至少一个子序列的过程相同。
具体的在生成Hash序列时,先将该至少一个子序列转化为十进制数值,将其作为Hash函数的输入,从而生成Hash函数输出值,然后将该Hash函数输出值转化为比特流,截取该比特流的部分或全部,从而作为该信息序列对应的Hash序列。
在截取该比特流的部分或全部时,可以按照一定的方法来截取,例如设置了Hash序列的长度,则在该比特流中截取该长度对应的Hash序列,可以从设定位置截取,该设定位置可以是第一位,或者非第一位,可以是从第一位开始往后截取,也可以是从末尾往前开始截取等等。只要保证编码时采用的Hash序列的截取方式,与译码时采用的截取方式相同即可。
实施中,在本发明实施例中截取得到的Hash序列的长度不大于32比特位位。该Hash序列的长度例如可以为8比特位、或32比特位等等。
实施例14:
为了进一步降低虚警率,在上述各实施例的基础上,本发明实施例中,如果所述子序列包括至少两个,所述根据所述至少一个子序列及与发送端对应的Hash函数,确定所述信息序列对应的Hash序列包括:
将所述至少两个子序列进行排序;
针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
在本发明实施例中,针对至少两个子序列,根据前一个子序列对应的Hash函数输出值,来确定与其相邻的后一个子序列对应的Hash函数输出值,并将最后一个子序列对应的Hash函数输出值,确定为组合序列对应的校验Hash序列,从而进一步降低了虚警率。
为了进一步降低虚警率,在本发明实施例中该Hash函数的特点为子序列对应的v-bit状态的变化,会引起下一个子序列对应的v-bit状态无规则的不同,即雪崩效应,从而通过该Hash函数进行编码可以进一步降低虚警率。
如果发送端在确定第一序列或第二序列时,采用非直接的方式确定的,即先确定待编码的信息序列的初始序列,再确定第一序列或第二序列。这样在根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列时,可以是将所述初始序列与待编码的信息序列进行组合,在组合后的序列中获取至少两个所述子序列。在对初始序列和待编码的信息序列进行组合时,组合方式是任意的,可以是将初始序列放置于待编码的信息序列的前面,也可以是将初始序列放置于待编码的信息序列的后面,或者也可以将初始序列插入到待编码的信息序列的固定比特位上。
则接收端在确定第一校验序列和第二校验序列时,也采用非直接的方式确定,即先确定信息序列的初始检验序列,再确定第一检验初始序列或第二检验初始序列。这样在根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列时,可以是将所述校验初始序列与信息序列进行组合,在组合后的序列中获取至少两个所述子序列。在对初始序列和信息序列进行组合时,组合方式是任意的,接收端的组合方式与发送端的组合方式 是相同的。当发送端将初始序列放置于待编码的信息序列的前面,接收端则将校验初始序列放置于信息序列的前面。
当发送端是将初始序列放置于待编码的信息序列的后面,接收端则将校验初始序列放置于信息序列的后面。当发送端将初始序列插入到待编码的信息序列的固定比特位上,接收端则将初始序列插入到信息序列的固定比特位上。
实施例15:
为了进一步降低虚警率,在上述各实施例的基础上,本发明实施例中,所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果之前,所述方法还包括:
采用与发送端对应的算法对所述第一校验序列进行更新;和/或,
采用与发送端对应的算法对所述第二校验序列进行更新,其中所述与发送端对应的算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
在本发明实施例中,接收端对第一校验序列和/或第二校验序列更新的过程中,需要根据与发送端对应的对第一序列和/或第二序列更新算法来确定的,即对第一校验序列和/或第二校验序列更新的过程需要与发送端对第一序列和/或第二序列更新的过程相同。
接收端中保存有与发送端对应的对序列进行更新的算法,在根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果之前,可以采用与发送端对应的算法对序列进行更新。在进行更新时,如果发送端只采用预设的算法对所述第一序列进行更新,则接收端可以是只采用与发送端对应的算法对所述第一校验序列进行更新。
如果发送端只采用预设的算法对所述第二序列进行更新,则接收端可以是只采用与发送端对应的算法对所述第二校验序列进行更新。
如果发送端采用预设的算法对所述第一序列和所述第二序列均进行更新,则接收端采用与发送端对应的算法对所述第一校验序列和第二校验序列均进 行更新。
如果发送端采用预设的算法对所述第一序列和所述第二序列均进行更新时,具体的,可以是在生成第二序列之前,先对第一序列进行更新,在生成第二序列之后,再对第二序列进行更新,也可以是在生成第二序列之后,在对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码之前,对第一序列和第二序列均更新。
则接收端在采用与发送端对应的算法对所述第一校验序列和所述第二校验序列均进行更新时,具体的,可以是在生成第二校验序列之前,先对第一校验序列进行更新,在生成第二校验序列之后,再对第二校验序列进行更新,也可以是在生成第二校验序列之后,在根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果之前,对第一校验序列和第二校验序列均更新。
其中所述预设算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
所述采用与发送端对应的算法对所述第一校验序列进行更新和/或采用与发送端对应的算法对所述第二校验序列进行更新包括:
采用与发送端对应的加扰序列对第一校验序列和/或第二校验序列进行更新。
由于发送端在采用预设的算法对所述第一序列进行更新和/或第二序列进行更新时,会采用加扰序列对第一序列和/或第二序列进行更新。接收端为了使得到的第一校验序列和/或第二校验序列更加准确,使确定的译码的结果更加准确,在采用与发送端对应的算法对第一校验序列进行更新和/或采用与发送端对应的算法对第二校验序列进行更新时,需要采用与发送端对应的加扰序列对第一校验序列和/或第二校验序列进行更新。
由于是两个校验序列,当发送端只对一个序列进行加扰时,例如对第一序列hash序列加扰,采用8比特的UEID与8比特的hash序列加扰,则接收端采用与发送端对应的8比特的UEID与8比特的第二校验序列即hash序列 加扰。
当然数字8只是UEID长度不大于hash序列时的一个列子,如果UEID的长度大于hash序列,也大于第二序列即CRC序列,发送端将UEID按照预设的方法分成两段分别与第一序列即hash序列个第二序列CRC序列加扰,如UEID的第一段与hash序列等长,该第一段对hash序列加扰,UEID剩余的比特作为第二段对CRC加扰。
则接收端将与发送端对应的UEID按照与发送端对应的方法分成两段分别与第一校验序列即hash序列和第二校验序列即CRC校验序列加扰,如UEID的第一段与第一校验序列即hash序列等长,该第一段对第一校验序列即hash序列加扰,UEID剩余的比特作为第二段对第二校验序列即CRC校验加扰。
对于上行控制信道中的上行链路信息(UP link Information,UCI)可以进行与DCI相同的处理。
实施例16:
在本发明实施例中,第一校验序列的长度位于1比特到10比特之间,所述第二校验序列的长度位于10比特到16比特之间。如果第一校验序列为第一CRC校验序列,则第一CRC校验序列的长度为1-10比特,第二校验序列为第二CRC校验序列,则第二CRC校验序列的长度为10-16比特。所述第一校验序列可以是根据信息序列的内容及与发送端对应的CRC处理算法,生成的,并且所述第二校验序列可以是根据信息序列的属性信息、所述第一校验序列以及与发送端对应的CRC算法生成的。
现有LTE系统中控制信道要求的虚警率是16比特,在5G系统中将会保持该虚警率的要求。因此在该虚警率的要求下,计算的第一校验序列的长度应该是16比特,但如果第一校验序列的长度是16比特,则该第一校验序列不能进行路径的选择,因此为了保证路径选择,该第一校验序列的长度一般为16+5=21比特。而在本发明实施例中,根据信息序列,计算有第一校验序列和第二校验序列,在保证虚警率的同时,第二校验序列可以有效的降低第一校验序列的长度,从而降低了系统的开销。
实施例17:
所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,确定译码结果包括:
根据每条候选路径的第一校验序列,选择目标路径;
根据所述目标路径的第二校验序列,确定为译码结果。
在本发明实施例中,在所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,确定译码结果时,具体的可以是判断该候选路径中的第一序列与第一校验序列是否匹配,如果是,将该候选路径作为目标路径;并判断所述目标路径中的第二序列与第二校验序列是否匹配,如果是,将该目标路径上的信息序列确定为译码结果。在本发明实施例中该第一序列用于路径选择,第一序列和第二序列联合用于error detection。所述匹配即为相同。
所述第一校验序列可以是根据CRC处理算法生成的,可以是根据hash函数生成的,第二校验序列可以是根据CRC处理算法生成的,可以是根据hash函数生成的,所述第一校验序列和第二校验序列的可以相同,也可以不同。
如果第一序列为CRC校验序列,则在确定译码结果时,可以是将信息序列和第一序列输入到CRC译码器中,根据译码器的输出,确定目标路径。例如可以是将候选路径中的信息序列和第一序列输入到CRC译码器中,如果CRC译码器的输出的比特位的全部为零时,将该候选路径确定为目标路径。然后判断该目标路径中第二序列和第二校验序列是否匹配,如果是,则将该目标路径中的信息序列作为译码结果。
如果每个候选路径中候选序列中的第一序列和第二序列与对应的第一校验序列和第二校验序列都不同,具体的,可以是将所述多条候选路径中可靠度最高的候选路径确定为译码路径,所述译码路径对应的信息序列为译码结果。所述选择可靠度最高的候选路径为译码路径是现有技术,不再进行赘述。
实施例18:
所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结 果,确定译码结果包括:
根据每条候选路径的第二校验序列,选择目标路径;
根据所述目标路径的第一校验序列,确定为译码结果。
在本发明实施例中,在所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,确定译码结果时,具体的可以是判断该候选路径中的第二序列与第二校验序列是否匹配,如果是,将该候选路径作为目标路径;并判断所述目标路径中的第一序列与第一校验序列是否匹配,如果是,将该目标路径上的信息序列确定为译码结果。在本发明实施例中该第二序列用于路径选择,第一序列和第二序列联合用于error detection。所述匹配即为相同。
所述第一校验序列可以是根据CRC处理算法生成的,可以是根据hash函数生成的,第二校验序列可以是根据CRC处理算法生成的,可以是根据hash函数生成的,所述第一校验序列和第二校验序列的可以相同,也可以不同。
如果第二序列为CRC校验序列,则在确定译码结果时,可以是将信息序列和第二序列输入到CRC译码器中,根据译码器的输出,确定目标路径。例如可以是将候选路径中的信息序列和第二序列输入到CRC译码器中,如果CRC译码器的输出的比特位的全部为零时,将该候选路径确定为目标路径。然后判断该目标路径中第一序列和第一校验序列是否匹配,如果是,则将该目标路径中的信息序列作为译码结果。
如果两个序列都是CRC校验序列,则在确定译码结果时,可以先根据第一CRC校验序列确定目标路径,再根据第二CRC校验序列确定译码结果,也可以先根据第二CRC校验序列确定目标路径,再根据第一CRC校验序列确定译码结果。
如果每个候选路径中候选序列中的第一序列和第二序列与对应的第一校验序列和第二校验序列都不同,具体的,可以是将所述多条候选路径中可靠度最高的候选路径确定为译码路径,所述译码路径对应的信息序列为译码结果。所述选择可靠度最高的候选路径为译码路径是现有技术,不再进行赘述。
如图5A所示,为本发明实施例提供的一种极化码编码的示意图,由图5A可以看出,发送端采用CRC1编码器作为对待编码的信息序列进行第一级编码,得到第一个CRC序列,将所述第一个CRC序列作为第一序列,第一序列的长度较佳的为位于1-10比特之间。将第一序列比特级联到待编码信息序列之后送入CRC2编码器得到第二个CRC序列,将所述第二个CRC序列作为第二序列,第二序列的长度较佳的为位于10-16比特之间。将待编码的信息序列与第一序列与第二序列串行级联,然后根据优先级的不同分别映射到比特信道容量不同子信道,实现信息序列、第一序列与第二序列与比特信道映射,其余位置作为冻结位置0,然后一起送入polar码编码器,进行编码。Polar母码的长度一定是2的整数次幂,而输出码字的长度可能是任意的,故需要rate matching操作,即执行减缩(shortening)或者打孔(puncturing)操作。rate matching操作采用的rate matching序列较佳的可以利用高斯近似方法获得,或者采用对SNR不敏感的其他rate matching序列,polar编码器输出的是rate matching后的编码序列。编码后的序列经过调制器调制,就可以在信道中发送给接收端了。
如图5B所示,为本发明实施例提供的一种极化码译码的示意图,由图5B可以看出,接收端在接收到发送端发送的码字后,需要将该码字送入解调器解调,并进行解速率匹配,再将该码字进行SCL译码,得到L条候选路径中的L个候选序列,所述候选序列包括信息序列,第一序列和第二序列。接收端首先将保留的L个候选序列中的第二序列去掉,利用第一序列进行路径选择,即将候选路径中的信息序列的估计值利用CRC检错器进行CRC校验,如果能通过,则认为该候选路径为目标路径,针对该目标路径中的第二个序列,将该第二序列进行CRC校验,如果能通过,则将该目标路径作中的信息序列为polar的译码输出。如果两个CRC序列只要有一个校验不通过,则认为译码失败。
由于第二序列只用于CRC校验不参加辅助译码,所以false alarm性能没有损失。又由于第一序列和第二个序列联合用于error detection,所以可以降 低第二序列的长度,既可以维持较好的false alarm性能,又可以提高BLER性能。
另一种情况为:接收端在接收到发送端发送的码字后,需要将该码字送入解调器解调,并进行解速率匹配,再将该码字进行SCL译码,得到L条候选路径中的L个候选序列,所述候选序列包括信息序列,第一序列和第二序列。接收端首先将保留的L个候选序列中的第一序列去掉,利用第二序列进行路径选择,即将候选路径中的信息序列的估计值利用CRC检错器进行CRC校验,如果能通过,则认为该候选路径为目标路径,针对该目标路径中的第一个序列,将该第一序列进行CRC校验,如果能通过,则将该目标路径作中的信息序列为polar的译码输出。如果两个CRC序列只要有一个校验不通过,则认为译码失败。
由于第一序列只用于CRC校验不参加辅助译码,所以false alarm性能没有损失。又由于第一序列和第二个序列联合用于error detection,所以可以降低第一序列的长度,既可以维持较好的false alarm性能,又可以提高BLER性能。
实施例19:
图6为本发明实施例19提供的一种极化码编码过程示意图,该过程包括以下步骤:
S601:在待编码的信息序列中获取至少一个子序列。
本发明实施例提供的极化码编码方法应用于基站和UE(User Equipment,用户终端设备)。
在进行仿真的过程中,信息序列可以由仿真设备随机产生,在进行实际的数据传输的过程中,信息序列中携带有待传输的数据。信息序列的长度由极化码的码长,以及码率共同决定。例如,在进行仿真的过程中,极化码的码长为96bit(比特位),码率为1/3,则信息序列的长度为32bit,则仿真设备随机产生长度为32bit的信息序列,并将该信息序列作为待编码的信息序列。
所述在待编码的信息序列中获取至少一个子序列时,可以是将该信息序 列的全部或者部分作为子序列,可以将该信息序列的全部或部分作为一个子序列,也可以将该信息序列的全部或部分作为至少两个子序列等。还可以是在所述信息序列中从设定的比特位开始获取,获取设定长度的子序列,也可以是将所述信息序列划分成设定数量的子序列,所述子序列的长度可以为任意长度,较优的是所述子序列的长度不大于待生成的Hash序列的最大长度32比特位,所述子序列的数量可以是1个、2个或5个等。还可以按照每个子序列的长度,将该信息序列划分为多个子序列,其中每个子序列包含的内容可以重叠,也可以不重叠等。只要保证编码时采用的子序列的划分方式,与译码时采用的划分方式相同即可。
S602:根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列。
具体的在生成Hash序列时,先将该至少一个子序列转化为十进制数值,将其作为Hash函数的输入,从而生成Hash函数输出值,然后将该Hash函数输出值转化为比特流,截取该比特流的部分或全部,从而作为该信息序列对应的Hash序列。
在截取该比特流的部分或全部时,可以按照一定的方法来截取,例如设置了Hash序列的长度,则在该比特流中截取该长度对应的Hash序列,可以从设定位置截取,该设定位置可以是第一位,或者非第一位,可以是从第一位开始往后截取,也可以是从末尾往前开始截取等等。只要保证编码时采用的Hash序列的截取方式,与译码时采用的截取方式相同即可。
实施中,在本发明实施例中截取得到的Hash序列的长度不大于32比特位位。该Hash序列的长度例如可以为8比特位、或32比特位等等。
S603:对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
对所述信息序列和所述Hash序列进行极化码编码的过程可以是将所述信息序列和所述Hash序列进行组合,再由极化码编码器完成对所述信息序列和所Hash序列的编码。发送端保存有极化码编码的编码矩阵,在对所述信息序 列和所述Hash序列进行极化码编码时,具体的,可以是将所述信息序列和所述Hash序列组合成一个序列,对组合后的序列和保存的编码矩阵进行二元域上的乘加运算,则可以得到极化码编码后的序列。在对将所述信息序列和所述Hash序列组合成一个序列时,可以是任意组合,例如可以是信息序列在前,所述Hash序列在后,也可以是Hash序列在前,信息序列在后,也可以将信息序列和Hash序列进行交织。
实施中,在对信息序列和所述Hash序列进行组合,即对信息序列和所述Hash序列进行并串变换,可以将信息序列中的比特位设置在可靠性比较高的位置,即子信道,将Hash序列的比特位设置在可靠性相对低的位置。对比特位进行极化码编码的过程属于现有技术,在本发明实施例中对该过程不进行赘述。
对信息序列和Hash序列进行极化码编码后,再通过调制器进行调制,发送给接收端。
由于本发明提供的极化码编码方法中根据信息序列和Hash函数,确定了所述信息序列对应的Hash序列,再对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码,从而完成对待编码的信息序列的极化码编码。
实施例20:
为了有效的降低虚警率,在上述实施例19的基础上,本发明实施例中,所述在待编码的信息序列中获取至少一个子序列包括:
对待编码的信息序列进行CRC处理,生成所述信息序列对应的CRC序列;
在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列;
所述对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码包括:
对所述信息序列、所述CRC序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
所述对待编码的信息序列进行CRC处理,生成所述信息序列对应的CRC序列的过程属于现有技术,在本发明实施例中对该过程不做赘述。
所述CRC序列的长度为8比特位、或12比特位、或16比特位、或24比特位。本发明实施例不受到CRC序列的长度和Hash序列的长度的限制,CRC序列的长度可以采用与现有的CRC辅助的极化码编译码中相同的CRC序列的长度,也可以是根据需要,采用更长或更短的CRC序列的长度。
所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列时,可以是将该组合序列的全部或部分作为子序列,可以是将该组合序列也可以是将该组合序列的全部或部分作为一个子序列,也可以将该组合序列的全部或部分作为至少两个子序列等。还可以是在所述组合序列中从设定的比特位开始获取,获取设定长度的子序列,也可以是将所述组合序列划分成设定数量的子序列,所述子序列的长度可以为任意长度,较优的是所述子序列的长度不大于待生成的Hash序列的最大长度32比特位,所述子序列的数量可以是1个、2个或5等。还可以按照每个子序列的长度,将该组合序列划分为多个子序列,其中每个子序列包含的内容可以重叠,也可以不重叠等。只要保证编码时采用的子序列的划分方式,与译码时采用的划分相同即可。
如果所述子序列获取方法是将所述组合序列划分成设定数量的子序列,则所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列包括:
根据预设的子序列的数量,将所述组合序列划分为所述数量个子序列,其中所述数量为不小于1的整数。
划分得到的设定数量的子序列可以重叠,也可以互不重叠。具体的,所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列可以是:
根据预设的子序列的数量,判断所述组合序列的长度是否为所述数量的整数倍;
如果是,将所述组合序列划分为互不重叠的所述数量个子序列;
如果否,在所述组合序列中补充相应的比特位,补充比特位后的组合序列的长度为所述数量的整数倍,将补充比特位后的组合序列划分为互不重叠的所述数量个子序列;或在所述组合序列中删除相应的比特位,删除比特位后的组合序列的长度为所述数量的整数倍,将删除比特位后的组合序列划分为互不重叠的所述数量个子序列。
例如,所述预设的子序列的数量为I,所述组合序列的长度为n比特位,如果判断所述组合序列的长度n为所述数量I的整数倍,则将所述组合序列划分为互不重叠的I个子序列,每个子序列的长度为n/I比特位,满足1≤n/I≤32,即每个子序列的长度n/I不小于1且不大于32,其中32比特位为Hash序列的最大长度。
如果判断所述组合序列的长度不为所述数量的整数倍,则在组合序列中补充或删除相应的比特位,使得补充或删除相应比特位后的组合序列为所述数量的整数倍,所述补充或删除相应的比特位的内容和位置由预先设定的规则进行补充或删除,例如,对于补充相应的比特位,所述预先设定的规则为在组合序列的最后进行补充,且补充相应的比特位的内容为0。
对所述信息序列、所述CRC序列和所述Hash序列进行极化码编码的过程,可以是将所述信息序列、所述CRC序列和所述Hash序列进行组合,再由极化码编码器完成对所述信息序列、所述CRC序列和所述Hash序列组合后的序列的编码。
对所述信息序列、所述CRC序列和所述Hash序列组合后的序列,采用极化码的编码矩阵进行编码的过程,可以参见实施例19的描述,在此不再进行赘述。
实施中,在对所述信息序列、所述CRC序列和所述Hash序列进行组合,即对所述信息序列、所述CRC序列和所述Hash序列进行并串变换,可以是将信息序列的比特位置设置在可靠性最高的位置,即子信道,将CRC序列的比特位置设置在可靠性次高的位置,将Hash序列的比特位置设置在可靠性相对比较低的位置。对比特位进行极化码编码的过程属于现有技术,在本发明 实施例中对该过程不进行赘述。
对所述信息序列、所述CRC序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码后,再通过调制器进行调制,发送给接收端。
下面以一个具体的例子对本发明实施例进行说明,图7为本发明实施例提供的一种极化码编码过程示意图,将待编码的信息序列首先经过CRC编码器编码,对该信息序列进行CRC处理,生成该信息序列对应的CRC序列,再将信息序列和CRC序列一起送入Hash状态产生器编码,通过对信息序列和CRC序列划分为至少一个子序列,并采用Hash函数,生成对应的Hash序列,再将信息序列、CRC序列和Hash序列一起送入Polar编码器进行极化码编码,极化码编码后经过调制器调制,再通过信道发送给接收端。
所述调制器的调制方式可以为QPSK(Quadrature Phase Shfit Keyin,正交相移键控)调制方式,所述信道可以为AWGN(Additive White Gaussian Noise,高斯加性白噪声)信道,此外,在调制器调制前,还可以对经过Polar编码器编码后的序列,采用QUP(Quasi-Uniform Puncturing,准均匀删除)方法进行删余处理,所述QUP只是删余的一个方法,并不排除任何其他的删余方法对极化码码字进行删余处理。
由于本发明实施例中将待编码的信息序列进行CRC处理,生成CRC序列,并通过Hash函数,生成该信息序列的Hash序列,相比于现有技术中只通过CRC编码可以有效降低虚警率。
实施例21:
为了进一步降低虚警率,在上述实施例19和20的基础上,本发明实施例中,如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定Hash序列包括:
将所述至少两个子序列进行排序;
针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列 为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
针对至少两个子序列,根据前一个子序列对应的Hash函数输出值,来确定与其相邻的后一个子序列对应的Hash函数输出值,并将最后一个子序列对应的Hash函数输出值,确定为第一序列对应的Hash序列,从而进一步降低了虚警率。
为了进一步降低虚警率,在本发明实施例中该Hash函数的特点为子序列对应的v-bit状态的变化,会引起下一个子序列对应的v-bit状态无规则的不同,即雪崩效应,从而通过该Hash函数进行编码可以进一步降低虚警率。
图8为本发明实例提供的生成Hash序列的结构示意图,得到的子序列的数量为I个,I个子序列进行排序后分别为k 1、k 2…和k I,Hash函数h有两个输入一个输出,其中两个输入分别为子序列以及该子序列的上一个子序列对应的Hash函数输出值即32-bit状态S i-1,输出为该子序列对应的Hash函数输出值即32-bit状态S i,也就是前一个子序列做Hash函数处理后对应的32-bit状态S i作为与其相邻的下一个子序列的Hash函数的输入,即S i=h(S i-1,k i),1≤i≤I对于排序为第一位的子序列k 1,该子序列的上一个子序列对应的Hash函数输出值即32-bit状态S 0为预设值0。
具体地,对于子序列k 1和初始32-bit状态S 0,做Hash函数处理后得到的子序列k 1对应的32-bit状态S 1,对于子序列k 2和子序列k 1对应的32-bit状态S 1,做Hash函数处理后得到的子序列k 2对应的32-bit状态S 2…对于子序列k I和子序列k I-1对应的32-bit状态S I-1,做Hash函数处理后得到的子序列k I对应的32-bit状态S I,则可以将S I的部分或者全部作为所述组合序列对应的Hash序列。再将信息序列、CRC序列和Hash序列S I经过并串变换后的比特位序列送入极化码编码器。在将S I的部分或者全部作为所述组合序列对应的Hash序列的方式任意,只要保证译码时采用相同的方式即可。
例如,本发明实施例采用的所述hash函数为改进后的“one-at-a-time” Hash函数,采用该hash函数,实现上述图8所示过程的伪代码形式如下:
Figure PCTCN2018075770-appb-000001
},在该Hash函数中,Hash函数的输出值称为v-bit状态,其中v≤32,其中该Hash函数的两个输入a和b分别表示所述子序列的前一个子序列对应的v-bit状态,和所述子序列对应的子序列信息,该Hash函数的一个输出hash表示所述子序列对应的v-bit状态,如果所述子序列为第一位的子序列,则a的值为预设值0。
由于本发明实施例中将待编码的信息序列通过CRC和Hash的两次编码,相比于只通过CRC编码和只通过Hash编码,虚警率能够有效降低。
实施例22:
图9为本发明实施例提供的一种极化码译码过程示意图,该过程包括以下步骤:
S901:对接收到的极化码编码后的序列进行SCL译码。
本发明实施例提供的极化码编码方法应用于基站和UE。
通常情况下,极化码编码后的序列会做删余处理和调制,再进行发送,接收端在接收到码字后需要解调和补删余处理后,确定接收到的码字对应的极化码编码后的序列。
所述对接收到的极化码编码后的序列进行SCL译码的过程属于现有技术,在本发明实施例中对该过程不做赘述。
所述极化码编码后的序列经过SCL译码后,会根据设定保留多条候选路径,每条候选路径中包括对应的极化码编码后的序列。
S902:针对SCL译码保留的多条候选路径中的候选序列,根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列;根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列,根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的校验Hash序列,根据所述Hash序列与所述校验Hash序列选择译码路径。
对于不同的编码方法,信息序列和Hash序列确定的序列可能不同,为了使得译码的结果更加准确,在确定候选序列中的信息序列和Hash序列过程中,需要根据与发送端对应的编码方法来确定,即确定候选序列中的信息序列和Hash序列的过程,需要与极化码编码时,确定信息序列和Hash序列的过程相同。
接收端中在确定SCL译码保留的多条候选路径时,开始译码时,路径数是1,每译码出一个比特位,路径数加倍,当路径数大于设定的数量时,根据每个路径中译出的比特位的概率确定路径的概率,选择概率较高的设定数量的路径作为候选路径,进行下一比特位的译码,并在译码后,判断针对该下一比特位的译码结果对应的路径数量是否大于设定的数量,如果是,重复上述过程,直到最后一个比特位译码成功,并选择出最终的候选路径,一般的,SCL译码中保存有预先设定的数量,例如可以是4。
同理,为了使得译码的结果更加准确,在所述信息序列中获取至少一个子序列的过程中,需要根据与发送端对应的子序列获取方法来获取,即在所 述信息序列中获取至少一个子序列的过程,需要与极化码编码时,在所述信息序列中获取至少一个子序列的过程相同。
具体的在生成Hash序列时,先将该至少一个子序列转化为十进制数值,将其作为Hash函数的输入,从而生成Hash函数输出值,然后将该Hash函数输出值转化为比特流,截取该比特流的部分或全部,从而作为该信息序列对应的Hash序列。
在截取该比特流的部分或全部时,可以按照一定的方法来截取,例如设置了Hash序列的长度,则在该比特流中截取该长度对应的Hash序列,可以从设定位置截取,该设定位置可以是第一位,或者非第一位,可以是从第一位开始往后截取,也可以是从末尾往前开始截取等等。只要保证编码时采用的Hash序列的截取方式,与译码时采用的截取方式相同即可。
实施中,在本发明实施例中截取得到的Hash序列的长度不大于32比特位位。该Hash序列的长度例如可以为8比特位、或32比特位等等。
如果确定并选择译码路径后,可以将该译码路径中包括候选信息序列作为译码结果。
由于本发明实施例中提供的极化码译码方法中,针对SCL译码的每条候选路径中的候选信息序列,使用与极化码编码方法中相同的方法,确定其对应的Hash序列,并根据所述Hash序列与候选路径中的候选Hash序列,选择译码路径,并将译码路径中的候选信息序列作为译码结果,从而完成了对极化码编码后的序列的极化码译码。
实施例23:
为了有效的降低虚警率,在上述实施例的基础上,本发明实施例中,所述根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列包括:
根据与发送端对应的编码方法,确定候选序列中的信息序列、CRC序列和Hash序列;
所述根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列包括:
根据与发送端对应的组合方式及子序列获取方法,在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列。
对于不同的编码方法,信息序列、CRC序列和Hash序列确定的序列可能不同,为了使得译码的结果更加准确,在确定候选序列中的信息序列、CRC序列和Hash序列过程中,需要根据与发送端对应的编码方法来确定,即确定候选序列中的信息序列、CRC序列和Hash序列的过程,需要与极化码编码时,确定候选序列中的信息序列、CRC序列和Hash序列的过程相同。
同理,在所述信息序列和所述CRC序列的组合序列中获取至少一个子序列过程中,需要根据与发送端对应的组合方式及子序列获取方法来获取,即在所述信息序列和所述CRC序列的组合序列中获取至少一个子序列的过程,需要与极化码编码时,在所述信息序列和所述CRC序列的组合序列中获取至少一个子序列的过程相同。
所述CRC序列的长度为8比特位、或12比特位、或16比特位、或24比特位,CRC序列不参与译码。本发明实施例不受到CRC序列的长度和Hash序列的长度的限制,CRC序列的长度可以采用与现有的CRC辅助的极化码编译码中相同的CRC序列的长度,也可以是根据需要,采用更长或更短的CRC序列的长度。
所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列时,可以是将该组合序列的全部或部分作为子序列,可以是将该组合序列也可以是将该组合序列的全部或部分作为一个子序列,也可以将该组合序列的全部或部分作为至少两个子序列等。还可以是在所述组合序列中从设定的比特位开始获取,获取设定长度的子序列,也可以是将所述组合序列划分成设定数量的子序列,所述子序列的长度可以为任意长度,较优的是所述子序列的长度不大于待生成的Hash序列的最大长度32比特位,所述子序列的数量可以是1个、2个或5等。还可以按照每个子序列的长度,将该组合序列 划分为多个子序列,其中每个子序列包含的内容可以重叠,也可以不重叠等。只要保证编码时采用的子序列的划分方式,与译码时采用的划分相同即可。
具体地,所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列可以是:
根据预设的子序列的数量,判断所述组合序列的长度是否为所述数量的整数倍;
如果是,将所述组合序列划分为互不重叠的所述数量个子序列;
如果否,在所述组合序列中补充相应的比特位,补充比特位后的组合序列的长度为所述数量的整数倍,将补充比特位后的组合序列划分为互不重叠的所述数量个子序列;或在所述组合序列中删除相应的比特位,删除比特位后的组合序列的长度为所述数量的整数倍,将删除比特位后的组合序列划分为互不重叠的所述数量个子序列。
通过将组合序列划分成互不重叠的预设的数量个子序列,然后将划分的数量个子序列通过Hash函数进行编码,确定每个子序列对应的Hash函数输出值,然后根据每个子序列对应的Hash函数输出值,确定组合序列对应的校验Hash序列,从而进一步降低了虚警率。
如果判断所述组合序列的长度不为所述数量的整数倍,则在组合序列中补充或删除相应的比特位,使得补充或删除相应比特位后的组合序列为所述数量的整数倍,所述补充或删除相应的比特位的内容和位置由预先设定的规则进行补充或删除,例如,对于补充相应的比特位,所述预先设定的规则为在组合序列的最后进行补充,且补充相应的比特位的内容为0。
图10为本发明实施例提供的CRC辅助的极化码编译码、PC辅助的极化码编译码和Hash辅助的极化码编译码的误帧率和虚警率的性能示意图,极化码的码长为96比特位,经过SCL译码后被保留的路径为8条,如图10所示,码率R为1/3,信息序列的长度为32比特位,采用QPSK方式调制,横轴EsN0(db)表示信噪比,纵轴FER表示虚警率和误帧率。
在进行仿真过程中,在统计虚警率时,需要总仿真次数和所有候选译码 结果中通过Hash校验和CRC校验的次数,即虚警率=错误且通过Hash和CRC的校验数/总错误数。
具体地,CRC-aided Polar表示CRC辅助的极化码编译码,PC Polar表示PC辅助的极化码编译码,Hash Polar表示Hash辅助的极化码编译码,CRC-16表示CRC辅助的极化码编译码和PC辅助的极化码编译码对应的标准为CRC-16标准,CRC-16表示Hash辅助的极化码编译码对应的标准为CRC-12标准,FER表示误帧率,FA表示虚警率。由图10可得,通过CRC和Hash两次与校验的虚警率,虚警率的计算方法为虚警率=错误且通过Hash和CRC校验的校验数/总错误数,相比于只通过CRC校验和只通过Hash校验的虚警率有明显降低,且能够保持在10 -4以下,具有较好的误帧率的性能。
图10所示的CRC序列的长度为12比特位,Hash序列的长度为8比特位,根据多次仿真,采用更短的CRC序列的长度和更短的Hash序列的长度后,误帧率将进一步降低。
由于本发明实施例中将序列通过CRC和Hash的两次校验,相比于只通过CRC校验和只通过Hash校验,虚警率能够有效降低。
实施例24:
为了进一步降低虚警率,在上述各实施例的基础上,本发明实施例中,所述在所述候选信息序列和所述候选CRC序列的组合序列中获取至少一个子序列包括:
根据预设的子序列的数量,将所述组合序列划分为所述数量个子序列,其中所述数量为不小于1的整数。
还可以按照每个子序列的长度,将该组合序列划分为多个子序列,其中每个子序列包含的内容可以重叠,也可以不重叠等。只要保证编码时采用的子序列的划分方式,与译码时采用的划分相同即可。以是在所述组合中从设定的比特位开始获取,获取设定长度的子序列,也可以是将所述组合序列划分成设定数量的子序列,所述子序列的长度可以为任意长度,较优的是所述子序列的长度小于待生成的Hash序列的最大长度32比特位,所述子序列的 数量可以是1个、2个或5等。还可以按照每个子序列的长度,将该组合序列划分为多个子序列,其中每个子序列包含的内容可以重叠,也可以不重叠等。只要保证编码时采用的子序列的划分方式,与译码时采用的划分相同即可。
具体的,所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列可以是:
根据预设的子序列的数量,判断所述组合序列的长度是否为所述数量的整数倍;
如果是,将所述组合序列划分为互不重叠的所述数量个子序列;
如果否,在所述组合序列中补充相应的比特位,补充比特位后的组合序列的长度为所述数量的整数倍,将补充比特位后的组合序列划分为互不重叠的所述数量个子序列;或在所述组合序列中删除相应的比特位,删除比特位后的组合序列的长度为所述数量的整数倍,将删除比特位后的组合序列划分为互不重叠的所述数量个子序列。
通过将组合序列划分成互不重叠的预设的数量个子序列,然后将划分的数量个子序列通过Hash函数进行编码,确定每个子序列对应的Hash函数输出值,然后根据每个子序列对应的Hash函数输出值,确定组合序列对应的校验Hash序列,从而进一步降低了虚警率。
如果判断所述组合序列的长度不为所述数量的整数倍,则在组合序列中补充或删除相应的比特位,使得补充或删除相应比特位后的组合序列为所述数量的整数倍,所述补充或删除相应的比特位的内容和位置由预先设定的规则进行补充或删除,例如,对于补充相应的比特位,所述预先设定的规则为在组合序列的最后进行补充,且补充相应的比特位的内容为0。
如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定校验Hash序列包括:
将所述至少两个子序列进行排序;
针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述 Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定校验Hash序列。
针对至少两个子序列,根据前一个子序列对应的Hash函数输出值,来确定与其相邻的后一个子序列对应的Hash函数输出值,并将最后一个子序列对应的Hash函数输出值,确定为组合序列对应的校验Hash序列,从而进一步降低了虚警率。
为了进一步降低虚警率,在本发明实施例中该Hash函数的特点为子序列对应的v-bit状态的变化,会引起下一个子序列对应的v-bit状态无规则的不同,即雪崩效应,从而通过该Hash函数进行编码可以进一步降低虚警率。
由于本发明实施例中将序列通过CRC和Hash的两次校验,相比于只通过CRC校验和只通过Hash校验,虚警率能够有效降低。
实施例25:
在上述各实施例的基础上,本发明实施例中,所述根据所述Hash序列与所述校验Hash序列选择译码路径包括:
针对每条候选路径中的候选序列,判断该候选序列中的Hash序列与确定的校验Hash序列是否相同;如果相同,则确定所述候选路径为译码路径,所述译码路径对应的信息序列为译码结果。
从每条候选路径中的候选序列中,挑选出包含信息序列,或包含信息序列及CRC信息序列的部分序列,对其做Hash函数校验,即与极化码编码方法时相同的Hash函数,对其进行处理,将经过处理后的校验Hash函数与候选序列中的Hash序列,进行比较,判断是否相同,如果相同,则将该候选路径作为译码路径,并将该译码路径对应的信息序列作为译码结果输出。
如果每条候选路径对应的Hash序列与确定的校验Hash序列都不相同,所述方法还包括:
将所述多条候选路径中可靠度最高的候选路径确定为译码路径,所述译 码路径对应的信息序列为译码结果。
如果针对保留的每条候选路径对应的Hash序列与确定的校验Hash序列都不相同,则选择可靠度最高的候选路径确定为译码路径,将所述译码路径对应的信息序列为译码结果。
在仿真过程中采用Hash函数对候选路径进行筛选,选择出译码路径,使得在实际的数据传输过程中采用该译码路径进行传输,进一步降低误帧率和虚警率。
下面以一个具体的例子对本发明实施例进行说明,图11为本发明实施例提供的一种极化码译码过程示意图。
极化码编码后的序列经过调制器调制后,再进行发送,接收端在接收到码字后需要先通过解调器对接收到的码字进行解调,确定接收到的码字对应的极化码编码后的序列,将所述序列送入Polar译码器进行译码,主要是SCL译码算法,再将译码后的候选路径对应的候选序列送入Hash译码器,Hash译码器从候选序列中挑选出信息序列,或信息序列及CRC信息序列对应部分的序列,采用与极化码编码方法时相同的Hash函数,对其进行处理,将经过处理后的校验Hash函数与候选序列中的Hash序列,进行比较,如果相同,则将对应的信息序列作为译码结果输出,如果每条候选路径的校验Hash函数与候选序列中的候选Hash序列都不相同,则选择可靠度最高的候选路径对应的信息序列作为译码结果输出。此外,在实际应用中,还可以将Polar译码器和Hash译码可以集合成一个Polar-Hash联合译码器进行译码,从而输出译码结果。
由于本发明实施例中采用Hash函数对候选路径进行筛选,进一步降低误帧率和虚警率。
图12为本发明实施例提供的一种极化码编码装置结构图,所述装置包括:
序列产生器121,用于根据待编码的信息序列的属性信息及预设的第一序列生成算法,生成第一序列;
序列产生器121,还用于根据待编码的信息序列的属性信息及预设的第二 序列生成算法,生成第二序列;
Polar编码器122,用于对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码。
所述序列产生器121,具体用于根据所述待编码的信息序列的内容及CRC处理算法,生成序列;或,根据所述待编码的信息序列的内容及预设的Hash函数,生成序列;或,根据所述待编码的信息序列的长度及随机函数,生成序列。
所述序列产生器121,具体用于根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列。
所述序列产生器121,具体用于根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列。
所述序列产生器121,具体用于在待编码的信息序列中获取至少一个子序列;根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的序列。
所述序列产生器121,具体用于如果所述子序列包括至少两个,将所述至少两个子序列进行排序;针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所 述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
所述装置包括:
更新模块123,用于采用预设的算法对所述第一序列进行更新;和/或采用预设的算法对所述第二序列进行更新,其中所述预设算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
所述更新模块123,具体用于采用加扰序列对第一序列和/或第二序列进行更新。
图13为本发明实施例提供的一种极化码编码装置结构图,所述装置包括:
Hash状态产生器131,用于在待编码的信息序列中获取至少一个子序列;根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列;
Polar编码器132,用于对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
所述装置还包括:
CRC编码器133,用于对待编码的信息序列进行CRC处理,生成所述信息序列对应的CRC序列;
所述Hash状态产生器131,还用于在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列;
所述Polar编码器132,还用于对所述信息序列、所述CRC序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
所述Hash状态产生器131,具体用于根据预设的子序列的数量,将所述组合序列划分为所述数量个子序列,其中所述数量为不小于1的整数。
所述Hash状态产生器131,具体用于将所述至少两个子序列进行排序;针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第 二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
图14为本发明实施例提供的一种极化码译码装置结构图,所述装置包括:
Polar译码器141,用于对接收到的极化码编码后的序列进行SCL译码;
校验序列译码器142,用于针对SCL译码保留的多条候选路径中的候选序列,确定该候选序列中的信息序列,并确定该候选路径的第一校验序列和第二校验序列;根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,其中,第一校验序列和第二校验序列中的一个校验序列用于路径选择和检测错误,另一个校验序列用于检测错误。
所述校验序列译码器142,具体用于根据所述信息序列的内容及与发送端对应的CRC处理算法,生成校验序列;或,根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列;或,根据所述信息序列的长度及与发送端对应的随机函数,生成校验序列。
所述校验序列译码器142,具体用于根据所述信息序列的内容及与发送端对应的CRC处理算法,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列;或,根据所述信息序列的内容及与发送端对应的Hash函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列;或,根据所述信息序列的长度及与发送端对应的随机函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列。
所述校验序列译码器142,具体用于根据所述信息序列的内容及与发送端对应的CRC处理算法,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列;或,根据所述信 息序列的内容及与发送端对应的Hash函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列;或,根据所述信息序列的长度及与发送端对应的随机函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列。
所述校验序列译码器142,具体用于在所述信息序列中获取至少一个子序列;根据所述至少一个子序列及与发送端对应的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的校验序列。
所述校验序列译码器142,具体用于当所述子序列包括至少两个,将所述至少两个子序列进行排序;针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
所述装置还包括:
更新模块143,用于采用与发送端对应的算法对所述第一校验序列进行更新;和/或采用与发送端对应的算法对所述第二校验序列进行更新,其中所述与发送端对应的算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
所述更新模块143,具体用于采用与发送端对应的加扰序列对第一校验序列和/或第二校验序列进行更新。
所述校验序列译码器142,具体用于根据每条候选路径的第一校验序列,选择目标路径;根据所述目标路径的第二校验序列,确定为译码结果。
所述校验序列译码器142,具体用于根据每条候选路径的第二校验序列,选择目标路径;根据所述目标路径的第一校验序列,确定为译码结果。
图15为本发明实施例提供的一种极化码译码装置结构图,所述装置包括:
Polar译码器151,用于对接收到的极化码编码后的序列进行SCL译码;
Hash译码器152,用于针对译码保留的多条候选路径中的候选序列,根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列;根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列,根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的校验Hash序列,根据所述Hash序列与所述校验Hash序列选择译码路径。
所述Hash译码器152,还用于根据与发送端对应的编码方法,确定候选序列中的信息序列、CRC序列和Hash序列;
所述Hash译码器152,还用于根据与发送端对应的组合方式及子序列获取方法,在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列。
所述Hash译码器152,具体用于根据预设的子序列的数量,将所述组合序列划分为所述数量个子序列,其中所述数量为不小于1的整数。
所述Hash译码器152,具体用于将所述至少两个子序列进行排序;针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;根据排序为最后一位的子序列的Hash函数输出值,确定校验Hash序列。
所述Hash译码器152,具体用于针对每条候选路径中的候选序列,判断该候选序列中的Hash序列与确定的校验Hash序列是否相同;如果相同,则确定所述候选路径为译码路径,所述译码路径对应的信息序列为译码结果。
所述Hash译码器152,还用于将所述多条候选路径中可靠度最高的候选路径确定为译码路径,所述译码路径对应的信息序列为译码结果。
本发明实施例公开了一种极化码编译码方法及装置,所述方法包括:根据待编码的信息序列的属性信息及预设的第一序列生成算法,生成第一序列; 根据待编码的信息序列的属性信息及预设的第二序列生成算法,生成第二序列;对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码。由于在本发明实施例中,根据待编码的信息序列的属性信息及预设的第一序列生成算法和第二序列生成算法,生成第一序列和第二序列,从而实现了对信息序列的极化码编码。
对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在实施本发明实施例提供的技术方案时,可以按如下方式实施。
本发明实施例中提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下方法:
根据待编码的信息序列的属性信息及预设的第一序列生成算法,生成第一序列;
根据待编码的信息序列的属性信息及预设的第二序列生成算法,生成第二序列;
对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码。
实施中,所述第一序列和第二序列中的一个序列用于路径选择和检测错误,另一个序列用于检测错误。
实施中,所述待编码的信息序列的属性信息包括:
待编码的信息序列的长度和/或内容。
实施中,所述待编码的信息序列的内容包括:
所述待编码的信息序列的全部内容和/或部分内容。
实施中,所述根据待编码的信息序列的属性信息及预设的序列生成算法,生成序列包括:
根据所述待编码的信息序列的内容及循环冗余校验CRC处理算法,生成序列;或,
根据所述待编码的信息序列的内容及预设的哈希Hash函数,生成序列;或,
根据所述待编码的信息序列的长度及随机函数,生成序列。
实施中,所述根据所述待编码的信息序列的内容及CRC处理算法,生成序列包括:
根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,
根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,
根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列。
实施中,所述根据所述待编码的信息序列的内容及预设的Hash函数,生成序列包括:
根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,
根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,
根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列。
实施中,所述根据所述待编码的信息序列的内容及预设的Hash函数,生成序列包括:
在待编码的信息序列中获取至少一个子序列;
根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的 Hash序列,将所述Hash序列作为生成的序列。
实施中,如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列包括:
将所述至少两个子序列进行排序;
针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
实施中,所述对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码之前,所述方法包括:
采用预设的算法对所述第一序列进行更新;和/或,
采用预设的算法对所述第二序列进行更新,其中所述预设算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
实施中,所述采用预设的算法对所述第一序列进行更新和/或采用预设的算法对所述第二序列进行更新包括:
采用加扰序列对第一序列和/或第二序列进行更新。
实施中,所述第一序列的长度位于1比特到10比特之间,所述第二序列的长度位于10比特到16比特之间。
本发明实施例中提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下方法:
在待编码的信息序列中获取至少一个子序列;
根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列;
对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化 码编码。
实施中,所述在待编码的信息序列中获取至少一个子序列包括:
对待编码的信息序列进行循环冗余校验CRC处理,生成所述信息序列对应的CRC序列;
在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列;
所述对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码包括:
对所述信息序列、所述CRC序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
实施中,所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列包括:
根据预设的子序列的数量,将所述组合序列划分为所述数量个子序列,其中所述数量为不小于1的整数。
实施中,如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定所述Hash序列包括:
将所述至少两个子序列进行排序;
针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
实施中,Hash序列的长度不大于32比特位。
实施中,所述CRC序列的长度为8比特位、或12比特位、或16比特位、或24比特位。
本发明实施例中提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程 序时实现如下方法:
对接收到的极化码编码后的序列进行连续删除列表SCL译码;
针对SCL译码保留的多条候选路径中的候选序列,确定该候选序列中的信息序列,并确定该候选路径的第一校验序列和第二校验序列;
根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,其中,第一校验序列和第二校验序列中的一个校验序列用于路径选择和检测错误,另一个校验序列用于检测错误。
实施中,所述信息序列的属性信息包括:
信息序列的长度和/或内容。
实施中,所述信息序列的内容包括:
所述信息序列的全部内容和/或部分内容。
实施中,所述确定该候选路径的校验序列包括:
根据所述信息序列的内容及与发送端对应的循环冗余校验CRC处理算法,生成校验序列;或,
根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列;或,
根据所述信息序列的长度及与发送端对应的随机函数,生成校验序列。
实施中,所述根据所述信息序列的内容及与发送端对应的CRC处理算法,生成校验序列包括:
根据所述信息序列的内容及与发送端对应的CRC处理算法,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列;或,
根据所述信息序列的内容及与发送端对应的Hash函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列;或,
根据所述信息序列的长度及与发送端对应的随机函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处 理算法,生成校验序列。
实施中,所述根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列包括:
根据所述信息序列的内容及与发送端对应的CRC处理算法,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列;或,
根据所述信息序列的内容及与发送端对应的Hash函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列;或,
根据所述信息序列的长度及与发送端对应的随机函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列。
实施中,所述根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列包括:
在所述信息序列中获取至少一个子序列;
根据所述至少一个子序列及与发送端对应的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的校验序列。
实施中,如果所述子序列包括至少两个,所述根据所述至少一个子序列及与发送端对应的Hash函数,确定所述信息序列对应的Hash序列包括:
将所述至少两个子序列进行排序;
针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
实施中,所述根据每条候选路径中的第一校验序列和第二校验序列,确 定译码结果之前,所述方法还包括:
采用与发送端对应的算法对所述第一校验序列进行更新;和/或,
采用与发送端对应的算法对所述第二校验序列进行更新,其中所述与发送端对应的算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
实施中,所述采用与发送端对应的算法对所述第一校验序列进行更新和/或采用与发送端对应的算法对所述第二校验序列进行更新包括:
采用与发送端对应的加扰序列对第一校验序列和/或第二校验序列进行更新。
实施中,所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果包括:
根据每条候选路径的第一校验序列,选择目标路径;
根据所述目标路径的第二校验序列,确定为译码结果。
实施中,所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,确定译码结果包括:
根据每条候选路径的第二校验序列,选择目标路径;
根据所述目标路径的第一校验序列,确定为译码结果。
本发明实施例中提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下方法:
对接收到的极化码编码后的序列进行SCL译码;
针对SCL译码保留的多条候选路径中的候选序列,根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列;根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列,根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的校验Hash序列,根据所述Hash序列与所述校验Hash序列选择译码路径。
实施中,所述根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列包括:
根据与发送端对应的编码方法,确定候选序列中的信息序列、循环冗余校验CRC序列和Hash序列;
所述根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列包括:
根据与发送端对应的组合方式及子序列获取方法,在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列。
实施中,所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列包括:
根据预设的子序列的数量,将所述组合序列划分为所述数量个子序列,其中所述数量为不小于1的整数。
实施中,如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定校验Hash序列包括:
将所述至少两个子序列进行排序;
针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
根据排序为最后一位的子序列的Hash函数输出值,确定校验Hash序列。
实施中,所述根据所述Hash序列与所述校验Hash序列选择译码路径包括:
针对每条候选路径中的候选序列,判断该候选序列中的Hash序列与确定的校验Hash序列是否相同;如果相同,则确定所述候选路径为译码路径,所述译码路径对应的信息序列为译码结果。
实施中,如果每条候选路径对应的Hash序列与确定的校验Hash序列都不相同,所述方法还包括:
将所述多条候选路径中可靠度最高的候选路径确定为译码路径,所述译码路径对应的信息序列为译码结果。
实施中,Hash序列的长度不大于32比特位。
实施中,所述CRC序列的长度为8比特位、或12比特位、或16比特位、或24比特位。
本发明实施例中还提供了与上述计算机设备相应的计算机可读存储介质,所述计算机可读存储介质存储有执行上述方法的计算机程序。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者一个操作与另一个实体或者另一个操作区分开来,而不一定要求或者暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全应用实施例、或结合应用和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器 中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一序列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (84)

  1. 一种极化码编码方法,其特征在于,所述方法包括:
    根据待编码的信息序列的属性信息及预设的第一序列生成算法,生成第一序列;
    根据待编码的信息序列的属性信息及预设的第二序列生成算法,生成第二序列;
    对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码。
  2. 如权利要求1所述的方法,其特征在于,所述第一序列和第二序列中的一个序列用于路径选择和检测错误,另一个序列用于检测错误。
  3. 如权利要求1所述的方法,其特征在于,所述待编码的信息序列的属性信息包括:
    待编码的信息序列的长度和/或内容。
  4. 如权利要求3所述的方法,其特征在于,所述待编码的信息序列的内容包括:
    所述待编码的信息序列的全部内容和/或部分内容。
  5. 如权利要求3所述的方法,其特征在于,所述根据待编码的信息序列的属性信息及预设的序列生成算法,生成序列包括:
    根据所述待编码的信息序列的内容及循环冗余校验CRC处理算法,生成序列;或,
    根据所述待编码的信息序列的内容及预设的哈希Hash函数,生成序列;或,
    根据所述待编码的信息序列的长度及随机函数,生成序列。
  6. 如权利要求5所述的方法,其特征在于,所述根据所述待编码的信息序列的内容及CRC处理算法,生成序列包括:
    根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根 据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,
    根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,
    根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列。
  7. 如权利要求5所述的方法,其特征在于,所述根据所述待编码的信息序列的内容及预设的Hash函数,生成序列包括:
    根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,
    根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,
    根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列。
  8. 如权利要求5所述的方法,其特征在于,所述根据所述待编码的信息序列的内容及预设的Hash函数,生成序列包括:
    在待编码的信息序列中获取至少一个子序列;
    根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的序列。
  9. 如权利要求8所述的方法,其特征在于,如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列包括:
    将所述至少两个子序列进行排序;
    针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所 述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
    根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
  10. 如权利要求1所述的方法,其特征在于,所述对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码之前,所述方法包括:
    采用预设的算法对所述第一序列进行更新;和/或,
    采用预设的算法对所述第二序列进行更新,其中所述预设算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
  11. 如权利要求10所述的方法,其特征在于,所述采用预设的算法对所述第一序列进行更新和/或采用预设的算法对所述第二序列进行更新包括:
    采用加扰序列对第一序列和/或第二序列进行更新。
  12. 如权利要求1所述的方法,其特征在于,所述第一序列的长度位于1比特到10比特之间,所述第二序列的长度位于10比特到16比特之间。
  13. 一种极化码编码方法,其特征在于,所述方法包括:
    在待编码的信息序列中获取至少一个子序列;
    根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列;
    对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
  14. 如权利要求13所述的方法,其特征在于,所述在待编码的信息序列中获取至少一个子序列包括:
    对待编码的信息序列进行循环冗余校验CRC处理,生成所述信息序列对应的CRC序列;
    在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列;
    所述对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码包括:
    对所述信息序列、所述CRC序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
  15. 如权利要求14所示的方法,其特征在于,所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列包括:
    根据预设的子序列的数量,将所述组合序列划分为所述数量个子序列,其中所述数量为不小于1的整数。
  16. 如权利要求14或15所述的方法,其特征在于,如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定所述Hash序列包括:
    将所述至少两个子序列进行排序;
    针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
    根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
  17. 如权利要求14或15所述的方法,其特征在于,Hash序列的长度不大于32比特位。
  18. 如权利要求15或16所述的方法,其特征在于,所述CRC序列的长度为8比特位、或12比特位、或16比特位、或24比特位。
  19. 一种极化码译码方法,其特征在于,所述方法包括:
    对接收到的极化码编码后的序列进行连续删除列表SCL译码;
    针对SCL译码保留的多条候选路径中的候选序列,确定该候选序列中的信息序列,并确定该候选路径的第一校验序列和第二校验序列;
    根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果, 其中,第一校验序列和第二校验序列中的一个校验序列用于路径选择和检测错误,另一个校验序列用于检测错误。
  20. 如权利要求19所述的方法,其特征在于,所述信息序列的属性信息包括:
    信息序列的长度和/或内容。
  21. 如权利要求20所述的方法,其特征在于,所述信息序列的内容包括:
    所述信息序列的全部内容和/或部分内容。
  22. 如权利要求20所述的方法,其特征在于,所述确定该候选路径的校验序列包括:
    根据所述信息序列的内容及与发送端对应的循环冗余校验CRC处理算法,生成校验序列;或,
    根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列;或,
    根据所述信息序列的长度及与发送端对应的随机函数,生成校验序列。
  23. 如权利要求22所述的方法,其特征在于,所述根据所述信息序列的内容及与发送端对应的CRC处理算法,生成校验序列包括:
    根据所述信息序列的内容及与发送端对应的CRC处理算法,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列;或,
    根据所述信息序列的内容及与发送端对应的Hash函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列;或,
    根据所述信息序列的长度及与发送端对应的随机函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列。
  24. 如权利要求22所述的方法,其特征在于,所述根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列包括:
    根据所述信息序列的内容及与发送端对应的CRC处理算法,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列;或,
    根据所述信息序列的内容及与发送端对应的Hash函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列;或,
    根据所述信息序列的长度及与发送端对应的随机函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列。
  25. 如权利要求22所述的方法,其特征在于,所述根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列包括:
    在所述信息序列中获取至少一个子序列;
    根据所述至少一个子序列及与发送端对应的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的校验序列。
  26. 如权利要求25所述的方法,其特征在于,如果所述子序列包括至少两个,所述根据所述至少一个子序列及与发送端对应的Hash函数,确定所述信息序列对应的Hash序列包括:
    将所述至少两个子序列进行排序;
    针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
    根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
  27. 如权利要求19所述的方法,其特征在于,所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果之前,所述方法还包括:
    采用与发送端对应的算法对所述第一校验序列进行更新;和/或,
    采用与发送端对应的算法对所述第二校验序列进行更新,其中所述与发送端对应的算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
  28. 如权利要求27所述的方法,其特征在于,所述采用与发送端对应的算法对所述第一校验序列进行更新和/或采用与发送端对应的算法对所述第二校验序列进行更新包括:
    采用与发送端对应的加扰序列对第一校验序列和/或第二校验序列进行更新。
  29. 如权利要求19所述的方法,其特征在于,所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果包括:
    根据每条候选路径的第一校验序列,选择目标路径;
    根据所述目标路径的第二校验序列,确定为译码结果。
  30. 如权利要求19所述的方法,其特征在于,所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,确定译码结果包括:
    根据每条候选路径的第二校验序列,选择目标路径;
    根据所述目标路径的第一校验序列,确定为译码结果。
  31. 一种极化码译码方法,其特征在于,所述方法包括:
    对接收到的极化码编码后的序列进行SCL译码;
    针对SCL译码保留的多条候选路径中的候选序列,根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列;根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列,根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的校验Hash序列,根据所述Hash序列与所述校验Hash序列选择译码路径。
  32. 如权利要求31所述的方法,其特征在于,所述根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列包括:
    根据与发送端对应的编码方法,确定候选序列中的信息序列、循环冗余校验CRC序列和Hash序列;
    所述根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列包括:
    根据与发送端对应的组合方式及子序列获取方法,在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列。
  33. 如权利要求32所述的方法,其特征在于,所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列包括:
    根据预设的子序列的数量,将所述组合序列划分为所述数量个子序列,其中所述数量为不小于1的整数。
  34. 如权利要求31或32所述的方法,其特征在于,如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定校验Hash序列包括:
    将所述至少两个子序列进行排序;
    针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
    根据排序为最后一位的子序列的Hash函数输出值,确定校验Hash序列。
  35. 如权利要求31或32所述的方法,其特征在于,所述根据所述Hash序列与所述校验Hash序列选择译码路径包括:
    针对每条候选路径中的候选序列,判断该候选序列中的Hash序列与确定的校验Hash序列是否相同;如果相同,则确定所述候选路径为译码路径,所述译码路径对应的信息序列为译码结果。
  36. 如权利要求35所述的方法,其特征在于,如果每条候选路径对应的Hash序列与确定的校验Hash序列都不相同,所述方法还包括:
    将所述多条候选路径中可靠度最高的候选路径确定为译码路径,所述译码路径对应的信息序列为译码结果。
  37. 如权利要求31或32所述的方法,其特征在于,Hash序列的长度不大于32比特位。
  38. 如权利要求32或33所述的方法,其特征在于,所述CRC序列的长度为8比特位、或12比特位、或16比特位、或24比特位。
  39. 一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如下方法:
    根据待编码的信息序列的属性信息及预设的第一序列生成算法,生成第一序列;
    根据待编码的信息序列的属性信息及预设的第二序列生成算法,生成第二序列;
    对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码。
  40. 如权利要求39所述的计算机设备,其特征在于,所述第一序列和第二序列中的一个序列用于路径选择和检测错误,另一个序列用于检测错误。
  41. 如权利要求39所述的计算机设备,其特征在于,所述待编码的信息序列的属性信息包括:
    待编码的信息序列的长度和/或内容。
  42. 如权利要求41所述的计算机设备,其特征在于,所述待编码的信息序列的内容包括:
    所述待编码的信息序列的全部内容和/或部分内容。
  43. 如权利要求41所述的计算机设备,其特征在于,所述根据待编码的信息序列的属性信息及预设的序列生成算法,生成序列包括:
    根据所述待编码的信息序列的内容及循环冗余校验CRC处理算法,生成序列;或,
    根据所述待编码的信息序列的内容及预设的哈希Hash函数,生成序列;或,
    根据所述待编码的信息序列的长度及随机函数,生成序列。
  44. 如权利要求43所述的计算机设备,其特征在于,所述根据所述待编码的信息序列的内容及CRC处理算法,生成序列包括:
    根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,
    根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列;或,
    根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及所述CRC处理算法,生成序列。
  45. 如权利要求43所述的计算机设备,其特征在于,所述根据所述待编码的信息序列的内容及预设的Hash函数,生成序列包括:
    根据所述待编码的信息序列的内容及CRC处理算法,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,
    根据所述待编码的信息序列的内容及预设的Hash函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列;或,
    根据所述待编码的信息序列的长度及随机函数,生成初始序列;根据所述待编码的信息序列的内容、所述初始序列及预设的Hash函数,生成序列。
  46. 如权利要求43所述的计算机设备,其特征在于,所述根据所述待编码的信息序列的内容及预设的Hash函数,生成序列包括:
    在待编码的信息序列中获取至少一个子序列;
    根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的序列。
  47. 如权利要求46所述的计算机设备,其特征在于,如果所述子序列包 括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列包括:
    将所述至少两个子序列进行排序;
    针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
    根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
  48. 如权利要求39所述的计算机设备,其特征在于,所述对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码之前,所述方法包括:
    采用预设的算法对所述第一序列进行更新;和/或,
    采用预设的算法对所述第二序列进行更新,其中所述预设算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
  49. 如权利要求48所述的计算机设备,其特征在于,所述采用预设的算法对所述第一序列进行更新和/或采用预设的算法对所述第二序列进行更新包括:
    采用加扰序列对第一序列和/或第二序列进行更新。
  50. 如权利要求39所述的计算机设备,其特征在于,所述第一序列的长度位于1比特到10比特之间,所述第二序列的长度位于10比特到16比特之间。
  51. 一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如下方法:
    在待编码的信息序列中获取至少一个子序列;
    根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的 Hash序列;
    对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
  52. 如权利要求51所述的计算机设备,其特征在于,所述在待编码的信息序列中获取至少一个子序列包括:
    对待编码的信息序列进行循环冗余校验CRC处理,生成所述信息序列对应的CRC序列;
    在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列;
    所述对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码包括:
    对所述信息序列、所述CRC序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
  53. 如权利要求52所示的计算机设备,其特征在于,所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列包括:
    根据预设的子序列的数量,将所述组合序列划分为所述数量个子序列,其中所述数量为不小于1的整数。
  54. 如权利要求52或53所述的计算机设备,其特征在于,如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定所述Hash序列包括:
    将所述至少两个子序列进行排序;
    针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
    根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
  55. 如权利要求52或53所述的计算机设备,其特征在于,Hash序列的 长度不大于32比特位。
  56. 如权利要求53或54所述的计算机设备,其特征在于,所述CRC序列的长度为8比特位、或12比特位、或16比特位、或24比特位。
  57. 一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如下方法:
    对接收到的极化码编码后的序列进行连续删除列表SCL译码;
    针对SCL译码保留的多条候选路径中的候选序列,确定该候选序列中的信息序列,并确定该候选路径的第一校验序列和第二校验序列;
    根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,其中,第一校验序列和第二校验序列中的一个校验序列用于路径选择和检测错误,另一个校验序列用于检测错误。
  58. 如权利要求57所述的计算机设备,其特征在于,所述信息序列的属性信息包括:
    信息序列的长度和/或内容。
  59. 如权利要求58所述的计算机设备,其特征在于,所述信息序列的内容包括:
    所述信息序列的全部内容和/或部分内容。
  60. 如权利要求58所述的计算机设备,其特征在于,所述确定该候选路径的校验序列包括:
    根据所述信息序列的内容及与发送端对应的循环冗余校验CRC处理算法,生成校验序列;或,
    根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列;或,
    根据所述信息序列的长度及与发送端对应的随机函数,生成校验序列。
  61. 如权利要求60所述的计算机设备,其特征在于,所述根据所述信息序列的内容及与发送端对应的CRC处理算法,生成校验序列包括:
    根据所述信息序列的内容及与发送端对应的CRC处理算法,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列;或,
    根据所述信息序列的内容及与发送端对应的Hash函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列;或,
    根据所述信息序列的长度及与发送端对应的随机函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的CRC处理算法,生成校验序列。
  62. 如权利要求60所述的计算机设备,其特征在于,所述根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列包括:
    根据所述信息序列的内容及与发送端对应的CRC处理算法,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列;或,
    根据所述信息序列的内容及与发送端对应的Hash函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列;或,
    根据所述信息序列的长度及与发送端对应的随机函数,生成初始校验序列;根据所述信息序列的内容、所述初始校验序列及与发送端对应的Hash函数,生成校验序列。
  63. 如权利要求60所述的计算机设备,其特征在于,所述根据所述信息序列的内容及与发送端对应的Hash函数,生成校验序列包括:
    在所述信息序列中获取至少一个子序列;
    根据所述至少一个子序列及与发送端对应的Hash函数,确定所述信息序列对应的Hash序列,将所述Hash序列作为生成的校验序列。
  64. 如权利要求63所述的计算机设备,其特征在于,如果所述子序列包括至少两个,所述根据所述至少一个子序列及与发送端对应的Hash函数,确 定所述信息序列对应的Hash序列包括:
    将所述至少两个子序列进行排序;
    针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
    根据排序为最后一位的子序列的Hash函数输出值,确定Hash序列。
  65. 如权利要求57所述的计算机设备,其特征在于,所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果之前,所述方法还包括:
    采用与发送端对应的算法对所述第一校验序列进行更新;和/或,
    采用与发送端对应的算法对所述第二校验序列进行更新,其中所述与发送端对应的算法包括异或处理算法、交织算法和更新设定比特位的算法中的至少一种。
  66. 如权利要求65所述的计算机设备,其特征在于,所述采用与发送端对应的算法对所述第一校验序列进行更新和/或采用与发送端对应的算法对所述第二校验序列进行更新包括:
    采用与发送端对应的加扰序列对第一校验序列和/或第二校验序列进行更新。
  67. 如权利要求57所述的计算机设备,其特征在于,所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果包括:
    根据每条候选路径的第一校验序列,选择目标路径;
    根据所述目标路径的第二校验序列,确定为译码结果。
  68. 如权利要求57所述的计算机设备,其特征在于,所述根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,确定译码结果包括:
    根据每条候选路径的第二校验序列,选择目标路径;
    根据所述目标路径的第一校验序列,确定为译码结果。
  69. 一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如下方法:
    对接收到的极化码编码后的序列进行SCL译码;
    针对SCL译码保留的多条候选路径中的候选序列,根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列;根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列,根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的校验Hash序列,根据所述Hash序列与所述校验Hash序列选择译码路径。
  70. 如权利要求69所述的计算机设备,其特征在于,所述根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列包括:
    根据与发送端对应的编码方法,确定候选序列中的信息序列、循环冗余校验CRC序列和Hash序列;
    所述根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列包括:
    根据与发送端对应的组合方式及子序列获取方法,在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列。
  71. 如权利要求70所述的计算机设备,其特征在于,所述在所述信息序列和所述CRC序列确定的组合序列中获取至少一个子序列包括:
    根据预设的子序列的数量,将所述组合序列划分为所述数量个子序列,其中所述数量为不小于1的整数。
  72. 如权利要求69或70所述的计算机设备,其特征在于,如果所述子序列包括至少两个,所述根据所述至少一个子序列及预设的Hash函数,确定校验Hash序列包括:
    将所述至少两个子序列进行排序;
    针对排序在后的每个第二子序列,根据与该第二子序列相邻的且位于所 述第二子序列之前的第一子序列的Hash函数输出值、所述第二子序列及所述Hash函数,确定所述第二子序列的Hash函数输出值,其中当所述第二子序列为排序为第一位的子序列时,所述第二子序列之前的第一子序列的Hash函数输出值为预设值;
    根据排序为最后一位的子序列的Hash函数输出值,确定校验Hash序列。
  73. 如权利要求69或70所述的计算机设备,其特征在于,所述根据所述Hash序列与所述校验Hash序列选择译码路径包括:
    针对每条候选路径中的候选序列,判断该候选序列中的Hash序列与确定的校验Hash序列是否相同;如果相同,则确定所述候选路径为译码路径,所述译码路径对应的信息序列为译码结果。
  74. 如权利要求73所述的计算机设备,其特征在于,如果每条候选路径对应的Hash序列与确定的校验Hash序列都不相同,所述方法还包括:
    将所述多条候选路径中可靠度最高的候选路径确定为译码路径,所述译码路径对应的信息序列为译码结果。
  75. 如权利要求69或70所述的计算机设备,其特征在于,Hash序列的长度不大于32比特位。
  76. 如权利要求69或70所述的计算机设备,其特征在于,所述CRC序列的长度为8比特位、或12比特位、或16比特位、或24比特位。
  77. 一种极化码编码装置,其特征在于,所述装置包括:
    序列产生器,用于根据待编码的信息序列的属性信息及预设的第一序列生成算法,生成第一序列;
    序列产生器,还用于根据待编码的信息序列的属性信息及预设的第二序列生成算法,生成第二序列;
    极化码Polar编码器,用于对所述信息序列、所述第一序列和所述第二序列进行组合,并对组合后的序列进行极化码编码。
  78. 一种极化码编码装置,其特征在于,所述装置包括:
    Hash状态产生器,用于在待编码的信息序列中获取至少一个子序列;根 据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的Hash序列;
    极化码Polar编码器,用于对所述信息序列和所述Hash序列进行组合,并对组合后的序列进行极化码编码。
  79. 一种极化码译码装置,其特征在于,所述装置包括:
    极化码Polar译码器,用于对接收到的极化码编码后的序列进行连SCL译码;
    校验序列译码器,用于针对SCL译码保留的多条候选路径中的候选序列,确定该候选序列中的信息序列,并确定该候选路径的第一校验序列和第二校验序列;根据每条候选路径中的第一校验序列和第二校验序列,确定译码结果,其中,第一校验序列和第二校验序列中的一个校验序列用于路径选择和检测错误,另一个校验序列用于检测错误。
  80. 一种极化码译码装置,其特征在于,所述装置包括:
    Polar译码器,用于对接收到的极化码编码后的序列进行SCL译码;
    Hash译码器,用于针对SCL译码保留的多条候选路径中的候选序列,根据与发送端对应的编码方法,确定候选序列中的信息序列和Hash序列;根据与发送端对应的子序列获取方法,在所述信息序列中获取至少一个子序列,根据所述至少一个子序列及预设的Hash函数,确定所述信息序列对应的校验Hash序列,根据所述Hash序列与所述校验Hash序列选择译码路径。
  81. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至12任一所述方法的计算机程序。
  82. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求13至18任一所述方法的计算机程序。
  83. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求19至30任一所述方法的计算机程序。
  84. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求31至38任一所述方法的计算机程序。
PCT/CN2018/075770 2017-01-09 2018-02-08 一种极化码编译码方法及装置 WO2018127234A1 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201710014354.5 2017-01-09
CN201710014354 2017-01-09
CN201710118230.1A CN108288970B (zh) 2017-01-09 2017-03-01 一种极化码编译码方法及装置
CN201710118230.1 2017-03-01

Publications (1)

Publication Number Publication Date
WO2018127234A1 true WO2018127234A1 (zh) 2018-07-12

Family

ID=62790971

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/075770 WO2018127234A1 (zh) 2017-01-09 2018-02-08 一种极化码编译码方法及装置

Country Status (1)

Country Link
WO (1) WO2018127234A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238799A (zh) * 2021-04-07 2021-08-10 南京交通职业技术学院 一种用于智能汽车的车载芯片安全防护系统及方法
WO2023065955A1 (zh) * 2021-10-21 2023-04-27 华为技术有限公司 通信方法及装置
WO2024055894A1 (zh) * 2022-09-15 2024-03-21 华为技术有限公司 一种编/译码方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104038234A (zh) * 2013-03-07 2014-09-10 华为技术有限公司 极性码的译码方法和译码器
US20160013810A1 (en) * 2014-07-10 2016-01-14 The Royal Institution For The Advancement Of Learning / Mcgill University Flexible polar encoders and decoders
CN105281785A (zh) * 2015-10-22 2016-01-27 东南大学 一种列表连续消除极化码译码方法、装置
WO2016082142A1 (zh) * 2014-11-27 2016-06-02 华为技术有限公司 极化码的速率匹配的方法、装置和无线通信设备
CN105811998A (zh) * 2016-03-04 2016-07-27 深圳大学 一种基于密度演进的极化码构造方法及极化码编译码系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104038234A (zh) * 2013-03-07 2014-09-10 华为技术有限公司 极性码的译码方法和译码器
US20160013810A1 (en) * 2014-07-10 2016-01-14 The Royal Institution For The Advancement Of Learning / Mcgill University Flexible polar encoders and decoders
WO2016082142A1 (zh) * 2014-11-27 2016-06-02 华为技术有限公司 极化码的速率匹配的方法、装置和无线通信设备
CN105281785A (zh) * 2015-10-22 2016-01-27 东南大学 一种列表连续消除极化码译码方法、装置
CN105811998A (zh) * 2016-03-04 2016-07-27 深圳大学 一种基于密度演进的极化码构造方法及极化码编译码系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238799A (zh) * 2021-04-07 2021-08-10 南京交通职业技术学院 一种用于智能汽车的车载芯片安全防护系统及方法
CN113238799B (zh) * 2021-04-07 2022-06-28 南京交通职业技术学院 一种用于智能汽车的车载芯片安全防护系统及方法
WO2023065955A1 (zh) * 2021-10-21 2023-04-27 华为技术有限公司 通信方法及装置
WO2024055894A1 (zh) * 2022-09-15 2024-03-21 华为技术有限公司 一种编/译码方法及装置

Similar Documents

Publication Publication Date Title
CN108288970B (zh) 一种极化码编译码方法及装置
US11025278B2 (en) Polar coding encoding/decoding method and apparatus
ES2901249T3 (es) Procedimiento y aparato de concordancia de tasa para sistemas de comunicación y radiodifusión
CN101803208B (zh) 无线通信系统中的多层循环冗余校验码
US9543981B2 (en) CRC-based forward error correction circuitry and method
US11075652B2 (en) Polar code transmission method and apparatus
US11171741B2 (en) Polar code transmission method and apparatus
CN109964426B (zh) 用于解析接收信号的信号接收器和方法、通信系统
EP3240217A1 (en) Method of segmenting a transport block into multiple code blocks when one crc is added to each code block
CN108631792B (zh) 一种极化码编译码方法及装置
US10338996B2 (en) Pipelined decoder and method for conditional storage
WO2018127234A1 (zh) 一种极化码编译码方法及装置
WO2018141212A1 (zh) 一种信息的传输方法、译码方法和装置
KR20210006807A (ko) 통신 시스템에서 신호 송수신 장치 및 방법
CN110233698B (zh) 极化码的编码及译码方法、发送设备、接收设备、介质
WO2018157739A1 (zh) 一种极化码编译码方法及装置
CN108540140B (zh) 一种极化码译码方法及装置
CN110535560A (zh) 一种极化码结合编码和译码方法
CN108289009B (zh) 一种被用于信道编码的ue、基站中的方法和设备
US20100306614A1 (en) Method of error control
US10826541B2 (en) Convolutional code decoder and convolutional code decoding method
GB2387303A (en) Mobile terminal identification/addressing
CN109039545B (zh) 一种用于信道编码的ue、基站中的方法和设备
CN114430279A (zh) 一种列表维特比译码方法、装置、译码器和存储介质
CN109417432A (zh) 数据编解码

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18736014

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18736014

Country of ref document: EP

Kind code of ref document: A1