WO2020042089A1 - Scl并行译码方法、装置及设备 - Google Patents

Scl并行译码方法、装置及设备 Download PDF

Info

Publication number
WO2020042089A1
WO2020042089A1 PCT/CN2018/103293 CN2018103293W WO2020042089A1 WO 2020042089 A1 WO2020042089 A1 WO 2020042089A1 CN 2018103293 W CN2018103293 W CN 2018103293W WO 2020042089 A1 WO2020042089 A1 WO 2020042089A1
Authority
WO
WIPO (PCT)
Prior art keywords
decoding
bits
decoded
path
paths
Prior art date
Application number
PCT/CN2018/103293
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
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to PCT/CN2018/103293 priority Critical patent/WO2020042089A1/zh
Priority to EP18931878.5A priority patent/EP3840260A4/en
Priority to CN201880096570.1A priority patent/CN112567659A/zh
Publication of WO2020042089A1 publication Critical patent/WO2020042089A1/zh
Priority to US17/186,781 priority patent/US20210184701A1/en

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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3966Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes based on architectures providing a highly parallelized implementation, e.g. based on systolic arrays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3905Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP decoding
    • H03M13/3927Log-Likelihood Ratio [LLR] computation by combination of forward and backward metrics into LLRs
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/43Majority logic or threshold decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/45Soft decoding, i.e. using symbol reliability information
    • 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/65Purpose and implementation aspects
    • H03M13/6561Parallelized implementations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0052Realisations of complexity reduction techniques, e.g. pipelining or use of look-up tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes

