Polar code encoding and decoding method, electronic device and computer program product
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING INFORMATION SCI & TECH UNIV
- Filing Date
- 2026-05-12
- Publication Date
- 2026-08-07
AI Technical Summary
然而,当前多数方法仍采用相对独立的结构设计,信道编码与索引调制之间缺乏深度耦合,两者优势尚未得到充分发挥,系统的性能潜力仍有待进一步挖掘
Smart Images

Figure CN122533593A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to a polar code encoding and decoding method, electronic equipment, and computer program products. Background Technology
[0002] With the widespread deployment of 5G systems, communication systems face higher demands in terms of reliability and transmission efficiency. Channel coding, as a core technology for ensuring communication reliability, plays a crucial role in modern communication systems. Polar codes, a linear block code proposed by Arikan in 2009, are based on the idea of dividing the channel into reliable and unreliable sub-channels through a channel polarization process, thus prioritizing the use of reliable sub-channels for information transmission. When the code length approaches infinity, under binary input discrete memoryless channel conditions, polar codes can reach the Shannon limit using Successive Cancellation (SC) decoding, making it the only channel coding method rigorously proven to reach this limit. Due to its regular coding structure, low implementation complexity, and excellent decoding performance, polar codes have been adopted by 3GPP as the coding method for the 5G enhanced mobile broadband (eMBB) control channel and have demonstrated good performance in practical systems. Therefore, polar codes are considered one of the channel coding technologies with significant application potential in future communication systems.
[0003] On the other hand, index modulation (IM) is a novel modulation technique that has attracted widespread attention in recent years. Its core idea is to utilize index information from different resource dimensions within a communication system to transmit data, thereby enhancing the system's information carrying capacity without increasing transmission power. Depending on the resource dimension utilized, index modulation can take several typical forms, such as Orthogonal Frequency Division Multiplexing-Index Modulation (OFDM-IM), Spatial Modulation (SM) based on antenna indexes, and Code Index Modulation (CIM) implemented using spreading codes or codeword sets. These techniques expand the information carrying method by introducing additional index information dimensions beyond the modulation symbols, offering advantages such as flexible structure and strong system scalability. Existing research has shown that combining polar codes with index modulation can improve system performance to some extent. However, most current methods still employ relatively independent structural designs, lacking deep coupling between channel coding and index modulation. The advantages of both have not been fully realized, and the system's performance potential remains to be further explored. Summary of the Invention
[0004] This disclosure provides a polar code encoding / decoding method, an electronic device, and a computer program product.
[0005] According to one aspect of this disclosure, a polar code encoding and decoding method is provided, wherein polar code encoding is performed at a transmitting end and polar code decoding is performed at a receiving end. The method includes: at the transmitting end, dividing a sequence of information bits to be transmitted to determine a first bit sequence, a second bit sequence, and a third bit sequence, wherein the first bit sequence is used for index modulation, the second bit sequence is used to fill in inactive information positions determined by index modulation, and the third bit sequence is used for polar coding; inputting the first bit sequence into an index selector to determine the inactive information positions of each group in the first bit sequence and the spreading code index corresponding to each group, wherein the inactive information positions are determined based on subchannel reliability; filling the inactive information positions with the second bit sequence to determine the filled bit sequence; and mixing the filled bit sequence with the third bit sequence... Bit sequences are combined and polar-coded to determine polar codewords. At the receiving end, for the received signal containing polar codewords, each sub-block of the received signal is despread for each spreading code in the spreading code set to determine the estimated spreading code index value of the corresponding group for each sub-block. Based on the mapping relationship between the spreading code index and the first bit sequence, the first bit sequence is detected using the estimated spreading code index value of each group. Based on the mapping relationship between the first bit sequence and the inactive information position, the corresponding inactive information position and the value of the inactive information position are determined using the detected first bit sequence. The despread received signal is polar-decoded to determine the output bit sequence, and the information bit sequence is reconstructed based on the bit sequence formed by the detected first bit sequence, the value of the inactive information position, and the output bit sequence.
[0006] According to the polar code encoding and decoding method disclosed herein, the inactive information positions in the coding structure and the spreading code index of the received signal are jointly determined using the same set of first bit sequences. This achieves joint index modulation in the code domain and frequency domain, reducing system complexity and improving information transmission efficiency. At the receiving end, the spreading code index is estimated by despreading the received signal sub-blocks using the spreading code, and the first bit sequence is recovered by reverse transformation. This makes the recovery of index information fast and accurate, and allows for the simultaneous determination of the inactive information positions and their values, thereby decoupling index detection from subsequent polar decoding. Without sacrificing reliability, the overhead caused by repeated encoding is avoided, receiver design is simplified, detection complexity and decoding delay are reduced, and the overall information transmission efficiency of the system is improved.
[0007] According to at least one embodiment of the polar code encoding and decoding method of this disclosure, before inputting the first bit sequence into an index selector to determine the inactive information position of each group in the first bit sequence and the spreading code index corresponding to each group, the method includes: performing cyclic redundancy check encoding on the first bit sequence to determine the encoded first bit sequence, which is then input into the index selector to determine the inactive information position and the spreading code index.
[0008] According to at least one embodiment of the polar code encoding and decoding method of this disclosure, the first bit sequence is input into an index selector to determine the inactive information position of each group in the first bit sequence and the spreading code index corresponding to each group, including: dividing the first bit sequence into multiple groups; selecting an inactive information position from the unfrozen positions of each group, wherein the unfrozen positions are sorted based on subchannel reliability; selecting a spreading code index from a spreading code set for each group, wherein the spreading code set is determined based on orthogonal Walsh-Hadamard codes; and the inactive information position and the spreading code index are jointly determined by bits within the same group.
[0009] According to at least one embodiment of the polar code encoding and decoding method of this disclosure, merging the padded bit sequence with the third bit sequence for polar encoding to determine the polar code codeword includes: merging the padded bit sequence and the third bit sequence according to the polar code encoding structure to determine the merged bit sequence, wherein the padded bit sequence occupies the determined inactive information positions, and the third bit sequence occupies the remaining unfrozen positions; adding cyclic redundancy check bits to the merged bit sequence, and performing a linear transformation through the polar code generation matrix to determine the polar code codeword.
[0010] According to at least one embodiment of the polar code encoding and decoding method of this disclosure, determining a received signal containing polar code words includes: modulating the polar code words using binary phase shift keying to determine a modulation symbol sequence; dividing the modulation symbol sequence into multiple sub-blocks, each sub-block corresponding to a group; and selecting a spreading code from a spreading code set according to a corresponding spreading code index for spreading processing in each sub-block to determine the received signal containing polar code words.
[0011] According to at least one embodiment of the polar code encoding and decoding method of this disclosure, for a received signal containing polar code codes, each sub-block of the received signal is despread with each spreading code in the spreading code set to determine the spreading code index estimate of the corresponding group of each sub-block, including: dividing the received signal into multiple sub-blocks according to the number of groups; for each sub-block, despreading the sub-block with each spreading code in the spreading code set to determine the correlation value of each spreading code in the spreading code set; and estimating a target spreading code from the spreading code set using the maximum correlation criterion based on the correlation value of each spreading code in the spreading code set, wherein the spreading code index corresponding to the target spreading code is the spreading code index estimate.
[0012] According to at least one embodiment of the polar code encoding and decoding method of this disclosure, before determining the corresponding inactive information position and the value of the inactive information position based on the mapping relationship between the first bit sequence and the inactive information position through the detected first bit sequence, the method includes: performing cyclic redundancy check on the detected first bit sequence to determine the first bit sequence that passes the check.
[0013] According to at least one embodiment of the polar code encoding and decoding method of this disclosure, polar decoding is performed on the despread received signal to determine the output bit sequence, and the information bit sequence is reconstructed based on the detected first bit sequence, the bit sequence formed by the values of the inactive information positions, and the output bit sequence. The method includes: despreading the received signal; inputting the despread received signal into a target decoder for polar decoding to determine the output bit sequence; extracting the inactive information positions of each group from the detected first bit sequence, thereby obtaining the corresponding inactive information bit values based on the inactive information positions to form a bit sequence; and reconstructing the information bit sequence based on the detected first bit sequence, the bit sequence formed by the values of the inactive information positions, and the output bit sequence.
[0014] According to at least one embodiment of the polar code encoding and decoding method disclosed herein, the polar code encoding method applied at the transmitting end includes: dividing the information bit sequence to be transmitted to determine a first bit sequence, a second bit sequence, and a third bit sequence, wherein the first bit sequence is used for index modulation, the second bit sequence is used as inactive information bits, and the third bit sequence is used for polar coding; performing cyclic redundancy check encoding on the first bit sequence to determine the encoded first bit sequence; inputting the encoded first bit sequence into an index selector, wherein the index selector determines the inactive information position of each group and the spreading code index corresponding to each group according to a preset mapping relationship, wherein each inactive information position is a relatively reliable position selected from each group of unfrozen positions based on sub-channel reliability sorting; filling the determined inactive information positions with the second bit sequence to determine the filled bit sequence; merging the filled bit sequence with the third bit sequence for polar coding to determine the polar code codeword; dividing the polar code codeword into multiple sub-blocks, wherein each sub-block selects a corresponding spreading code from the spreading code set according to the corresponding spreading code index for spreading processing to form a transmitted signal and send it to the receiving end.
[0015] According to at least one embodiment of the polar code encoding and decoding method disclosed herein, a polar code decoding method applied at a receiving end includes: responding to a transmitted signal from a transmitting end, dividing the received transmitted signal into sub-blocks, despreading each spreading code in the spreading code set for each sub-block, calculating the correlation value of each despreading result, and determining the spreading code index estimate of each group; detecting the first bit sequence based on the mapping relationship between the spreading code index and the first bit sequence using the spreading code index estimate of each group; performing cyclic redundancy check on the detected first bit sequence, and if the check passes, determining that the detected first bit sequence is valid index information; determining the inactive information position of the polar code in each group and the value of the inactive information bit at the corresponding position based on the valid index information; inputting the despread transmitted signal into a target decoder, determining the output bit sequence, and reconstructing the information bit sequence based on the valid index information, the bit sequence formed by the values of the inactive information positions, and the output bit sequence.
[0016] According to another aspect of this disclosure, an electronic device is provided, comprising: a memory storing execution instructions; and a processor executing the execution instructions stored in the memory, causing the processor to perform a polar code encoding / decoding method according to any embodiment of this disclosure.
[0017] According to another aspect of this disclosure, a readable storage medium is provided, wherein executable instructions are stored therein, which, when executed by a processor, are used to implement the polar code encoding / decoding method of any embodiment of this disclosure.
[0018] According to another aspect of this disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements a polar code encoding / decoding method according to any embodiment of this disclosure. Attached Figure Description
[0019] The accompanying drawings illustrate exemplary embodiments of the present disclosure and, together with the description thereof, serve to explain the principles of the present disclosure. These drawings are included to provide a further understanding of the present disclosure and are incorporated in and constitute a part of this specification.
[0020] Figure 1 This is a schematic diagram illustrating an application scenario of a polar code encoding / decoding method according to one embodiment of the present disclosure.
[0021] Figure 2 This is a schematic diagram of the overall process of a polar code encoding and decoding method according to one embodiment of the present disclosure.
[0022] Figure 3 This is a flowchart illustrating the process of determining polar codewords in a polar code encoding and decoding method according to one embodiment of the present disclosure.
[0023] Figure 4 This is a schematic flowchart illustrating the process of determining a received signal containing polar code codewords in a polar code encoding / decoding method according to one embodiment of the present disclosure.
[0024] Figure 5 This is a flowchart illustrating the process of determining the spread spectrum code index estimate of each sub-block corresponding group in a polar code encoding and decoding method according to one embodiment of the present disclosure.
[0025] Figure 6 This is a flowchart illustrating the reconstruction of an information bit sequence in a polar code encoding / decoding method according to one embodiment of the present disclosure.
[0026] Figure 7 This is a flowchart illustrating a polar code encoding method applied to a transmitting end according to one embodiment of the present disclosure.
[0027] Figure 8 This is a flowchart illustrating a polar code decoding method applied to a receiving end according to one embodiment of the present disclosure.
[0028] Figure 9 This is a block diagram of a transmitter system for a polarization coding selection index modulation method according to an embodiment of this disclosure.
[0029] Figure 10 This is an example diagram of the polarization coding selection index modulation method according to one embodiment of the present disclosure.
[0030] Figure 11 This is a schematic diagram of the index set and bit mapping relationship of a polarization coding selection index modulation method according to an embodiment of this disclosure.
[0031] Figure 12 This is a receiver system block diagram of a polarization coding selection index modulation method according to an embodiment of the present disclosure.
[0032] Figure 13 This is a decoding example diagram of a polarization coding selection index modulation method according to one embodiment of the present disclosure.
[0033] Figure 14 This is a block diagram of a transmitting end system for a polar code encoding / decoding method according to one embodiment of the present disclosure.
[0034] Figure 15 This is a block diagram of a receiving end system for a polar code encoding / decoding method according to one embodiment of the present disclosure.
[0035] Figure 16 This is a schematic diagram of a spreading code index detector for a polar code encoding / decoding method according to one embodiment of the present disclosure.
[0036] Figure 17 This is a comparison chart of the BER performance of a polar code encoding and decoding method according to one embodiment of the present disclosure.
[0037] Figure 18 This is a performance BLER comparison chart of a polar code encoding and decoding method according to one embodiment of the present disclosure.
[0038] Figure 19 This is a schematic structural block diagram of a polar code encoding / decoding apparatus according to one embodiment of the present disclosure.
[0039] Figure 20 This is a schematic structural block diagram of an electronic device according to one embodiment of the present disclosure. Detailed Implementation
[0040] The present disclosure will now be described in further detail with reference to the accompanying drawings and examples. It should be understood that the specific examples described herein are for illustrative purposes only and are not intended to limit the scope of the disclosure. Furthermore, it should be noted that, for ease of description, only the parts relevant to the present disclosure are shown in the accompanying drawings.
[0041] It should be noted that, where there is no conflict, the embodiments and features described in this disclosure can be combined with each other. The technical solutions of this disclosure will now be described in detail with reference to the accompanying drawings and embodiments.
[0042] In practical wireless channels such as Rayleigh fading, to ensure the reliability of index position detection, traditional methods must repeatedly transmit the same index configuration in multiple consecutive polarization code blocks, and recover the index information by performing a full combinatorial traversal and consistency search on multiple sets of decoding results at the receiver. This process not only wastes spectrum resources due to redundant transmission and reduces the effective data rate of the system, but also causes the receiver's computational overhead and decoding latency to increase exponentially with the number of packets, making it difficult to meet the real-time and hardware implementation requirements of high-reliability, low-latency scenarios such as industrial control and vehicle networking.
[0043] To address this, this disclosure proposes a polar code encoding and decoding method that simultaneously maps the same set of first bit sequences to the selection of inactive information positions in the frequency domain and the selection of spreading code indexes in the code domain, enabling the receiver to utilize the orthogonality of the spreading codes. Only a single correlation despreading detection is needed to quickly and accurately recover the index information and simultaneously determine the positions and values of inactive information, eliminating the need for consistent traversal searches and combination checks of multiple sets of repeated decoding results in traditional methods. This reduces the index detection complexity from exponential to linear, decreasing decoding latency and hardware implementation overhead, meeting the stringent real-time requirements of industrial control, vehicle networking, and other scenarios. Furthermore, by eliminating redundant transmission caused by repeated encoding, only a single polar coding process is required under the same index carrying capacity, effectively improving the information carrying efficiency and spectral utilization within a unit transmission block, achieving a balance of high reliability, low latency, and high spectral efficiency under Rayleigh fading channel conditions.
[0044] To facilitate description and make the technical solutions of this disclosure easier to understand, the terminology of this disclosure will be explained before describing the technical solutions of this disclosure.
[0045] A bit sequence is a data stream composed of binary digits (0 or 1) arranged in a specific order, and it is the basic representation of information in a digital communication system.
[0046] Inactive information positions are specific channel positions selected from unfrozen positions in the polar code coding structure, used to carry index modulation information rather than directly transmitting ordinary information bits.
[0047] Subchannels are a series of virtual channels split from the original physical channel through the channel polarization process. The reliability of subchannels varies, with some tending to be completely reliable and others tending to be completely unreliable.
[0048] Polar codewords are binary sequences generated through a polar coding process and used for actual transmission.
[0049] Figure 1 This is a schematic diagram illustrating an application scenario of a polar code encoding / decoding method according to one embodiment of this disclosure. For example... Figure 1 As shown, the device may include a transmitter 100 and a receiver 200. The transmitter may be a device with wireless transmission capabilities, such as a base station, user equipment (UE), IoT terminal, or satellite communication payload. The receiver may be a device with wireless reception capabilities, such as a mobile terminal, vehicle communication module, industrial control unit, or base station receiver, used to receive signals transmitted via a wireless channel. After processing the bit sequence of information to be transmitted, the transmitter sends the signal to the receiver, which then decodes the received signal.
[0050] Figure 2 A schematic diagram illustrating the overall flow of a polar code encoding / decoding method according to one embodiment of this disclosure is shown. Figure 2 The method shown includes steps S210 to S280, which involve polar code encoding at the transmitting end and polar code decoding at the receiving end. This method can be executed by a base station, an IoT node, a vehicle-mounted communication unit, or industrial control equipment, etc.
[0051] In step S210, at the transmitting end, the information bit sequence to be transmitted is divided to determine the first bit sequence, the second bit sequence, and the third bit sequence. The first bit sequence is used for index modulation, the second bit sequence is used to fill the inactive information positions determined by index modulation, and the third bit sequence is used for polar coding.
[0052] The information bit sequence to be transmitted is divided into three functionally independent sub-sequences: the first bit sequence undertakes the index modulation function and is used to control the coding structure and spreading code selection; the second bit sequence serves as inactive information bits and is used to compensate for the rate loss caused by index selection; the third bit sequence serves as ordinary information bits and directly participates in polarization coding.
[0053] In step S220, the first bit sequence is input into the index selector to determine the inactive information position of each group in the first bit sequence and the spreading code index corresponding to each group. The inactive information position is determined based on the sub-channel reliability.
[0054] The first bit sequence is input into the index selector, and the inactive information positions and spreading code indices of each group are determined according to a predefined mapping rule. Specifically, the inactive information positions are selected from the unfrozen positions based on sub-channel reliability ranking, and the spreading code indices are selected from the spreading code set; both are jointly determined by the first bit of the same group.
[0055] Preferably, before inputting the first bit sequence into the index selector to determine the inactive information position of each group in the first bit sequence and the spreading code index corresponding to each group, the method includes: performing cyclic redundancy check encoding on the first bit sequence to determine the encoded first bit sequence, which is then input into the index selector to determine the inactive information position and the spreading code index.
[0056] Specifically, the first bit sequence is divided into multiple groups, and an inactive information position is selected from the unfrozen positions of each group. The unfrozen positions are sorted based on the sub-channel reliability. A spreading code index is selected from the spreading code set for each group. The spreading code set is determined based on orthogonal Walsh-Hadamard codes. The inactive information position and the spreading code index are jointly determined by the bits within the same group.
[0057] In step S230, the second bit sequence is filled into the inactive information positions to determine the filled bit sequence.
[0058] The second bit sequence (i.e., the inactive information bits, IIB) is filled into the inactive information positions (IUP) determined by the first bit sequence. The inactive information positions are special positions selected from the unfrozen positions that are not directly used for traditional information mapping, but are specifically used for the index modulation mechanism.
[0059] In step S240, the padded bit sequence is merged with the third bit sequence for polar coding to determine the polar code codeword.
[0060] The bit sequence filled with the second bit sequence is merged with the third bit sequence, which carries the main information, to form a complete polar-coded input sequence. Then, this polar-coded input sequence is linearly transformed using the polar code generator matrix to determine the polar codeword.
[0061] In step S250, at the receiving end, for the received signal containing polar code codewords, each sub-block in the received signal is despread for each spreading code in the spreading code set, and the estimated value of the spreading code index of the corresponding group of each sub-block is determined.
[0062] The received signal is divided into multiple sub-blocks according to the grouping. For each sub-block, each spreading code in the spreading code set is used to despread it, and the corresponding correlation value of each spreading code is calculated. The spreading code corresponding to the largest correlation value is selected, and the spreading code index used at the transmitting end for this sub-block is determined. The estimated value of the spreading code index is then determined.
[0063] In step S260, the first bit sequence is detected by the spread code index estimate of each group based on the mapping relationship between the spread code index and the first bit sequence.
[0064] Based on a mapping table or function agreed upon in advance at both the transmitting and receiving ends, the spread code index estimate obtained by spreading code correlation detection is transformed one-to-one back to the first bit sequence (i.e., index bits) used for index modulation.
[0065] In step S270, based on the mapping relationship between the first bit sequence and the inactive information position, the values of the corresponding inactive information position and the inactive information position are determined by the detected first bit sequence.
[0066] Based on the mapping relationship between the first bit sequence and the inactive information position, the inactive information position in the coding structure is determined by the recovered first bit sequence, and the value of the corresponding inactive information position is extracted from the received signal based on the inactive information position.
[0067] Preferably, before determining the values of the corresponding inactive information positions based on the mapping relationship between the first bit sequence and the inactive information positions through the detected first bit sequence, the method includes: performing a cyclic redundancy check on the detected first bit sequence, determining the first bit sequence that passes the check, and using the first bit sequence that passes the check to determine the values of the corresponding inactive information positions.
[0068] In step S280, polarization decoding is performed on the despread received signal to determine the output bit sequence, and the information bit sequence is reconstructed based on the first bit sequence after detection, the bit sequence formed by the values of the inactive information positions, and the output bit sequence.
[0069] A bit sequence is constructed using the previously recovered first bit sequence and the inactive information positions and their values determined by the first bit sequence. The output bit sequence is then fused with this constructed bit sequence to reconstruct the initial information bit sequence.
[0070] Therefore, the polar code encoding and decoding method disclosed herein couples index modulation with polar codes, using the same set of first bits to jointly determine the positions of inactive information in the encoding structure and the spreading code index of the transmitted signal. This enables efficient and reliable information transmission in a single polar coding process, solving the problems of low information transmission efficiency and high receiver detection complexity caused by repeated encoding in existing technologies. Furthermore, at the receiver, there is no need to perform consistency searches on multiple sets of decoding results; instead, the spreading code index can be directly estimated through simple despreading operations and correlation detection, and the index bits and corresponding inactive information bit positions can be recovered in reverse, achieving prior determination of index information and improving the system's information transmission efficiency and real-time processing capabilities.
[0071] Regarding step S240, the padded bit sequence is merged with the third bit sequence for polar coding to determine the polar codeword. In some embodiments of this disclosure, it may include, for example... Figure 3 Steps S2401 to S2402 are shown.
[0072] In step S2401, the padded bit sequence and the third bit sequence are merged according to the polar code encoding structure to determine the merged bit sequence. The padded bit sequence occupies the determined inactive information position, and the third bit sequence occupies the remaining unfrozen position.
[0073] For the inactive information positions determined by the index selector in the first bit sequence, the bit sequence filled with the second bit sequence is placed into the corresponding inactive information positions in the unfrozen positions of the polar code. Then, the third bit sequence is filled into all the remaining unfrozen positions to form a complete bit sequence that conforms to the polar code encoding rules.
[0074] In step S2402, cyclic redundancy check bits are added to the merged bit sequence, and a linear transformation is performed using the polar code generation matrix to determine the polar codeword.
[0075] Cyclic Redundancy Check (CRC) bits are added to the merged bit sequence to enhance the error detection capability of the decoder. This input sequence, including the CRC bits, is then linearly transformed with the polar code generator matrix to obtain the polar codeword.
[0076] Therefore, by integrating index modulation information with information transmission bits while ensuring the integrity of the coding structure, the error correction performance and transmission reliability of polar coding are improved.
[0077] In some embodiments of this disclosure, determining the received signal containing polar codewords may include, for example: Figure 4 Steps S410 to S430 are shown.
[0078] In step S410, the polar codewords are modulated using binary phase shift keying to determine the modulation symbol sequence.
[0079] Each binary bit (0 or 1) in the determined polar code codeword is mapped to a modulation symbol of binary phase shift keying (BPSK) to determine the modulation symbol sequence.
[0080] In step S420, the modulation symbol sequence is divided into multiple sub-blocks, and each sub-block corresponds to a group.
[0081] The modulation symbol sequence is divided into multiple independent sub-blocks according to a preset number of groups. Each sub-block physically corresponds to a group and is used to carry the spreading code selected for that group.
[0082] In step S430, each sub-block selects a spreading code from the spreading code set according to the corresponding spreading code index for spreading processing, and determines the received signal containing polar code codewords.
[0083] For each sub-block, a spreading code index is selected from a predefined set of spreading codes. This spreading code is then used to perform element-wise multiplication (i.e., spreading operation) on the modulation symbol sequence of the entire sub-block, expanding the narrowband signal to a wider frequency band. All sub-block signals that have undergone spreading are combined to determine the received signal containing the polar codeword. This received signal carries the index information of the code domain and frequency domain in either the time or frequency domain.
[0084] Therefore, by mapping polar codewords to modulation symbol sequences using binary phase-shift keying modulation (BPSK), and dividing the modulation symbol sequences into multiple sub-blocks, each sub-block selects a spreading code based on its corresponding spreading code index for spreading processing. This achieves the joint transmission of code domain index information and frequency domain modulation symbols. Without increasing additional transmit power, the spreading code is used to select additional index information for transmission, while processing gain is obtained through spectrum spreading, thereby improving the system's anti-interference capability and information transmission efficiency under fading channel conditions.
[0085] Regarding step S250, at the receiving end, for the received signal containing polar code codewords, each sub-block in the received signal is despread for each spreading code in the spreading code set to determine the estimated spreading code index value of the corresponding group for each sub-block. In some embodiments of this disclosure, it may include, for example... Figure 5 Steps S2501 to S2503 are shown.
[0086] In step S2501, the received signal is divided into multiple sub-blocks according to the number of groups.
[0087] In step S2502, for each sub-block, the sub-block is despread with each spreading code in the spreading code set to determine the correlation value of each spreading code in the spreading code set.
[0088] For each sub-block, correlation operations are performed between the sub-block and each spreading code in the spreading code set to calculate the correlation value between each spreading code and the signal of the sub-block.
[0089] In step S2503, based on the correlation value of each spreading code in the spreading code set, the target spreading code is estimated from the spreading code set using the maximum correlation criterion, and the spreading code index corresponding to the target spreading code is the spreading code index estimate.
[0090] Because of the orthogonality between spreading codes, the spreading code in actual use exhibits the largest correlation peak, while the correlation values of other spreading codes are close to zero. By comparing the correlation outputs of all spreading codes, the estimated index value of the spreading code used by the transmitter for this sub-block is determined.
[0091] Therefore, by dividing the received signal into multiple sub-blocks according to the number of groups and utilizing the orthogonality of the spreading codes to perform correlation despreading detection on each sub-block, the estimated index value of the spreading code actually used in each group can be accurately identified without relying on the consistency search of multiple sets of repeated decoding. This decouples the index recovery process from polarization decoding, reducing the computational complexity and decoding latency at the receiver, while ensuring the reliability of index detection through a peak decision mechanism.
[0092] Regarding step S280, polarization decoding is performed on the despread received signal to determine the output bit sequence, and the information bit sequence is reconstructed based on the detected first bit sequence, the bit sequence formed by the values of the inactive information positions, and the output bit sequence. In some embodiments of this disclosure, it may include, for example... Figure 6 Steps S2801 to S2803 are shown.
[0093] In step S2801, the received signal is despread.
[0094] In step S2802, the despread received signal is input to the target decoder for polarization decoding to determine the output bit sequence, and the inactive information position of each group is extracted from the detected first bit sequence, thereby obtaining the corresponding inactive information bit value based on the inactive information position to form a bit sequence.
[0095] The despread signal is input into a CA-SCL decoder for polarization decoding to obtain an output bit sequence containing the estimated values of all position bits. Simultaneously, the inactive information positions of each group are determined by looking up a table based on the detected first bit sequence, and the bit values at the inactive information positions are extracted from the output bit sequence as inactive information bits, thus forming the bit sequence.
[0096] In step S2803, the information bit sequence is reconstructed based on the first bit sequence after detection, the bit sequence formed by the values of the inactive information positions, and the output bit sequence.
[0097] Using the detected first bit sequence as the basis for reconstruction, the bit values located at the determined inactive information positions in the output bit sequence are used to form an independent bit sequence. The first bit sequence, the bit sequence formed by the values at the inactive information positions, and the input bit sequence from the polarization decoding output are then sequentially concatenated according to the original partitioning rules to completely reconstruct the initial bit sequence of the information to be transmitted.
[0098] Therefore, the receiving end recovers the first bit sequence and determines the position and value of the inactive information through correlation detection of the spreading code, thus realizing the prior determination of the index information. By sequentially concatenating the known first bit sequence, the inactive information bits extracted from the decoding result, and the main information bits, the original information can be reconstructed without loss, reducing computational overhead and decoding latency. This improves the system's information transmission efficiency and real-time performance while ensuring high reliability.
[0099] In one specific embodiment, a polar code encoding method is applied to the transmitting end. In some embodiments of this disclosure, it may include, for example... Figure 7 Steps S710 to S760 are shown.
[0100] In step S710, the information bit sequence to be transmitted is divided to determine the first bit sequence, the second bit sequence, and the third bit sequence. The first bit sequence is used for index modulation, the second bit sequence is used as inactive information bits, and the third bit sequence is used for polar coding.
[0101] In step S720, the first bit sequence is cyclic redundancy check (CRC) encoded to determine the encoded first bit sequence.
[0102] In step S730, the encoded first bit sequence is input into the index selector. The index selector determines the inactive information position of each group and the spreading code index corresponding to each group according to the preset mapping relationship. Each inactive information position is a relatively reliable position selected from the unfrozen positions of each group after sorting based on the sub-channel reliability.
[0103] In step S740, the second bit sequence is filled into the determined inactive information positions to determine the filled bit sequence.
[0104] In step S750, the padded bit sequence is merged with the third bit sequence for polar coding to determine the polar codeword.
[0105] In step S760, the polar code codeword is divided into multiple sub-blocks. Each sub-block selects the corresponding spreading code from the spreading code set according to the corresponding spreading code index, performs spreading processing, forms a transmission signal, and sends it to the receiving end.
[0106] Therefore, the first bit sequence transmits additional information through index modulation, the second bit sequence fills inactive positions to increase capacity, and the third bit sequence is polar-coded to ensure reliability. Combining cyclic redundancy check (CRC) and position selection based on sub-channel reliability enhances the error resilience of index modulation. Spreading the polar codewords in blocks improves information transmission efficiency (i.e., the ratio of effective information bits to total coded bits per unit transmission block) and assists the receiver in accurately recovering multiple information streams through spreading code indexing, achieving highly reliable and efficient joint modulation and coding transmission.
[0107] In one specific embodiment, a polar code decoding method is applied at the receiving end. In some embodiments of this disclosure, it may include, for example... Figure 8 Steps S810 to S850 are shown.
[0108] In step S810, in response to the transmission signal from the transmitting end, the received transmission signal is divided into sub-blocks, each spreading code in the spreading code set is despread for each sub-block, and the correlation value of each despreading result is calculated to determine the estimated value of the spreading code index for each group.
[0109] In step S820, the first bit sequence is detected by the spread code index estimate of each group based on the mapping relationship between the spread code index and the first bit sequence.
[0110] In step S830, a cyclic redundancy check is performed on the detected first bit sequence. If the check passes, the detected first bit sequence is determined to be valid index information.
[0111] Preferably, if the cyclic redundancy check fails, the current spreading code index estimation is considered unreliable. In this case, the remaining spreading codes in the spreading code set are re-estimated, and the cyclic redundancy check process is repeated until the check passes.
[0112] In step S840, based on the valid index information, the inactive information position of the polar code in each group and the value of the inactive information bit at the corresponding position are determined.
[0113] In step S850, the transmitted signal is despread and input to the target decoder to determine the output bit sequence. The information bit sequence is then reconstructed based on the bit sequence formed by the effective index information and the values of the inactive information positions, and the output bit sequence.
[0114] Therefore, by utilizing the correlation despreading and index estimation of the spreading code set, combined with cyclic redundancy check (CRC), the first bit sequence implicit in the spreading code index at the transmitter is reliably recovered, effectively resisting channel interference. Based on the verified index information, the positions and bit values of inactive information are accurately determined, providing prior information for polar code decoding. The original information bit sequence is reconstructed by jointly using the despreading output and index extraction results, achieving accurate separation and recovery of the layered modulation and coding information at the transmitter, improving the overall detection reliability and information transmission efficiency of the system under low to medium signal-to-noise ratios.
[0115] The technical solution of this disclosure will be further explained below with specific implementation and application examples.
[0116] To improve the reliability of index modulation systems, channel coding and index modulation are typically cascaded. Polar Coded Selected Index Modulation (PC-SIM) further integrates polar codes and index modulation by introducing an index selection mechanism into the unfrozen positions of the polar code. The transmitter for PC-SIM is as follows: Figure 9 As shown. Assume the length of the transmitted information bit sequence is... .like Figure 9 As shown, information bits It is divided into three parts. Among them, the front Bit (i.e., the first bit sequence) is used for index modulation to determine the inactive unfrozen positions (IUP) in the polar code; length Information sequence (i.e., the second bit sequence) is used to fill the selected inactive information positions as inactive information bits (IIBs); the remaining... Bit (i.e., the third bit sequence) is used as the input bits for polarization coding.
[0117] Three-part bit sequence , and At the transmitting end, each component enters its corresponding processing module. First, the length... The index information sequence (i.e., the first bit sequence) is encoded using Cyclic Redundancy Check (CRC) and has a length of [length missing]. Subsequently, the sequence An input index selector is used to determine the positions of inactive information in the polar code. Effective error detection is provided during the index selection phase by introducing cyclic redundancy check constraints at the index bit layer.
[0118] To enhance the robustness of indexed modulation, existing methods preferentially select from [the relevant data] in each group. From the candidate positions, the more reliable position is selected as the candidate inactive information position. This leverages the inherent reliability differences of unfrozen positions to improve overall performance while maintaining controllable decoding complexity. Therefore, the... The set of indices for each group can be further represented as: (1.1) in, , , . This represents a non-frozen unknown that can still be used for information transmission after removing the cyclic redundancy check (CRC) bits. The proportion of unfrozen positions participating in index modulation reflects the system's selection of position reliability. In specific implementations, the reliability of unfrozen positions can be evaluated using polar code construction methods such as Gaussian Approximation (GA) or Bhattacharyya parameters. Based on the obtained reliability metric, existing methods rank candidate unfrozen positions in descending order of reliability within each group and select the top-ranked positions. Each position participates in index modulation.
[0119] The selection of inactive information positions is determined by the index bit sequence. To ensure the stability of coding performance, in the... The inactive information location index within each group is To maintain consistency in group polar codes, the index bit length can be expressed as: (1.2) Since only a portion of the unfrozen positions participate in index modulation, to compensate for the resulting rate loss, a sequence of inactive information bits is introduced and filled into the selected inactive information positions. To maintain the consistency of the coding structure, within each group... The same value is taken in the group polar code. Correspondingly, the inactive information bits... The length is: (1.3) the remaining bit sequence Preparing for polarity encoding. Matrix It can be represented as: (1.4) in, , , .
[0120] In determining After grouping and encoding the inactive information positions and their corresponding inactive information bits, the bit sequence is modulated according to the selected index. The filling process is performed, and the result can be described as follows: (1.5) in, , .
[0121] The total number of transmittable bits can be expressed as: (1.6) Figure 10 Described , , , and The encoding process involves first sorting the unfrozen positions by reliability, then selecting the two most reliable positions from each group to participate in index modulation. The corresponding index set and specific mapping relationship are as follows: Figure 11 As shown.
[0122] In this example, the index bit sequence The length is: Inactive information bit sequence The length is: In this example, let's assume that after adding cyclic redundancy check bits... Become The sequence of inactive information bits used for polarization coding for , It can be represented as: (1.7) Group 1 The first index bit is 0, which determines that the inactive information is located in the first bit. The first bit indicates that the first inactive information bit is 0.
[0123] Group 2, The second index bit is 0, and the corresponding inactive information position is the 7th bit. The second bit indicates that the 7th bit of inactive information is 1.
[0124] Similarly, the inactive information position in group 3 is bit 11, and the inactive information bit is 1. The inactive information position in group 4 is bit 13, and the inactive information bit is 1.
[0125] In this example, determine After grouping the inactive information positions and their corresponding inactive information bits, the bit sequence is... The filling is performed, and the filling result is as follows. It can be represented as: (1.8) Subsequently, Information sequence Each is subjected to a cyclic redundancy check, resulting in... Polar-coded input sequence. Polar coding of this sequence yields... The first polar codeword. (The rest of the text appears to be a list of codes and symbols, possibly related to polarization or codeword individual code characters For example, its bit sequence is modulated using binary phase shift keying (BPSK) to obtain the corresponding modulation symbol sequence, and its constellation mapping relationship can be expressed as: (1.9) in, . It is a binary phase-shift keying constellation. Following that, the symbol sequence... The Walsh-Hadamard Transform (WHT) is introduced. Correspondingly, the Inverse Walsh-Hadamard Transform (IWHT) is used at the receiver to recover the signal.
[0126] Figure 12 A receiver block diagram for the polarization-coded selection index modulation (PCM) method is presented. The received signal is demodulated using IWHT and FFT. Subsequently, it is decoded using CA-SCL decoding, and the decoding result is shown. It can be represented as: (1.11) The index detection module needs to determine the location of the inactive information and its corresponding inactive information bits. This is because they are in the same group. Internal, repeated encoding The polar code bit sequence uses the same distribution of inactive information positions and a consistent inactive information bit filling rule. If a certain position is consistently determined to have the same bit value (0 or 1) in all the decoding results, then that position can be identified as an inactive information position, and that bit value is the corresponding inactive information bit. Based on the above decision criterion, the index information detection process of the proposed polar coding selection index modulation method can be summarized as follows: Initial estimate: For the th Consider the decoding results of blocks within the same block obtained by repeated encoding. If a certain position in the decoded bit sequence is in this... If all results in a group are determined to have the same bit value (both "0" or both "1"), then that position can be identified as a potential inactive information position, and that bit value is the corresponding inactive information bit. Based on this, all position indices that satisfy the above consistency decision condition are included in the... Candidate set of groups: (1.12) in, It is the first Group candidate index set. Corresponding padding bits. It can be regarded as an estimate of the inactive information bits. This represents the smallest function.
[0127] Filtering: For the first If the statistic corresponding to a candidate position in a group does not meet the decision condition (i.e., ...), the grouping is such that if the statistic corresponding to a certain candidate position ... If a position is found to be in a certain position, it is removed, resulting in a filtered candidate set. .
[0128] Combination: From the candidate sets of each group Selecting one inactive information position from each of the following can form a sequence of lengths. The distribution of candidate inactive information locations is denoted as... Let the size of each candidate set be... Each of them This corresponds to a unique combination of inactive information locations. Clearly, when... When the index is large, the number of combinations required for index detection will increase significantly, leading to a rapid increase in detection complexity.
[0129] The proposed polar coding selection index modulation method introduces a reliability-based constraint during the selection of inactive information positions at the encoder. In practice, most candidate sets contain only one inactive information position, which effectively suppresses the growth of the combination size and reduces the complexity of index detection.
[0130] Selection: For each possible distribution of inactive information locations Perform index demapping operation, denoted as Recover the index bit sequence Afterwards, the receiver... Perform cyclic redundancy check and output the estimated result. .
[0131] It should be noted that when the cyclic redundancy check of the index bits fails or no valid configuration is found in the distribution of candidate inactive information positions, it indicates that the candidate set... The construction may contain omissions. To address this, the proposed polar coding selection index modulation method enhances robustness by expanding the candidate set: if... If there are no completely identical positions in the group decoding result, then those positions will be... The positions in the group results where the judgments are consistent were supplemented. .
[0132] Here, parameters are used. , , , and Taking the polar coding selection index modulation decoding process as an example ( Figure 13 This will be explained further. After CA-SCL decoding, according to... Figure 11 The index set and its bit mapping relationship. According to equation (1.12), the set of candidate inactive information positions for each group can be further obtained. A typical decoding process is as follows: Figure 13 As shown.
[0133] In this example, the initial estimated inactivation information locations for groups 1 and 2 are respectively and Combining Figure 11 It can be seen that the corresponding index set and They are respectively and The candidate inactive information location sets for groups 1 and 2 are respectively... and The index bits obtained by demapping are all "0", and the corresponding inactive information bits are "0" and "1" respectively.
[0134] It should be noted that the third group is in continuous... No consistent inactive information position was found in the decoding results, therefore the receiver expanded the candidate set to include... The positions of the judgments that are consistent among the results. After filtering, the following were obtained: The corresponding demapping index bits and non-activation information bits are "1" and "1" respectively.
[0135] For group 4, the initial candidate set is: By combining index set constraints, invalid positions can be eliminated, resulting in... In this case, there are two possible configurations, each corresponding to different values for the index bit and the inactive information bit.
[0136] Case 1: The inactive information position in group 4 is 13. Therefore, the corresponding demapping index bit and the inactive information bit are "0" and "1" respectively.
[0137] Case 2: The inactive information position in group 4 is 14. Therefore, the corresponding demapping index bit and the inactive information bit are "1" and "0" respectively.
[0138] Therefore, there are two possible distributions of inactive information locations: and .Then, and Perform cyclic redundancy check. If... Cyclic redundancy check (CRC) determines the index bit sequence as follows: The corresponding inactive information bit sequence .
[0139] Furthermore, utilizing The location of inactive information in each group can be determined, and the corresponding filling sequence can be extracted. and the bit sequence obtained from decoding By combining these, the final estimated information bit sequence can be reconstructed. .
[0140] Therefore, the transmitter of the polar code encoding and decoding method disclosed herein is as follows: Figure 14 As shown, assume the length of the bit sequence of information to be transmitted is... .like Figure 14 As shown, the sequence of information bits to be transmitted It is divided into three parts. Among them, the front Bit (i.e., the first bit sequence) is used for frequency domain index selection and code domain index selection to determine the location of inactive information and the spreading code used for each group; length Information sequence (That is, the second bit sequence) is used to fill the selected inactive information positions as inactive information bits; the rest Bit information sequence (i.e., the third bit sequence) is used as the input bits for polarization coding.
[0141] Length is The index bits (i.e., the first bit sequence) are first encoded using Cyclic Redundancy Check (CRC) to obtain a sequence of length . bit sequence Subsequently, the sequence The input index selector is used to determine the locations of inactive information and the spreading codes used for each group. Following the selection mechanism constructed by polar coding selection index modulation, let the number of unfrozen locations still usable for information transmission after removing cyclic redundancy check (CRC) be . ,Will The unfrozen locations are divided into Each group contains non-overlapping groups. Positions. Within each group, sorted according to sub-channel reliability, from first to last. One inactive information position is selected from the more reliable positions to participate in index modulation. Therefore, the first... The set of selected inactive information location indices for each group can be represented as: (1.15) in, , , . The proportion of unfrozen positions participating in index modulation reflects the system's choice of position reliability.
[0142] At the same time, the index information sequence Divided into Group 1, the 1st group Each group is obtained from the spreading code set via the code field IM. If a set of spreading codes is selected, its corresponding index can be represented as: (1.16) in, Indicates the first The spreading code index selected for each sub-block The number of optional spreading codes is denoted as . Its value belongs to the spreading code set, and can be represented by constructing the spreading code set: (1.17) Therefore, the length of the index information sequence for: (1.18) Subsequently, information sequence The bits are allocated to each sub-block, and inactive information bits are filled into the selected inactive information positions according to the index bit sequence. The remaining bit sequences... Preparing for polarization coding. Here, the matrix... It can be represented as: (1.19) After determining the location of the inactive information and its corresponding inactive information bits, the bit sequence can be processed according to the polar coding selection index modulation coding procedure mentioned above. Perform the fill operation; fill result This can be expressed as: (1.20) For length of Information sequence Additional Cyclic Redundancy Check (CRC) coding The length is obtained as The input sequence is polar-coded. Polar coding of this sequence yields polar codewords. Then, modulation is performed using binary phase-shift keying (BPSK) to obtain the corresponding modulation symbol sequence. The constellation mapping relationship can be represented as: (1.21) The symbol sequence was then divided into Each block. In each group, the symbol vector The final transmitted signal is formed by spreading the signal using the selected spreading code. The total number of transmittable bits in the polar code encoding and decoding method of this disclosure can be expressed as: (1.22) The index information disclosed herein is carried by a code-frequency joint index, eliminating the need for repetitive coding to achieve reliable index decisions, thereby avoiding the randomness in polar coding selection index modulation. This avoids the overhead of redundant encoding caused by index growth. In other words, with the same index carrying capacity, this method only needs to perform a polar encoding process once, thus avoiding the overhead of redundant encoding used for index detection. This composite indexing mechanism effectively controls decoding complexity and improves overall information transmission efficiency while expanding the index carrying dimension.
[0143] At the receiving end, a hierarchical processing mechanism of code-frequency joint index detection and polarization decoding is applied to the received signal transmitted through the fading channel. Its overall structure is as follows: Figure 15 As shown. First, it is divided into Each sub-block. For each sub-block Receiver matrix It can be represented as: (1.23) Among them, the received signal It can be represented as: Polar coding selection index modulation relies solely on repetitive coding Unlike index recovery, in the first... In each sub-block, the receiving matrix First, perform a spreading code index decision (such as...). Figure 16 Specifically, for the candidate spreading code set The despreading operation is performed separately to obtain the intermediate matrix. (1.25) in, The dimension is .
[0144] Since Walsh codes are orthogonal to each other, their cross-correlation value is zero, which can be expressed as: (1.26) Based on the above orthogonality properties, the spreading code index is estimated, and the decision rule is as follows: (1.27) After completing the spreading code index decision, each group can be determined. Spread code index estimate First, the received signals of each group are despread. Based on a predefined index mapping table, the spreading code index obtained from the decision is transformed into the corresponding index bit sequence, and a cyclic redundancy check (CRC) is performed. Only when the CRC check passes is the index bit sequence considered valid index information, denoted as . Based on the valid index information, the positions of inactive information in each group can be determined. Simultaneously, the decoded bit values at these positions correspond to the inactive information bits, denoted as... .
[0145] If the cyclic redundancy check fails, the current spreading code index estimation is considered unreliable. In this case, the receiver returns to the code field index decision module to re-estimate and decide on the remaining candidate spreading codes, and repeats the cyclic redundancy check process until the check passes.
[0146] It should be noted that in the polar coding selection index modulation method, the determination of the index position depends on... The consistency decision of the repeated decoding results is then used to construct a set of candidate inactive information positions through statistical consistency, followed by combined verification. The index recovery process is embedded within the polarization decoding stage. In contrast, under the code-frequency joint indexing mechanism, the selection of inactive information positions and the spreading code index are determined uniformly by the same set of index bits. Once the spreading code index passes relevant detection and is confirmed by cyclic redundancy check, the corresponding inactive information positions are simultaneously determined, and the index recovery process is completed at this stage. Subsequently, polarization decoding is only used to recover the padded information bits and integrate them with the determined inactive information positions, without needing to perform consistency search or combined decision based on multiple sets of decoding results.
[0147] To further illustrate the decoding process of this disclosure, the parameters set below will be used as before ( , , and Let's take an example to illustrate. Assume the estimated index bit sequence... The sequence that passed the verification .according to Figure 11 The index set and its bit mapping relationship. The estimated inactive information positions for each group are as follows. The values at the corresponding positions constitute the inactive information bit sequence. By estimating the sequence of inactive information locations. The bit sequence output by polarization decoding Reconstruction yields the complete estimated information bit sequence: (1.28) In this example, the polar-coded selection index modulation method has the same total effective transmitted bits as the present disclosure, which is 22 bits; the difference is that polar-coded selection index modulation requires... Group re-decoding is used in index decision-making, while the polar code encoding and decoding method disclosed herein can complete index recovery without re-encoding.
[0148] Subsequently, the despread information sequence is subjected to CA-SCL polarization decoding to obtain the decoded output bit sequence. Based on this, synthesis... The determined inactive information locations and the estimated inactive information bit sequence And combined with the bit sequence output by polarization decoding This completes the reconstruction of the information bits. Finally, a complete estimated information bit sequence is obtained. .
[0149] The technical advantages achieved by this method are mainly reflected in two aspects: First, the integrated design of code-frequency joint indexing improves information transmission capability; second, the index recovery mechanism of "spread spectrum code index detector + cyclic redundancy check" avoids the complex decision-making process of constructing candidate sets based on the consistency of repeated decoding in traditional polar coding selection index modulation, thus reducing detection complexity while ensuring system reliability. Simulation results show that the polar code encoding and decoding method disclosed in this paper outperforms existing related methods in terms of error rate performance and transmission efficiency, verifying the effectiveness and engineering feasibility of the proposed joint indexing mechanism.
[0150] Therefore, this method constructs a three-level joint index modulation system of coding level, frequency domain, and code domain. By deeply integrating polar codes and index modulation and performing joint index detection of code and frequency, it can improve information transmission efficiency while reducing the complexity of index detection, thus possessing excellent comprehensive transmission performance.
[0151] from Figure 17 and Figure 18 As can be seen, under Rayleigh fading channel conditions, with the increase of SNR, the BER and BLER of all methods show a decreasing trend, and the overall bit error rate performance gradually improves. Throughout the entire SNR range, the polar code encoding and decoding method of this disclosure consistently exhibits lower BER and BLER, showing a significant advantage over polar-coded selection index modulation (CC-SCL) and CA-SCL. While CC-SCL outperforms CA-SCL, its overall performance is still lower than that of the polar code encoding and decoding method of this disclosure. These results demonstrate that the polar code encoding and decoding method of this disclosure can effectively improve the system's bit error rate performance in fading channel environments, achieving better transmission performance while ensuring communication reliability, thus verifying the effectiveness of the code-frequency joint indexing mechanism.
[0152] Based on any of the above embodiments, this disclosure also provides a polar code encoding and decoding apparatus.
[0153] Figure 19 This is a schematic block diagram of a polar code encoding / decoding apparatus according to one embodiment of the present disclosure.
[0154] like Figure 19 As shown, the polar code encoding / decoding device includes: The sequence partitioning module 1902, at the transmitting end, partitions the information bit sequence to be transmitted to determine the first bit sequence, the second bit sequence, and the third bit sequence. The first bit sequence is used for index modulation, the second bit sequence is used to fill the inactive information positions determined by index modulation, and the third bit sequence is used for polar coding. The index determination module 1904 inputs the first bit sequence into the index selector to determine the inactive information position of each group in the first bit sequence and the spreading code index corresponding to each group. The inactive information position is determined based on the sub-channel reliability. Sequence filling module 1906 fills the second bit sequence into the inactive information positions to determine the filled bit sequence; The polar coding module 1908 merges the padded bit sequence with the third bit sequence for polar coding to determine the polar code codeword; The index estimation module 1910, at the receiving end, for the received signal containing polar code codewords, despreads each spreading code in the spreading code set for each sub-block in the received signal, and determines the spreading code index estimate value of the corresponding group of each sub-block; The index transformation module 1912 detects the first bit sequence based on the mapping relationship between the spreading code index and the first bit sequence by using the estimated value of the spreading code index of each group. The position determination module 1914 determines the corresponding values of the inactive information position and the inactive information position based on the mapping relationship between the first bit sequence and the inactive information position through the detected first bit sequence. The sequence reconstruction module 1916 performs polarization decoding on the despread received signal, determines the output bit sequence, and reconstructs the information bit sequence based on the first bit sequence after detection, the bit sequence formed by the values of the inactive information positions, and the output bit sequence.
[0155] The aforementioned polar code encoding and decoding device can be in the form of computer software, and each module of the aforementioned polar code encoding and decoding device can be implemented through computer software modules.
[0156] The implementation process of the functions and roles of each module in the above polar code encoding and decoding device is detailed in the implementation process of the corresponding steps in the above method, and will not be repeated here.
[0157] This disclosure also provides an electronic device 1000. Figure 20 A schematic diagram of the hardware implementation using the processing system is shown.
[0158] The hardware structure of the electronic device / apparatus 1000 can be implemented using a bus architecture. The bus architecture can include any number of interconnect buses and bridges, depending on the specific application and overall design constraints of the hardware. Bus 1100 connects various circuits including one or more processors 1200, memory 1300, and / or hardware modules. Bus 1100 can also connect various other circuits 1400 such as peripherals, voltage regulators, power management circuits, external antennas, etc. Bus 1100 can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Component (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, only one connection line is used in this figure, but this does not indicate that there is only one bus or one type of bus.
[0159] For ease of explanation, certain steps of the above method are described in relation to modules. It should be understood that the corresponding module performing one or more steps of the above method may be one or more hardware modules specifically configured to perform the corresponding step, or implemented by a processor configured to perform the corresponding step, or stored in a computer-readable medium for implementation by a processor, or implemented by some combination thereof.
[0160] This disclosure also provides a readable storage medium storing a computer program that, when executed by a processor, is used to implement the methods described above. A "readable storage medium" can be any means capable of containing, storing, communicating, propagating, or transmitting a program for use by or in conjunction with an instruction execution system, apparatus, or device. More specific examples of a readable storage medium include: an electrical connection with one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and programmable read-only memory (EPROM or flash memory), fiber optic devices, and portable read-only memory (CDROM), etc.
[0161] This disclosure also provides a computer program product, the methods of which can be implemented wholly or partially through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented wholly or partially as a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed, all or part of the processes or functions of this disclosure are performed.
[0162] Computer programs or instructions can be stored in a readable storage medium or transferred from one readable storage medium to another. For example, the computer program or instructions can be transferred from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means. The readable storage medium can be any available medium capable of access, or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium, such as a floppy disk, hard disk, or magnetic tape; an optical medium, such as a digital video optical disc; or a semiconductor medium, such as a solid-state drive. The computer-readable storage medium can be a volatile or non-volatile storage medium, or it can include both volatile and non-volatile types of storage media.
[0163] Those skilled in the art will understand that embodiments of this disclosure can be provided as methods, systems, or computer program products. Therefore, this disclosure can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this disclosure can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0164] This disclosure is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to this disclosure. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0165] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0166] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0167] In the description of this specification, the references to terms such as "one embodiment / mode," "some embodiments / modes," "example," "specific example," or "some examples," etc., refer to specific features, structures, or characteristics described in connection with that embodiment / mode or example, which are included in at least one embodiment / mode or example of this disclosure. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment / mode or example. Moreover, the specific features, structures, or characteristics described may be combined in any suitable manner in one or more embodiments / modes or examples. Furthermore, without contradiction, those skilled in the art can combine and integrate the different embodiments / modes or examples described in this specification, as well as the features of different embodiments / modes or examples.
[0168] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this disclosure, "a plurality of" means at least two, such as two, three, etc., unless otherwise explicitly specified.
[0169] Those skilled in the art should understand that the above embodiments are merely for illustrating the present disclosure and are not intended to limit the scope of the disclosure. Those skilled in the art can make other changes or modifications based on the above disclosure, and these changes or modifications still fall within the scope of the present disclosure.
Claims
1. A polar code encoding and decoding method, characterized in that, The method includes: At the transmitting end, the information bit sequence to be transmitted is divided to determine the first bit sequence, the second bit sequence, and the third bit sequence. The first bit sequence is used for index modulation, the second bit sequence is used to fill the inactive information positions determined by index modulation, and the third bit sequence is used for polar coding. The first bit sequence is input into the index selector to determine the inactive information position of each group in the first bit sequence and the spreading code index corresponding to each group. The inactive information position is determined based on the sub-channel reliability. The second bit sequence is filled into the inactive information position to determine the filled bit sequence; The padded bit sequence is combined with the third bit sequence and polar coding is performed to determine the polar code codeword; At the receiving end, for the received signal containing polar code codewords, each sub-block in the received signal is despread for each spreading code in the spreading code set, and the estimated value of the spreading code index of the corresponding group of each sub-block is determined. Based on the mapping relationship between the spreading code index and the first bit sequence, the first bit sequence is detected by the estimated value of the spreading code index of each group; Based on the mapping relationship between the first bit sequence and the inactive information position, the corresponding inactive information position and the value of the inactive information position are determined by the detected first bit sequence. The despread received signal is polarized decoded to determine the output bit sequence, and the information bit sequence is reconstructed based on the first bit sequence after detection, the bit sequence formed by the values of the inactive information positions, and the output bit sequence.
2. The polar code encoding and decoding method as described in claim 1, characterized in that, Before inputting the first bit sequence into the index selector and determining the inactive information position of each group in the first bit sequence and the spreading code index corresponding to each group, the process includes: The first bit sequence is cyclically redundantly checked and encoded to determine the encoded first bit sequence, which is then used as input to the index selector to determine the location of inactive information and the spreading code index.
3. The polar code encoding and decoding method as described in claim 1, characterized in that, The first bit sequence is input into an index selector to determine the inactive information position of each group in the first bit sequence and the spreading code index corresponding to each group, including: The first bit sequence is divided into multiple groups, and an inactive information position is selected from the unfrozen positions of each group. The unfrozen positions are sorted based on the sub-channel reliability. A spreading code index is selected from the spreading code set for each group. The spreading code set is determined based on orthogonal Walsh-Hadamard codes. The inactive information position and the spreading code index are jointly determined by the bits within the same group.
4. The polar code encoding and decoding method as described in claim 1, characterized in that, The padded bit sequence is combined with the third bit sequence for polar coding to determine the polar codeword, including: The padded bit sequence and the third bit sequence are merged according to the polar code encoding structure to determine the merged bit sequence, wherein the padded bit sequence occupies the determined non-active information positions, and the third bit sequence occupies the remaining unfrozen positions. Cyclic redundancy check bits are added to the merged bit sequence, and a linear transformation is performed using the polar code generator matrix to determine the polar code codeword. Optionally, based on the mapping relationship between the first bit sequence and the inactive information positions, before determining the corresponding inactive information position and the value of the inactive information position through the detected first bit sequence, the process includes: Perform cyclic redundancy check on the first bit sequence after detection to determine the first bit sequence that passes the check. Optionally, polarization decoding is performed on the despread received signal to determine the output bit sequence, and the information bit sequence is reconstructed based on the detected first bit sequence, the bit sequence formed by the values of the inactive information positions, and the output bit sequence, including: The received signal is despread; The despread received signal is input into the target decoder for polarization decoding to determine the output bit sequence, and the inactive information position of each group is extracted from the detected first bit sequence. Based on the inactive information position, the corresponding inactive information bit value is obtained to form a bit sequence. The information bit sequence is reconstructed based on the first bit sequence after detection, the bit sequence formed by the values of the inactive information positions, and the output bit sequence.
5. The polar code encoding and decoding method as described in claim 1, characterized in that, Determine the received signal containing polar codewords, including: The polar codewords are modulated using binary phase shift keying to determine the modulation symbol sequence; The modulation symbol sequence is divided into multiple sub-blocks, and each sub-block corresponds to a group; Each sub-block selects a spreading code from the spreading code set according to the corresponding spreading code index for spreading processing, and determines the received signal containing the polar code codeword.
6. The polar code encoding and decoding method as described in claim 5, characterized in that, For a received signal containing polar code codewords, each sub-block of the received signal is despread for each spreading code in the spreading code set to determine the estimated spreading code index value of the corresponding group for each sub-block, including: The received signal is divided into multiple sub-blocks according to the number of groups; For each sub-block, the sub-block is despread with each spreading code in the spreading code set to determine the correlation value of each spreading code in the spreading code set; Based on the correlation value of each spreading code in the spreading code set, the target spreading code is estimated from the spreading code set using the maximum correlation criterion, and the spreading code index corresponding to the target spreading code is the spreading code index estimate.
7. The polar code encoding and decoding method as described in any one of claims 1 to 6, characterized in that, Polar code encoding methods applied to the transmitting end include: The information bit sequence to be transmitted is divided into a first bit sequence, a second bit sequence, and a third bit sequence. The first bit sequence is used for index modulation, the second bit sequence is used as inactive information bits, and the third bit sequence is used for polar coding. Perform cyclic redundancy check encoding on the first bit sequence to determine the encoded first bit sequence; The encoded first bit sequence is input into the index selector, which determines the inactive information position of each group and the spreading code index corresponding to each group according to the preset mapping relationship. Each inactive information position is a relatively reliable position selected from each group of unfrozen positions based on the sub-channel reliability sorting. The second bit sequence is filled into the determined inactive information positions to determine the filled bit sequence; The padded bit sequence is combined with the third bit sequence and polar coding is performed to determine the polar code codeword; The polar code codeword is divided into multiple sub-blocks. Each sub-block selects the corresponding spreading code from the spreading code set according to the corresponding spreading code index, performs spreading processing, forms a transmission signal, and sends it to the receiving end.
8. The polar code encoding and decoding method as described in any one of claims 1 to 6, characterized in that, Polar code decoding methods applied at the receiver include: In response to the transmitted signal from the transmitter, the received transmitted signal is divided into sub-blocks. For each sub-block, each spreading code in the spreading code set is despread, and the correlation value of each despreading result is calculated to determine the estimated value of the spreading code index for each group. Based on the mapping relationship between the spreading code index and the first bit sequence, the first bit sequence is detected by the estimated value of the spreading code index of each group; Cyclic redundancy check is performed on the first bit sequence obtained by detection. If the check passes, the first bit sequence obtained by detection is determined to be valid index information. Based on the effective index information, determine the inactive information position of the polar code in each group and the value of the inactive information bit at the corresponding position; The transmitted signal is despread and then input into the target decoder to determine the output bit sequence. The information bit sequence is then reconstructed based on the bit sequence formed by the effective index information and the values of the inactive information positions, and the output bit sequence.
9. An electronic device, characterized in that, include: The memory stores execution instructions; as well as A processor that executes execution instructions stored in the memory, causing the processor to perform the polar code encoding / decoding method according to any one of claims 1 to 8.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the polar code encoding and decoding method as described in any one of claims 1 to 8.