Polar code encoding method and device, electronic equipment and storage medium

CN116781090BActive Publication Date: 2026-08-18CHINA MOBILE (SUZHOU) SOFTWARE TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211540479.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-02
Publication Date
2026-08-18
Estimated Expiration
2042-12-02

AI Technical Summary

Technical Problem

这会带来编译性能的损失

Benefits of technology

[0019] In this application, the LLR values ​​of multiple sub-channels of the polar code are used as the basis for selecting different bits as the information bit set and the punctured bit set, respectively. The resulting information bit set and punctured bit set are mutually exclusive, thereby avoiding the puncturing of information bits in the encoded bits and ensuring the compilation performance of the punctured encoded bits.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116781090B_ABST
    Figure CN116781090B_ABST
Patent Text Reader

Abstract

The application provides a polar code encoding method and device, an electronic device and a storage medium. The polar code encoding method comprises the following steps: obtaining information data bits; encoding the information data bits according to an information bit set to obtain coded bits, wherein the information bit set comprises bits that can carry information in bits corresponding to a plurality of sub-channels of a polar code; and puncturing the coded bits according to a puncturing bit set, wherein the puncturing bit set comprises bits that can be punctured in bits corresponding to the plurality of sub-channels; wherein the information bit set and the puncturing bit set are determined according to LLR values of the plurality of sub-channels, and the information bit set and the puncturing bit set are mutually exclusive. In this way, the application can guarantee the encoding and decoding performance of the coded bits after puncturing.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to, but is not limited to, the field of communications, and particularly to a polar code encoding method and apparatus, electronic device and storage medium. Background Technology

[0002] Polar codes are used as a forward error correction coding method for signal transmission. During transmission, in order to make the bit rate of the coded bits match the bit rate required by the transmission format, it may be necessary to perform processes such as repeating or puncturing the coded bits to achieve rate matching.

[0003] Currently, during the process of punching coded bits, it is possible to punch coded bits that carry information. This can lead to a loss of compilation performance.

[0004] Therefore, ensuring that compilation performance is not compromised during the punching process is a problem that urgently needs to be solved. Summary of the Invention

[0005] This application provides a polar code encoding method and apparatus, electronic device and storage medium, thereby ensuring the compilation performance of the punctured encoded bits.

[0006] In a first aspect, this application provides a polar code encoding method. The polar code encoding method includes: acquiring information data bits; encoding the information data bits according to an information bit set to obtain encoded bits, wherein the information bit set includes information-carrying bits from the bits corresponding to multiple sub-channels of the polar code; and punching holes in the encoded bits according to a punched bit set, wherein the punched bit set includes punchable bits from the bits corresponding to multiple sub-channels; wherein both the information bit set and the punched bit set are determined based on the LLR values ​​of the multiple sub-channels, and the information bit set and the punched bit set are mutually exclusive.

[0007] In some possible implementations, the above polar code encoding method may further include: determining a set of LLR values ​​for multiple sub-channels, wherein the set of LLR values ​​includes LLR values ​​corresponding to the multiple sub-channels respectively; determining a set of uncapable bits based on the set of LLR values, wherein the set of uncapable bits includes bits that cannot carry information among the bits corresponding to the multiple sub-channels, the set of uncapable bits includes a first subset and a second subset, the first subset and the second subset being mutually exclusive; determining a set of punctured bits based on the set of uncapable bits; and determining a set of information bits based on the sum of the sets of uncapable bits.

[0008] In some possible implementations, the number of multiple sub-channels and the number of LLR values ​​in the LLR value set can both be N. The operation of determining the set of incapacitated bits based on the LLR value set may include: selecting the sub-channels with index values... The LLR value corresponding to the sub-channel Compare with the LLR value L(Si) corresponding to the sub-channel with index Si; and, if If it is less than L(Si), then let i = i + 1, and perform the above comparison again; if If the value of i is greater than or equal to L(Si), then the set of uncapable bits is determined based on the value of i. The first subset of the uncapable bit set includes bits with index 0 to index Si corresponding to multiple sub-channels, and the second subset includes bits with index Si corresponding to multiple sub-channels. The bit to index value The bits. N and S are both positive integers, and i is an integer, i = 0, 1, ..., S, and the initial value of i is 0.

[0009] In some possible implementations, the operation of determining the information bit set based on the set of uncapable bits may include: determining the K bits corresponding to the K sub-channels with the largest LLR value, excluding the set of uncapable bits, as the information bit set from the bits corresponding to the multiple sub-channels, where K is a positive integer.

[0010] In some possible implementations, the operation of determining the set of punctured bits based on the set of uncapable bits may include: reversing the sorting of the set of uncapable bits to obtain the set of punctured bits.