Definitions

  • the present application relates to the field of communications technologies, and in particular, to a SCL parallel decoding method, device, and device.
  • a communication device (such as a terminal device, a base station, etc.) can perform channel coding and decoding by means of a polar code.
  • a parallel cancellation list (SCL) algorithm is used to perform the decoding process in parallel using the parallel method as follows: dividing the bits to be decoded into multiple groups of bits And decode each set of bits in turn. Each time a set of bits is decoded, multiple decoding paths are expanded, and a certain number of paths are reserved from the multiple decoding paths for the next group of decoding. Finally, multiple decoding result paths can be obtained, from which The decoding result on the decoding path with the largest decoding accuracy rate is selected as the decoding output.
  • SCL parallel cancellation list
  • the present application provides an SCL parallel decoding method, device and device, which improves the SCL parallel decoding efficiency.
  • the present application provides a SCL parallel decoding method.
  • P is an integer greater than 1
  • group of to-be-decoded bits for any i (i is an integer, 1 ⁇ i ⁇ P) group of bits to be decoded can be decoded by the following feasible implementation methods:
  • the number of information bits in the i-th group of bits to be decoded is n (n is a positive integer), and L 3 ⁇ 2 n .
  • the i-th group is determined to be at least one reserved decoding bit path decode process, the need to sort L 1 ⁇ L 3 a third decoding paths, and L 1 ⁇ L after sorting three coding paths third selecting at least one reserved decoding paths. Since L 3 < 2 n , in the process of determining at least one reserved decoding path for the i-th group of bits to be decoded, the ordering complexity can be reduced, thereby improving the efficiency of the SCL parallel decoding method.
  • L 3 2 mk , where k is a positive integer, m is the number of bits to be decoded included in each group of bits to be decoded, m is an integer greater than 1, and 1 ⁇ k ⁇ m.
  • k may be a preset value.
  • m can also be referred to as the parallelism of SCL parallel decoding.
  • L 3 is related to the parallelism m of the SCL parallel decoding. With the different parallelism m of the SCL parallel decoding, L 3 may also be different, thereby improving the determination of L. 3 flexibility.
  • L 3 is any one of 2, 4, 8, 16, 32, or 64.
  • the method further includes: determining a decoding path with the highest correct rate among at least one reserved decoding path; and determining a P group to be decoded according to a decoding path Bit decoding result.
  • the present application provides an SCL parallel decoding method.
  • the data received by the receiving device corresponds to the P (P is an integer greater than 1) group of to-be-decoded bits.
  • (i is an integer, 1 ⁇ i ⁇ P) groups of bits to be decoded can be decoded by the following feasible implementation methods:
  • Get path L 1 of first decoding a first set of i-1 bits to be coded when a predetermined condition is satisfied, L 3 were determined path of third decoder decodes each of the first path, the L 1 ⁇ At least one reserved decoding path of the i th group of to-be-decoded bits is determined from the L 3 third decoding paths, and the at least one reserved decoding path includes a decoding result of the i-th group of to-be-decoded bits.
  • L 1 ⁇ L 3 is greater than or equal to the first preset threshold, and the number of information bits in the i-th group of bits to be decoded is n (n is a positive integer), and L 3 ⁇ 2 n .
  • the i-th group is determined to be at least one reserved decoding bit path decode process, the need to sort L 1 ⁇ L 3 a third decoding paths, and L 1 ⁇ L after sorting three coding paths third selecting at least one reserved decoding paths. Since L 3 < 2 n , in the process of determining at least one reserved decoding path for the i-th group of bits to be decoded, the ordering complexity can be reduced, thereby improving the efficiency of the SCL parallel decoding method.
  • the preset condition is: L 1 ⁇ L 2 is greater than a first preset threshold.
  • L 3 third decoding paths are determined for each first decoding path, and i is determined from L 1 ⁇ L 3 third decoding paths. At least one group of bits to be decoded reserves a decoding path. In this way, not only can the complexity of sorting be reduced, but also a small loss in decoding performance can be achieved.
  • the first preset threshold value is any one of 2, 4, 8, 16, 32, 64, or 128.
  • L 3 2 mk , where k is a positive integer and m is a to-be-included in each group of to-be-decoded bits. Number of decoded bits, m is an integer greater than 1, and 1 ⁇ k ⁇ m.
  • k may be a preset value.
  • m can also be referred to as the parallelism of SCL parallel decoding.
  • L 3 is related to the parallelism m of the SCL parallel decoding. With the different parallelism m of the SCL parallel decoding, L 3 may also be different, thereby improving the determination of L. 3 flexibility.
  • L 3 is any one of 2, 4, 8, 16, 32, or 64.
  • the method further includes: determining a decoding path with the highest correct rate among at least one reserved decoding path; and determining a P group to be decoded according to a decoding path Bit decoding result.
  • the present application provides an SCL parallel decoding device.
  • the received data corresponds to P groups of bits to be decoded.
  • the device includes an acquisition module, a first determination module, and a second determination module.
  • the obtaining module is configured to obtain L 1 first decoding paths of the (i-1) th group of bits to be decoded, where i is an integer, P is an integer greater than 1, and 1 ⁇ i ⁇ P, the L 1 is a positive integer;
  • the first determining module is configured to determine L 3 third decoding paths for each first decoding path, the number of information bits in the i-th group of bits to be decoded is n, and n is greater than or A positive integer equal to 1, the L 3 is a positive integer, and L 3 < 2 n ;
  • the second determining module is configured to determine at least one reserved decoding path of the i-th group of to-be-decoded bits in the L 1 ⁇ L 3 third decoding paths, where the at least one reserved decoding path includes the i-th group. The decoding result of the group to be decoded.
  • the first determining module is specifically configured to:
  • the L 3 third decoding paths are respectively determined.
  • L 3 2 mk , where k is a positive integer, m is the number of bits to be decoded included in each group of bits to be decoded, and m is greater than An integer of 1 and 1 ⁇ k ⁇ m.
  • the L 3 is any one of 2, 4, 8, 16, 32, or 64.
  • the apparatus further includes a third determining module, wherein:
  • the present application provides an SCL parallel decoding device.
  • the received data corresponds to P groups of bits to be decoded.
  • the device includes an acquisition module, a first determination module, and a second determination module.
  • the obtaining module is configured to obtain L 1 first decoding paths of the (i-1) th group of bits to be decoded, where i is an integer, P is an integer greater than 1, and 1 ⁇ i ⁇ P, the L 1 is a positive integer;
  • the first determining module is configured to determine L 3 third decoding paths for each first decoding path respectively when a preset condition is satisfied, where L 1 ⁇ L 3 is greater than or equal to a first preset threshold ,
  • the number of information bits in the i-th group of bits to be decoded is n, the n is a positive integer greater than or equal to 1, the L 3 is a positive integer, and L 3 < 2 n ;
  • the second determining module is configured to determine at least one reserved decoding path of the i-th group of to-be-decoded bits in the L 1 ⁇ L 3 third decoding paths, where the at least one reserved decoding path includes the i-th The decoding result of the group to be decoded.
  • the first determining module is specifically configured to:
  • L 2 2 n ;
  • the L 3 third decoding paths are respectively determined.
  • the preset condition is:
  • L 1 ⁇ L 2 is greater than the first preset threshold.
  • L 3 2 mk , where k is a positive integer and m is each group to be translated The number of bits to be decoded included in the code bits, where m is an integer greater than 1, and 1 ⁇ k ⁇ m.
  • the L 3 is any one of 2, 4, 8, 16, 32, or 64.
  • the apparatus further includes a third determining module, wherein:
  • the present application provides an SCL parallel decoding device, including a memory and a processor, where the processor executes program instructions in the memory to implement the SCL parallel translation according to any one of the first aspect. Code method.
  • the present application provides an SCL parallel decoding device, including a memory and a processor, where the processor executes program instructions in the memory to implement the SCL parallel translation according to any one of the second aspect. Code method.
  • the present application provides a storage medium, where the storage medium is used to store a computer program, and the computer program is used to implement the SCL parallel decoding method according to any one of the first aspects.
  • the present application provides a storage medium, wherein the storage medium is used to store a computer program, and the computer program is used to implement the SCL parallel decoding method according to any one of the foregoing second aspects.
  • the SCL parallel decoding method, device and device provided in this application after the received data corresponds to a P (P is an integer greater than 1) group of to-be-decoded bits, for any i-th ( i is an integer, 1 ⁇ i ⁇ P) groups of bits to be decoded, first obtain L 1 first decoding paths for the i-1 group of bits to be decoded, and determine L 3 for each first decoding path A third decoding path, and determine at least one reserved decoding path of the i-th group of to-be-decoded bits in the L 1 ⁇ L 3 third decoding paths, and the at least one reserved decoding path includes the i-th group of to-be-decoded paths Bit decoding result.
  • the number of information bits in the i-th group of bits to be decoded is n (n is a positive integer), and L 3 ⁇ 2 n .
  • the i-th group is determined to be at least one reserved decoding bit path decode process, the need to sort L 1 ⁇ L 3 a third decoding paths, and L 1 ⁇ L after sorting three coding paths third selecting at least one reserved decoding paths. Since L 3 < 2 n , in the process of determining at least one reserved decoding path for the i-th group of bits to be decoded, the ordering complexity can be reduced, thereby improving the efficiency of the SCL parallel decoding method.
  • FIG. 1 is a structural diagram of a communication system provided by this application.
  • FIG. 2 is a schematic flowchart of an SCL parallel decoding method provided by the present application.
  • 2A is a schematic diagram of a decoding path provided by this application.
  • FIG. 3 is a schematic flowchart of another SCL parallel decoding method provided by the present application.
  • FIG. 5 is a schematic diagram of an SCL parallel decoding process provided by the present application.
  • FIG. 6 is a schematic flowchart of still another SCL parallel decoding method provided by the present application.
  • FIG. 7 is a schematic flowchart of another SCL parallel decoding method provided by the present application.
  • FIG. 8A is a first-stage decoding schematic diagram of SCL parallel decoding provided by the present application.
  • FIG. 8B is a schematic diagram of the second decoding step of the SCL parallel decoding provided by the present application.
  • FIG. 8C is a schematic diagram of the third step decoding of the SCL parallel decoding provided by the present application.
  • FIG. 8D is a schematic diagram of the fourth step decoding of the SCL parallel decoding provided by the present application.
  • FIG. 9 is a schematic structural diagram of an SCL parallel decoding device provided by this application.
  • FIG. 10 is a schematic structural diagram of still another SCL parallel decoding device provided by the present application.
  • FIG. 11 is a schematic structural diagram of another SCL parallel decoding device provided by the present application.
  • FIG. 12 is a schematic structural diagram of still another SCL parallel decoding device provided by the present application.
  • FIG. 13 is a schematic diagram of a hardware structure of an SCL parallel decoding device provided by the present application.
  • the embodiments of the present application can be applied to various fields using Polar coding, for example, data storage field, optical network communication field, wireless communication field, and so on.
  • the wireless communication system mentioned in the embodiments of the present application includes, but is not limited to: Narrowband Internet of Things (NB-IoT), Wimax, Long Term Evolution (LTE), and next-generation 5G Three major application scenarios of mobile communication system new radio (NR) enhanced mobile broadband (enhanced Mobile Broadband, eMBB), ultra high reliability and low latency communication (ultra, low, latency, communication, URLLC) and large-scale machines Communication (Machine-Type Communications) (mMTC).
  • NR Narrowband Internet of Things
  • eMBB enhanced mobile broadband
  • ultra high reliability and low latency communication ultra, low, latency, communication, URLLC
  • MTC Machine-Type Communications
  • the field of using Polar coding can be other, which is not specifically limited in this application.
  • the communication device involved in this application mainly includes a network device or a terminal device.
  • the sending device in this application may be a network device, and the receiving device is a terminal device.
  • the sending device in this application is a terminal device, and the receiving device is a network device.
  • the terminal device includes, but is not limited to, a mobile station (MS), a mobile terminal (MT), a mobile phone (MT), a mobile phone (handset), and a portable device.
  • Equipment portable equipment
  • the terminal equipment can communicate with one or more core networks via a radio access network (Radio Access Network, RAN).
  • RAN Radio Access Network
  • the terminal device may be a mobile phone (or a “cellular” phone), a computer with wireless communication functions, and the like.
  • the terminal device may also be a portable, pocket-sized, handheld, computer-built or vehicle-mounted mobile device or device.
  • the present application describes various embodiments in conjunction with a network device.
  • the network device may be an evolutionary base station (Evolutionary Node B, eNB, or eNodeB) in the LTE system, or the network device may be a gNB or a transmission and reception point (TRP), a micro base station, etc. in a 5G communication system.
  • the network device may be a network device in a relay station, an access point, an in-vehicle device, a wearable device, and a public land mobile network (PLMN) that is evolving in the future, or in a network of other multiple technologies, Base stations in various other evolved networks.
  • PLMN public land mobile network
  • FIG. 1 is a structural diagram of a communication system provided by the present application. Please refer to FIG. 1, which includes a sending device 101 and a receiving device 102.
  • the receiving device 102 is a network device.
  • the sending device 101 is a network device
  • the receiving device is a terminal device.
  • the transmitting device 101 includes an encoder, so that the transmitting device 101 can perform polar encoding and output an encoded sequence.
  • the encoded sequence is transmitted to the receiving device 102 on the channel after rate matching, interleaving, and modulation.
  • the receiving device 102 includes a decoder, and the receiving device 102 may receive a signal sent by the transmitting device 101 and decode the received signal.
  • FIG. 1 only illustrates an architecture diagram of a communication system by way of example, and does not limit the architecture diagram of the communication system.
  • the transmitting end encodes the information bit and the frozen bit to obtain the bit sequence to be sent, and sends the bit sequence to be sent.
  • the frozen bit is a padding bit, and the frozen bit can usually be zero.
  • the bit sequence to be transmitted is transmitted to the receiving end through a channel after rate matching, interleaving, and modulation.
  • the receiver performs processing such as demodulation on the received signal to obtain a set of Likelihood Rates (LLRs).
  • LLRs Likelihood Rates
  • the number of LLRs included in the set of LLRs is the same as the number of bits included in the bit sequence to be sent. .
  • the receiving end performs Polar code decoding according to the received LLR.
  • the receiving end may misjudge.
  • b 0) correctly judged to be 0 at the receiving end to the probability p (r
  • LLR ln [p (r
  • b 0) / p (r
  • b 1)].
  • LLR can be a floating point number.
  • FIG. 2 is a schematic flowchart of an SCL parallel decoding method provided by the present application. See Figure 2.
  • the method may include:
  • a is a positive integer greater than or equal to 1.
  • the information is demodulated to obtain 2 a LLRs.
  • the number of LLRs acquired by the receiving device is the same as the number of bits sent by the transmitting device.
  • the receiving device obtains 2 a LLR.
  • the number of LLRs acquired by the receiving device is the same as the number of bits to be decoded by the receiving device.
  • the number of bits that the receiving device needs to decode is 2 a .
  • the decoder decodes 2 a LLRs as input.
  • each group of bits to be decoded includes information bits to be decoded and / or frozen bits to be decoded, and the number of information bits to be decoded included in each group of decoded bits may be the same or different.
  • the number m of bits included in each group of bits to be decoded may also be referred to as the parallelism of SCL parallel decoding.
  • the decoding result (decoding path) corresponding to the first i groups of bits to be decoded can be obtained, where i is greater than or equal to 1 and less than or equal to Integer of P. This can be achieved through the following steps A-C:
  • Step A Calculate m + 1 level LLR of each to-be-decoded information bit in the i-th group of to-be-decoded bits according to 2 a LLRs.
  • the Polar code butterfly decoding network includes a + 1 column LLR, and the m + 1 level LLR is the m + 1 column LLR from left to right in the Polar code butterfly decoding network.
  • the number of bits to be decoded is 2 4
  • the m + 1 level LLR refers to the m + 1th column LLR from left to right in the Polar code butterfly decoding network.
  • Step B According to the m + 1 level LLR of each information bit in the i-th group of bits to be decoded, calculate the path metrics of all possible decoding paths decoded in step i in parallel.
  • a Maximum Likelihood (ML) algorithm or a Simplify Serial Cancellation (SC) algorithm may be used to first calculate the LLR of each information bit in the i-th group of bits to be decoded in parallel, Then, according to the LLR of each information bit in the i-th group of to-be-decoded bits, path metrics of all possible decoding paths decoded in the i-step are calculated in parallel.
  • ML Maximum Likelihood
  • SC Serial Cancellation
  • a path metric value of a decoding path represents a probability that the decoding path is a real decoding path.
  • the smaller the path metric value of a decoding path the greater the probability that the decoding path is a true decoding path.
  • the path metric of the decoding path can be calculated by the following formula 1:
  • l represents the index of the decoding path
  • m is the number of bits included in the current path.
  • ⁇ jl is the LLR of the j-th bit in the decoding path l.
  • all possible decoding paths of the i-th decoding step can be determined according to the decoding path obtained from the i-th step decoding and the number of information bits n included in the i-th group of bits to be decoded .
  • FIG. 2A is a schematic diagram of a decoding path provided by the present application. Referring to FIG. 2A, it is assumed that the decoding paths obtained in the second decoding step are: 00 and 11.
  • all possible decoding paths of the third step of decoding include: 2 2 decoding paths (0000 obtained by extending path 00) , 0001,0010 and 0011), and the extended path 11 to obtain two coded paths 2 (1100,1101,1110 and 1111), i.e., all possible decoding paths third step includes decoding 0000,0001,0010, 0011, 1100, 1101, 1110, and 1111.
  • Step C Select at least one reserved decoding path according to the path metrics of all possible decoding paths.
  • the number of reserved decoding paths is less than or equal to X.
  • X is the number of reserved paths corresponding to the SCL parallel decoding method.
  • the number of reserved paths X may be 4, 8, 16, etc.
  • the number of reserved paths X may be set according to actual needs.
  • the number of reserved decoding paths is equal to X. If the number of all possible decoding paths is less than X, the number of reserved decoding paths is less than X, and the number of reserved decoding paths is equal to the number of all possible decoding paths.
  • multiple reserved decoding paths for the first decoding step can be obtained.
  • the second step decoding is performed on the basis of the multiple reserved decoding paths decoded in the first step to obtain the multiple reserved decoding paths decoded in the second step.
  • the third step decoding is performed on the basis of the multiple reserved decoding paths decoded in the second step to obtain the multiple reserved decoding paths decoded in the third step. And so on until the P-step decoding is completed.
  • the obtained reserved decoding path for decoding at step i is the decoding path corresponding to the first to i groups of bits to be decoded.
  • the decoding path may be a possible value of the first to i groups of bits to be decoded.
  • the receiving end receives 16 LLRs, and the number of corresponding bits to be decoded is 16, which are denoted as u0, u1, ..., u15, and it is assumed that the 16 bits to be decoded are all information to be decoded. Bits. Assume that the 16 to-be-decoded bits are divided into 4 groups, and each of the to-be-decoded bits includes 4 to-be-decoded bits.
  • the reserved decoding paths for the first step decoding are the decoding paths corresponding to the first set of bits to be decoded u0 to u3, and multiple decoding paths for the first step decoding.
  • the length is 4, for example, the multiple reserved decoding paths for the first decoding step can be: 0000, 0001, 0010, 0011, and so on.
  • the reserved decoding path of the second step decoding is the decoding path corresponding to the first to two sets of bits to be decoded u0 to u7, and multiple translations of the second step decoding are performed.
  • the length of the code path is 8, for example, the multiple reserved decoding paths for the second step decoding can be: 00000000, 00000001, 00000010, and so on.
  • the reserved decoding paths for the third step decoding are the decoding paths corresponding to the first to three sets of bits to be decoded u0 to u11, and multiple translations of the third step decoding are performed.
  • the length of the code path is 12, for example, the multiple reserved decoding paths for the third step decoding can be: 000000000000, 000000000001, 000000000010, and so on.
  • the reserved decoding paths of the fourth step of decoding are the decoding paths corresponding to the first to four groups of bits to be decoded u0 to u15, and multiple translations of the fourth step of decoding
  • the length of the code path is 16, for example, the multiple reserved decoding paths for the fourth step decoding can be: 0000000000000000, 0000000000000001, and so on.
  • one decoding path can be selected as the decoding result from the multiple reserved decoding paths obtained in the fourth step decoding.
  • the selected decoding path is 0000000000000001, that is, 16 from u0 to u15.
  • the result of decoding the bits is 0000000000000001.
  • FIG. 3 is a schematic flowchart of another SCL parallel decoding method provided by the present application.
  • the embodiment in FIG. 3 is the first decoding process in the SCL parallel decoding.
  • the method may include:
  • the ML algorithm or the simplified SC algorithm may be used first to calculate the LLR of each information bit in the first group of bits to be decoded in parallel, and then calculate the LLR in parallel according to the LLR of each information bit in the first group of bits to be decoded.
  • Path metrics for all possible decoding paths decoded in the first step may be used first to calculate the LLR of each information bit in the first group of bits to be decoded in parallel, and then calculate the LLR in parallel according to the LLR of each information bit in the first group of bits to be decoded.
  • the first step in the decoding of all possible decoding paths comprises 2 4: 0000,0001,0010,0011,0100,0101,0110,0111, 1000, 1001, 1010, 1011, 1100, 1101, 1110, and 1111.
  • S303 Determine at least one reserved decoding path of the first group of to-be-decoded bits from all possible decoding paths decoded in the first step according to path metric values of all possible decoding paths in the first decoding step.
  • the reserved decoding path of the first group of bits to be decoded may also be referred to as the first decoding path of the first group of bits to be decoded, and may also be referred to as the reserved decoding path of the first step decoding. Or the first decoding path of the first decoding step.
  • the number of reserved decoding paths in the first step decoding is less than or equal to X, where X is the number of reserved paths corresponding to the SCL parallel decoding method.
  • the number of reserved paths X may be 4, 8, 16, etc.
  • the number of reserved paths X may be set according to actual needs.
  • X reserved decoding paths can be selected from all possible decoding paths in the first step decoding. At this time, The number of reserved decoding paths decoded in the first step is equal to X. If the number of all possible decoding paths decoded in the first step is less than X, all possible decoding paths decoded in the first step are determined as reserved decoding paths for the first step decoding. At this time, the first step decoding The number of reserved decoding paths obtained in X is less than X.
  • the path metric value of a decoding path is smaller, the probability that the decoding path is a true decoding path is greater. If the number of all possible decoding paths in the first decoding step is greater than X, the X reserved decoding paths can be selected through the following feasible implementation methods: The X path metric values with the smallest path metric among all possible decoding paths decoded in the first step are determined as the X reserved decoding paths.
  • FIG. 4 is a schematic flowchart of another SCL parallel decoding method provided by the present application.
  • the embodiment in FIG. 4 is an arbitrary i-th step (1 ⁇ i ⁇ P) decoding process in the SCL parallel decoding.
  • the method may include:
  • the received data corresponds to P groups of bits to be decoded, then 1 ⁇ i ⁇ P, and P is an integer greater than 1, and i is an integer.
  • L 1 is a positive integer.
  • L 1 may be 2 or 4 or 8.
  • the L 1 first decoding paths of the bits to be decoded in the i-1 group are reserved decoding paths of the bits to be decoded in the i-1 group.
  • decoding needs to be performed step by step. That is, first decoding is performed to obtain a first decoding path (reserved decoding path) for the first decoding, and then second decoding is performed to obtain a second decoding path according to the first decoding path for the first decoding.
  • the first decoding path of the step decoding is performed, and then the third decoding step is performed according to the first decoding path of the second decoding step to obtain the first decoding path of the third decoding step, and so on. Therefore, when performing the i-th decoding step, L 1 first decoding paths for the i-1 step decoding have been obtained.
  • first decoding step of first decoding L 1 of the path which may cache L 1 of first decoding path, corresponding, when the i-th decoding step, can be directly
  • the L 1 first decoding path is obtained in the buffer.
  • S402. Determine L 3 third decoding paths for each first decoding path.
  • the number of information bits in the i-th group of to-be-decoded bits is n, the L 3 is a positive integer, and L 3 ⁇ 2 n .
  • L 3 third decoding paths may be determined for each first decoding path through the following steps A-B:
  • the L 2 corresponding to the first decoding path may be determined according to the number n of information bits included in the first decoding path and the i-th group of bits to be decoded.
  • the second decoding path may be determined according to the number n of information bits included in the first decoding path and the i-th group of bits to be decoded.
  • Step B In L 2 second decoding paths corresponding to each first decoding path, determine L 3 third decoding paths respectively.
  • step B L 3 may be obtained first, and only when L 2 > L 3 , S403 is performed. When L 2 ⁇ L 3 , step B need not be performed. Correspondingly, in S403, it is sufficient to directly determine at least one reserved decoding path among the L 1 ⁇ L 2 second decoding paths.
  • L 3 can be obtained by at least the following two feasible implementation methods:
  • L 3 may be a preset value.
  • L 3 is a preset value, and the preset L 3 may be stored in advance. Accordingly, when L 3 is needed, L 3 may be directly obtained.
  • L 3 may be any one of 2, 4, 8, 16, 32, and 64.
  • the size of L 3 may be set according to actual needs, which is not specifically limited in this application.
  • Another feasible implementation manner determine L 3 according to the parallel degree of SCL decoding.
  • the parallelism of SCL decoding refers to the number of bits included in a set of bits to be decoded in SCL parallel decoding.
  • L 3 2 mk , where m is the parallelism of SCL parallel decoding, k is a positive integer, m is a positive integer, and 1 ⁇ k ⁇ m.
  • L 3 may be determined according to actual needs, which is not specifically limited in this application.
  • L 2 of the second decoding path to sort and select the L 3 L 2-th second decoding path in the sorted Three decoding paths.
  • L 3 with the smallest path metric value among the L 2 second decoding paths may be used.
  • the decoding path is determined as L 3 third decoding paths.
  • L 3 third decoding paths can be determined from L 2 second decoding paths corresponding to each first decoding path, a total of L 1 ⁇ L 3 third decoding paths can be determined in total.
  • At least one reserved decoding path includes a decoding result of the i-th group of bits to be decoded.
  • the number of at least one reserved decoding path is less than or equal to X.
  • X is the number of reserved decoding paths corresponding to the serial cancellation list SCL decoding, and X is a positive integer.
  • X can be 4, 8, 6, and so on.
  • the X can be set according to actual needs.
  • L 1 ⁇ L 3 of third decoding paths of L 1 ⁇ L 3 sort of third decoding paths, and L 1 ⁇ L 3 of third sorted in At least one reserved decoding path is selected from the decoding paths.
  • decoding paths when a smaller path metric of the decoding paths, decoding paths is larger the real probability of decoding paths, may be the smallest L 1 ⁇ L 3 of third decoded path metric the path
  • the X decoding paths are determined as at least one reserved decoding path.
  • the L 1 ⁇ L 3 third decoding paths may be determined as reserved decoding paths.
  • the sorting complexity in S404 is L 1 ⁇ L 3 ⁇ X.
  • the ordering complexity of the i-th (2 ⁇ i ⁇ P) step decoding in this application is: L 1 ⁇ L 2 ⁇ L 3 + L 1 ⁇ L 3 ⁇ X.
  • the ordering complexity of the i-th (2 ⁇ i ⁇ P) step decoding in the prior art is usually: L 1 ⁇ L 2 ⁇ X.
  • the ranking complexity in the prior art is generally greater than the ranking complexity of the present application, and is as follows:
  • FIG. 5 is a schematic diagram of an SCL parallel decoding process provided by the present application. Referring to FIG. 5, it is assumed that eight decoding paths are obtained in step i-1, which are respectively recorded as path 1, path 2, ..., path 8 in step i-1. Assuming that there are 4 bits to be decoded in the i-th group of bits to be decoded, in the i-th decoding step, for each decoding path in the i-th step decoding, 16 decodings can be expanded. path.
  • the present application can greatly reduce the complexity of sorting, thereby improving the decoding efficiency.
  • the L- 1 first decoding path of the i-1th group of bits to be decoded is obtained first.
  • Each of the first decoding paths is extended to obtain L 2 second decoding paths corresponding to each first decoding path, and when L 2 > L 3 , corresponding to each first decoding path Among the L 2 second decoding paths, L 3 third decoding paths are selected to obtain L 1 ⁇ L 3 third decoding paths, and one of the L 1 ⁇ L 3 third decoding paths is reserved. Decoding path.
  • the complexity of sorting is reduced, thereby improving the efficiency of the SCL parallel decoding method.
  • FIG. 6 is a schematic flowchart of still another SCL parallel decoding method provided by the present application.
  • the embodiment in FIG. 6 is an arbitrary i-th step (1 ⁇ i ⁇ P) decoding process in the SCL parallel decoding.
  • the method may include:
  • the received data corresponds to P groups of bits to be decoded, where P is an integer greater than 1, i is an integer, 1 ⁇ i ⁇ P, and L 1 is a positive integer.
  • L 3 third decoding paths are determined for each first decoding path.
  • L 1 ⁇ L 3 is greater than or equal to the first preset threshold, the number of information bits in the i-th group of bits to be decoded is n, L 3 is a positive integer, and L 3 ⁇ 2 n .
  • L 3 may be determined first, and then L 3 third decoding paths may be separately determined for each first decoding path.
  • L 3 can be determined by at least the following two feasible implementation manners:
  • a preset parameter (2 p ) is set in advance, and it is first determined whether a product of L 1 and the preset parameter is greater than or equal to a first preset threshold, and if so, the preset parameter is determined as L 3 . If not, update the preset parameter until the product of L 1 and the updated preset parameter is greater than or equal to the first preset threshold, and determine the updated preset parameter as L 3 . For example, when updating a preset parameter, p may be increased by one step by step.
  • L 3 third decoding paths may be determined for each first decoding path through the following steps A-B:
  • L 2 corresponding to the first decoding path may be determined according to the first decoding path and the number n of information bits included in the i-th group of bits to be decoded. Second decoding paths.
  • Step B In L 2 second decoding paths corresponding to each first decoding path, determine L 3 third decoding paths respectively.
  • L 2 of the second decoding path to sort and select the L 3 L 2-th second decoding path in the sorted Three decoding paths.
  • L 3 with the smallest path metric value among the L 2 second decoding paths may be used.
  • the decoding path is determined as L 3 third decoding paths.
  • L 3 third decoding paths can be determined from L 2 second decoding paths corresponding to each first decoding path, a total of L 1 ⁇ L 3 third decoding paths can be determined in total.
  • At least one reserved decoding path includes a decoding result of the i-th group of bits to be decoded.
  • sorting complexity shown in the embodiment of FIG. 6 is the same as the sorting complexity shown in FIG. 4. Therefore, the sorting complexity in this application is lower than the sorting complexity in the prior art.
  • the L- 1 first decoding path of the i-1th group of bits to be decoded is obtained first.
  • Each of the first decoding paths is extended to obtain L 2 second decoding paths corresponding to each first decoding path, and when L 1 ⁇ L 2 is greater than the first preset threshold,
  • a decoding path determines L 3 third decoding paths respectively to obtain L 1 ⁇ L 3 third decoding paths, and selects at least one reserved decoding path among L 1 ⁇ L 3 third decoding paths.
  • the complexity of sorting is reduced, thereby improving the efficiency of the SCL parallel decoding method.
  • FIG. 6 the embodiment shown in FIG. 6 will be further described in detail through the embodiment shown in FIG. 7.
  • FIG. 7 is a schematic flowchart of another SCL parallel decoding method provided by the present application.
  • the embodiment in FIG. 7 is an arbitrary i-th step (1 ⁇ i ⁇ P) decoding process in the SCL parallel decoding.
  • the method may include:
  • the first preset threshold refers to a minimum number of decoding paths included in a set of reserved decoding paths in one-step decoding.
  • the reserved decoding path set refers to a decoding path set for selecting and selecting at least one reserved decoding path.
  • the first preset threshold may be any one of 2, 4, 8, 16, 32, 64, and 128.
  • the first preset threshold may be set according to actual needs, which is not specifically limited in this application.
  • L 4 may be determined first.
  • the determination process performs decoding of third path L 4 L 2 in the second decoding path, refer to step B in FIG. 6 embodiment, L 2 is determined in the second decoding path The process of L 3 third decoding paths is not repeated here.
  • L 1 first decoding paths obtained from the i-1 step decoding and the L corresponding to each first decoding path are obtained.
  • Select L 3 (less than L 2 ) or L 4 (less than L 2 ) third decoding paths and determine at least one reserved path among the plurality of third decoding paths.
  • L 1 ⁇ L 2 is less than or equal to the first preset threshold, it means that L 1 ⁇ L 2 is small.
  • at least one reservation is directly selected from the L 1 ⁇ L 2 second decoding paths. path.
  • FIG. 8A is a first step decoding schematic diagram of SCL parallel decoding provided by the present application.
  • FIG. 8B is a schematic diagram of the second step of SCL parallel decoding provided by the present application.
  • FIG. 8C is a schematic diagram of the third step of SCL parallel decoding provided by the present application.
  • FIG. 8D is a schematic diagram of the fourth step of SCL parallel decoding provided by the present application.
  • the receiving end receives 16 LLRs, which are respectively recorded as LLR0, LLR1, ..., LLR15, and the corresponding number of bits to be decoded is 16, which are respectively recorded as u0, u1, ... , U15.
  • the 16 bits to be decoded are divided into 4 groups, and each group of to-be-decoded bits includes 4 bits to be decoded.
  • the Polar code butterfly decoding network includes 5 columns of LLRs (or 5 levels of LLRs). From left to right, the first column of LLRs is the first level LLR, and the second column of LLRs is the second level. LLR, and so on, the fifth column LLR is the fifth level LLR.
  • the first decoding step referring to FIG. 8A, first calculate the third-level LLR of the first set of bits to be decoded (u0-u3) according to LLR0, LLR1, ..., LLR15. Then, the ML algorithm or the simplified SC algorithm is used to calculate the LLRs of u0-u3 in parallel, and the path metrics of each possible decoding path of the first set of bits to be decoded are calculated in parallel according to the LLRs of u0-u3.
  • first set of coded information bits comprises four bits
  • the first set of all possible coding bit number of paths to be coded is 2 4, respectively: 000,0001,0010,0011,0100,0101, 0110, 0111, 1000, 1001, 1010, 1011, 1100, 1101, 1110, and 1111.
  • the number of path reservations is 8
  • 8 first decoding paths are selected among the 16 paths, and the 8 first decoding paths are decoded in the first step Keep decoding path.
  • the third-level LLR of the second set of bits to be decoded (u4-u7) is first calculated according to LLR0, LLR1, ..., LLR15.
  • the second set of to-be-decoded bits includes 4 bits of information
  • 16 second decoding paths can be expanded.
  • ML algorithm or simplified SC algorithm can calculate the LLR of u4-u7 in parallel, and calculate the path metric values of 16 second decoding paths corresponding to each first decoding path in parallel according to the LLR of u4-u7, that is, parallel
  • the third and fourth decoding steps are performed. After the fourth step of decoding, eight reserved decoding paths can be obtained, and one decoding path is selected as the decoding result among the eight fourth decoding paths.
  • FIG. 9 is a schematic structural diagram of an SCL parallel decoding device provided by the present application.
  • the SCL parallel decoding device may be set in a receiving device, and the receiving device may be a terminal device, a network device, or the like.
  • the SCL parallel decoding apparatus 10 may include an obtaining module 11, a first determining module 12, and a second determining module 13, where:
  • the obtaining module 11 is configured to obtain L 1 first decoding paths of the i-1th group of bits to be decoded, where i is an integer, and the received data corresponds to P groups of to-be-decoded bits, where P is An integer greater than 1, 1 ⁇ i ⁇ P, and L 1 is a positive integer;
  • the first determining module 12 is configured to determine L 3 third decoding paths for each first decoding path.
  • the number of information bits in the i-th group of to-be-decoded bits is n, where n is greater than Or a positive integer equal to 1, the L 3 is a positive integer, and L 3 < 2 n ;
  • the second determining module 13 is configured to determine at least one reserved decoding path of the i-th group of to-be-decoded bits in the L 1 ⁇ L 3 third decoding paths, where the at least one reserved decoding path includes the first Decoding results of i groups of bits to be decoded.
  • the obtaining module 11 may execute S401 in the embodiment in FIG. 4.
  • the first determining module 12 may execute S402 in the embodiment of FIG. 4.
  • the second determining module 13 may execute S403 in the embodiment in FIG. 4.
  • the first determining module 12 is specifically configured to:
  • the L 3 third decoding paths are respectively determined.
  • L 3 2 mk , where k is a positive integer, m is the number of bits to be decoded included in each group of bits to be decoded, and m is greater than An integer of 1 and 1 ⁇ k ⁇ m.
  • the L 3 is any one of 2, 4, 8, 16, 32, or 64.
  • FIG. 10 is a schematic structural diagram of another SCL parallel decoding device provided by the present application. Based on the embodiment shown in FIG. 9, and referring to FIG. 10, the SCL parallel decoding device 10 further includes a third determining module 14, where:
  • FIG. 11 is a schematic structural diagram of another SCL parallel decoding device provided by the present application.
  • the SCL parallel decoding device may be set in a receiving device, and the receiving device may be a terminal device, a network device, or the like.
  • the SCL parallel decoding device 20 may include an obtaining module 21, a first determining module 22, and a second determining module 23.
  • the obtaining module 21 is configured to obtain L 1 first decoding paths of the i-1th group of bits to be decoded, where i is an integer, and P is an integer greater than 1, and the received data corresponds to the P group Bits to be decoded, 1 ⁇ i ⁇ P, and L 1 is a positive integer;
  • the first determining module 22 is configured to determine L 3 third decoding paths for each first decoding path when the preset conditions are satisfied, where L 1 ⁇ L 3 is greater than or equal to the first preset path. Threshold, the number of information bits in the i-th group of bits to be decoded is n, the n is a positive integer greater than or equal to 1, the L 3 is a positive integer, and L 3 < 2 n ;
  • the second determining module 23 is configured to determine at least one reserved decoding path of the i-th group of to-be-decoded bits in the L 1 ⁇ L 3 third decoding paths, where the at least one reserved decoding path includes the first Decoding results of i groups of bits to be decoded.
  • the obtaining module 21 may execute S601 in the embodiment of FIG. 6 and S701 in the embodiment of FIG. 7.
  • the first determining module 22 may execute S602 in the embodiment of FIG. 6 and S702-S705 and S707 in the embodiment of FIG. 7.
  • the second determining module 23 may execute S603 in the embodiment of FIG. 6 and S706, S708, and S709 in the embodiment of FIG. 7.
  • the first determining module 22 is specifically configured to:
  • L 2 2 n ;
  • the L 3 third decoding paths are respectively determined.
  • the preset condition is:
  • L 1 ⁇ L 2 is greater than the first preset threshold.
  • the first preset threshold is any one of 2, 4, 8, 16, 32, 64, or 128.
  • L 3 2 mk , where k is a positive integer and m is each group to be translated The number of bits to be decoded included in the code bits, where m is an integer greater than 1, and 1 ⁇ k ⁇ m.
  • the L 3 is any one of 2, 4, 8, 16, 32, or 64.
  • FIG. 12 is a schematic structural diagram of still another SCL parallel decoding device provided by the present application. Based on the embodiment shown in FIG. 11, and referring to FIG. 12, the SCL parallel decoding device 20 further includes a third determining module 24, where:
  • FIG. 13 is a schematic diagram of a hardware structure of an SCL parallel decoding device provided by the present application.
  • the SCL parallel decoding device 30 includes: a memory 31 and a processor 32, where the memory 31 and the processor 32 communicate; for example, the memory 31 and the processor 32 communicate through a communication bus 33, and the memory 31 is used to store a computer program, and the processor 32 executes the computer program to implement the method shown in the foregoing embodiment.
  • the SCL parallel decoding device may further include a transmitter and / or a receiver.
  • the processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), and application-specific integrated circuits (ASICs). )Wait.
  • a general-purpose processor may be a microprocessor or the processor may be any conventional processor or the like. Combining the steps of the method disclosed in this application (S201-S203 in the embodiment of FIG. 2, S301-S303 in the embodiment of FIG. 3, S401-S403 in the embodiment of FIG. 4, S601-S603 in the embodiment of FIG. 6, S701-S709) in the embodiment of FIG. 7 may be directly implemented by a hardware processor, or may be performed by a combination of hardware and software modules in the processor.
  • the present application provides a computer-readable storage medium including instructions, and when the instructions are run on a computer, the computer is caused to execute the SCL parallel decoding method provided by any of the foregoing method embodiments.
  • This application provides a chip, which is used to support a receiving device (such as a terminal device, a network device, etc.) to implement the functions shown in the embodiments of this application (for example, acquiring a first decoding path, determining a second decoding path, and determining The third decoding path, determining the reserved decoding path, etc.), the chip is specifically used for a chip system, and the chip system may be composed of a chip, and may also include a chip and other discrete devices.
  • the chip implementing the above method is a chip in a receiving device, the chip includes a processing unit. Further, the chip may further include a communication unit.
  • the processing unit may be, for example, a processor.
  • the communication unit may be It can be an input / output interface, a pin, or a circuit.
  • the processing unit performs all or part of the actions performed by various processing modules (such as the acquisition module, the first determination module, the second determination module, and the third determination module) in the embodiments of the present application, and the communication unit can execute Corresponding receiving or transmitting actions, for example, before the acquisition module obtains L 1 first decoding paths of the i-1th group of bits to be decoded, receive the bits to be decoded, and the like.
  • the processing module of the receiving device in this application may be a processing unit of a chip, and the receiving module or the sending module of the control device is a communication unit of the chip.
  • All or part of the steps for implementing the foregoing method embodiments may be completed by a program instructing related hardware.
  • the aforementioned program can be stored in a readable memory.
  • the steps including the foregoing method embodiments are executed; and the foregoing memory (storage medium) includes: read-only memory (English: read-only memory (abbreviation: ROM)), RAM, flash memory, hard disk, Solid state hard disk, magnetic tape (English: magnetic tape), floppy disk (English: floppy disk), optical disk (English: optical disc) and any combination thereof.
  • Embodiments of the present application are described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or block in the flowcharts and / or block diagrams, and combinations of processes and / or blocks in the flowcharts and / or block diagrams can be implemented by computer program instructions.
  • These computer program instructions may be provided to a processing unit of a general-purpose computer, special purpose computer, embedded processor, or other programmable data processing device to produce a machine, so that the instructions generated by the processing unit of the computer or other programmable data processing device are used to generate instructions Means for implementing the functions specified in one or more flowcharts and / or one or more blocks of the block diagrams.
  • These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to work in a particular manner such that the instructions stored in the computer-readable memory produce a manufactured article including an instruction device, the instructions
  • the device implements the functions specified in one or more flowcharts and / or one or more blocks of the block diagram.
  • These computer program instructions can also be loaded on a computer or other programmable data processing device, so that a series of steps can be performed on the computer or other programmable device to produce a computer-implemented process, which can be executed on the computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more flowcharts and / or one or more blocks of the block diagrams.
  • the term “including” and variations thereof may refer to non-limiting inclusion; the term “or” and variations thereof may mean “and / or”.
  • the terms “first”, “second”, and the like in this application are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.
  • “multiple” means two or more.
  • "And / or” describes the association relationship of the associated objects, and indicates that there can be three kinds of relationships. For example, A and / or B can mean that there are three cases in which A exists alone, A and B exist, and B exists alone.
  • the character “/” generally indicates that the related objects are an "or” relationship.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Error Detection And Correction (AREA)

