Communication method and apparatus
By determining the most reliable and least reliable bit position sets in the PC-Polar code for polar coding, the problem of insufficient error correction performance caused by PC bit position selection is solved, the code spectrum and decoding performance are improved, and the decoding effect of LTE-RM code is approximated.
Patent Information
- Application Number
- PCT/CN2025/092184
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-07
- Filing Date
- 2025-04-29
- Publication Date
- 2025-11-13
AI Technical Summary
In the PC-Polar code encoding process, how to determine the position of the PC bit to improve the code spectrum and decoding performance, especially when a large amount of reliability needs to be sacrificed, is a challenge. Existing technologies cannot support the number of bit positions corresponding to a large minimum row weight wmin, resulting in insufficient error correction performance.
By determining a second sequence of length M, including the most reliable (K+nPC) positions and the least reliable positions as the set of check bit positions, polar coding is performed to increase the selection range of the check bit position set, ensuring that the number of bit positions corresponding to the minimum row weight wmin among the most reliable K bit positions is relatively large, thereby improving the code spectrum and decoding performance.
The ML decoding performance of SCL8 decoding is close to that of LTE-RM code, which improves the error correction performance of ultra-short code intervals and meets higher code spectrum and decoding requirements.
Smart Images

Figure CN2025092184_13112025_PF_FP_ABST
Abstract
Description
Communication methods and devices
[0001] This application claims priority to Chinese Patent Application No. 202410564380.5, filed on May 7, 2024, entitled "Communication Method and Apparatus", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of communication technology, and in particular to a communication method and apparatus. Background Technology
[0003] In communication systems, parity-check polar codes (PC-Polar codes) can be used for encoding. In this encoding method, PC-Polar codes can include information bits, freeze bits, PC bits, and rate-matching shortening bits. The value of the PC bit can be determined based on the value of the information bit preceding it according to the PC equation. The rate-matching shortening bit does not need to be transmitted to the channel.
[0004] In PC-Polar code encoding, the positions of the PC bits can be determined using a lossy reliability approach to improve the code spectrum. Specifically, the minimum row weight w corresponding to the positions of the K information bits can be determined. min From the most reliable K bit positions, the minimum row overlap w min From the corresponding set of bit positions, select the most reliable one. Each bit position is used as the position of the PC bit, according to the predefined number of PC bits n in the communication protocol. PC The remaining The position of each PC bit can be determined from the most reliable (K+n) PC From ) bit positions, select the least reliable one. Each bit position is used as the position of the PC bit.
[0005] However, in the above encoding process, there may be a situation where, when a significant loss of reliability is required to improve the code spectrum, the minimum row overlap w among the most reliable K bit positions may be insufficient. min The number of corresponding bit positions cannot be supported. In larger cases, determining the position of the PC bit to improve code spectrum and decoding performance has become an urgent technical problem to be solved. Summary of the Invention
[0006] This application provides a communication method and apparatus that can improve code spectrum and decoding performance when determining the position of PC bits.
[0007] Firstly, this application provides a communication method that can be executed by a transmitting device. Unless otherwise specified, "transmitting device" in this application can refer to the transmitting device itself, a component within the transmitting device (e.g., a processor, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the transmitting device. The method includes: determining a second sequence of length M based on the reliability corresponding to a first sequence of length N; the second sequence includes positions in the first sequence excluding the positions of pre-frozen bits and rate-matching bits; determining a set of check bit positions based on a first set of positions in the second sequence; polar encoding the information bit sequence based on the set of check bit positions to obtain an encoded bit sequence; and outputting one or more bits of the encoded bit sequence. The first set of positions includes the most reliable (K+n) bits in the second sequence. PC There are ) positions, where K is the length of the information bit sequence, and n PC The number of parity bits is [number of] bits. The parity bit position set includes a first parity bit position set and a second parity bit position set. The first parity bit position set includes the row weights equal to w in the first position set. min The most reliable The second set of check bit positions includes the least reliable position from the first set of positions. One position, w min It represents the minimum row weight corresponding to the K most reliable positions in the first position set.
[0008] Based on the first aspect, the first set of check bit positions The positions are determined based on the first set of positions, which increases the selection range of the first set of check bit positions and ensures the minimum row overlap w among the most reliable K bit positions. min The number of corresponding bit positions can support In larger cases, improving code spectrum performance and decoding performance can better meet the error correction performance requirements of ultra-short code intervals, and can approach the ML decoding performance of LTE-RM codes under SCL8 decoding.
[0009] In one possible design, n PC Less than or equal to the difference between M and K.
[0010] Based on this possible design, n is increased. PC The range of values can be selected to improve code spectrum performance and decoding performance, and can better meet the error correction performance requirements of ultra-short code intervals.
[0011] In one possible design, the set of information bit positions is determined based on the set of parity bit positions; wherein the set of information bit positions includes K positions in the first position set other than the set of parity bit positions; and the parity bit corresponding to each parity bit position and the information bit corresponding to each information bit position are determined based on the shift register to obtain the encoded bit sequence.
[0012] Based on this possible design, the encoded bit sequence can be determined based on the check equation corresponding to the unified shift register, thereby improving code spectrum performance and decoding performance.
[0013] In one possible design, the shift register is a three-tap shift register represented as 26 in decimal; or, the shift register is a single-tap shift register represented as 16 in decimal.
[0014] Based on this possible design, several feasible solutions are provided for the design of shift registers.
[0015] In one possible design, Determined based on K and the length E after rate matching.
[0016] Based on this possible design, we can use the block error rate to iterate and search to determine the different K and different E values corresponding to each scenario. The value of .
[0017] In one possible design, when K is less than or equal to 6, or when the difference between the rate-matched length E and K is less than or equal to 7, If the value is 0, the set of positions for the second check bit is empty.
[0018] Based on this possible design, by satisfying the above conditions... Setting the value to 0 can improve code spectrum performance and decoding performance.
[0019] Secondly, a communication method is provided, which can be executed by a receiving device. Unless otherwise specified, "receiving device" in this application can refer to the receiving device itself, a component within the receiving device (e.g., a processor, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the receiving device. The method includes: receiving information to be decoded from a transmitting device; the length of the information bit sequence corresponding to the information to be decoded is K; determining a second sequence of length M based on the reliability corresponding to a first sequence of length N; the second sequence including positions in the first sequence excluding the positions of pre-frozen bits and rate-matching bits; determining a set of check bit positions based on a first set of positions in the second sequence; and decoding the information to be decoded based on the set of check bit positions. The first set of positions includes the most reliable (K+n) bits in the second sequence.PC There are ) positions, where K is the length of the information bit sequence, and n PC The number of parity bits is [number of] bits. The parity bit position set includes a first parity bit position set and a second parity bit position set. The first parity bit position set includes the row weights equal to w in the first position set. min The most reliable The second set of check bit positions includes the least reliable position from the first set of positions. One position, w min It represents the minimum row weight corresponding to the K most reliable positions in the first position set.
[0020] Based on the second aspect, the first set of check bit positions The positions are determined based on the first set of positions, which increases the selection range of the first set of check bit positions and ensures the minimum row overlap w among the most reliable K bit positions. min The number of corresponding bit positions can support In larger cases, improving code spectrum performance and decoding performance can better meet the error correction performance requirements of ultra-short code intervals, and can approach the ML decoding performance of LTE-RM codes under SCL8 decoding.
[0021] In one possible design, n PC Less than or equal to the difference between M and K.
[0022] Based on this possible design, n is increased. PC The range of values can be selected to improve code spectrum performance and decoding performance, and can better meet the error correction performance requirements of ultra-short code intervals.
[0023] In one possible design, the information bit position set is determined based on the parity bit position set; wherein the information bit position set includes K positions in the first position set other than the parity bit position set; and the information to be decoded is decoded based on the parity bit position set, the information bit position set, and the shift register.
[0024] Based on this possible design, decoding can be performed using a unified check equation corresponding to the shift register, thereby improving code spectrum performance and decoding performance.
[0025] In one possible design, the shift register is a three-tap shift register represented as 26 in decimal; or, the shift register is a single-tap shift register represented as 16 in decimal.
[0026] Based on this possible design, several feasible solutions are provided for the design of shift registers.
[0027] In one possible design, Determined based on K and the length E after rate matching.
[0028] Based on this possible design, we can use the block error rate to iterate and search to determine the different K and different E values corresponding to each scenario. The value of .
[0029] In one possible design, when K is less than or equal to 6, or when the difference between the rate-matched length E and K is less than or equal to 7, If the value is 0, the set of positions for the second check bit is empty.
[0030] Based on this possible design, by satisfying the above conditions... Setting the value to 0 can improve code spectrum performance and decoding performance.
[0031] Thirdly, embodiments of this application provide a communication device that can be applied to the transmitting end device described in the first aspect to realize the functions performed by the transmitting end device. The communication device can be the transmitting end device itself, or it can be a chip, chip system, or system-on-a-chip of the transmitting end device, etc. The communication device can execute the functions performed by the transmitting end device through hardware, or it can execute corresponding software through hardware. The hardware or software includes one or more modules corresponding to the above functions. For example, a transceiver module and a processing module. The transceiver module can independently complete the following transceiver operations, or it can cooperate with the processing module to complete the following transceiver operations; correspondingly, the processing module can independently complete the following processing operations, or it can cooperate with the transceiver module to complete the following processing operations, without limitation.
[0032] For example, the processing module is used to determine a second sequence of length M based on the reliability corresponding to a first sequence of length N; the second sequence includes positions in the first sequence excluding the positions of pre-frozen bits and rate-matching bits; the processing module is also used to determine a set of check bit positions based on a first set of positions in the second sequence; and to perform polar coding on the information bit sequence based on the set of check bit positions to obtain a coded bit sequence; the transceiver module is used to output one or more bits of the coded bit sequence. The first set of positions includes the most reliable (K+n) bits in the second sequence. PC There are ) positions, where K is the length of the information bit sequence, and n PC The number of parity bits is [number of] bits. The parity bit position set includes a first parity bit position set and a second parity bit position set. The first parity bit position set includes the row weights equal to w in the first position set. min The most reliable The second set of check bit positions includes the least reliable position from the first set of positions. One position, w minIt represents the minimum row weight corresponding to the K most reliable positions in the first position set.
[0033] Optionally, the transceiver module and processing module of the communication device in the third aspect may also perform the corresponding functions in the first aspect or any possible design of the first aspect, as detailed in the method examples, and the beneficial effects that can be achieved can also be found in the foregoing related content.
[0034] Fourthly, embodiments of this application provide a communication device that can be applied to the receiving device described in the second aspect to realize the functions performed by the receiving device. The communication device can be the receiving device itself, or it can be a chip, chip system, or system-on-a-chip of the receiving device. The communication device can execute the functions performed by the receiving device through hardware or through corresponding software. The hardware or software includes one or more modules corresponding to the functions described above. For example, a transceiver module and a processing module. The transceiver module can independently complete the following transceiver operations or cooperate with the processing module to complete the following transceiver operations; correspondingly, the processing module can independently complete the following processing operations or cooperate with the transceiver module to complete the following processing operations, without limitation.
[0035] For example, a transceiver module is used to receive information to be decoded from a transmitting device; the length of the information bit sequence corresponding to the information to be decoded is K; a processing module is used to determine a second sequence of length M based on the reliability corresponding to a first sequence of length N; the second sequence includes positions in the first sequence excluding the positions of pre-frozen bits and rate-matching bits; the processing module is further used to determine a set of check bit positions based on a first set of positions in the second sequence; and to decode the information to be decoded based on the set of check bit positions. The first set of positions includes the most reliable (K+n) bits in the second sequence. PC There are ) positions, where K is the length of the information bit sequence, and n PC The number of parity bits is [number of] bits. The parity bit position set includes a first parity bit position set and a second parity bit position set. The first parity bit position set includes the row weights equal to w in the first position set. min The most reliable The second set of check bit positions includes the least reliable position from the first set of positions. One position, w min It represents the minimum row weight corresponding to the K most reliable positions in the first position set.
[0036] Optionally, the transceiver module and processing module of the communication device in the fourth aspect may also perform the corresponding functions in the second aspect or any possible design of the second aspect, as detailed in the method examples, and the beneficial effects that can be achieved can also be found in the foregoing related content.
[0037] Fifthly, embodiments of this application provide a communication device, which includes one or more processors; the one or more processors are configured to run computer programs or instructions, such that when the one or more processors execute the computer instructions or instructions, the communication method described in any one of the first to second aspects is performed.
[0038] In one possible design, the communication device further includes one or more memories coupled to one or more processors, the memories used to store the aforementioned computer programs or instructions. In one possible implementation, the memories are located outside the communication device. In another possible implementation, the memories are located inside the communication device. In embodiments of this application, the processor and memory may also be integrated into a single device, i.e., the processor and memory may be integrated together. In one possible implementation, the communication device further includes a transceiver for receiving and / or transmitting information.
[0039] In one possible design, the communication device further includes one or more communication interfaces coupled to one or more processors, and the communication interfaces are used to communicate with other modules outside the communication device.
[0040] In a sixth aspect, embodiments of this application provide a communication device, which includes an interface circuit and a logic circuit; the interface circuit is used to input and / or output information; the logic circuit is used to execute the communication method as described in either the first or second aspect, and to process and / or generate information based on the information.
[0041] In a seventh aspect, embodiments of this application provide a computer-readable storage medium storing computer instructions or programs that, when executed on a computer, cause the communication method described in either the first or second aspect to be performed.
[0042] Eighthly, embodiments of this application provide a computer program product containing computer instructions that, when run on a computer, causes the communication method described in either the first or second aspect to be executed.
[0043] Ninthly, embodiments of this application provide a computer program that, when run on a computer, causes the communication method described in either the first or second aspect to be executed.
[0044] In a tenth aspect, embodiments of this application provide a chip, including: a processor coupled to a memory, the memory being used to store programs or instructions, which, when executed by the processor, cause the communication method described in either the first or second aspect to be executed.
[0045] The technical effects of any of the design methods in aspects five through ten can be found in the technical effects of any of the first or second aspects mentioned above, and will not be elaborated upon further.
[0046] Eleventhly, embodiments of this application provide a communication system that may include communication means for performing the communication as described in the first aspect or any possible design of the first aspect, and communication means for performing the communication as described in the second aspect or any possible design of the second aspect. Attached Figure Description
[0047] Figure 1 is a schematic diagram of an LTE-RM code decoding process provided in an embodiment of this application;
[0048] Figure 2 is a schematic diagram of a communication system provided in an embodiment of this application;
[0049] Figure 3 is a schematic diagram of encoding and decoding performed by a transmitting end device and a receiving end device according to an embodiment of this application;
[0050] Figure 4 is a schematic diagram of a communication device provided in an embodiment of this application;
[0051] Figure 5 is a flowchart of a communication method provided in an embodiment of this application;
[0052] Figure 6 is a schematic diagram of a set of check bit positions provided in an embodiment of this application;
[0053] Figure 7 is a simulation diagram illustrating the performance of different encoding methods provided in an embodiment of this application;
[0054] Figure 8 is a simulation diagram illustrating the performance of different encoding methods provided in the embodiments of this application;
[0055] Figure 9 is a simulation diagram illustrating the performance of different encoding methods provided in an embodiment of this application;
[0056] Figure 10 is a simulation diagram illustrating the performance of different encoding methods provided in an embodiment of this application;
[0057] Figure 11 is a schematic diagram of a transmitting device provided in an embodiment of this application;
[0058] Figure 12 is a schematic diagram of a receiving device provided in an embodiment of this application;
[0059] Figure 13 is a schematic diagram of a communication device provided in an embodiment of this application. Detailed Implementation
[0060] Before describing the embodiments of this application, the technical terms involved in the embodiments of this application will be described.
[0061] Long term evolution-reed-muller (LTE-RM) coding: The transmitting device can encode ultra-short bit sequences of 3 to 11 bits in the following way:
[0062] Step 1: For an information bit sequence of length K, c0, c1, ..., c K-1 Encode the sequence to obtain an encoded sequence d0, d1, ..., dn of length N. N-1 .
[0063] For example, K can be any value from 3 to 11, and N can be 32.
[0064] in, M i,k The value can be determined according to Table 1 below, i = 0, 1, 2, ..., N-1.
[0065] Table 1
[0066] Step 2: Encode the sequence d0, d1, ..., d of length N. N-1 Rate matching is performed to obtain a rate matching sequence f0, f1, ..., f of length E. E-1 .
[0067] Here, E represents the actual transmitted code length after rate matching, or can be described as the transmitted code length after rate matching, or as the rate matching length. E can be determined based on rate matching related information.
[0068] When it is determined that E is not equal to the encoding length N (e.g., E is not equal to 32), the following rate matching method can be adopted: when E is less than N (e.g., E is less than 32), punch holes from back to front; when E is greater than N (e.g., E is greater than 32), repeat from front to back.
[0069] For example, the rate-matching sequence f0, f1, ..., f E-1 You can obtain it in the following way:
[0070] for k=0 to E-1
[0071] f k =d k mod N ;
[0072] end for
[0073] Step 3: Send the rate matching sequence f0, f1, ..., f E-1 .
[0074] LTE-RM Decoding: The receiving device can refer to the decoding process diagram shown in Figure 1 to decode the encoded result of the 3-11 bit ultra-short information bit sequence in the following manner:
[0075] Step 1: Perform a simple decision (such as a hard decision) on the received sequence, and then interleave the codewords (such as bipolar codewords) or soft bit information after the simple decision to obtain the processed received codewords.
[0076] The received sequence can be the rate-matching sequence mentioned above.
[0077] Optionally, if the codeword length after simple decision is not equal to N, high-order zeros can be added.
[0078] For example, if the codeword after simple decision is b0, b1, ..., b of length 20 19 Then, by padding with 12 zeros at the high bits, we can obtain a codeword of length N = 32: 0, ..., 0, b0, b1, ..., b 19 .
[0079] Step 2: Interleave the received codewords processed in Step 1 according to the mask vector.
[0080] The interleaving process is the same as the interleaving process in step 1 above.
[0081] For example, 128 mask vectors can be generated based on 7 basic mask sequences. These 128 mask vectors are then multiplied by the received codewords processed in step 1 (i.e., demasking is performed) to obtain 128 bipolar sequences of length 32.
[0082] Step 3: Perform a fast hadamard transform (FHT) on the bipolar sequence obtained in Step 2 and the 32nd order Hadamard matrix to obtain a 128×32 correlation value matrix.
[0083] Step 4: Find the number with the largest absolute value from the correlation matrix obtained in Step 3. The binary form corresponding to the row number of this number with the largest absolute value is the 2nd to 6th bits of the information bit sequence, and the binary form corresponding to the column number is the 7th to 13th bits of the information bit sequence.
[0084] Step 5: The first bit of the information bit sequence is determined based on the actual sign of the number with the largest absolute value. That is, if it is positive, it is translated as 0; if it is negative, it is translated as 1.
[0085] In steps 4 and 5 above, bits 1 to 13 define the information bit sequence starting from bit 1. It is understood that the information bit sequence can also be defined starting from bit 0, that is, bit 1, bit 2, ..., bit 13 above can be replaced with bit 0, bit 1, ..., bit 12 respectively, without restriction.
[0086] However, the LTE-RM decoding method described above uses FHT. When the length of the information bit sequence is greater than 6 bits, it is necessary to enumerate the mask vector and perform demasking, resulting in high complexity and power consumption for the LTE-RM decoding scheme to achieve maximum likelihood (ML) decoding performance. In addition, when the length E after rate matching is small, the number of punctures is large, which can lead to performance defects and affect decoding performance.
[0087] Parity-check polar codes (PC-Polar codes) can include information bits, frozen bits, PC bits, and rate-matching shortened bits.
[0088] Among these, a subset of frozen bits can be selected as PC bits. The values of these PC bits differ from other frozen bits; they are not fixed at 0, but determined by the values of the preceding information bits using the PC equation. Therefore, PC bits can also be called dynamic frozen bits (i.e., their position originates from frozen bits, but their value is not fixed at 0). Rate matching shortening bits do not need to be transmitted to the channel.
[0089] When performing PC-Polar code encoding, the positions of the PC bits can be determined using a lossy reliability approach to improve the code spectrum. Specifically, the minimum row weight w corresponding to the positions of the K information bits can be determined. min From the most reliable K bit positions, the minimum row overlap w min From the corresponding set of bit positions, select the most reliable one. Each bit position is used as the position of the PC bit, according to the predefined number of PC bits n in the communication protocol. PC The remaining The position of each PC bit can be determined from the most reliable (K+n) PC From ) bit positions, select the least reliable one. Each bit position is used as the position of the PC bit.
[0090] However, in the above encoding process, there may be a situation where, when a significant loss of reliability is required to improve the code spectrum, the minimum row overlap w among the most reliable K bit positions may be insufficient. min The number of corresponding bit positions cannot be supported. In more serious cases, the constructive parameters and check equations of the PC-polar code in the New Radio (NR) standard cannot meet the error correction performance requirements of the ultra-short code interval and cannot approach the decoding performance of the LTE-RM code.
[0091] In summary, determining the position of the PC bit to improve code spectrum and decoding performance has become an urgent technical problem to be solved.
[0092] To address the aforementioned technical problems, embodiments of this application provide a communication method. The method includes: determining a second sequence of length M based on the reliability corresponding to a first sequence of length N; the second sequence includes positions in the first sequence excluding the positions of frozen bits and rate-matching bits; determining a set of check bit positions based on a first set of positions in the second sequence; performing polar coding on the information bit sequence based on the set of check bit positions to obtain an encoded bit sequence; and outputting one or more bits of the encoded bit sequence. The first set of positions includes the most reliable (K+n) bits in the second sequence. PC There are ) positions, where K is the length of the information bit sequence, and n PC The number of parity bits is [number of] bits. The parity bit position set includes a first parity bit position set and a second parity bit position set. The first parity bit position set includes the row weights equal to w in the first position set. min The most reliable The second set of check bit positions includes the least reliable position from the first set of positions. One position, w min It represents the minimum row weight corresponding to the K most reliable positions in the first position set.
[0093] In this embodiment of the application, the first check bit position set The positions are determined based on the first set of positions, which increases the selection range of the first set of check bit positions and ensures the minimum row overlap w among the most reliable K bit positions. min The number of corresponding bit positions can support In larger cases, improving code spectrum performance and decoding performance can better meet the error correction performance requirements of ultra-short code intervals.
[0094] The embodiments of this application will now be described in detail with reference to the accompanying drawings.
[0095] The communication method provided in this application embodiment can be used in any communication system, such as a third-generation partnership project (3GPP) communication system, for example, a long-term evolution (LTE) system; or a fifth-generation (5G) mobile communication system, a hybrid LTE and 5G network system, an NR system, an NR vehicle-to-everything (V2X) system, a device-to-device (D2D) communication system, a machine-to-machine (M2M) communication system, an Internet of Things (IoT) system, a narrowband Internet of Things (NB-IoT) system, a global system for mobile communications (GSM), an enhanced data rate for GSM evolution (EDGE) system, a wideband code division multiple access (WCDMA) system, a code division multiple access (CDMA2000) system, or a time division-synchronization code access (TDC) system. Division Multiple Access (TD-SCDMA), enhanced mobile broadband (eMBB), ultra-reliable and low-latency communication (URLLC), enhanced machine-type communication (eMTC), and various types of next-generation communication systems, such as sixth-generation (6G) mobile communication systems, can also include non-terrestrial network (NTN) systems (such as satellite communication systems), non-3GPP communication systems, etc., without restriction.
[0096] The communication method provided in this application can be applied to various communication scenarios. For example, it can be applied to one or more of the following communication scenarios: coding of control channels, coding of data channels, etc., without limitation.
[0097] The communication system provided in the embodiments of this application will be described below using Figure 2 as an example.
[0098] Figure 2 is a schematic diagram of a communication system provided in an embodiment of this application. As shown in Figure 2, the communication system may include at least one terminal device and at least one network device.
[0099] In Figure 2, the terminal device can be located within the beam / cell coverage area of the network device, and the network device can provide communication services to the terminal device. For example, the network device can use channel coding to encode downlink data and then transmit it to the terminal device via air interface after constellation modulation (i.e., the network device is the transmitting device, and the terminal device is the receiving device); the terminal device can also use channel coding to encode uplink data and then transmit it to the network device via air interface after constellation modulation (i.e., the terminal device is the transmitting device, and the network device is the receiving device). It is understood that when network devices communicate with each other, or when terminal devices communicate with each other, communication can also be based on channel coding; that is, the transmitting and receiving devices can both be network devices or both be terminal devices, without restriction.
[0100] The terminal device in Figure 2 can be a device with wireless transceiver capabilities or a chip or chip system that can be configured on the device. It allows users to access the network and is used to provide voice and / or data connectivity to users. The terminal device can also be called user equipment (UE), subscriber unit, terminal, mobile station (MS), or mobile terminal (MT), etc.
[0101] For example, the terminal device in Figure 2 can be a mobile phone, a tablet computer, or a computer with wireless transceiver capabilities. Terminal equipment can also be user stations, mobile stations, remote stations, remote terminal equipment, mobile terminal equipment, user terminal equipment, wireless communication equipment, user agents, user devices, cellular phones, cordless phones, session initiation protocol (SIP) phones, wireless local loop (WLL) stations, personal digital assistants (PDAs), handheld devices with wireless communication capabilities, computing devices, processing devices connected to wireless modems, in-vehicle equipment, wearable devices, terminal equipment in the Internet of Things (IoT), home appliances, virtual reality (VR) terminals, augmented reality (AR) terminals, wireless terminals in industrial control, wireless terminals in autonomous driving, wireless terminals in telemedicine, wireless terminals in smart grids, wireless terminals in smart cities, wireless terminals in smart homes, vehicles with vehicle-to-vehicle (V2V) communication capabilities, intelligent connected vehicles, and UAV-to-UAV communication. Unmanned aerial vehicles (UAVs) with U2U communication capabilities, terminal devices in future networks, or terminal devices in future evolved public land mobile networks (PLMNs) are not subject to restrictions.
[0102] In Figure 2, the network device can be any device deployed in the access network capable of wireless communication with terminal devices. It can also be a chip or chip system that can be configured within the aforementioned device, a logical node or logical module, or a function implemented in software. Its main responsibilities include air interface-side wireless physical control, resource scheduling, wireless resource management, quality of service management, data compression and encryption, wireless access control, and mobility management. Specifically, the network device can be either a wired access device or a wireless access device.
[0103] For example, a network device can consist of one or more access network (AN) / radio access network (RAN) nodes. AN / RAN nodes can be various types of base stations, such as: satellite base stations, evolved Node Bs (gNBs), transmission reception points (TRPs), evolved Node Bs (eNBs), radio network controllers (RNCs), Node Bs (NBs), base station controllers (BSCs), base transceiver stations (BTSs), home base stations (e.g., home evolved Node Bs, or home Node Bs (HNBs), macro base stations, micro base stations, pico base stations, small cells, relay stations, balloon stations, drone stations, wireless backhaul nodes, base band units (BBUs), or wireless fidelity (Wi-Fi) access points (APs), etc. It is understood that network devices can be terrestrial devices or non-terrestrial devices (such as satellites, drones, high-altitude communication equipment, etc.). Furthermore, in communication systems employing different wireless access technologies, the names of network devices with base station functions may differ, and this application does not impose any restrictions on this.
[0104] In another example, the network equipment may include a BBU and a remote radio unit (RRU). The BBU and RRU can be located in different places; for example, the RRU can be moved remotely to a high-traffic area, while the BBU is located in the central equipment room. The BBU and RRU can also be located in the same equipment room. The BBU and RRU can also be different components under the same rack.
[0105] In another example, the network device can be a device that includes centralized unit (CU) nodes, distributed unit (DU) nodes, or both CU and DU nodes. For instance, the network device can be logically divided into CUs and DUs, with some protocol layer functions centrally controlled by the CU, and the remaining partial or complete protocol layer functions distributed in the DU, which is centrally controlled by the CU. The CU and DU can be separate entities or included in the same network element, such as a BBU. Furthermore, the centralized unit (CU) can be further divided into a control plane (CU-CP) and a user plane (CU-UP).
[0106] In another example, the network device may also be a device that includes a radio unit (RU), or a device that includes a CU, a DU, and a RU. The RU may be included in a radio frequency device or radio frequency unit, such as an RRU, an active antenna unit (AAU), or a remote radio head (RRH).
[0107] It is understood that CU (or CU-CP and CU-UP), DU, or RU may have different names in different systems, but those skilled in the art will understand their meaning. For example, in an open radio access network (O-RAN) system, CU can also be called O-CU (open CU), DU can also be called O-DU, CU-CP can also be called O-CU-CP, CU-UP can also be called O-CU-UP, and RU can also be called O-RU. For ease of description, this application uses CU, CU-CP, CU-UP, DU, and RU as examples. Any of the units among CU (or CU-CP, CU-UP), DU, and RU in this application can be implemented through software modules, hardware modules, or a combination of software modules and hardware modules.
[0108] Based on the above description of the terminal device and network device, optionally, the communication method provided in the embodiments of this application can be implemented by the aforementioned terminal device or network device, or by components of the terminal device or network device, such as by application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or software (such as program code in memory) deployed in the terminal device or network device, without limitation.
[0109] Optionally, in this embodiment of the application, the transmitting device (or source) and the receiving device (or sink) can use the process shown in Figure 3 below for encoding and decoding. The transmitting device can be any terminal device or network device in the communication system shown in Figure 2, and the receiving device can also be any terminal device or network device in the communication system shown in Figure 2.
[0110] In this process, the transmitting device performs source coding on its generated bits to obtain a source bit stream. Then, it performs channel coding on the source bit stream, modulates it, and transmits the modulated symbols to the receiving device through a noisy channel. When the receiving device receives the modulated symbols through the noisy channel, it demodulates them, performs channel decoding to recover the source bit stream, and then performs source recovery to obtain the decoded result.
[0111] In specific implementation, as shown in Figure 2, each terminal device and network device can adopt the composition structure shown in Figure 4, or include the components shown in Figure 4. Figure 4 is a schematic diagram of the composition of a communication device 400 provided in an embodiment of this application. The communication device 400 can be a terminal device or a chip or system-on-a-chip in a terminal device; it can also be a network device or a chip or system-on-a-chip in a network device. As shown in Figure 4, the communication device 400 includes a processor 401, a transceiver 402, and a communication line 403.
[0112] Furthermore, the communication device 400 may also include a memory 404. The processor 401, memory 404, and transceiver 402 can be connected via a communication line 403.
[0113] The processor 401 can be a central processing unit (CPU), a general-purpose processor, a network processor (NP), a digital signal processor (DSP), a microprocessor, a microcontroller, a programmable logic device (PLD), or any combination thereof. The processor 401 can also be other devices with processing capabilities, such as circuits, devices, or software modules, without limitation.
[0114] Transceiver 402 is used to communicate with other devices or other communication networks. These other communication networks can be Ethernet, radio access network (RAN), wireless local area network (WLAN), etc. Transceiver 402 can be a module, circuit, transceiver, or any device capable of enabling communication.
[0115] Communication line 403 is used to transmit information between the components included in communication device 400.
[0116] Memory 404 is used to store instructions. These instructions can be computer programs.
[0117] The memory 404 can be a read-only memory (ROM) or other type of static storage device that can store static information and / or instructions; it can also be a random access memory (RAM) or other type of dynamic storage device that can store information and / or instructions; it can also be an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, etc., without limitation.
[0118] It should be noted that the memory 404 can exist independently of the processor 401, or it can be integrated with the processor 401. The memory 404 can be used to store instructions, program code, or some data, etc. The memory 404 can be located inside or outside the communication device 400, without limitation. The processor 401 is used to execute the instructions stored in the memory 404 to implement the communication method provided in the following embodiments of this application.
[0119] In one example, processor 401 may include one or more CPUs, such as CPU0 and CPU1 in Figure 4.
[0120] As an optional implementation, the communication device 400 may include multiple processors, for example, in addition to the processor 401 in FIG4, it may also include a processor 407.
[0121] As an optional implementation, the communication device 400 also includes an output device 405 and an input device 406. For example, the input device 406 is a device such as a keyboard, mouse, microphone, or joystick, and the output device 405 is a device such as a display screen or speaker.
[0122] It should be noted that the communication device 400 can be a desktop computer, a portable computer, a web server, a mobile phone, a tablet computer, a wireless terminal, an embedded device, a chip system, or a device with a similar structure to that shown in Figure 4. Furthermore, the composition shown in Figure 4 does not constitute a limitation on the communication device. In addition to the components shown in Figure 4, the communication device may include more or fewer components than shown, or combine certain components, or have different component arrangements.
[0123] In this embodiment of the application, the chip system may be composed of chips or may include chips and other discrete devices.
[0124] Furthermore, the actions, terms, etc., involved in the various embodiments of this application can be referenced interchangeably without limitation. The message names or parameter names in the messages exchanged between the various devices in the embodiments of this application are merely examples, and other names may be used in specific implementations without limitation.
[0125] The communication method provided in the embodiments of this application will be described below with reference to the communication system shown in Figure 2 and Figure 5. The transmitting device can be any terminal device or network device in the communication system shown in Figure 2, and the receiving device can also be any terminal device or network device in the communication system shown in Figure 2. The transmitting or receiving device described in the following embodiments may include the components shown in Figure 4.
[0126] Figure 5 is a flowchart of a communication method provided in an embodiment of this application. As shown in Figure 5, the method may include:
[0127] Step 501: The transmitting device determines the second sequence of length M based on the reliability corresponding to the first sequence of length N.
[0128] Where N is the length of the master code for data transmission, and the second sequence includes all positions in the first sequence except for the positions of the pre-frozen bits and the rate matching bits. N and M are both positive integers.
[0129] For example, the transmitting device can determine the mother code length N = max(min([N]) based on the length K of the information bit sequence and the length E after rate matching. M N R N max ]), 32). N M And the bit rate R = K / E and N DM related, If E≤9 / 8×N DM And R < 9 / 16, then N M =N DM / 2; otherwise, N M =N DM N R With K and minimum bitrate R min related, R min = 1 / 8. N max =1024.
[0130] The information bit sequence may include information bits, CRC bits, or the information bit sequence may include only information bits themselves. K may be the sum of the number of information bits and the number of CRC bits included in the information bit sequence. Alternatively, K may be the number of information bits included in the information bit sequence.
[0131] Among them, the sending device can determine the reliability corresponding to the first sequence according to the reliability sequence with length N, and then determine the second sequence with length M.
[0132] Among them, the reliability sequence can be used to indicate the reliability corresponding to the position of each bit of the sequence. The larger the value of the reliability, the more reliable the position corresponding to the reliability.
[0133] Optionally, the reliability sequence can be predefined by the protocol. The sending device can select the reliability sequence with length N from one or more reliability sequences predefined by the protocol.
[0134] Exemplarily, taking the sending device determining N as 32 as an example, the reliability sequence with length 32 can be the reliability sequence shown in Table 2 below, where represents the reliability, represents the bit position corresponding to the reliability:
[0135] Table 2
[0136] It can be understood that the above Table 2 is defined starting from bit 0, and can also be defined starting from bit 1, that is, the above 0, 1,..., 31 can be replaced with 1, 2,..., 32 respectively, without limitation.
[0137] Based on the above reliability sequence, the sending device can determine the positions of the pre-frozen bits and the rate-matching bits in the first sequence according to the reliability corresponding to the first sequence with length N, and determine the positions other than the positions of the pre-frozen bits and the rate-matching bits in the first sequence as the second sequence.
[0138] Among them, the position of the rate-matching bits can be determined according to the rate-matching method. <着
[0139] Exemplarily, the rate-matching method can be determined according to the length E after rate-matching and the mother code length N. For example, if E > N, the rate-matching method is determined to be repetition, that is, after the sending device sends the mother code with length N, it sends (E - N) more bits (the (E - N) bits are the rate-matching bits). If E < N, the sending device can determine whether to puncture from front to back or shorten from back to front according to the current code rate R = K / E. If R < 7 / 16, the rate-matching is performed in the way of puncturing from front to back, that is, puncturing (N - E) bits from front to back (the (N - E) bits from front to back are the rate-matching bits); otherwise, shortening (N - E) bits from back to front (the (N - E) bits from back to front are the rate-matching bits). It should be noted that there is an incorrect "着" in the original text at line 30 which is retained as it is in the translation for the purpose of following the rules. You may want to check and correct this in the original text.
[0140] For example, taking the length N of the first sequence as 32, the first sequence can be sorted from low to high reliability as follows: {0 1 2 4 8 16 3 5 9 6 17 10 18 12 20 24 7 11 19 13 14 21 26 25 22 28 15 23 27 29 30 31}. Assuming the positions of the rate matching bit and the pre-freeze bit are {0 1}, the second sequence can be {2 4 8 16 3 5 9 6 17 10 18 12 20 24 7 11 19 13 14 21 26 25 22 28 15 23 27 29 30 31}.
[0141] Step 502: The transmitting device determines the set of check bit positions based on the first position set in the second sequence.
[0142] As shown in Figure 6, the first position set includes the most reliable (K+n) positions in the second sequence. PC There are ) positions, where K is the length of the information bit sequence, and n PC This represents the number of check bits.
[0143] Optional, n PC Less than or equal to the difference between M and K. For example, if M equals 30 and K equals 11, then n PC Less than or equal to 19.
[0144] For example, taking the second sequence {2 4 8 16 3 5 9 6 17 10 18 12 20 24 7 11 19 13 14 21 26 25 22 28 15 23 27 29 30 31} as an example, assuming K equals 11, n PC If the value is 19, then the set of the first position can be {2 4 8 16 3 5 9 6 17 10 18 12 20 24 7 11 19 13 14 21 26 25 22 28 15 23 27 29 30 31}.
[0145] As shown in Figure 6, the parity bit position set includes a first parity bit position set and a second parity bit position set. The first parity bit position set includes the row weights equal to w in the first position set. min The most reliable The second set of check bit positions includes the least reliable position from the first set of positions. One position, w min It represents the minimum row weight corresponding to the K most reliable positions in the first position set.
[0146] Optional, The value can be any of the following: 0, 1, 2, 3, 4, 5, 6, 7, or 8.
[0147] For example, with K equal to 11, n PC If the first position set equals 19, taking {2 4 8 16 3 5 9 6 17 10 18 12 20 24 7 11 19 13 14 21 26 25 22 28 15 23 27 29 30 31} as an example, the row weight of {31} in this first position set is 32, the row weight of {15 23 27 29 30} is 16, the row weight of {7 11 19 13 14 21 26 25 22 28} is 8, and the row weight of {2 4 8 16 3 5 9 6 17 10 18 12 20 24} is 4. The most reliable K=11 positions in the first position set are {21 26 25 22 28 15 23}. If we have 27 29 30 31}, then the minimum row weight w corresponding to these 11 positions is... min It is 8. Assume... If the value is 6, then the row weight in the first position set is equal to w. min =8 is the most reliable The positions are {14 21 26 25 22 28}, which is the set of positions for the first check bit. The least reliable position in this first set is... The positions are {2 4 8 16 3 5 9 6 17 10 18 12 20}, which is the set of positions for the second check bit.
[0148] Understandably, as shown in Figure 6, the K most reliable positions in the first position set can be considered as the second position set. When The row weight in the set less than or equal to the second position is equal to w min When the number of positions is specified, the first set of check bit positions is included in the second set of positions. The row weight in the set greater than the second position is equal to w min When determining the number of positions, some positions in the first set of check bits are included in the second set of positions, while others include positions not in the second set of positions.
[0149] For example, with K equal to 11, n PCIf the value equals 19, and the first set of positions is {2 4 8 16 3 5 9 6 17 10 18 12 20 24 7 11 19 13 14 21 26 25 22 28 15 23 27 29 30 31}, then the second set of positions can be {21 26 25 22 28 15 23 27 29 30 31}. The minimum row weight w corresponding to these 11 positions is... min The value is 8, assuming If the value is 6, then the first set of check bit positions is {14 21 26 25 22 28}. {21 26 25 22 28} in the first set of check bit positions is included in the second set of positions, while {14} is not included in the second set of positions.
[0150] Step 503: The transmitting device performs polar coding on the information bit sequence according to the set of check bit positions to obtain the encoded bit sequence.
[0151] The transmitting device can determine the information bit position set based on the parity bit position set; and determine the parity bit corresponding to each parity bit position and the information bit corresponding to each information bit position based on the shift register, thus obtaining the encoded bit sequence.
[0152] The information bit location set may include K locations in the first location set other than the check bit location set.
[0153] For example, taking the first position set as {2 4 8 16 3 5 9 6 17 10 18 12 20 24 7 11 19 13 14 21 26 25 22 28 15 23 27 29 30 31}, the first check bit position set as {14 21 26 25 22 28}, and the second check bit position set as {2 4 8 16 3 5 9 6 17 10 18 12 20}, the information bit position set can be {24 7 11 19 13 15 23 27 29 30 31}.
[0154] The shift register can be a three-tap shift register represented in decimal as 26: g = D 4 +D 3 +D; or, the shift register can also be a single-tap shift register represented in decimal as 16: g = D 4 .
[0155] For example, with shift register g=D 4 +D 3Taking +D as an example, the transmitting device can determine the parity bit corresponding to each parity bit position and the information bit corresponding to each information bit position in the following manner to obtain the encoded bit sequence:
[0156] k = 0; / / Initialize the counter.
[0157] y0=0; y1=0; y2=0; y3=0; y4=0; y t =0; / / Initialize the shift registers, where the number of shift registers is 5, determined by the highest power of pc_poly. For example, if pc_poly = 26, its binary representation is [1 1 0 1 0] (the leftmost bit is the most significant bit), and the corresponding polynomial is D4 + D3 + D1. That is, the feedback tap positions are y4, y3, and y1, where 4 is the highest power exponent of the polynomial, and y... t This indicates the value at the feedback tap.
[0158] In another example, the shift register is g=D 4 For example, the transmitting device can determine the parity bit corresponding to each parity bit position and the information bit corresponding to each information bit position in the following manner to obtain the encoded bit sequence:
[0159] k = 0; / / Initialize the counter.
[0160] if n PC >0; / / If the number of parity bits is greater than 0.
[0161] y0=0; y1=0; y2=0; y3=0; y4=0; y t =0; / / Initialize the shift registers, where the number of shift registers is 5, determined by the highest power of pc_poly. For example, if pc_poly = 16, its binary representation is [1 0 0 0 0] (the leftmost bit is the most significant bit), corresponding to the polynomial D4. The feedback tap is located at y4, where 4 is the highest power exponent of the polynomial, and y... t This indicates the value at the feedback tap.
[0162] It is understandable that, since the value of the check bit can be determined based on the value of the information bit preceding it, the set of check bit positions can be simplified based on the set of information bit positions. That is, the check bit positions that are preceded by information bits are retained in the set of check bit positions as valid check bit positions.
[0163] For example, taking the set of check bit positions as {2 4 8 16 3 5 9 6 17 10 18 12 20 14 21 26 25 22 28} and the set of information bit positions as {24 7 11 19 13 15 23 27 29 30 31} as an example, the valid set of check bit positions can include the following check bit positions preceded by information bits: {8 16 9 17 10 18 12 20 14 21 26 25 22 28}.
[0164] Step 504: The transmitting device outputs one or more bits of the encoded bit sequence; correspondingly, the receiving device receives the decoding information from the transmitting device.
[0165] The length of the information bit sequence corresponding to the information to be decoded is K.
[0166] In this process, one or more bits in the encoded bit sequence sent by the transmitting device to the receiving device may be affected by noise and other interference during transmission through the channel. The information to be decoded received by the receiving device is one or more bits in the encoded bit sequence that have been affected by noise and other interference.
[0167] Step 505: The receiving device determines the second sequence of length M based on the reliability corresponding to the first sequence of length N.
[0168] Step 506: The receiving device determines the set of check bit positions based on the first set of positions in the second sequence.
[0169] The method by which the receiving device determines the set of check bit positions based on steps 505 and 506 can be referred to the method by which the sending device determines the set of check bit positions based on steps 501 and 502, and will not be repeated here.
[0170] Step 507: The receiving device decodes the information to be decoded based on the set of check bit positions.
[0171] The receiving device can determine the information bit position set based on the parity bit position set; and decode the information to be decoded based on the parity bit position set, the information bit position set, and the shift register to obtain the decoding result.
[0172] Based on the method shown in Figure 5 above, the first set of check bit positions... The positions are determined based on the first set of positions, which increases the selection range of the first set of check bit positions and ensures the minimum row overlap w among the most reliable K bit positions. min The number of corresponding bit positions can support In larger cases, improving code spectrum performance and decoding performance can better meet the error correction performance requirements of ultra-short code intervals. Under successive cancellation list 8 (SCL8) decoding, it can approach the ML decoding performance of LTE-RM codes.
[0173] In addition, based on the above... A description of the possible values (e.g., any one of 0, 1, 2, 3, 4, 5, 6, 7, or 8), optional. The value of can be determined based on the length K of the information bit sequence and the length E after rate matching.
[0174] For example, based on the three-tap shift register represented as 26 in decimal, the method shown in Figure 5 above can be used to perform a traversal search based on the block error rate, resulting in the table shown below. The optimal value, where -1 represents the default, i.e., in the scenario corresponding to -1, There is no optimal value:
[0175] Table 3
[0176] Based on the optimal values shown in Table 3 above, Figure 7 presents a performance comparison diagram of the simulation effects of the LTE-RM code (curve 1) and the Polar code (curve 2) determined by the method shown in Figure 5 under different code lengths and rate-matched lengths. The decoding method corresponding to the LTE-RM code can be FHT decoding, and the decoding method corresponding to the Polar code can be SCL8 decoding. The horizontal axis represents the length E after rate matching, and the vertical axis represents the signal-to-noise ratio (SNR) required to achieve a block error rate (BLER) of 0.01. Figure 7 shows that the Polar code based on the embodiments of this application can significantly improve decoding performance, and under SCL8 decoding, it can approach the ML decoding performance of the LTE-RM code.
[0177] In another example, based on the single-tap shift register represented as 16 in decimal, the method shown in Figure 5 above can be used to perform a traversal search based on the block error rate, resulting in the table shown below. The optimal value, where -1 represents the default, i.e., in the scenario corresponding to -1, There is no optimal value:
[0178] Table 4
[0179] Based on the optimal values shown in Table 4 above, Figure 8 presents a performance comparison diagram of the simulation effects of the LTE-RM code (curve 1) and the Polar code (curve 2) determined by the method shown in Figure 5 under different code lengths and rate-matched lengths. The decoding method for the LTE-RM code can be FHT decoding, and the decoding method for the Polar code can be SCL8 decoding. The horizontal axis represents the length E after rate matching, and the vertical axis represents the signal-to-noise ratio (SNR) required to achieve a block error rate (BLER) of 0.01. Figure 8 shows that the Polar code based on the embodiments of this application can significantly improve decoding performance, and under SCL8 decoding, it can approach the ML decoding performance of the LTE-RM code.
[0180] It is understandable that in different scenarios corresponding to different K and different E, The optimal value may be different or the same in different scenarios. The optimal values are decoupled, meaning that within a scenario... The optimal value will not affect the value in another scenario. The optimal value.
[0181] Optionally, when K is less than or equal to 6, or when the difference between the length E after rate matching and K is less than or equal to 7, the following can be done: When the value of is set to 0, the set of positions for the second check bit is empty.
[0182] For example, as shown in Table 3 above Based on the optimal value, when K is less than or equal to 6, or when the difference between the length E after rate matching and K is less than or equal to 7, When the value of is set to 0, the following table 5 is obtained: The optimal value, where -1 represents the default, i.e., in the scenario corresponding to -1, There is no optimal value:
[0183] Table 5
[0184] Based on the above table 5 Figure 9 shows the performance comparison of the simulation results of the LTE-RM code (curve 1) and the Polar code (curve 2) determined by the method shown in Figure 5 under different code lengths and rate-matched lengths. The decoding method for the LTE-RM code can be FHT decoding, and the decoding method for the Polar code can be SCL8 decoding. The horizontal axis represents the length E after rate matching, and the vertical axis represents the signal-to-noise ratio (SNR) required to achieve a block error rate (BLER) of 0.01. As can be seen from Figure 9, Table 5 shows... The decoding performance curves of the Polar codes corresponding to the given values are almost identical to those shown in Table 3. The decoding performance curves of the Polar codes corresponding to the values of are the same, both being curve 2. Under SCL8 decoding, it can approximate the ML decoding performance of LTE-RM codes.
[0185] In another example, it can be shown in Table 4 above. Based on the optimal value, when K is less than or equal to 6, or when the difference between the length E after rate matching and K is less than or equal to 7, The value of is set to 0, resulting in the values shown in Table 6 below. The optimal value, where -1 represents the default, i.e., in the scenario corresponding to -1, There is no optimal value:
[0186] Table 6
[0187] Based on the above table 6 Figure 10 shows the performance comparison of the simulation results of the LTE-RM code (curve 1) and the Polar code (curve 2) determined by the method shown in Figure 5 under different code lengths and rate-matched lengths. The decoding method for the LTE-RM code can be FHT decoding, and the decoding method for the Polar code can be SCL8 decoding. The horizontal axis represents the length E after rate matching, and the vertical axis represents the signal-to-noise ratio (SNR) required to achieve a block error rate (BLER) of 0.01. As can be seen from Figure 10, Table 6 shows... The decoding performance curves of the Polar codes corresponding to the given values are almost identical to those shown in Table 4. The decoding performance curves of the Polar codes corresponding to the values of are coincident, both being curve 2. Under SCL8 decoding, it can approximate the ML decoding performance of LTE-RM codes.
[0188] It should be noted that the various embodiments of this application can be implemented independently or in combination, without limitation. Unless otherwise specified or in conflict, the terminology and / or descriptions between the different embodiments provided in this application are consistent and can be referenced mutually. Technical features in different embodiments can be combined to form new embodiments based on their inherent logical relationships.
[0189] It is understood that in the embodiments of this application, the executing entity may perform some or all of the steps in the embodiments of this application. These steps or operations are merely examples, and the embodiments of this application may also perform other operations or variations thereof. Furthermore, the various steps may be executed in different orders as presented in the embodiments of this application, and it is not necessarily necessary to execute all the operations in the embodiments of this application.
[0190] The foregoing primarily describes the solutions provided in this application from the perspective of device-to-device interaction. It is understood that each device, in order to achieve the aforementioned functions, includes corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should readily recognize that, based on the algorithm steps of the examples described in conjunction with the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0191] This application embodiment can divide each device into functional modules according to the above method example. For example, each function can be divided into a separate functional module, or two or more functions can be integrated into one processing module. The integrated module can be implemented in hardware or as a software functional module. It should be noted that the module division in this application embodiment is illustrative and only represents one logical functional division. In actual implementation, there may be other division methods.
[0192] With each function divided into a functional module, Figure 11 shows a transmitting device 110. The transmitting device 110 can perform the actions performed by the transmitting device in the methods shown in Figures 5 to 10. All relevant content of each step involved in the above method embodiments can be referenced to the functional description of the corresponding functional module. The technical effects that can be obtained can be referred to the above method embodiments, and will not be repeated here.
[0193] The transmitting device 110 may include a transceiver module 1101 and a processing module 1102. Exemplarily, the transmitting device 110 may be a communication device, or a chip or other combination device or component having the aforementioned transmitting device functions. When the transmitting device 110 is a communication device, the transceiver module 1101 may be a transceiver, which may include an antenna and radio frequency circuits; the processing module 1102 may be a processor (or processing circuit), such as a baseband processor, which may include one or more CPUs. When the transmitting device 110 is a component having the aforementioned transmitting device functions, the transceiver module 1101 may be a radio frequency unit; the processing module 1102 may be a processor (or processing circuit), such as a baseband processor. When the transmitting device 110 is a chip system, the transceiver module 1101 may be an input / output interface of a chip (e.g., a baseband chip); the processing module 1102 may be a processor (or processing circuit) of the chip system, and may include one or more central processing units. It should be understood that the transceiver module 1101 in the embodiments of this application can be implemented by a transceiver or transceiver-related circuit components; the processing module 1102 can be implemented by a processor or processor-related circuit components (or, referred to as processing circuit).
[0194] For example, the transceiver module 1101 can be used to perform all the transceiver operations performed by the transmitting device in the embodiments shown in Figures 5 to 10, and / or to support other processes of the technology described herein; the processing module 1102 can be used to perform all operations other than the transceiver operations performed by the transmitting device in the embodiments shown in Figures 5 to 10, and / or to support other processes of the technology described herein.
[0195] Figure 12 shows a receiving device 120, which can perform the actions performed by the receiving device in the methods shown in Figures 5 to 10 above. All relevant content of each step involved in the above method embodiments can be referred to the functional description of the corresponding functional module, and the technical effects that can be obtained can be referred to the above method embodiments, which will not be repeated here.
[0196] The receiving device 120 may include a transceiver module 1201 and a processing module 1202. Exemplarily, the receiving device 120 may be a communication device, or a chip or other combination device or component having the aforementioned receiving device functions applied in a communication device. When the receiving device 120 is a communication device, the transceiver module 1201 may be a transceiver, which may include an antenna and radio frequency circuits, etc.; the processing module 1202 may be a processor (or processing circuit), such as a baseband processor, which may include one or more CPUs. When the receiving device 120 is a component having the aforementioned receiving device functions, the transceiver module 1201 may be a radio frequency unit; the processing module 1202 may be a processor (or processing circuit), such as a baseband processor. When the receiving device 120 is a chip system, the transceiver module 1201 may be an input / output interface of a chip (e.g., a baseband chip); the processing module 1202 may be a processor (or processing circuit) of the chip system, and may include one or more central processing units. It should be understood that the transceiver module 1201 in the embodiments of this application can be implemented by a transceiver or transceiver-related circuit components; the processing module 1202 can be implemented by a processor or processor-related circuit components (or, referred to as processing circuit).
[0197] For example, the transceiver module 1201 can be used to perform all the transceiver operations performed by the receiving device in the embodiments shown in Figures 5 to 10, and / or to support other processes of the technology described herein; the processing module 1202 can be used to perform all operations other than the transceiver operations performed by the receiving device in the embodiments shown in Figures 5 to 10, and / or to support other processes of the technology described herein.
[0198] As another possible implementation, the transceiver module 1101 in Figure 11 can be replaced by a transceiver that integrates the functions of the transceiver module 1101; the processing module 1102 can be replaced by a processor that integrates the functions of the processing module 1102. Furthermore, the transmitting device 110 shown in Figure 11 may also include a memory. Alternatively, the transceiver module 1201 in Figure 12 can be replaced by a transceiver that integrates the functions of the transceiver module 1201; the processing module 1202 can be replaced by a processor that integrates the functions of the processing module 1202. Furthermore, the receiving device 120 shown in Figure 12 may also include a memory.
[0199] Alternatively, when the processing module 1102 is replaced by a processor and the transceiver module 1101 is replaced by a transceiver, the transmitting end device 110 involved in the embodiments of this application can also be the communication device 130 shown in FIG13. Or, when the processing module 1202 is replaced by a processor and the transceiver module 1201 is replaced by a transceiver, the receiving end device 120 involved in the embodiments of this application can also be the communication device 130 shown in FIG13.
[0200] The processor can be logic circuit 1301, and the transceiver can be interface circuit 1302. Furthermore, the communication device 130 shown in FIG13 may also include a memory 1303.
[0201] This application also provides a computer program product that, when executed by a computer, can implement the functions of any of the above method embodiments.
[0202] This application also provides a computer program that, when executed by a computer, can implement the functions of any of the above method embodiments.
[0203] This application also provides a computer-readable storage medium. All or part of the processes in the above method embodiments can be implemented by a computer program instructing related hardware. This program can be stored in the computer-readable storage medium, and when executed, it can include the processes of the above method embodiments. The computer-readable storage medium can be an internal storage unit of the terminal (including a data sending end and / or a data receiving end) of any of the foregoing embodiments, such as the terminal's hard disk or memory. The computer-readable storage medium can also be an external storage device of the terminal, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the terminal. Further, the computer-readable storage medium can include both the terminal's internal storage unit and external storage devices. The computer-readable storage medium is used to store the computer program and other programs and data required by the terminal. The computer-readable storage medium can also be used to temporarily store data that has been output or will be output.
[0204] It should be noted that the terms "first" and "second," etc., in the specification, claims, and drawings of this application are used to distinguish different objects, not to describe a specific order. "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 indicated technical features. Therefore, a feature defined with "first" and "second" may explicitly or implicitly include one or more of that feature. In the description of this embodiment, unless otherwise stated, "a plurality of" means two or more.
[0205] Furthermore, the terms “comprising” and “having”, and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the steps or units listed, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to such process, method, product, or apparatus.
[0206] It should be understood that in this application, "at least one (item)" means one or more. "More than one" means two or more. "At least two (items)" means two or three or more. "And / or" is used to describe the relationship between related objects, indicating that there can be three relationships. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the related objects before and after are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple. Both "...when" and "if" indicate that a corresponding action will be taken under certain objective circumstances. They are not time limits, nor do they require a judgment action to be taken when the action is taken, nor do they imply any other limitations.
[0207] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner to facilitate understanding.
[0208] In this application, "sending information to...(terminal device)" can be understood as the destination of the information being the terminal device. This can include sending information directly or indirectly to the terminal device. "Receiving information from...(terminal device)" can be understood as the source of the information being the terminal device, and can include receiving information directly or indirectly from the terminal device. Information may undergo necessary processing between the source and destination, such as format changes, but the destination can understand the valid information from the source.
[0209] Through the above description of the embodiments, those skilled in the art can clearly understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0210] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0211] The units described as separate components may or may not be physically separate. A component shown as a unit can be one or more physical units; that is, it can be located in one place or distributed in multiple different locations. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0212] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0213] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solution of this application embodiment, or all or part of the technical solution, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to cause a device (which may be a microcontroller, chip, etc.) or processor to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, ROM, RAM, magnetic disks, or optical disks.
Claims
1. A communication method, characterized in that, include: Based on the reliability corresponding to the first sequence of length N, a second sequence of length M is determined; wherein, the second sequence includes the positions in the first sequence excluding the positions of the pre-frozen bits and the rate matching bits; Based on the first set of positions in the second sequence, a set of check bit positions is determined; wherein, the first set of positions includes the most reliable (K+n) bits in the second sequence. PC ) positions, where K is the length of the information bit sequence, and n PC The number of check bits is specified. The check bit position set includes a first check bit position set and a second check bit position set. The first check bit position set includes the row weights equal to w in the first position set. min The most reliable The second set of check bit positions includes the least reliable position from the first set of positions. The position, w min The minimum row weight corresponding to the K most reliable positions in the first position set; Based on the set of check bit positions, the information bit sequence is polar-coded to obtain the encoded bit sequence; Output one or more bits of the encoded bit sequence.
2. The method according to claim 1, characterized in that, The n PC Less than or equal to the difference between M and K.
3. The method according to claim 1 or 2, characterized in that, The step of polar coding the information bit sequence according to the set of check bit positions to obtain the coded bit sequence includes: Based on the set of check bit positions, a set of information bit positions is determined; wherein, the set of information bit positions includes K positions in the first position set other than the set of check bit positions; Based on the shift register, the parity bit corresponding to each parity bit position and the information bit corresponding to each information bit position are determined to obtain the encoded bit sequence.
4. The method according to claim 3, characterized in that, The shift register is a three-tap shift register with a decimal representation of 26; or The shift register is a single-tap shift register represented in decimal as 16.
5. The method according to any one of claims 1-4, characterized in that, The It is determined based on the length E after the rate matching, which is K.
6. The method according to any one of claims 1-5, characterized in that, When K is less than or equal to 6, or the difference between the length E after rate matching and K is less than or equal to 7, the If the value is 0, the second set of check bit positions is empty.
7. A communication method, characterized in that, include: Receive information to be decoded from the transmitting device; wherein the length of the information bit sequence corresponding to the information to be decoded is K; Based on the reliability corresponding to the first sequence of length N, a second sequence of length M is determined; wherein, the second sequence includes the positions in the first sequence excluding the positions of the pre-frozen bits and the rate matching bits; Based on the first set of positions in the second sequence, a set of check bit positions is determined; wherein, the first set of positions includes the most reliable (K+n) bits in the second sequence. PC ) positions, where K is the length of the information bit sequence, and n PC The number of check bits is specified. The check bit position set includes a first check bit position set and a second check bit position set. The first check bit position set includes the row weights equal to w in the first position set. min The most reliable The second set of check bit positions includes the least reliable position from the first set of positions. The position, w min The minimum row weight corresponding to the K most reliable positions in the first position set; The information to be decoded is decoded according to the set of check bit positions.
8. The method according to claim 7, characterized in that, The method further includes: The n PC Less than or equal to the difference between M and K.
9. The method according to claim 7 or 8, characterized in that, The step of decoding the information to be decoded based on the set of check bit positions includes: Based on the set of check bit positions, a set of information bit positions is determined; wherein, the set of information bit positions includes K positions in the first position set other than the set of check bit positions; The information to be decoded is decoded based on the set of check bit positions, the set of information bit positions, and the shift register.
10. The method according to claim 9, characterized in that, The shift register is a three-tap shift register with a decimal representation of 26; or The shift register is a single-tap shift register represented in decimal as 16.
11. The method according to any one of claims 7-10, characterized in that, The It is determined based on the length E after the rate matching, which is K.
12. The method according to any one of claims 7-11, characterized in that, When K is less than or equal to 6, or the difference between the length E after rate matching and K is less than or equal to 7, the If the value is 0, the second set of check bit positions is empty.
13. A communication device, characterized in that, The communication device includes a processor; the processor is configured to run a computer program or instructions that cause the communication method as described in any one of claims 1-6 to be executed, or cause the communication method as described in any one of claims 7-12 to be executed.
14. A communication device, characterized in that, The communication device includes an interface circuit and a logic circuit; the interface circuit is used to input and / or output information; the logic circuit is used to execute the communication method as described in any one of claims 1-6, or to execute the communication method as described in any one of claims 7-12, and to process and / or generate the information based on the information.
15. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions or programs that, when executed on a computer, cause the communication method as described in any one of claims 1-6 to be executed, or cause the communication method as described in any one of claims 7-12 to be executed.
16. A computer program product, characterized in that, The computer program product includes computer instructions; when some or all of the computer instructions are executed on a computer, they cause the communication method as described in any one of claims 1-6 to be executed, or cause the communication method as described in any one of claims 7-12 to be executed.
Citation Information
Patent Citations
Polar code encoding and decoding method and apparatus
CN107425857A
Coding method and device
CN108282259A
Simple parity-check bit computation for polar codes
CN111448763A
Efficient determination of parity bit location for polar codes
US11206045B1
Method and apparatus for transmitting information, and method and apparatus for receiving information
US20210075538A1