[0011] In a second aspect, this application provides a polar code encoding apparatus. The polar code encoding apparatus includes an acquisition module, an encoding module, and a puncturing module. The acquisition module is configured to acquire information data bits. The encoding module is configured to encode the information data bits according to an information bit set to obtain encoded bits. The information bit set includes information-carrying bits from the bits corresponding to multiple sub-channels of the polar code. The puncturing module is configured to puncture the encoded bits. The punctured bit set includes puncturable bits from the bits corresponding to multiple sub-channels. Both the information bit set and the punctured bit set are determined based on the LLR values ​​of the multiple sub-channels, and the information bit set and the punctured bit set are mutually exclusive.

[0012] In some possible implementations, the polar code encoding apparatus described above may further include a first determining module, a second determining module, a third determining module, and a fourth determining module. The first determining module is configured to determine a set of LLR values ​​for multiple sub-channels. The LLR value set includes LLR values ​​corresponding to each of the multiple sub-channels. The second determining module is configured to determine a set of uncapable bits based on the LLR value set. The uncapable bit set includes bits among the bits corresponding to the multiple sub-channels that cannot carry information. The uncapable bit set includes a first subset and a second subset. The first subset and the second subset are mutually exclusive. The third determining module is configured to determine a set of punctured bits based on the uncapable bit set. The fourth determining module is configured to determine a set of information bits based on the uncapable bit set.

[0013] In some possible implementations, the number of multiple sub-channels and the number of LLR values ​​in the LLR value set can both be N. The second determining module can be configured to: determine the index value of the multiple sub-channels. The LLR value corresponding to the sub-channel Compare with the LLR value L(Si) corresponding to the sub-channel with index Si; and, if If it is less than L(Si), then let i = i + 1, and perform the above comparison again; if If the value of i is greater than or equal to L(Si), then the set of uncapable bits is determined based on the value of i. The first subset of the uncapable bit set includes bits with index 0 to index Si corresponding to multiple sub-channels, and the second subset includes bits with index Si corresponding to multiple sub-channels. The bit to index value The bits. N and S are both positive integers, and i is an integer, i = 0, 1, ..., S, and the initial value of i is 0.

[0014] In some possible implementations, the fourth determining module can be configured to: determine the K bits corresponding to the K sub-channels with the largest LLR value, excluding the set of uncapable bits, as the information bit set, where K is a positive integer.

[0015] In some possible implementations, the third determining module may be configured to: reverse the sorting of the set of uncapable bits to obtain the set of punched bits.

[0016] In a third aspect, this application provides an electronic device. The electronic device includes a processor and a memory. The memory is connected to the processor and configured to store executable instructions. The processor is configured to, when executing the executable instructions, implement the polar code encoding method as described in any one of the first aspects and its possible embodiments.

[0017] In a fourth aspect, this application provides a computer-readable storage medium. The storage medium stores executable instructions. When executed by a processor, the executable instructions implement the polar code encoding method as described in any one of the first aspects and its possible embodiments.

[0018] In a fifth aspect, this application provides a computer program product. The computer program product includes executable instructions. When executed by a processor, the executable instructions implement the polar code encoding method as described in any one of the first aspects and its possible embodiments.

[0019] In this application, the LLR values ​​of multiple sub-channels of the polar code are used as the basis for selecting different bits as the information bit set and the punctured bit set, respectively. The resulting information bit set and punctured bit set are mutually exclusive, thereby avoiding the puncturing of information bits in the encoded bits and ensuring the compilation performance of the punctured encoded bits.

[0020] Furthermore, in this application, the LLR values ​​of multiple sub-channels exhibit an overall non-uniform distribution but a locally uniform distribution. Based on this distribution characteristic, a "two-segment" strategy is adopted, using a method of starting to back off at the S-th bit and starting to advance at the N / 2-th bit to filter out the set of incapable bits from the bits corresponding to multiple sub-channels. Thus, the set of incapable bits and the corresponding set of punctured bits have higher reliability, thereby effectively reducing the bit error rate and false diagnosis rate of the polar code.

[0021] Additionally, this application utilizes the LLR values ​​of sub-channels to construct polar codes, a method that is simple and practical. Furthermore, the determination of the information bit set and the punctured bit set is based on the channel indices of multiple sub-channels. This cursor-based comparison and filtering method avoids increasing the complexity during the construction process.

[0022] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description

[0023] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0024] Figure 1 A schematic diagram illustrating the basic process of wireless communication is shown.

[0025] Figure 2 A flowchart of a polar code encoding method according to an embodiment of this application is shown.

[0026] Figure 3 A flowchart of a polar code decoding method according to an embodiment of this application is shown.

[0027] Figure 4 A structural diagram of a polar code encoding device according to an embodiment of this application is shown.

[0028] Figure 5 A structural diagram of a polar code decoding device according to an embodiment of this application is shown.

[0029] Figure 6 A structural diagram of an electronic device according to an embodiment of this application is shown. Detailed Implementation