Abstract

一种SCL并行译码方法、装置及设备,该方法包括:接收到的数据对应P组待译码比特,获取第i-1组待译码比特的L 1个第一译码路径,i为整数,P为大于1的整数,1<i≤P,L 1为正整数(S401);对每一个第一译码路径分别确定L 3个第三译码路径,第i组待译码比特中信息比特的个数为n,n为大于或等于1的正整数,L 3为正整数(S402),L 3<2 n;在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,至少一个保留译码路径包括第i组待译码比特的译码结果(S403)。所述方法提高了SCL并行译码的效率。

Description

SCL并行译码方法、装置及设备 技术领域
本申请涉及通信技术领域,尤其涉及一种SCL并行译码方法、装置及设备。
背景技术
在通信技术领域,通信设备(例如终端设备、基站等)可以通过极化码(Polar码)的方式进行信道编码和译码。
在现有技术中,在通过极化码进行译码时,采用串行抵消列表(Successive Cancellation List,SCL)算法通过并行方法进行译码的过程通常如下:将待译码比特划分成多组比特,并依次对每组比特进行译码。每次对其中一组比特译码都会扩展出多个译码路径,并从多个译码路径中保留一定数量的路径用于下一组译码,最终可以得到多条译码结果路径,从中选择译码正确率最大的一个译码路径上的译码结果作为译码输出。
然而,上述方法,译码速度慢,复杂度较高。
发明内容
本申请提供一种SCL并行译码方法、装置及设备,提高了SCL并行译码效率。
第一方面,本申请提供一种SCL并行译码方法,接收设备接收到的数据对应P(P为大于1的整数)组待译码比特之后,针对该P组待译码比特中的任意第i(i为整数,1<i≤P)组待译码比特,可以通过如下可行的实现方式进行译码:
获取第i-1组待译码比特的L 1个第一译码路径,对每一个第一译码路径分别确定L 3个第三译码路径,并在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,至少一个保留译码路径包括第i组待译码比特的译码结果。其中,第i组待译码比特中信息比特的个数为n(n为正整数),L 3<2 n
在上述过程中,在确定第i组待译码比特的至少一个保留译码路径过程中,需要对L 1×L 3个第三个译码路径进行排序,并在排序后的L 1×L 3个第三个译码路径中选择至少一个保留译码路径。由于L 3<2 n,因此,在确定第i组待译码比特的至少一个保留译码路径过程,可以降低排序复杂度,进而提高了SCL并行译码方法的效率。
在一种可能的实施方式中,可以通过如下可行的实现方式对每一个第一译码路径分别确定L 3个第三译码路径:对每一个第一译码路径分别确定L 2个第二译码路径,在每一个第一译码路径对应的L 2个第二译码路径中,分别确定L 3个第三译码路径,其中,L 2=2 n
在另一种可能的实施方式中,L 3=2 m-k,其中,k为正整数,m为每组待译码比特中包括的待译码比特个数,m为大于1的整数,1≤k<m。
可选的,k可以为预设值。
可选的,m还可以称为SCL并行译码的并行度。
在上述过程中,当k为预设值时,L 3与SCL并行译码的并行度m相关,随着SCL并 行译码的并行度m的不同,L 3也可以不同,进而提高了确定L 3的灵活性。
在另一种可能的实施方式中,L 3为2、4、8、16、32或64中的任意一个。
在另一种可能的实施方式中,当i=P时,方法还包括:在至少一个保留译码路径中确定正确率最大的一个译码路径;根据一个译码路径,确定P组待译码比特的译码结果。
第二方面,本申请提供一种SCL并行译码方法,接收设备接收到的数据对应P(P为大于1的整数)组待译码比特,针对该P组待译码比特中的任意第i(i为整数,1<i≤P)组待译码比特,可以通过如下可行的实现方式进行译码:
获取第i-1组待译码比特的L 1个第一译码路径,在预设条件成立时,对每一个第一译码路径分别确定L 3个第三译码路径,在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,至少一个保留译码路径包括第i组待译码比特的译码结果。其中,L 1×L 3大于或等于第一预设阈值,第i组待译码比特中信息比特的个数为n(n为正整数),L 3<2 n
在上述过程中,在确定第i组待译码比特的至少一个保留译码路径过程中,需要对L 1×L 3个第三个译码路径进行排序,并在排序后的L 1×L 3个第三个译码路径中选择至少一个保留译码路径。由于L 3<2 n,因此,在确定第i组待译码比特的至少一个保留译码路径过程,可以降低排序复杂度,进而提高了SCL并行译码方法的效率。
在一种可能的实施方式中,可以通过如下可行的实现方式对每一个第一译码路径分别确定L 3个第三译码路径:对每一个第一路径分别确定L 2个第二译码路径,在每一个第一译码路径对应的L 2个第二译码路径中,分别确定L 3个第三译码路径,其中,L 2=2 n
在另一种可能的实施方式中,预设条件为:L 1×L 2大于第一预设阈值。
在L 1×L 2大于第一预设阈值时,对每一个第一译码路径分别确定L 3个第三译码路径,在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,这样,不但可以降低排序复杂度,还可以对译码性能有较小的损失。
在另一种可能的实施方式中,第一预设阈值为2、4、8、16、32、64或128中的任意一个。
在另一种可能的实施方式中,若L 1×2 m-k大于或等于第一预设阈值,L 3=2 m-k,其中,k为正整数,m为每组待译码比特中包括的待译码比特个数,m为大于1的整数,1≤k<m。
可选的,k可以为预设值。
可选的,m还可以称为SCL并行译码的并行度。
在上述过程中,当k为预设值时,L 3与SCL并行译码的并行度m相关,随着SCL并行译码的并行度m的不同,L 3也可以不同,进而提高了确定L 3的灵活性。
在另一种可能的实施方式中,L 3为2、4、8、16、32或64中的任意一个。
在另一种可能的实施方式中,当i=P时,方法还包括:在至少一个保留译码路径中确定正确率最大的一个译码路径;根据一个译码路径,确定P组待译码比特的译码结果。
第三方面,本申请提供一种SCL并行译码装置,接收到的数据对应P组待译码比特,所述装置包括获取模块、第一确定模块和第二确定模块,其中,
所述获取模块用于,获取第i-1组待译码比特的L 1个第一译码路径,所述i为整数,所述P为大于1的整数,1<i≤P,所述L 1为正整数;
所述第一确定模块用于,对每一个第一译码路径分别确定L 3个第三译码路径,第i组待译码比特中信息比特的个数为n,所述n为大于或等于1的正整数,所述L 3为正整数,L 3<2 n
所述第二确定模块用于,在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,所述至少一个保留译码路径包括第i组待译码比特的译码结果。
在一种可能的实施方式中,所述第一确定模块具体用于:
对每一个第一译码路径分别确定L 2个第二译码路径,L 2=2 n
在每一个第一译码路径对应的L 2个第二译码路径中,分别确定所述L 3个第三译码路径。
在另一种可能的实施方式中,L 3=2 m-k,其中,所述k为正整数,所述m为每组待译码比特中包括的待译码比特个数,所述m为大于1的整数,1≤k<m。
在另一种可能的实施方式中,所述L 3为2、4、8、16、32或64中的任意一个。
在另一种可能的实施方式中,所述装置还包括第三确定模块,其中,
所述第三确定模块用于,当i=P时,在所述至少一个保留译码路径中确定正确率最大的一个译码路径,并根据所述一个译码路径,确定所述P组待译码比特的译码结果。
第四方面,本申请提供一种SCL并行译码装置,接收到的数据对应P组待译码比特,所述装置包括获取模块、第一确定模块和第二确定模块,其中,
所述获取模块用于,获取第i-1组待译码比特的L 1个第一译码路径,所述i为整数,所述P为大于1的整数,1<i≤P,所述L 1为正整数;
所述第一确定模块用于,在预设条件成立时,对每一个第一译码路径分别确定L 3个第三译码路径,其中,L 1×L 3大于或等于第一预设阈值,第i组待译码比特中信息比特的个数为n,所述n为大于或等于1的正整数,所述L 3为正整数,L 3<2 n
所述第二确定模块用于,在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,所述至少一个保留译码路径包括第i组待译码比特的译码结果。
在一种可能的实施方式中,所述第一确定模块具体用于:
对每一个第一路径分别确定L 2个第二译码路径,L 2=2 n
在每一个第一译码路径对应的L 2个第二译码路径中,分别确定所述L 3个第三译码路径。
在另一种可能的实施方式中,所述预设条件为:
L 1×L 2大于所述第一预设阈值。
19、根据权利要求16-18任一项所述的装置,其特征在于,所述第一预设阈值为2、4、8、16、32、64或128中的任意一个。
在另一种可能的实施方式中,若L 1×2 m-k大于或等于所述第一预设阈值,L 3=2 m-k,其中,所述k为正整数,所述m为每组待译码比特中包括的待译码比特个数,所述m为大于1的整数,1≤k<m。
在另一种可能的实施方式中,所述L 3为2、4、8、16、32或64中的任意一个。
在另一种可能的实施方式中,所述装置还包括第三确定模块,其中,
所述第三确定模块用于,当i=P时,在所述至少一个保留译码路径中确定正确率最大的一个译码路径,并根据所述一个译码路径,确定所述P组待译码比特的译码结果。
第五方面,本申请提供一种SCL并行译码装置,包括存储器和处理器,所述处理器执行所述存储器中的程序指令,用于实现上述第一方面任一项所述的SCL并行译码方法。
第六方面,本申请提供一种SCL并行译码装置,包括存储器和处理器,所述处理器执行所述存储器中的程序指令,用于实现上述第二方面任一项所述的SCL并行译码方法。
第七方面,本申请提供一种存储介质,所述存储介质用于存储计算机程序,所述计算机程序用于实现上述第一方面任一项所述的SCL并行译码方法。
第七方面,本申请提供一种存储介质,其特征在于,所述存储介质用于存储计算机程序,所述计算机程序用于实现上述第二方面任一项所述的SCL并行译码方法。
本申请提供的SCL并行译码方法、装置及设备,在接收到的数据对应P(P为大于1的整数)组待译码比特之后,针对该P组待译码比特中的任意第i(i为整数,1<i≤P)组待译码比特,先获取第i-1组待译码比特的L 1个第一译码路径,对每一个第一译码路径分别确定L 3个第三译码路径,并在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,至少一个保留译码路径包括第i组待译码比特的译码结果。其中,第i组待译码比特中信息比特的个数为n(n为正整数),L 3<2 n。在上述过程中,在确定第i组待译码比特的至少一个保留译码路径过程中,需要对L 1×L 3个第三个译码路径进行排序,并在排序后的L 1×L 3个第三个译码路径中选择至少一个保留译码路径。由于L 3<2 n,因此,在确定第i组待译码比特的至少一个保留译码路径过程,可以降低排序复杂度,进而提高了SCL并行译码方法的效率。
附图说明
图1为本申请提供的通信系统的架构图;
图2为本申请提供的一种SCL并行译码方法的流程示意图;
图2A为本申请提供的译码路径示意图;
图3为本申请提供的另一种SCL并行译码方法的流程示意图;
图4为本申请提供的又一种SCL并行译码方法的流程示意图;
图5为本申请提供的SCL并行译码过程示意图;
图6为本申请提供的再一种SCL并行译码方法的流程示意图;
图7为本申请提供的另一种SCL并行译码方法的流程示意图;
图8A为本申请提供的SCL并行译码的第一步译码示意图;
图8B为本申请提供的SCL并行译码的第二步译码示意图;
图8C为本申请提供的SCL并行译码的第三步译码示意图;
图8D为本申请提供的SCL并行译码的第四步译码示意图;
图9为本申请提供的一种SCL并行译码装置的结构示意图;
图10为本申请提供的又一种SCL并行译码装置的结构示意图;
图11为本申请提供的另一种SCL并行译码装置的结构示意图;
图12为本申请提供的又一种SCL并行译码装置的结构示意图;
图13为本申请提供的SCL并行译码装置的硬件结构示意图。
具体实施方式
本申请实施例可以应用于各种采用Polar编码的领域,例如:数据存储领域、光网络 通信领域,无线通信领域等等。其中,本申请实施例提及的无线通信系统包括但不限于:窄带物联网系统(Narrow Band-Internet of Things,NB-IoT)、Wimax、长期演进系统(Long Term Evolution,LTE)以及下一代5G移动通信系统新空口(new radio,NR)的三大应用场景增强型移动宽带(enhanced Mobile Broad Band,eMBB)、超高可靠与低延迟的通信(ultra Reliable Low Latency Communication,URLLC)以及大规模机器通信(massive Machine-Type Communications,mMTC)。当然,采用Polar编码的领域还可以为其它,本申请对此不作具体限定。
本申请涉及的通信装置主要包括网络设备或者终端设备。本申请中的发送设备可以为网络设备,则接收设备为终端设备。本申请中的发送设备为终端设备,则接收设备为网络设备。
在本申请实施例中,终端设备(terminal device)包括但不限于移动台(Mobile Station,MS)、移动终端(Mobile Terminal,MT)、移动电话(Mobile Telephone,MT)、手机(handset)及便携设备(portable equipment)等,该终端设备可以经无线接入网(Radio Access Network,RAN)与一个或多个核心网进行通信。例如,终端设备可以是移动电话(或称为“蜂窝”电话)、具有无线通信功能的计算机等,终端设备还可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置或设备。
本申请结合网络设备描述了各个实施例。网络设备可以是LTE系统中的演进型基站(Evolutional Node B,eNB或eNodeB),或者,网络设备可以是5G通信系统中的gNB或者传输和接收点(transmission reception point,TRP)、微基站等,或者网络设备可以为中继站、接入点、车载设备、可穿戴设备以及未来演进的公共陆地移动网络(Public Land Mobile Network,PLMN)中的网络设备,或者在其他多种技术融合的网络中,或者在其他各种演进网络中的基站等。
图1为本申请提供的通信系统的架构图。请参见图1,包括发送设备101和接收设备102。
可选的,当发送设备101为终端设备时,则接收设备102为网络设备。当发送设备101为网络设备时,则接收设备为终端设备。
请参见图1,发送设备101包括编码器,从而发送设备101可以进行polar编码并输出编码后序列。编码后序列经过速率匹配、交织以及调制后在信道上传输至接收设备102。接收设备102包括译码器,接收设备102可以接收发送设备101发送的信号,对接收到的信号进行译码。
需要说明的是,图1只是以示例的形式示意一种通信系统的架构图,并非对通信系统的架构图的限定。
在通信过程中,发送端对信息比特和冻结比特进行编码,得到待发送比特序列,并发送待发送比特序列,可选的,冻结比特为填充比特,冻结比特通常可以为0。待发送比特序列经过速率匹配、交织以及调制后经过信道传输至接收端。接收端对接收到的信号进行解调等处理,得到一组对数似然比(Likelihood Rate,LLR),该组LLR中包括的LLR的个数与待发送比特序列中包括的比特个数相同。接收端根据接收到的一组LLR进行Polar码译码。其中,不管发送端发比特1还是比特0,接收端都可能误判。对于信号r,在接收端正确判为0的概率p(r|b=0)与正确判为1的概率p(r|b=1)]的比值就是似然比。为了方便计算 处理,对似然比取自然对数,则可以得到对数似然比,也即LLR=ln[p(r|b=0)/p(r|b=1)]。LLR可以是浮点数。
下面,通过具体实施例对本申请所示的SCL并行译码方法进行详细说明。需要说明的是,下面几个实施例可以相互结合,对于相同或相似的内容,在不同的实施例中不再进行重复说明。
图2为本申请提供的一种SCL并行译码方法的流程示意图。请参见图2,该方法可以包括:
S201、获取到2 a个LLR。
其中,a为大于或等于1的正整数。
可选的,在接收设备接收到信息之后,对信息进行解调得到2 a个LLR。
可选的,接收设备获取到的LLR的个数,与发送设备发送的比特的个数相同。
例如,假设发送设备发送的待发送比特序列中包括2 a个比特,则接收设备获取到2 a个LLR。
可选的,接收设备获取到的LLR的个数,与接收设备待译码比特的个数相同。
例如,假设接收设备获取到2 a个LLR,则接收设备需要译码的比特个数为2 a个。
在接收设备中,译码器将2 a个LLR作为输入进行译码。
S202、将2 a个待译码比特分为P组待译码比特。
其中,每组待译码比特包括m个比特,2 a=P×m,P为大于1的正整数,m为大于或等于1的正整数。
可选的,每组待译码比特中包括待译码信息比特和/或待译码冻结比特,每组待译码比特中包括的待译码信息比特的个数可以相同,也可以不同。
可选的,还可以将每组待译码比特中包括的比特个数m称为SCL并行译码的并行度。
例如,假设待译码比特的个数为16(即2 4)个,则可以将待译码比特分为P=4组,每组待译码比特中包括4个待译码比特。
S203、根据2 a个LLR,以P组待译码比特为译码对象进行P步译码,直至获取得到译码结果。
可选的,针对该P步译码中的第i步译码,可以得到前i组待译码比特对应的译码结果(译码路径),其中i为大于或等于1,且小于或者等于P的整数。可以通过如下步骤A-步骤C实现:
步骤A、根据2 a个LLR计算第i组待译码比特中每个待译码信息比特的m+1级LLR。
其中,在Polar码蝶型译码网络中包括a+1列LLR,m+1级LLR为Polar码蝶型译码网络中从左向右的第m+1列LLR。
例如,请参见图8A-图8B,待译码比特的个数为2 4,则Polar码蝶型译码网络中包括4+1=5列LLR。m+1级LLR是指Polar码蝶型译码网络中从左向右的第m+1列LLR。
步骤B、根据第i组待译码比特中每个信息比特的m+1级LLR,并行计算第i步译码的所有可能译码路径的路径度量值。
可选的,可以采用最大似然(Maximum Likelihood,ML)算法或者简化(simplify)串行抵消(Successive Cancellation,SC)算法,先并行计算第i组待译码比特中每个信息比特的LLR,再根据第i组待译码比特中每个信息比特的LLR并行计算第i步译码的所有可能译 码路径的路径度量值。
可选的,一个译码路径的路径度量值表示该译码路径为真实的译码路径的概率。
可选的,一个译码路径的路径度量值越小,则该译码路径为真实的译码路径的概率越大。
可选的,可以通过如下公式一计算译码路径的路径度量值:
Figure PCTCN2018103293-appb-000001
其中,l表示译码路径的索引,m为当前路径所包含的比特个数,
Figure PCTCN2018103293-appb-000002
为对译码路径l中第j个比特译码的译码结果(0或1),α jl为译码路径l中第j个比特的LLR。
其中,i大于1时,第i步译码的所有可能译码路径可以根据第i-1步译码得到的译码路径和第i组待译码比特中包括的信息比特个数n确定得到。
下面,结合图2A,对第i步译码的所有可能译码路径进行详细说明。
图2A为本申请提供的译码路径示意图。请参见图2A,假设在第二步译码得到的译码路径为:00和11。
在第三步译码时,假设第三组待译码比特中包括2个信息比特,则第三步译码的所有可能译码路径包括:路径00扩展得到的2 2条译码路径(0000、0001、0010和0011),以及路径11扩展得到的2 2条译码路径(1100、1101、1110和1111),即,第三步译码的所有可能译码路径包括0000、0001、0010、0011、1100、1101、1110和1111。
步骤C、根据所有可能译码路径的路径度量值,选择至少一个保留译码路径。
可选的,保留译码路径的数量小于或等于X。
其中,X为SCL并行译码方法对应的保留路径数。
可选的,保留路径数X可以为4、8、16等,可以根据实际需要设置该保留路径数X。
需要说明的是,若所有可能译码路径的数量大于或等于X,则保留译码路径的数量等于X。若所有可能译码路径的数量小于X,则保留译码路径的数量小于X,且保留译码路径的数量等于所有可能译码路径的数量。
可选的,i大于1时,在第i步译码时,需要依据第i-1步译码的译码结果。
例如,在第一步译码之后可以得到第一步译码的多条保留译码路径。在第一步译码的多条保留译码路径的基础上进行第二步译码,得到第二步译码的多条保留译码路径。在第二步译码的多条保留译码路径的基础上进行第三步译码,得到第三步译码的多条保留译码路径。依次类推,直至完成P步译码。
可选的,在第i步译码完成时,得到的第i步译码的保留译码路径为第1至i组待译码比特对应的译码路径。译码路径可以是第1至i组待译码比特的可能取值。
例如,假设接收端接收到16个LLR,相应的待译码比特的个数为16个,分别记为u0、u1、……、u15,假设该16个待译码比特均为待译码信息比特。假设将16个待译码比特分为4组,每组待译码比特包括4个待译码比特,该4组待译码比特中包括的待译码比特如表1所示:
表1
第一组待译码比特 u0、u1、u2、u3
第二组待译码比特 U4、u5、u6、u7
第三组待译码比特 U8、u9、u10、u11
第四组待译码比特 U12、u13、u14、u15
在进行完第一步译码之后,得到的第一步译码的保留译码路径为第一组待译码比特u0~u3对应的译码路径,第一步译码的多个译码路径的长度为4,例如,第一步译码的多条保留译码路径可以为:0000、0001、0010、0011等。
在进行完第二步译码之后,得到的第二步译码的保留译码路径为第一至二组待译码比特u0~u7对应的译码路径,第二步译码的多个译码路径的长度为8,例如,第二步译码的多条保留译码路径可以为:00000000、00000001、00000010等。
在进行完第三步译码之后,得到的第三步译码的保留译码路径为第一至三组待译码比特u0~u11对应的译码路径,第三步译码的多个译码路径的长度为12,例如,第三步译码的多条保留译码路径可以为:000000000000、000000000001、000000000010等。
在进行完第四步译码之后,得到的第四步译码的保留译码路径为第一至四组待译码比特u0~u15对应的译码路径,第四步译码的多个译码路径的长度为16,例如,第四步译码的多条保留译码路径可以为:0000000000000000、0000000000000001等。
从而可以在第四步译码得到的多条保留译码路径中选择一条译码路径作为译码结果,例如以上述为例,选择的译码路径为0000000000000001,也就是说u0~u15这16个比特的译码结果为0000000000000001。
下面,分别对第一步和第i(2≤i<P)步的译码过程进行详细说明。具体的,请参见图3-图4所示的实施例。
图3为本申请提供的另一种SCL并行译码方法的流程示意图。其中,图3实施例为SCL并行译码中的第一步译码过程。请参见图3,该方法可以包括:
S301、根据2 a个LLR,计算第一组待译码比特中每个待译码信息比特的m+1级LLR。
S302、根据第一组待译码比特中每个待译码信息比特的m+1级LLR,并行计算第一步译码的所有可能译码路径的路径度量值。
可选的,可以先采用ML算法或者简化SC算法,并行计算第一组待译码比特中每个信息比特的LLR,然后根据第一组待译码比特中每个信息比特的LLR,并行计算第一步译码的所有可能译码路径的路径度量值。
例如,假设第一组待译码比特中包括两个信息比特,则第一步译码的所有可能译码路径包括2 2个,分别为:00、01、10和11。
例如,假设第一组待译码比特中包括四个信息比特,则第一步译码的所有可能译码路径包括2 4个:0000、0001、0010、0011、0100、0101、0110、0111、1000、1001、1010、1011、1100、1101、1110和1111。
S303、根据第一步译码中所有可能译码路径的路径度量值,在第一步译码的所有可能译码路径中确定第一组待译码比特的至少一个保留译码路径。
可选的,第一组待译码比特的保留译码路径,也可以称为第一组待译码比特的第一译码路径,还可以称为第一步译码的保留译码路径,或者第一步译码的第一译码路径。
可选的,第一步译码的保留译码路径的数量小于或等于X,其中,X为SCL并行译码方法对应的保留路径数。
可选的,保留路径数X可以为4、8、16等,可以根据实际需要设置该保留路径数X。
需要说明的是,若第一步译码的所有可能译码路径的数量大于或等于X,则可以在第一步译码的所有可能译码路径中选择X个保留译码路径,此时,第一步译码的保留译码路径的数量等于X。若第一步译码的所有可能译码路径的数量小于X,将第一步译码的所有可能译码路径确定为第一步译码的保留译码路径,此时,第一步译码中得到的保留译码路径的数量小于X。
可选的,当一个译码路径的路径度量值越小,该译码路径为真实的译码路径的概率越大时,若第一步译码中所有可能译码路径的数量大于X时,则可以通过如下可行的实现方式选择X个保留译码路径:将第一步译码的所有可能译码路径中、路径度量值最小的X个路径度量值确定为X个保留译码路径。
图4为本申请提供的又一种SCL并行译码方法的流程示意图。其中,图4实施例为SCL并行译码中的任意第i步(1<i≤P)译码过程。请参见图4,该方法可以包括:
S401、获取第i-1组待译码比特的L 1个第一译码路径。
其中,接收到的数据对应P组待译码比特,则1<i≤P,且P为大于1的整数,i为整数。L 1为正整数。
可选的,L 1≤X。
例如,当X为8时,则L 1可能为2或4或8。
需要说明的是,第i-1组待译码比特的L 1个第一译码路径为,第i-1组待译码比特的保留译码路径。
需要说明的是,SCL并行译码方法中,需要逐步进行译码。即,先进行第一步译码得到第一步译码的第一译码路径(保留译码路径),然后根据第一步译码的第一译码路径进行第二步译码得到第二步译码的第一译码路径,再根据第二步译码的第一译码路径进行第三步译码得到第三步译码的第一译码路径,以此类推。因此,在进行第i步译码时,已经得到了第i-1步译码的L 1条第一译码路径。
可选的,在得到第i-1步译码的L 1条第一译码路径之后,可以缓存该L 1条第一译码路径,相应的,在第i步译码时,可以直接在缓存中获取该L 1条第一译码路径。
S402、对每一个第一译码路径分别确定L 3个第三译码路径。
其中,第i组待译码比特中信息比特的个数为n,所述L 3为正整数,L 3<2 n
可选的,可以通过如下步骤A-步骤B对每一个第一译码路径分别确定L 3个第三译码路径:
步骤A、对每一个第一译码路径分别确定L 2个第二译码路径,L 2=2 n
可选的,针对任意一个第一译码路径,可以根据该第一译码路径和第i组待译码比特中包括的信息比特个数n,确定该第一译码路径对应的L 2个第二译码路径。
例如,假设一个第一译码路径为0010,n为2,则可以确定该第一译码路径0010对应的L 2=2 2=4个第二译码路径包括:001000、001001、001010和001011。
步骤B、在每个第一译码路径对应的L 2个第二译码路径中,分别确定L 3个第三译码路径。
需要说明的是,在步骤B之前,可以先获取得到L 3,只有当L 2>L 3时,再执行S403。当L 2≤L 3时,无需执行步骤B,相应的,在S403中,直接在L 1×L 2个第二译码路径中确定至少一个保留译码路径即可。
可选的,可以通过至少如下两种可行的实现方式获取L 3
一种可行的实现方式:L 3可以为预设值。
在该种可行的实现方式中,L 3为预设值,可以预先存储该预设的L 3,相应的,当需要使用L 3时,直接获取L 3即可。
例如,L 3可以为2、4、8、16、32、64中的任意一个。
当然,在实际应用过程中,可以根据实际需要设置L 3的大小,本申请对此不作具体限定。
另一种可行的实现方式:根据SCL译码的并行度确定L 3
其中,SCL译码的并行度是指SCL并行译码中的一组待译码比特中包括的比特个数。
可选的,L 3=2 m-k,其中,m为SCL并行译码的并行度,k为正整数,m为正整数,1≤k<m。
需要说明的是,上述只是以示例的形式示意L 3的确定方法,并非对L 3的确定方法的限定,在实际应用过程中,可以根据实际需要确定L 3,本申请对此不作具体限定。
可选的,L 3个第三译码路径为L 2个第二译码路径中为真实的译码路径的概率最大的L 3个译码路径。
可选的,可以根据L 2个第二译码路径的路径度量值,对L 2个第二译码路径进行排序,并在排序后的L 2个第二译码路径中选择L 3个第三译码路径。
例如,当一个译码路径的路径度量值越小,该译码路径为真实的译码路径的概率越大时,则可以将L 2个第二译码路径中路径度量值最小的L 3个译码路径确定为L 3个第三译码路径。
由于可以在每个第一译码路径对应的L 2个第二译码路径中确定L 3个第三译码路径,因此,一共可以确定得到L 1×L 3个第三译码路径。
S403、在L 1×L 3个第三译码路径中确定第i组待译码比特的至少一个保留译码路径。
其中,至少一个保留译码路径包括第i组待译码比特的译码结果。
可选的,至少一个保留译码路径的数量小于或等于X。
其中,X为串行抵消列表SCL译码对应的保留译码路径数,X为正整数。
例如,X可以为4、8、6等。
当然,在实际应用过程中,可以根据实际需要设置该X。
可选的,可以根据L 1×L 3个第三译码路径的路径度量值,对L 1×L 3个第三译码路径进行排序,并在排序后的L 1×L 3个第三译码路径中选择至少一个保留译码路径。
例如,当一个译码路径的路径度量值越小,该译码路径为真实的译码路径的概率越大时,则可以将L 1×L 3个第三译码路径中路径度量值最小的X个译码路径确定为至少一个保留译码路径。
可选的,当L 1×L 3<X时,可以将该L 1×L 3个第三译码路径均确定为保留译码路径。
在上述S402中,需要执行L 1次对L 2个第二译码路径的排序,并选择L 3个第三译码路径,因此,当采用时间复杂度O(n 2)的排序方法进行排序时,S402中的排序复杂度为: L 1×L 2×L 3
在上述S403中,需要执行一次对L 1×L 3个第三译码路径的排序,并选择保留译码路径,其中,在多数译码步骤中,选择的保留译码路径通常为X个,因此,当采用时间复杂度O(n 2)的排序方法进行排序时,S404中的排序复杂度为L 1×L 3×X。
综上,本申请中第i(2≤i<P)步译码的排序复杂度为:L 1×L 2×L 3+L 1×L 3×X。
其中,现有技术的第i(2≤i<P)步译码的排序复杂度通常为:L 1×L 2×X。
现有技术中的排序复杂度通常大于本申请的排序复杂度,具体如下:
由于L 1通常等于X,L 2=2 n,L 3=2 m-k,m通常等于n,由此可知:
本申请的排序复杂度为:X×2 n×2 n-k+X×2 n-k×X
现有技术中的排序复杂度为:X×2 n×X
X×2 n×X-X×2 n×2 n-k-X×2 n-k×X=X×2 n-k×[X×(2 k-1)-2 n]
在实际应用过程中,通过合理设置k的大小,即可使得X×(2 k-1)>2 n,进而使得本申请的排序复杂度低于现有技术的排序复杂度。
例如,可以确定k=n-2,假设X=2 a,此时,只要a>2,即可使得2 a×(2 n-2-1)>2 n,进而使得本申请中的排序复杂度低于现有技术中的排序复杂度。
下面,结合图5,通过具体示例,对图4实施例所示的译码过程进行说明。
图5为本申请提供的SCL并行译码过程示意图。请参见图5,假设第i-1步得到8条译码路径,分别记为第i-1步中的路径1、路径2、……、路径8。假设第i组待译码比特中包括4个待译码比特,则在第i步译码中,针对第i-1步译码中的每一个译码路径,均可以扩展得到16条译码路径。假设L 3为4,则先在每个译码路径扩展得到的16条译码路径中选择4条译码路径,则可以得到4*8=32条译码路径,然后,对该32条译码路径进行排序,并在排序后的32条译码路径中选择得到第i步译码中的8条译码路径。在上述过程中,假设采用时间复杂度O(n 2)的排序方法进行排序,则排序复杂度为:16*4*8+32*8=768。
相比于现有技术,现有技术中,在第i步译码中,针对第i-1步译码中的每一个译码路径,均可以扩展得到16条译码路径,共可以扩展得到16*8=128条译码路径,然后,根据各译码路径的路径度量值对该128条译码路径进行排序,并在排序后的128条译码路径中选择得到第i步译码中的8条译码路径,其排序复杂度为128*8=1024。
由上可知,本申请相对于现有技术可以大幅降低排序复杂度,进而提高译码效率。
本申请提供的SCL并行译码方法,在SCL并行译码中任意的第i(i≥2)步译码中,先获取第i-1组待译码比特的L 1个第一译码路径,分别对每个第一译码路径进行扩展,得到每个第一译码路径对应的L 2个第二译码路径,当L 2>L 3时,分别在每个第一译码路径对应的L 2个第二译码路径中选择L 3个第三译码路径,得到L 1×L 3个第三译码路径,并在L 1×L 3个第三译码路径中选择个保留译码路径。在上述过程中,降低了排序复杂度,进而提高了SCL并行译码方法的效率。
图6为本申请提供的再一种SCL并行译码方法的流程示意图。其中,图6实施例为SCL并行译码中的任意第i步(1<i≤P)译码过程。请参见图6,该方法可以包括:
S601、获取第i-1组待译码比特的L 1个第一译码路径。
其中,接收到的数据对应P组待译码比特,P为大于1的整数,i为整数,1<i≤P,L 1为正整数。
需要说明的是,S601的执行过程可以参见S401,此处不再进行赘述。
S602、在预设条件成立时,对每一个第一译码路径分别确定L 3个第三译码路径。
其中,L 1×L 3大于或等于第一预设阈值,第i组待译码比特中信息比特的个数为n,L 3为正整数,L 3<2 n
可选的,预设条件为L 1×L 2大于第一预设阈值,L 2=2 n
可选的,可以先确定L 3,再对每一个第一译码路径分别确定L 3个第三译码路径。
可选的,可以通过至少如下两种可行的实现方式确定L 3
一种可行的实现方式:
预先设置预设参数(2 p),先判断L 1与该预设参数的乘积是否大于或等于第一预设阈值,若是,则将该预设参数确定为L 3。若否,则更新预设参数,直至L 1与更新后的预设参数的乘积大于或等于第一预设阈值时,将更新后的预设参数确定为L 3。例如,在更新预设参数时,可以逐步将p增加1。
另一种可行的实现方式:
确定L 3=2 n-k,合理设置k的大小,使得L 1×L 3大于或等于第一预设阈值。
可选的,可以通过如下步骤A-步骤B对每一个第一译码路径分别确定L 3个第三译码路径:
步骤A、对每一个第一路径分别确定L 2个第二译码路径,L 2=2 n
需要说明的是,针对任意一个第一译码路径,可以根据该第一译码路径和第i组待译码比特中包括的信息比特个数n,确定该第一译码路径对应的L 2个第二译码路径。
例如,假设一个第一译码路径为0010,n为2,则可以确定该第一译码路径0010对应的L 2=2 2=4个第二译码路径包括:001000、001001、001010和001011。
步骤B、在每个第一译码路径对应的L 2个第二译码路径中,分别确定L 3个第三译码路径。
可选的,L 3个第三译码路径为L 2个第二译码路径中为真实的译码路径的概率最大的L 3个译码路径。
可选的,可以根据L 2个第二译码路径的路径度量值,对L 2个第二译码路径进行排序,并在排序后的L 2个第二译码路径中选择L 3个第三译码路径。
例如,当一个译码路径的路径度量值越小,该译码路径为真实的译码路径的概率越大时,则可以将L 2个第二译码路径中路径度量值最小的L 3个译码路径确定为L 3个第三译码路径。
由于可以在每个第一译码路径对应的L 2个第二译码路径中确定L 3个第三译码路径,因此,一共可以确定得到L 1×L 3个第三译码路径。
S603、在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径。
其中,至少一个保留译码路径包括第i组待译码比特的译码结果。
需要说明的是,S603的执行过程可以参见S403的执行过程,此处不再进行赘述。
需要说明的是,图6实施例所示的排序复杂度与图4所示的排序复杂度相同,因此,本申请中的排序复杂度低于现有技术中的排序复杂度。
本申请提供的SCL并行译码方法,在SCL并行译码中任意的第i(i≥2)步译码中,先获取第i-1组待译码比特的L 1个第一译码路径,分别对每个第一译码路径进行扩展,得 到每个第一译码路径对应的L 2个第二译码路径,在L 1×L 2大于第一预设阈值时,对每一个第一译码路径分别确定L 3个第三译码路径,得到L 1×L 3个第三译码路径,并在L 1×L 3个第三译码路径中选择至少一个保留译码路径。在上述过程中,降低了排序复杂度,进而提高了SCL并行译码方法的效率。
下面,通过图7所示的实施例,对图6所示的实施例进行进一步详细说明。
图7为本申请提供的另一种SCL并行译码方法的流程示意图。其中,图7实施例为SCL并行译码中的任意第i步(1<i≤P)译码过程。请参见图7,该方法可以包括:
S701、获取第i-1组待译码比特的L 1个第一译码路径。
需要说明的是,S701的执行过程可以参见S401的执行过程,本申请此处不再进行赘述。
S702、根据第i组待译码比特中包括的信息比特个数n,确定每个第一译码路径对应的L 2个第二译码路径。
需要说明的是,S702的执行过程可以参见图6实施例中的步骤A的执行过程,本申请此处不再进行赘述。
S703、当L 2>L 3时,判断L 1×L 2是否大于第一预设阈值。
若是,则执行S704-S708。
若否,则执行S709。
可选的,第一预设阈值是指一步译码中预留译码路径集合中最少包括的译码路径数量。其中,预留译码路径集合是指用于在其中选择选择至少一个预留译码路径的译码路径集合。
可选的,第一预设阈值可以为2、4、8、16、32、64、128中的任意一个。
当然,在实际应用过程中,可以根据实际需要设置该第一预设阈值,本申请对此不作具体限定。
S704、判断L 1×L 3是否大于第一预设阈值。
若是,则执行S705-S706。
若否,则执行S707-S708。
S705、分别在每个第一译码路径对应的L 2个第二译码路径中确定L 3个第三译码路径。
需要说明的是,S705的执行过程可以参见图6实施例中的步骤B的执行过程,本申请此处不再进行赘述。
S706、在L 1×L 3个第三译码路径中确定至少一个保留译码路径。
需要说明的是,S706的执行过程可以参见S403的执行过程,本申请此处不再进行赘述。
S707、分别在每个第一译码路径对应的L 2个第二译码路径中确定L 4个第三译码路径。
其中,L 3<L 4<L 2
可选的,在S707中,可以先确定L 4
可选的,假设L 3=2 q,由于L 2=2 n,因此,可以确定L 4=2 t,其中,q<t<n。
需要说明的是,在L 2个第二译码路径中确定L 4个第三译码路径的执行过程,可以参见图6实施例的步骤B中,在L 2个第二译码路径中确定L 3个第三译码路径的过程,此处不再进行赘述。
S708、在L 1×L 4个第三译码路径中确定至少一个保留译码路径。
需要说明的是,S708的执行过程可以参见S403的执行过程,本申请此处不再进行赘述。
S709、在L 1×L 2个第二译码路径中确定至少一个保留译码路径。
需要说明的是,S709的执行过程可以参见S403的执行过程,本申请此处不再进行赘述。
在图7所示的实施例中,在第i步译码中,在确定得到第i-1步译码得到的L 1条第一译码路径、以及每个第一译码路径对应的L 2个第二译码路径之后,先判断L 1×L 2是否大于第一预设阈值。在L 1×L 2大于第一预设阈值时,说明L 1×L 2较大,为了降低排序复杂度,则分别在每个第一译码路径对应的L 2个第二译码路径中选择L 3(小于L 2)条或者L 4(小于L 2)条第三译码路径,并在多条第三译码路径中确定至少一条保留路径。在L 1×L 2小于或等于第一预设阈值时,说明L 1×L 2较小,为了保证译码性能,则直接在L 1×L 2条第二译码路径中选择至少一条保留路径。
下面,结合图8A-图8D,对SCL并行译码过程进行详细说明。
图8A为本申请提供的SCL并行译码的第一步译码示意图。图8B为本申请提供的SCL并行译码的第二步译码示意图。图8C为本申请提供的SCL并行译码的第三步译码示意图。图8D为本申请提供的SCL并行译码的第四步译码示意图。
请参见图8A-图8D,接收端接收到16个LLR,分别记为LLR0、LLR1、……、LLR15,相应的待译码比特的个数为16个,分别记为u0、u1、……、u15。将16个待译码比特分为4组,每组待译码比特包括4个待译码比特,该4组待译码比特中包括的待译码比特如表2所示:
表2
第一组待译码比特 u0、u1、u2、u3
第二组待译码比特 U4、u5、u6、u7
第三组待译码比特 U8、u9、u10、u11
第四组待译码比特 U12、u13、u14、u15
请参见图8A-图8D,在Polar码蝶型译码网络中包括5列LLR(或5级LLR),从左向右第一列LLR为第一级LLR,第二列LLR为第二级LLR,以此类推,第五列LLR为第五级LLR。
在第一步译码中,请参见图8A,先根据LLR0、LLR1、……、LLR15,计算出第一组待译码比特(u0-u3)的第三级LLR。再采用ML算法或简化SC算法等,并行计算u0-u3的LLR,并根据u0-u3的LLR并行计算第一组待译码比特的每条可能译码路径的路径度量值。假设第一组待译码比特中包括4个信息比特,则第一组待译码比特的所有可能译码路径数为2 4条,分别为:000、0001、0010、0011、0100、0101、0110、0111、1000、1001、1010、1011、1100、1101、1110和1111。假设路径保留数为8,则根据该16条译码路径的路径度量值,在该16条路径中选择8条第一译码路径,该8条第一译码路径为第一步译码的保留译码路径。
在第二步译码中,请参见图8B,先根据LLR0、LLR1、……、LLR15,计算出第二组待译码比特(u4-u7)的第三级LLR。假设第二组待译码比特中包括4个比特信息,则针对第一步译码得到8条第一译码路径中的每一条译码路径,均可以扩展得到16条第二译码 路径。采用ML算法或简化SC算法可以并行计算得到u4-u7的LLR,并根据u4-u7的LLR并行计算每一条第一译码路径对应的16条第二译码路径的路径度量值,即,并行计算得到8*16=128条第二译码路径的路径度量值。分别对每一条第一译码路径对应的16条第二译码路径进行排序,并在每一条第一译码路径的16条第二译码路径中选择4条第三译码路径。得到8*4=32条第三译码路径,并对该32条第三译码路径进行排序,并在排序后的32条第三译码路径中选择8条保留译码路径。
与第二步译码类似,执行第三步译码和第四步译码。在第四步译码之后可以得到8条保留译码路径,并在该8条第四译码路径中选择一条译码路径作为译码结果。
图9为本申请提供的一种SCL并行译码装置的结构示意图。该SCL并行译码装置可以设置在接收设备中,该接收设备可以为终端设备、网络设备等。请参见图9,该SCL并行译码装置10可以包括获取模块11、第一确定模块12和第二确定模块13,其中,
所述获取模块11用于,获取第i-1组待译码比特的L 1个第一译码路径,所述i为整数,接收到的数据对应P组待译码比特,所述P为大于1的整数,1<i≤P,所述L 1为正整数;
所述第一确定模块12用于,对每一个第一译码路径分别确定L 3个第三译码路径,第i组待译码比特中信息比特的个数为n,所述n为大于或等于1的正整数,所述L 3为正整数,L 3<2 n
所述第二确定模块13用于,在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,所述至少一个保留译码路径包括第i组待译码比特的译码结果。
可选的,获取模块11可以执行图4实施例中的S401。
可选的,第一确定模块12可以执行图4实施例中的S402。
可选的,第二确定模块13可以执行图4实施例中的S403。
需要说明的是,本申请所示的SCL并行译码装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
在一种可能的实施方式中,所述第一确定模块12具体用于:
对每一个第一译码路径分别确定L 2个第二译码路径,L 2=2 n
在每一个第一译码路径对应的L 2个第二译码路径中,分别确定所述L 3个第三译码路径。
在另一种可能的实施方式中,L 3=2 m-k,其中,所述k为正整数,所述m为每组待译码比特中包括的待译码比特个数,所述m为大于1的整数,1≤k<m。
在另一种可能的实施方式中,所述L 3为2、4、8、16、32或64中的任意一个。
图10为本申请提供的又一种SCL并行译码装置的结构示意图。在图9所示实施例的基础上,请参见图10,SCL并行译码装置10还包括第三确定模块14,其中,
所述第三确定模块14用于,当i=P时,在所述至少一个保留译码路径中确定正确率最大的一个译码路径,并根据所述一个译码路径,确定所述P组待译码比特的译码结果。
需要说明的是,本申请所示的SCL并行译码装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
图11为本申请提供的另一种SCL并行译码装置的结构示意图。该SCL并行译码装置可以设置在接收设备中,该接收设备可以为终端设备、网络设备等。请参见图11,该SCL并行译码装置20可以包括获取模块21、第一确定模块22和第二确定模块23,其中,
所述获取模块21用于,获取第i-1组待译码比特的L 1个第一译码路径,所述i为整数, 所述P为大于1的整数,接收到的数据对应P组待译码比特,1<i≤P,所述L 1为正整数;
所述第一确定模块22用于,在预设条件成立时,对每一个第一译码路径分别确定L 3个第三译码路径,其中,L 1×L 3大于或等于第一预设阈值,第i组待译码比特中信息比特的个数为n,所述n为大于或等于1的正整数,所述L 3为正整数,L 3<2 n
所述第二确定模块23用于,在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,所述至少一个保留译码路径包括第i组待译码比特的译码结果。
可选的,获取模块21可以执行图6实施例中的S601以及图7实施例中的S701。
可选的,第一确定模块22可以执行图6实施例中的S602以及图7实施例中的S702-S705和S707。
可选的,第二确定模块23可以执行图6实施例中的S603以及图7实施例中的S706、S708和S709。
需要说明的是,本申请所示的SCL并行译码装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
在另一种可能的实施方式中,所述第一确定模块22具体用于:
对每一个第一路径分别确定L 2个第二译码路径,L 2=2 n
在每一个第一译码路径对应的L 2个第二译码路径中,分别确定所述L 3个第三译码路径。
在另一种可能的实施方式中,所述预设条件为:
L 1×L 2大于所述第一预设阈值。
在另一种可能的实施方式中,所述第一预设阈值为2、4、8、16、32、64或128中的任意一个。
在另一种可能的实施方式中,若L 1×2 m-k大于或等于所述第一预设阈值,L 3=2 m-k,其中,所述k为正整数,所述m为每组待译码比特中包括的待译码比特个数,所述m为大于1的整数,1≤k<m。
在另一种可能的实施方式中,所述L 3为2、4、8、16、32或64中的任意一个。
图12为本申请提供的又一种SCL并行译码装置的结构示意图。在图11所示实施例的基础上,请参见图12,SCL并行译码装置20还包括第三确定模块24,其中,
所述第三确定模块24用于,当i=P时,在所述至少一个保留译码路径中确定正确率最大的一个译码路径,并根据所述一个译码路径,确定所述P组待译码比特的译码结果。
需要说明的是,本申请所示的SCL并行译码装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
图13为本申请提供的SCL并行译码装置的硬件结构示意图。请参见图13,该SCL并行译码装置30包括:存储器31和处理器32,其中,存储器31和处理器32通信;示例性的,存储器31和处理器32通过通信总线33通信,所述存储器31用于存储计算机程序,所述处理器32执行所述计算机程序实现上述实施例所示的方法。
可选的,SCL并行译码装置还可以包括发送器和/或接收器。
可选的,上述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请所公开的方法的步骤(图2实施例中的 S201-S203、图3实施例中的S301-S303、图4实施例中的S401-S403、图6实施例中的S601-S603、图7实施例中的S701-S709)可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请提供一种计算机可读存储介质,包括指令,当指令在计算机上运行时使得所述计算机执行上述任意方法实施例提供的SCL并行译码方法。
本申请提供一种芯片,该芯片用于支持接收设备(例如终端设备、网络设备等)实现本申请实施例所示的功能(例如,获取第一译码路径、确定第二译码路径、确定第三译码路径、确定保留译码路径等),该芯片具体用于芯片系统,该芯片系统可以由芯片构成,也可以包括芯片和其他分立器件。当实现上述方法的为接收设备内的芯片时,芯片包括处理单元,进一步的,芯片还可以包括通信单元,所述处理单元例如可以是处理器,当芯片包括通信单元时,所述通信单元例如可以是输入/输出接口、管脚或电路等。处理单元执行本申请实施例中各个处理模块(例如图9-图12中的获取模块、第一确定模块、第二确定模块和第三确定模块)所执行的全部或部分动作,通信单元可执行相应的接收或发送动作,例如,在获取模块获取第i-1组待译码比特的L 1个第一译码路径之前,接收待译码比特等。在另一具体的实施例中,本申请中的接收设备的处理模块可以是芯片的处理单元,控制设备的接收模块或发送模块是芯片的通信单元。
实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一可读取存储器中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储器(存储介质)包括:只读存储器(英文:read-only memory,缩写:ROM)、RAM、快闪存储器、硬盘、固态硬盘、磁带(英文:magnetic tape)、软盘(英文:floppy disk)、光盘(英文:optical disc)及其任意组合。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理单元以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
在本申请中,术语“包括”及其变形可以指非限制性的包括;术语“或”及其变形可以指“和/或”。本本申请中术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。本申请中,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

Claims (26)

  1. 一种连续抵消列表SCL并行译码方法,接收到的数据对应P组待译码比特,其特征在于,所述方法包括:
    获取第i-1组待译码比特的L 1个第一译码路径,所述i为整数,所述P为大于1的整数,1<i≤P,所述L 1为正整数;
    对每一个第一译码路径分别确定L 3个第三译码路径,第i组待译码比特中信息比特的个数为n,所述n为大于或等于1的正整数,所述L 3为正整数,L 3<2 n
    在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,所述至少一个保留译码路径包括第i组待译码比特的译码结果。
  2. 根据权利要求1所述的方法,其特征在于,所述对每一个第一译码路径分别确定L 3个第三译码路径,包括:
    对每一个第一译码路径分别确定L 2个第二译码路径,L 2=2 n
    在每一个第一译码路径对应的L 2个第二译码路径中,分别确定所述L 3个第三译码路径。
  3. 根据权利要求1或2所述的方法,其特征在于,
    L 3=2 m-k,其中,所述k为正整数,所述m为每组待译码比特中包括的待译码比特个数,所述m为大于1的整数,1≤k<m。
  4. 根据权利要求1-3任一项所述的方法,其特征在于,所述L 3为2、4、8、16、32或64中的任意一个。
  5. 一种连续抵消列表SCL并行译码方法,接收到的数据对应P组待译码比特,其特征在于,所述方法包括:
    获取第i-1组待译码比特的L 1个第一译码路径,所述i为整数,所述P为大于1的整数,1<i≤P,所述L 1为正整数;
    在预设条件成立时,对每一个第一译码路径分别确定L 3个第三译码路径,其中,L 1×L 3大于或等于第一预设阈值,第i组待译码比特中信息比特的个数为n,所述n为大于或等于1的正整数,所述L 3为正整数,L 3<2 n
    在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,所述至少一个保留译码路径包括第i组待译码比特的译码结果。
  6. 根据权利要求5所述的方法,其特征在于,所述对每一个第一路径分别确定L3个第三路径,包括:
    对每一个第一路径分别确定L 2个第二译码路径,L 2=2 n
    在每一个第一译码路径对应的L 2个第二译码路径中,分别确定所述L 3个第三译码路径。
  7. 根据权利要求5或6所述的方法,其特征在于,所述预设条件为:
    L 1×L 2大于所述第一预设阈值。
  8. 根据权利要求5-7任一项所述的方法,其特征在于,所述第一预设阈值为2、4、8、16、32、64或128中的任意一个。
  9. 根据权利要求5-7任一项所述的方法,其特征在于,
    若L 1×2 m-k大于或等于所述第一预设阈值,L 3=2 m-k,其中,所述k为正整数,所述m为每组待译码比特中包括的待译码比特个数,所述m为大于1的整数,1≤k<m。
  10. 根据权利要求5-7任一项所述的方法,其特征在于,所述L 3为2、4、8、16、32或64中的任意一个。
  11. 根据权利要求5-10任一项所述的方法,其特征在于,当i=P时,所述方法还包括:
    在所述至少一个保留译码路径中确定正确率最大的一个译码路径;
    根据所述一个译码路径,确定所述P组待译码比特的译码结果。
  12. 一种连续抵消列表SCL并行译码装置,接收到的数据对应P组待译码比特,其特征在于,所述装置包括获取模块、第一确定模块和第二确定模块,其中,
    所述获取模块用于,获取第i-1组待译码比特的L 1个第一译码路径,所述i为整数,所述P为大于1的整数,1<i≤P,所述L 1为正整数;
    所述第一确定模块用于,对每一个第一译码路径分别确定L 3个第三译码路径,第i组待译码比特中信息比特的个数为n,所述n为大于或等于1的正整数,所述L 3为正整数,L 3<2 n
    所述第二确定模块用于,在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,所述至少一个保留译码路径包括第i组待译码比特的译码结果。
  13. 根据权利要求12所述的装置,其特征在于,所述第一确定模块具体用于:
    对每一个第一译码路径分别确定L 2个第二译码路径,L 2=2 n
    在每一个第一译码路径对应的L 2个第二译码路径中,分别确定所述L 3个第三译码路径。
  14. 根据权利要求12或13所述的装置,其特征在于,
    L 3=2 m-k,其中,所述k为正整数,所述m为每组待译码比特中包括的待译码比特个数,所述m为大于1的整数,1≤k<m。
  15. 根据权利要求12-14任一项所述的装置,其特征在于,所述L 3为2、4、8、16、32或64中的任意一个。
  16. 一种连续抵消列表SCL并行译码装置,接收到的数据对应P组待译码比特,其特征在于,所述装置包括获取模块、第一确定模块和第二确定模块,其中,
    所述获取模块用于,获取第i-1组待译码比特的L 1个第一译码路径,所述i为整数,所述P为大于1的整数,1<i≤P,所述L 1为正整数;
    所述第一确定模块用于,在预设条件成立时,对每一个第一译码路径分别确定L 3个第三译码路径,其中,L 1×L 3大于或等于第一预设阈值,第i组待译码比特中信息比特的个数为n,所述n为大于或等于1的正整数,所述L 3为正整数,L 3<2 n
    所述第二确定模块用于,在L 1×L 3个第三个译码路径中确定第i组待译码比特的至少一个保留译码路径,所述至少一个保留译码路径包括第i组待译码比特的译码结果。
  17. 根据权利要求16所述的装置,其特征在于,所述第一确定模块具体用于:
    对每一个第一路径分别确定L 2个第二译码路径,L 2=2 n
    在每一个第一译码路径对应的L 2个第二译码路径中,分别确定所述L 3个第三译码路径。
  18. 根据权利要求16或17所述的装置,其特征在于,所述预设条件为:
    L 1×L 2大于所述第一预设阈值。
  19. 根据权利要求16-18任一项所述的装置,其特征在于,所述第一预设阈值为2、4、8、16、32、64或128中的任意一个。
  20. 根据权利要求16-18任一项所述的装置,其特征在于,
    若L 1×2 m-k大于或等于所述第一预设阈值,L 3=2 m-k,其中,所述k为正整数,所述m为每组待译码比特中包括的待译码比特个数,所述m为大于1的整数,1≤k<m。
  21. 根据权利要求16-18任一项所述的装置,其特征在于,所述L 3为2、4、8、16、32或64中的任意一个。
  22. 根据权利要求16-21任一项所述的装置,其特征在于,所述装置还包括第三确定模块,其中,
    所述第三确定模块用于,当i=P时,在所述至少一个保留译码路径中确定正确率最大的一个译码路径,并根据所述一个译码路径,确定所述P组待译码比特的译码结果。
  23. 一种SCL并行译码装置,其特征在于,包括存储器和处理器,所述处理器执行所述存储器中的程序指令,用于实现权利要求1-4任一项所述的SCL并行译码方法。
  24. 一种SCL并行译码装置,其特征在于,包括存储器和处理器,所述处理器执行所述存储器中的程序指令,用于实现权利要求5-11任一项所述的SCL并行译码方法。
  25. 一种存储介质,其特征在于,所述存储介质用于存储计算机程序,所述计算机程序用于实现权利要求1-4任一项所述的SCL并行译码方法。
  26. 一种存储介质,其特征在于,所述存储介质用于存储计算机程序,所述计算机程序用于实现权利要求5-11任一项所述的SCL并行译码方法。