[0030] The embodiments of this application are described below with reference to the accompanying drawings. In the following description, reference is made to the accompanying drawings, which form part of this application and illustrate specific aspects of the embodiments of this application or to which specific aspects of the embodiments of this application may be used. It should be understood that the embodiments of this application may be used in other aspects and may include structural or logical variations not depicted in the drawings. Therefore, the following detailed description should not be construed in a limiting sense, and the scope of this application is defined by the appended claims. For example, it should be understood that the disclosure of the described methods is equally applicable to corresponding devices or systems for performing the methods, and vice versa. For example, if one or more specific method steps are described, the corresponding device may include one or more units, such as functional units, to perform the described one or more method steps (e.g., one unit performs one or more steps, or multiple units, each performing one or more of multiple steps), even if such one or more units are not explicitly described or illustrated in the drawings. On the other hand, for example, if a specific apparatus is described based on one or more units such as functional units, the corresponding method may include a step to perform the functionality of one or more units (e.g., a step to perform the functionality of one or more units, or multiple steps, each of which performs the functionality of one or more units among a plurality of units), even if such one or more steps are not explicitly described or illustrated in the accompanying drawings. Furthermore, it should be understood that, unless otherwise expressly stated, features of the various exemplary embodiments and / or aspects described herein can be combined with each other.

[0031] The embodiments of this application can be applied to various communication systems. These communication systems include, but are not limited to: Global System for Mobile Communication (GSM), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), General Packet Radio Service (GPRS), and Long-Term Evolution (LTE). All of these communication systems can utilize the polar code encoding described in the embodiments of this application.

[0032] Wireless communication can be implemented based on the above communication systems. Figure 1 A schematic diagram illustrating the basic process of wireless communication is shown. (For example...) Figure 1 As shown, the basic process of wireless communication includes the process at the transmitting end and the process at the receiving end. At the transmitting end, the signal source undergoes source coding, channel coding, rate matching, and modulation before being transmitted as a modulated signal through the channel. At the receiving end, the modulated signal undergoes demodulation, rate matching dematching, channel decoding, and source decoding to obtain the destination signal. Polar codes are used for channel coding and channel decoding.

[0033] Specifically, at the transmitting end, the source obtains information data bits after source coding. These information data bits then undergo channel coding to obtain coded bits. The polar code channel has multiple sub-channels (or polar sub-channels). The coded bits obtained through channel coding correspond one-to-one with each of the multiple sub-channels. Next, rate matching is performed on the coded bits to ensure that the bit rate of the coded bits matches the transmission rate. After rate matching, the coded bits are modulated to obtain data symbols, which are then transmitted through the channel.

[0034] It should be noted that in practical applications, the basic process of wireless communication may include other processing, and the embodiments of this application do not specifically limit this.

[0035] Rate matching typically employs two methods: retransmission and puncturing. Punching punctures the coded bits when it's necessary to shorten their length. Retransmission increases the coded bit length when it's necessary to lengthen them.

[0036] Figure 2 A flowchart of a polar code encoding method according to an embodiment of this application is shown. Figure 2 As shown, the polar code encoding method 200 includes the following operations: S210, S220 and S230.

[0037] In operation S210, information data bits are acquired.

[0038] Here, the information data bits are obtained by source coding of the information source. The information source is the information data to be transmitted. Source coding can compress the information source to reduce redundancy and improve communication efficiency. Therefore, the number of information data bits is less than or equal to the number of bits in the information source.

[0039] Source coding of the information source can employ lossless coding or lossy coding. In one embodiment, source coding can employ at least one of the following lossless coding methods: Shannon coding, Huffman coding, arithmetic coding, and LZ coding. In another embodiment, source coding can employ a lossy coding method.

[0040] In operation S220, the information data bits are encoded according to the information bit set to obtain the encoded bits.

[0041] Here, the information bit set includes the bits that can carry information from the bits corresponding to the multiple sub-channels of the polar code.

[0042] Before operating S220, the information bit set needs to be obtained. The information bit set is a set determined during the polar code construction process. That is, the information bit set is known when operating S220. All bits in the information bit set can be used to carry information, and only bits in the information bit set can be used to carry information. Because the multiple sub-channels of the polar code correspond one-to-one with the multiple bits in the encoded bits, this means that the information bit set also represents the sub-channels in the multiple sub-channels of the polar code that can carry information. The index value of each sub-channel is the same as the index value of the bit corresponding to that sub-channel. In one embodiment, the information bit set may include the bit indices of the information-carrying bits in the bits corresponding to the multiple sub-channels of the polar code. The bit indices in the information bit set are used to indicate the information-carrying bits in the bits corresponding to the multiple sub-channels. It should be noted that because the sub-channels correspond one-to-one with the corresponding bits, the channel index of the sub-channel has the same index value as the bit index of the corresponding bit. In this application, the bit index and channel index are collectively referred to as indexes.

[0043] Specifically, given the information bit set, the bits carrying the information data can be determined during the encoding process based on the bits in the information bit set.

[0044] It should be noted that, unless otherwise specified, the encoding described in operation S220 and below refers to channel coding. This application does not describe source coding and source decoding in its embodiments.

[0045] In S230, the encoded bits are punched according to the set of punched bits.

[0046] Here, the set of punctured bits includes the bits that can be punctured from the bits corresponding to multiple sub-channels. The set of information bits and the set of punctured bits are mutually exclusive.

[0047] Before operating S230, the punctured bit set needs to be obtained. The punctured bit set is a set determined during the polar code construction process. That is, the punctured bit set is known when operating S230. All bits in the information bit set are puncturable, and only the bits in the punctured bit set are puncturable. Because the multiple sub-channels of the polar code correspond one-to-one with the multiple bits in the coded bits, this means that the information bit set also represents the "puncturable" sub-channels among the multiple sub-channels of the polar code. In one embodiment, the punctured bit set may include bit indices of the puncturable bits among the bits corresponding to the multiple sub-channels of the polar code. The bit indices in the punctured bit set are used to indicate the puncturable bits among the bits corresponding to the multiple sub-channels.

[0048] Since the information bit set and the punctured bit set are mutually exclusive, they cannot contain the same bit. That is, for a bit in the encoded bits set, if that bit belongs to the information bit set and is therefore usable for carrying information, then that information bit will not be punctured. Similarly, for a bit in the encoded bits set, if that bit belongs to the punctured bit set and is therefore usable for puncturing, then that information bit cannot be used for carrying information.

[0049] Specifically, operation S230 can be implemented as follows: determining punctured bits based on the punctured bit set and the number of punctured bits; and puncturing the encoded bits based on the punctured bits. In one embodiment, the number of punctured bits can be determined based on rate matching. Specifically, the required number of encoded bits can be determined based on rate matching, and then the difference between the theoretical number of encoded bits and the required number of bits can be calculated, and finally, this difference can be determined as the number of punctured bits. The theoretical number of encoded bits is an integer power of 2. After knowing the number of punctured bits, the punctured bits can be determined based on a puncturing strategy. In one embodiment, the puncturing strategy can include fixed-position puncturing, random puncturing, table lookup puncturing, or other puncturing methods. For example, the puncturing strategy can be to determine the first, middle, and last bits in the punctured bit set as punctured bits. Another example is that the puncturing strategy can be to randomly select several bits from multiple consecutive bits in the punctured bit set as punctured bits. Yet another example is that the puncturing strategy can be to determine several bits in the punctured bit set as punctured bits by looking up a table.

[0050] Furthermore, both the information bit set and the punctured bit set are determined based on the LLR values ​​of multiple sub-channels. Each sub-channel of the polar code has a corresponding log likelihood ratio (LLR) value.

[0051] Understandably, the LLR values ​​of multiple sub-channels can be the same, different, or partially the same. By using the LLR values ​​of multiple sub-channels as a reference to determine the information bit set and the punctured bit set, it is possible to make the information bit set and the punctured bit set mutually exclusive.

[0052] In practical applications, before operations S220 and S230, the information bit set and the punctured bit set are obtained based on the construction of polar codes. In one embodiment, the above-described polar code encoding method further implements the construction of polar codes through the following four operations.

[0053] In the first operation, a set of LLR values ​​for multiple sub-channels is determined.

[0054] Here, the LLR value set includes the LLR values ​​corresponding to each of the multiple sub-channels.

[0055] In the second operation, the set of uncapable bits is determined based on the set of LLR values.

[0056] Here, the set of uncapable bits includes bits from the bits corresponding to multiple sub-channels that cannot carry information. The set of uncapable bits includes a first subset and a second subset. The first subset and the second subset are mutually exclusive.

[0057] It is understood that the first subset and the second subset of the set of uncapable bits do not contain the same bit. In one embodiment, the bits in the first subset may be in consecutive positions among the bits corresponding to the multiple sub-channels. In one embodiment, the bits in the second subset may be in consecutive positions among the bits corresponding to the multiple sub-channels. In one embodiment, the positions of the bits in the first subset and the bits in the second subset may be separated by at least one bit. For example, among the bits corresponding to the multiple sub-channels, all the bits in the first subset are preceding the bits in the second subset and separated by at least one bit, or all the bits in the second subset are preceding the bits in the first subset and separated by at least one bit.

[0058] In the third operation, the set of punched bits is determined based on the set of uncapable bits.

[0059] Specifically, after determining the set of uncapable bits, the set of uncapable bits is processed to obtain the set of punched bits.

[0060] In one embodiment, the set of uncapable bits can be reversed to obtain the set of punched bits. Specifically, the set of punched bits is obtained by reversing the order of all bits in the set of uncapable bits according to their bit indices.

[0061] In the fourth operation, the set of information bits is determined based on the set of incapable bits.

[0062] Specifically, after determining the set of incapable bits, the bits in the incapable bit set are removed from the bits corresponding to the multiple sub-channels. Then, one or more bits are selected from the remaining bits to form the information bit set. In one embodiment, the information bit set may include all the bits from the remaining bits. In another embodiment, the information bit set may include a portion of the bits from the remaining bits.