PCT/CN2018/103293 2018-08-30 2018-08-30 Scl并行译码方法、装置及设备 WO2020042089A1 (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/CN2018/103293 WO2020042089A1 (zh) 2018-08-30 2018-08-30 Scl并行译码方法、装置及设备
EP18931878.5A EP3840260A4 (en) 2018-08-30 2018-08-30 METHOD, DEVICE AND DEVICE FOR PARALLEL SCL DECODING
CN201880096570.1A CN112567659A (zh) 2018-08-30 2018-08-30 Scl并行译码方法、装置及设备
US17/186,781 US20210184701A1 (en) 2018-08-30 2021-02-26 Scl parallel decoding method and apparatus and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/103293 WO2020042089A1 (zh) 2018-08-30 2018-08-30 Scl并行译码方法、装置及设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/186,781 Continuation US20210184701A1 (en) 2018-08-30 2021-02-26 Scl parallel decoding method and apparatus and device

Publications (1)

Publication Number Publication Date
WO2020042089A1 true WO2020042089A1 (zh) 2020-03-05

Family

ID=69643362

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/103293 WO2020042089A1 (zh) 2018-08-30 2018-08-30 Scl并行译码方法、装置及设备

Country Status (4)

Country Link
US (1) US20210184701A1 (zh)
EP (1) EP3840260A4 (zh)
CN (1) CN112567659A (zh)
WO (1) WO2020042089A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111200439B (zh) * 2018-11-16 2022-05-06 华为技术有限公司 译码方法、装置及设备
CN113949485B (zh) * 2021-08-31 2022-11-15 北京大学 一种区分噪声帧和极化码字帧的阈值盲检方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130117344A1 (en) * 2011-11-08 2013-05-09 Warren GROSS Methods and Systems for Decoding Polar Codes
CN104124979A (zh) * 2013-04-27 2014-10-29 华为技术有限公司 极性码的译码方法和译码装置
CN106487479A (zh) * 2016-09-27 2017-03-08 清华大学深圳研究生院 一种基于多位判决的极化码译码方法
CN107896137A (zh) * 2017-11-03 2018-04-10 东南大学 一种适用于极化码译码路径分裂的排序方法
CN108063649A (zh) * 2017-12-14 2018-05-22 东南大学 一种低时延低复杂度的极化码译码方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107534448B (zh) * 2015-04-30 2020-07-21 华为技术有限公司 极化码的译码器和译码方法
CN108347302B (zh) * 2017-01-25 2021-09-07 华为技术有限公司 一种编译码方法和终端
CN106877884B (zh) * 2017-02-01 2020-04-28 东南大学 一种减少译码路径分裂的极化码译码方法
US10615825B2 (en) * 2017-05-05 2020-04-07 Qualcomm Incorporated Early-termination techniques for polar list decoders
CN108462558B (zh) * 2018-03-01 2020-12-18 西安电子科技大学 一种极化码scl译码方法、装置及电子设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130117344A1 (en) * 2011-11-08 2013-05-09 Warren GROSS Methods and Systems for Decoding Polar Codes
CN104124979A (zh) * 2013-04-27 2014-10-29 华为技术有限公司 极性码的译码方法和译码装置
CN106487479A (zh) * 2016-09-27 2017-03-08 清华大学深圳研究生院 一种基于多位判决的极化码译码方法
CN107896137A (zh) * 2017-11-03 2018-04-10 东南大学 一种适用于极化码译码路径分裂的排序方法
CN108063649A (zh) * 2017-12-14 2018-05-22 东南大学 一种低时延低复杂度的极化码译码方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3840260A4 *

Also Published As

Publication number Publication date
EP3840260A4 (en) 2021-08-04
CN112567659A (zh) 2021-03-26
EP3840260A1 (en) 2021-06-23
US20210184701A1 (en) 2021-06-17

Similar Documents

Publication Publication Date Title
CN108365848B (zh) 一种极性码的译码方法和装置
WO2016172940A1 (zh) 极性码的译码方法和译码装置
WO2017101631A1 (zh) 用于处理极化码的方法和通信设备
JP2021064956A (ja) レートマッチング方法、符号化装置、および通信装置
WO2014173133A1 (zh) 极性码的译码方法和译码装置
CN108574561B (zh) 极化码编码的方法和装置
WO2016168962A1 (zh) 极化码的译码方法和译码装置
WO2018149332A1 (zh) 一种极性码的传输方法和装置
JP2022174079A (ja) 符号化方法、復号方法、装置、および装置
WO2017124844A1 (zh) 确定极化码传输块大小的方法和通信设备
US10419161B2 (en) Method and communications device for transmitting information
CN108631937B (zh) 一种信息处理方法、装置及设备
CN109547034B (zh) 译码方法及设备、译码器
WO2018137518A1 (zh) 数据的传输方法和装置
WO2020042089A1 (zh) Scl并行译码方法、装置及设备
CN110391874B (zh) 极化码的速率匹配、解速率匹配方法及设备
CN109327280B (zh) 分段编码方法及装置
WO2016000197A1 (zh) 用于译码的方法和装置
TWI791023B (zh) 編碼輸入資料為極性碼的方法及設備、解碼方法及用以解碼碼字的設備
WO2018171764A1 (zh) 一种构造极化码序列的方法及装置
CN112260697B (zh) 译码方法、装置及设备
WO2018141271A1 (zh) 数据处理的方法和装置
WO2020098582A1 (zh) 译码方法、装置及设备
WO2021068782A1 (zh) Scl译码方法、装置及设备
US20200186297A1 (en) Electronic transceiver device, method and computer program for decoding control information

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: 18931878

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018931878

Country of ref document: EP

Effective date: 20210315