[0063] The construction of polar codes will be specifically described below with reference to a specific embodiment of this application. It should be noted that, through the construction of polar codes in this application embodiment, information bit set A and frozen bit set A' can be obtained. c The set of uncapable bits, Q, and the set of punctured bits, P. The set of information bits, A, includes the information-carrying bits from the sub-channels of the polar code. The set of frozen bits, A... c The polar code includes all bits in the sub-channels corresponding to the polar code, excluding the information bit set A. The incapable bit set Q includes bits in the sub-channels corresponding to the polar code that cannot carry information. The punctured bit set P includes puncturable bits in the sub-channels corresponding to the polar code. The construction of the polar code can be implemented through operations.

[0064] In the first operation, a channel for the polar code is constructed. This channel consists of N sub-channels. The N sub-channels of the polar code can also be called polar sub-channels. Since each sub-channel corresponds to one bit in the coded bits, the N sub-channels correspond to N coded bits. Furthermore, the number of coded bits N is an integer power of 2.

[0065] In one embodiment, the N sub-channels of the polar code can be constructed using the Gaussian approximation method. Of course, the N sub-channels of the polar code can also be constructed using other methods, and this embodiment does not specifically limit this approach.

[0066] In the second operation, the set of LLR values ​​is determined. For N sub-channels of a polar code, each sub-channel has its own LLR value. Therefore, there is a correspondence between the N sub-channels and the N LLR values. These N LLR values ​​then constitute the set of LLR values. Each LLR value is an element in the set of LLR values. It is understandable that, because different sub-channels may have the same LLR value, different elements in the set of LLR values ​​may also have the same LLR value.

[0067] In the third operation, the indices of the uncapable bits are determined. Specifically, after determining the LLR value set, the first S values ​​are selected from the LLR value set. Here, S = NM, where M is the number of bits after puncturing the coded bits. Then, the indices of the sub-channels corresponding to the selected S values ​​are used as the indices of the uncapable bits. That is, a sub-channel with an index value of 1 corresponds to a bit with an index value of 1, a sub-channel with an index value of 2 corresponds to a bit with an index value of 2, and so on.

[0068] In the fourth operation, LLR values ​​are compared within the set of LLR values. Specifically, let i = 0, and compare the LLR values... Compare the magnitudes with L(Si); if If it is less than L(Si), then let i = 2 and continue. Comparison between and L(Si); if If it is less than L(Si), then let i = 3 and continue. The comparison between L(Si) and L(Si) continues; and so on, until... Greater than or equal to L(Si). Here, i = 0, 1, 2, ..., S, and the initial value of i is 0. The index value is L(Si) is the LLR value corresponding to the sub-channel with index Si.

[0069] In the fifth operation, the set of uncapable bits Q is determined. Specifically, it is determined in the fourth operation. After determining the value of i that is greater than or equal to L(Si), the first subset Q1 and the second subset Q2 are determined based on the value of i. The first subset Q1 includes bits with index 0 to index Si from the bits corresponding to the N sub-channels, i.e., Q1 = [0:Si]. The second subset includes bits with index Si from the bits corresponding to the N sub-channels. The bit to index value bits, i.e. The set of uncapable bits Q is the union of the first subset Q1 and the second subset Q2. Furthermore, S is less than or equal to... Then the bits in the first subset Q1 are placed before the bits in the second subset Q2, i.e., Q = {Q1, Q2}.

[0070] In the sixth operation, the set of punctured bits, P, is determined. Specifically, the set of punctured bits, P, is obtained by reversing the sorting of the set of uncapable bits, Q. In other words, the set of punctured bits, P, and the set of uncapable bits, Q, have the same elements, but the arrangement of these elements is different.

[0071] In the seventh operation, the information bit set A is determined. Specifically, the K bits corresponding to the K sub-channels with the largest LLR values, excluding the incapable bit set Q, are determined as the information bit set A, where K is a positive integer. Furthermore, it should be noted that in the N sub-channels of the polar code, all other bits besides the information bit set A constitute the frozen bit set A. c So, the frozen bit set A c The number of bits in the set is NK. Information bit set A and frozen bit set A' c They are opposing forces.

[0072] Clearly, the frozen bit set A c It contains a set of punctured bits P (and a set of uncapable bits Q), and the set of punctured bits P (and the set of uncapable bits Q) is therefore mutually exclusive with the set of information bits A.

[0073] In this embodiment, the LLR values ​​of multiple sub-channels of the polar code are used as the basis for selecting different bits as the information bit set and the punctured bit set, respectively. The resulting information bit set and punctured bit set are mutually exclusive, thereby avoiding the puncturing of information bits in the encoded bits and ensuring the compilation performance of the punctured encoded bits.

[0074] Furthermore, in this embodiment, the LLR values ​​of multiple sub-channels exhibit an overall non-uniform distribution but a locally uniform distribution. Based on this distribution characteristic, a "two-segment" strategy is adopted, using a method of starting to back off at the S-th bit and starting to advance at the N / 2-th bit to filter out the set of incapable bits from the bits corresponding to multiple sub-channels. Thus, the set of incapable bits and the corresponding set of punctured bits have higher reliability, thereby effectively reducing the bit error rate and false diagnosis rate of the polar code.

[0075] Additionally, embodiments of this application utilize the LLR values ​​of sub-channels to construct polar codes, a method that is simple and practical. Furthermore, the determination of the information bit set and the punctured bit set is based on the channel indices of multiple sub-channels. This cursor-based comparison and filtering method avoids increasing the complexity during the construction process.

[0076] Correspondingly, Figure 3 A flowchart of a polar code decoding method according to an embodiment of this application is shown. Figure 3 As shown, the polar code decoding method 300 includes the following operations: S310, S320 and S330.

[0077] In operation S310, the puncture code bits are obtained.

[0078] After demodulating the received data symbols, punctured bits can be obtained. Punched bits are obtained by punching holes in the encoded bits.

[0079] In operation S320, the punctured encoded bits are de-punctured to obtain the encoded bits.

[0080] De-puncturing is the reverse operation of puncturing. Specifically, based on a known set of punctured bits and a puncturing strategy, the punctured encoded bits are de-punctured to obtain the encoded bits. In particular, the set of punctured bits can be the set of punctured bits determined according to the embodiments of this application.

[0081] It should be noted that during the de-puncturing process, the LLR value of the sub-channel corresponding to the punctured bit also needs to be supplemented. In one embodiment, the LLR value of the sub-channel corresponding to the punctured bit can be supplemented to 0. Of course, in other embodiments, the LLR value of the sub-channel corresponding to the punctured bit can be supplemented to other values, and this application does not specifically limit this.

[0082] In operation S330, the encoded bits are decoded.

[0083] Decoding is the reverse operation of encoding. Specifically, based on a known set of signal bits, the encoded bits are decoded to obtain the information data bits.

[0084] Based on the same inventive concept, embodiments of this application provide a polar code encoding device. Figure 4 A structural diagram of a polar code encoding device according to an embodiment of this application is shown. Figure 4 As shown, the polar code encoding device 400 includes an acquisition module 410, an encoding module 420, and a puncturing module 430. The acquisition module 410 is configured to acquire information data bits. The encoding module 420 is configured to encode the information data bits according to an information bit set to obtain encoded bits. The information bit set includes information-carrying bits from the bits corresponding to multiple sub-channels of the polar code. The puncturing module 430 is configured to puncture the encoded bits. The punctured bit set includes puncturable bits from the bits corresponding to multiple sub-channels. Both the information bit set and the punctured bit set are determined based on the LLR values ​​of the multiple sub-channels, and the information bit set and the punctured bit set are mutually exclusive.

[0085] In some possible implementations, the polar code encoding apparatus 400 described above may further include a first determining module, a second determining module, a third determining module, and a fourth determining module. The first determining module is configured to determine a set of LLR values ​​for multiple sub-channels. The LLR value set includes LLR values ​​corresponding to each of the multiple sub-channels. The second determining module is configured to determine a set of uncapable bits based on the LLR value set. The uncapable bit set includes bits among the bits corresponding to the multiple sub-channels that cannot carry information. The uncapable bit set includes a first subset and a second subset. The first subset and the second subset are mutually exclusive. The third determining module is configured to determine a set of punctured bits based on the uncapable bit set. The fourth determining module is configured to determine a set of information bits based on the uncapable bit set.

[0086] In some possible implementations, the number of multiple sub-channels and the number of LLR values ​​in the LLR value set can both be N. The second determining module can be configured to: determine the index value of the multiple sub-channels. The LLR value corresponding to the sub-channel Compare with the LLR value L(Si) corresponding to the sub-channel with index Si; and, if If it is less than L(Si), then let i = i + 1, and perform the above comparison again; if If the value of i is greater than or equal to L(Si), then the set of uncapable bits is determined based on the value of i. The first subset of the uncapable bit set includes bits with index 0 to index Si corresponding to multiple sub-channels, and the second subset includes bits with index Si corresponding to multiple sub-channels. The bit to index value The bits of N and S are both positive integers, and S is less than or equal to 1. i is an integer, i = 0, 1, ..., S, and the initial value of i is 0.

[0087] In some possible implementations, the fourth determining module can be configured to: determine the K bits corresponding to the K sub-channels with the largest LLR value, excluding the set of uncapable bits, as the information bit set, where K is a positive integer.

[0088] In some possible implementations, the third determining module may be configured to: reverse the sorting of the set of uncapable bits to obtain the set of punched bits.

[0089] Based on the same inventive concept, embodiments of this application provide a polar code decoding device. Figure 5 A structural diagram of a polar code decoding device according to an embodiment of this application is shown. Figure 5As shown, the polar code decoding device 500 may include an acquisition module 510, a de-puncturing module 520, and a decoding module 530. The acquisition module 510 is configured to acquire punctured encoded bits. The de-puncturing module 520 is configured to de-punctur the punctured encoded bits to obtain encoded bits. The acquisition module 530 is configured to decode the encoded bits.

[0090] In some possible implementations, the de-puncturing module 520 is configured to padded the LLR value of the sub-channel corresponding to the punctured bit to 0.

[0091] Based on the same inventive concept, embodiments of this application provide an electronic device. For example... Figure 6 As shown, the electronic device 600 includes a processor 610 and a memory 620. The memory 620 is connected to the processor 610 and configured to store executable instructions. The processor 610 is configured to, when executing the executable instructions, implement the polar code encoding method and / or polar code decoding method of the embodiments of this application.

[0092] Based on the same inventive concept, embodiments of this application provide a computer-readable storage medium. The storage medium stores executable instructions. When executed by a processor, the executable instructions implement the polar code encoding method and / or polar code decoding method of embodiments of this application.

[0093] Based on the same inventive concept, embodiments of this application provide a computer program product. The computer program product includes executable instructions. When executed by a processor, the executable instructions implement the polar code encoding method and / or polar code decoding method of embodiments of this application.

[0094] Those skilled in the art will appreciate that the functionality described in conjunction with the various illustrative logic blocks, modules, and algorithmic steps disclosed herein can be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functionality described by the various illustrative logic blocks, modules, and steps can be stored or transmitted as one or more instructions or codes on a computer-readable medium and executed by a hardware-based processing unit. The computer-readable medium may comprise a computer-readable storage medium, which corresponds to a tangible medium, such as a data storage medium, or a communication medium that includes any medium facilitating the transfer of a computer program from one place to another (e.g., according to a communication protocol). In this way, a computer-readable medium may substantially correspond to (1) a non-transitory tangible computer-readable storage medium, or (2) a communication medium, such as a signal or carrier wave. The data storage medium may be any available medium accessible by one or more computers or one or more processors to retrieve instructions, code, and / or data structures for implementing the techniques described in this application. A computer program product may comprise a computer-readable medium.

[0095] By way of example and not limitation, such computer-readable storage media may include RAM, ROM, EEPROM, CD-ROM or other optical disc storage devices, magnetic disk storage devices or other magnetic storage devices, flash memory, or any other medium that can be used to store desired program code in the form of instructions or data structures and is accessible by a computer. Furthermore, any connection is properly referred to as a computer-readable medium. For example, if instructions are transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. However, it should be understood that the computer-readable storage medium and data storage medium do not include connections, carrier waves, signals, or other temporary media, but are specifically addressed to non-temporary tangible storage media. As used herein, disks and optical discs include compact optical discs (CDs), laser optical discs, optical discs, digital versatile optical discs (DVDs), and Blu-ray discs, where disks typically reproduce data magnetically, while optical discs reproduce data optically using lasers. The combination of the above items should also be included within the scope of computer-readable media.

[0096] Instructions can be executed by one or more processors, such as digital signal processors (DSPs), general-purpose microprocessors, application-specific integrated circuits (ASICs), field-programmable arrays (FPGAs), or other equivalent integrated or discrete logic circuits. Therefore, the term "processor" as used herein can refer to any of the foregoing structures or any other structures suitable for implementing the techniques described herein. Additionally, in some aspects, the functionality described in the various illustrative logic blocks, modules, and steps described herein can be provided within dedicated hardware and / or software modules configured for encoding and decoding, or incorporated into combined codecs. The techniques can be fully implemented within one or more circuit or logic elements.

[0097] The technology of this application can be implemented in a wide variety of devices or apparatuses, including wireless handheld devices, integrated circuits (ICs), or a set of ICs (e.g., chipsets). The various components, modules, or units described in this application are intended to emphasize functional aspects of the apparatuses used to perform the disclosed technology, but do not necessarily need to be implemented by different hardware units. In fact, as described above, the various units can be combined with suitable software and / or firmware within a codec hardware unit, or provided via interoperable hardware units (comprising one or more processors as described above).

[0098] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.

[0099] The above description is merely an exemplary embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A polar code encoding method, characterized in that, The method includes: Obtain information data bits; Based on the information bit set, the information data bits are encoded to obtain encoded bits, wherein the information bit set includes information-carrying bits from the bits corresponding to multiple sub-channels of the polar code; and According to the punctured bit set, the encoded bits are punctured, wherein the punctured bit set includes puncturable bits among the bits corresponding to the plurality of sub-channels; The information bit set and the punctured bit set are both determined based on the log-likelihood ratio (LLR) values ​​of the plurality of sub-channels, and the information bit set and the punctured bit set are mutually exclusive. The method further includes: Determine the set of LLR values ​​for the plurality of sub-channels, wherein the set of LLR values ​​includes LLR values ​​corresponding to the plurality of sub-channels respectively; Based on the LLR value set, a set of uncapable bits is determined, wherein the set of uncapable bits includes bits that cannot carry information in the bits corresponding to the plurality of sub-channels, and the set of uncapable bits includes a first subset and a second subset, wherein the first subset and the second subset are mutually exclusive; Based on the set of uncapable bits, determine the set of punched bits; and The set of information bits is determined based on the set of uncapable bits.

2. The method according to claim 1, characterized in that, The number of the plurality of sub-channels and the number of LLR values ​​in the LLR value set are both N; The set of capability-insensitive bits is determined based on the LLR value set, including: For the index value of the multiple sub-channels The LLR value corresponding to the sub-channel and index value The LLR value corresponding to the sub-channel Comparison; and like Less than If , then let i = i + 1, and perform the comparison again; if Greater than or equal to Then, the set of uncapable bits is determined based on the value of i, wherein the first subset of the uncapable bit set includes bits with an index value of 0 to an index value of 10 from the bits corresponding to the plurality of sub-channels. The bits, and the second subset includes the bits corresponding to the plurality of sub-channels with index values ​​of The bit to index value bits; Where N and S are both positive integers, and S≤ ; i is an integer, i = 0, 1, ..., S, and the initial value of i is 0.

3. The method according to claim 2, characterized in that, Determining the information bit set based on the set of incapable bits includes: The set of information bits is determined by selecting the K bits corresponding to the K sub-channels with the largest LLR value, excluding the set of uncapable bits, from the bits corresponding to the multiple sub-channels, where K is a positive integer.

4. The method according to claim 1, characterized in that, Determining the set of punctured bits based on the set of uncapable bits includes: The set of uncapable bits is reversed and sorted to obtain the set of punched bits.

5. A polar code encoding device, characterized in that, The device includes: The acquisition module is configured to acquire information data bits. The encoding module is configured to encode the information data bits according to the information bit set to obtain encoded bits, wherein the information bit set includes information-carrying bits from the bits corresponding to multiple sub-channels of the polar code; and The punching module is configured to punch holes in the encoded bits according to the punching bit set, wherein the punching bit set includes punchable bits among the bits corresponding to the plurality of sub-channels; The information bit set and the punctured bit set are both determined based on the log-likelihood ratio (LLR) values ​​of the plurality of sub-channels, and the information bit set and the punctured bit set are mutually exclusive. The device further includes: The first determining module is configured to determine the set of LLR values ​​for the plurality of sub-channels, wherein the set of LLR values ​​includes LLR values ​​corresponding to the plurality of sub-channels respectively; The second determining module is configured to determine a set of uncapable bits based on the set of LLR values, wherein the set of uncapable bits includes bits that cannot carry information among the bits corresponding to the plurality of sub-channels, and the set of uncapable bits includes a first subset and a second subset, wherein the first subset and the second subset are mutually exclusive. The third determining module is configured to determine the set of punctured bits based on the set of uncapable bits; and The fourth determining module is configured to determine the information bit set based on the set of incapable bits.

6. The apparatus according to claim 5, characterized in that, The number of the plurality of sub-channels and the number of LLR values ​​in the LLR value set are both N; The second determining module is configured as follows: For the index value of the multiple sub-channels The LLR value corresponding to the sub-channel and index value The LLR value corresponding to the sub-channel Comparison; and like Less than If , then let i = i + 1, and perform the comparison again; if Greater than or equal to Then, the set of uncapable bits is determined based on the value of i, wherein the first subset of the uncapable bit set includes bits with an index value of 0 to an index value of 10 from the bits corresponding to the plurality of sub-channels. Bits, and the second subset includes bits with index values ​​corresponding to the plurality of sub-channels. The bit to index value bits; Where N and S are both positive integers, and S≤ ; i is an integer, i = 0, 1, ..., S, and the initial value of i is 0.

7. The apparatus according to claim 6, characterized in that, The fourth determining module is configured as follows: The set of information bits is determined by selecting the K bits corresponding to the K sub-channels with the largest LLR value, excluding the set of uncapable bits, from the bits corresponding to the multiple sub-channels, where K is a positive integer.

8. The apparatus according to claim 5, characterized in that, The third determining module is configured as follows: The set of uncapable bits is reversed and sorted to obtain the set of punched bits.

9. An electronic device, characterized in that, include: processor; A memory, connected to the processor and configured to store executable instructions; The processor is configured to, when executing the executable instructions, implement the polar code encoding method according to any one of claims 1 to 4.

10. A computer-readable storage medium, characterized in that, The storage medium stores executable instructions, wherein the executable instructions, when executed by a processor, implement the polar code encoding method according to any one of claims 1 to 4.

Citation Information

Patent Citations

  • Coding and decoding method and terminal

    CN108347302A

  • Mutual-information based recursive polar code construction

    CN110291722A