Communication method, and apparatus
By dynamically determining the set of parity bit positions, the code spectrum and decoding performance of PC-Polar codes are improved, solving the problem of inflexible PC bit position determination and achieving high-efficiency error correction performance in NR communication systems.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2025-08-11
- Publication Date
- 2026-05-15
AI Technical Summary
In the existing PC-Polar code encoding process, the determination of the PC bit position is not flexible enough, which leads to limitations in code spectrum and decoding performance. It cannot effectively support the bit positions corresponding to a large number of minimum row weights wmin, and is incompatible with the NR communication standard.
By determining the set of parity bit positions, including the K+nwmin positions with the highest reliability, and dynamically selecting the PC bit positions, the flexibility and diversity of the parity bit position set are enhanced, and polar coding is used to improve the code spectrum and decoding performance.
It improves code spectrum performance and decoding performance, and can approach the ML decoding performance of LTE-RM, meet the error correction requirements of ultra-short code intervals, and adapt to different communication needs and scenarios.
Smart Images

Figure CN2025113760_15052026_PF_FP_ABST
Abstract
Description
Communication methods and devices
[0001] This application claims priority to Chinese Patent Application No. 202411587595.5, filed on November 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 communication methods 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, cyclic redundancy check (CRC) bits, frozen bits, PC bits, and rate matching shortening or puncturing 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 or puncturing bits are not 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 The minimum row overlap w among the first K bit positions sorted from highest to lowest reliability. min In the corresponding set of bit positions, the top (K+n) can be sorted from highest to lowest reliability. PC The first few choices are sorted by reliability from highest to lowest. 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 From the positions of the PC bits, select the first bit positions sorted from lowest to highest reliability. Each bit position is used as the position of the PC bit.
[0005] However, in the above encoding process, there may be situations where a significant loss of reliability is required to improve the code spectrum or CRC bits occupy a large number of reliable positions. In such cases, the minimum row overlap w among the top K bit positions sorted from highest to lowest reliability may be a problem. 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: the transmitting device determining a second sequence of length M based on the reliability corresponding to a first sequence of length N; determining a set of check bit positions based on the second sequence; polar encoding the third 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 second sequence includes positions in the first sequence excluding the positions of pre-frozen bits and rate-matching bits; N and M are both positive integers; and the set of check bit positions includes the position with the highest reliability from the first position set. The weight of each row is equal to w min The first set of positions includes the K+n positions with the highest reliability in the second sequence. wmin One location, Determined according to one or more of the following: K, n wmin The methods for generating parity bits include: Cyclic Redundancy Check (CRC) bits, or maximum code rate; alternatively, the parity bit position set includes all positions in the pre-frozen bit position set, with different K values corresponding to different pre-frozen bit position sets; K is the number of information bits, w min The minimum row weight corresponding to the first position set. w min , and K are both positive integers, n wmin The first is an integer greater than or equal to 0; the third sequence includes information bits.
[0008] Understandably, the pre-frozen bit positions can be based on the set of positions determined in section 5.4.1.1 of standard 38.212. The position is obtained from the middle.
[0009] Based on the first aspect, the set of check bit positions can be determined based on the first set of positions, which increases the selection range of the check bit position set and ensures the most reliable K+n. wmin The minimum row weight w in each bit position 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 approximate the maximum likelihood (ML) decoding performance of long-term evolution-reed-muller (LTE-RM) codes. Furthermore, compared to... The value can be 0 or 1. In this application, it can be dynamically determined according to one or more of the following methods. K, n wmin The method of generating parity bits, CRC bits, or maximum code rate can improve the accuracy of determination. Its flexibility and versatility allow it to be tailored to different communication needs or scenarios. It can better improve code spectrum performance and decoding performance.
[0010] On the other hand, the parity bit position set can include all positions in the pre-frozen bit position set. Since different K values correspond to different pre-frozen bit position sets, the pre-frozen bit position set can be dynamically determined based on K, thereby determining the parity bit position set. This increases the selection range of the parity bit position set and improves the flexibility and diversity of its determination. Furthermore, since all positions in the pre-frozen bit position set are used to determine the parity bit and are independent of reliability, decoding performance and code spectrum performance can be improved.
[0011] Secondly, this application provides a communication method that 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 device information to be decoded; determining a second sequence of length M based on the reliability corresponding to a first sequence of length N; determining a set of check bit positions based on the second sequence; and decoding the information to be decoded based on the set of check bit positions. Wherein, the number of information bits corresponding to the information to be decoded is K, where K is a positive integer; the second sequence includes positions in the first sequence excluding the positions of pre-frozen bits and rate-matching bits; N and M are both positive integers; and the set of check bit positions includes the position with the highest reliability from the first position set. The weight of each row is equal to w min The first set of positions includes the K+n positions with the highest reliability in the second sequence. wmin One location, Determined according to one or more of the following: K, n wmin The method of generating parity bits, cyclic redundancy check (CRC) bits, or maximum code rate; or, the parity bit position set includes all positions in the pre-frozen bit position set, with different K corresponding to different pre-frozen bit position sets; w min The minimum row weight corresponding to the first position set. w min , and K are both positive integers, n wmin It is an integer greater than or equal to 0.
[0012] Understandably, the pre-frozen bit positions can be based on the set of positions determined in section 5.4.1.1 of standard 38.212. The position is obtained from the middle.
[0013] Based on the second aspect, on the one hand, the set of check bit positions can be determined based on the first set of positions, which increases the selection range of the check bit position set and ensures the most reliable K+n. wmin The minimum row weight w in each bit position 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 under SCL8 decoding, it can approach the ML decoding performance of LTE-RM codes. Furthermore, compared to... The value can be 0 or 1. In this application, it can be dynamically determined according to one or more of the following methods. K, n wmin The method of generating parity bits, CRC bits, or maximum code rate can improve the accuracy of determination. Its flexibility and versatility allow it to be tailored to different communication needs or scenarios. It can better improve code spectrum performance and decoding performance.
[0014] On the other hand, the parity bit position set can include all positions in the pre-frozen bit position set. Since different K correspond to different pre-frozen bit position sets, the pre-frozen bit position set can be dynamically determined based on K, thereby determining the parity bit position set. This increases the selection range of the parity bit position set and improves the flexibility and diversity of its determination. Furthermore, since all positions in the pre-frozen bit position set are used to determine the parity check bit and are independent of reliability, decoding performance and code spectrum performance can be improved. Combining the first and second aspects, in one possible implementation, n... wmin It is 0; or, n wmin for
[0015] Based on this possible implementation, compared to n wmin In this application, n is 0. wmin Besides being able to be 0, it can also be... That is, the sending device can determine the minimum line weight from the K most reliable positions in the second sequence, or from the K+n most reliable positions in the second sequence. wmin Determining the minimum line weight within a given position can increase the range of possible values for the minimum line weight, thereby enhancing the flexibility and versatility of the determination process. Furthermore, the minimum line weight can be determined based on actual communication requirements, which can improve code spectrum performance and decoding performance.
[0016] Combining the first and second aspects, in one possible implementation, the third sequence does not include CRC bits when K is greater than or equal to 12 and less than or equal to 19.
[0017] Based on this possible implementation, the transmitting device can avoid CRC encoding of the information bits (i.e., it can directly perform polarization encoding on the information bits). Compared to adding six CRC bits to check the information bits when K is greater than or equal to 12 and less than or equal to 19, in this application, the CRC bits can be removed, and the information bits can be checked by the soft checking capability of the polarization check bits themselves. This can improve the code spectrum performance and decoding performance, and at the same time provide design space for determining the polarization check bits.
[0018] Combining the first and second aspects, in one possible implementation, in n wmin When K is 0 and K is 13 or 19, It is 2; or, in n wmin When K is 0 and K is 12, 14, 15, 16, 17, or 18, The value is 3.
[0019] Based on this possible implementation, when n wmin When it is 0, the corresponding value can be determined based on the value of K. Make It can better meet the communication needs under different values of K, and can improve code spectrum performance and decoding performance.
[0020] Combining the first and second aspects, in one possible implementation, in n wmin for In this case, The value is 3.
[0021] Based on this possible implementation, when n wmin When w is 0, min The minimum row weight corresponding to the K positions with the highest reliability in the second sequence can be further determined by K. And when nwmin for At that time, w min The most reliable among the second sequences The minimum row weight corresponding to each position is determined by changing w. min The determination method can be directly configured. It is 3 (or it can be understood as soon as possible) The value of is fixed at 3), which simplifies the determination. The implementation reduces the degree of uncertainty. The complexity.
[0022] Combining the first and second aspects, in one possible implementation, the parity bit is determined according to the multi-tap shift register, n wmin for And when K is 12, 13, or 14, The value is 4; or, the parity bit is determined by the multi-tap shift register, n. wmin for And when K is 15, 16, 17, 18, or 19, The value is 2; or, the parity bit is determined by the single-tap shift register, and n wmin When the value is 0, The value is 3.
[0023] Combining the first and second aspects, in one possible implementation, the parity check equation corresponding to the multi-tap shift register is D^4+D^3+D; or, the parity check equation corresponding to the multi-tap shift register is D^3+D+1.
[0024] Based on the two possible implementations mentioned above, the corresponding values of K can be determined by improving the shift register (e.g., changing a single-tap shift register to a multi-tap shift register). It can improve code spectrum performance and decoding performance.
[0025] Combining the first and second aspects, in one possible implementation, where the first length and the second length are the same, It is 0; or, if the first length is greater than the second length, The first length is the length of the CRC bits in the third sequence, and the second length is the length of the preset CRC bits corresponding to K.
[0026] Based on this possible implementation, the first length and the second length can be compared to determine... In this sequence, the CRC bits in the third sequence occupy the position with the largest sequence number (or index) in the information bit position set. In other words, the CRC bits in the third sequence sacrifice reliability. When the length of the CRC bits in the third sequence exceeds the preset CRC bit length, reliability can be sacrificed to determine... A parity check bit is used to ensure decoding performance and code spectrum performance; similarly, when the length of the CRC bits in the third sequence is less than or equal to the preset CRC bit length, then a value greater than 0 is determined. An extra parity bit can lead to too much loss of reliability, which can actually reduce decoding performance.
[0027] Combining the first and second aspects, in one possible implementation, when the maximum bit rate is greater than or equal to the first threshold, The value is 4; or, if the maximum bitrate is less than the first threshold, It is 0.
[0028] Based on this possible implementation, when the code rate exceeds a first threshold, decoding performance will exhibit poor performance, which can be addressed by determining... Parity check bits are used to improve decoding performance; additionally, decoding performance is better when the code rate is less than or equal to a first threshold, and then bits greater than 0 are used to determine the parity check bits. An extra parity bit can lead to too much loss of reliability, which can actually reduce decoding performance.
[0029] Combining the first and second aspects, in one possible implementation, the first threshold is 0.5; or, the first threshold is 7 / 16.
[0030] Based on this possible implementation, two feasible solutions are provided for determining the value of the first threshold.
[0031] Combining the first and second aspects, in one possible implementation, when E is less than N, The maximum value is EK; or, if E is greater than or equal to N, The maximum value is NK; where E is the length after rate matching.
[0032] Based on this possible implementation, The value of cannot be infinitely large; it should have a definite upper bound. This upper bound (i.e., The maximum value can be associated with the mother code length N and the rate matching method. When the rate matching method is shortening or punching, the length E after rate matching is less than the mother code length N, and the upper bound value can be EK; when the rate matching method is repetition, the length E after rate matching is equal to or less than the mother code length N, and the upper bound value can be NK.
[0033] In combination with the first and second aspects, in one possible implementation, the third sequence also includes CRC bits.
[0034] Based on this possible implementation, a feasible solution is provided for determining the third sequence.
[0035] Combining the first and second aspects, in one possible implementation, the set of check bit positions also includes the K+n bits with the highest reliability in the second sequence. PC The location with the lowest reliability There are n positions; where n is the number of positions. PC This represents the number of parity bits.
[0036] Based on this possible implementation, a feasible scheme is provided for determining the set of check bit positions.
[0037] Combining the first and second aspects, in one possible implementation, The following are also determined: the physical uplink control channel (PUCCH) resource set, the PUCCH format, the payload type of the uplink control information, or the priority of the uplink control information; wherein the PUCCH resource set is used to transmit information bits; the PUCCH format is the format of the PUCCH for transmitting information bits; and the uplink control information is used to carry information bits.
[0038] Based on this possible implementation, further determination can be made according to the actual communication scenario. Make The value of can better meet communication needs.
[0039] Combining the first and second aspects, in one possible implementation, when the PUCCH resource set is either PUCCH resource set 1 or PUCCH resource set 2, Greater than 0; or, if the PUCCH resource set is PUCCH resource set 0 or PUCCH resource set 3, It is 0.
[0040] Based on this possible implementation, if the PUCCH resource set is PUCCH resource set 0, since the number of information bits transmitted in PUCCH resource set 0 is relatively small, then a value greater than 0 is determined. Multiple parity check equations can lead to excessive reliability sacrifices, which can actually reduce decoding performance. If the PUCCH resource set is PUCCH resource set 3, since the number of information bits transmitted in PUCCH resource set 3 is relatively large, the information bits can be checked using CRC bits to determine those greater than 0. An excessive number of parity check equations can lead to too much reliability sacrifice, which can actually reduce decoding performance.
[0041] Combining the first and second aspects, in one possible implementation, when the PUCCH format is PUCCH format 2, PUCCH format 3, or PUCCH format 4, Greater than 0; or, if the PUCCH format is PUCCH format 0 or PUCCH format 1. It is 0.
[0042] Based on this possible implementation, when transmitting information bits via PUCCH format 0 or PUCCH format 1, without polar coding of the information bits, it can be determined that... The value is 0; when transmitting information bits via PUCCH format 2, PUCCH format 3, or PUCCH format 4, the information bits can be polar-coded, which can determine that the value is greater than 0. An additional parity bit is used to improve decoding performance and code spectrum performance.
[0043] Combining the first and second aspects, in one possible implementation, when the payload type of the uplink control information is a scheduling request, a hybrid automatic repeat request feedback, or channel state information type I, Greater than 0; or, if the payload type of the uplink control information is Channel State Information Type II. It is 0.
[0044] Based on this possible implementation, the transmitting device can determine the reliability requirements of the uplink control information according to the payload type of the uplink control information. For example, when the payload type of the uplink control information is Channel State Information (CSI) Type II, the reliability requirements of the uplink control information are lower, allowing for... The value is 0; or, when the payload type of the uplink control information is a scheduling request (SR), a hybrid automatic repeat request (HARQ) feedback, or a channel state information type (CSI-Type) I, the uplink control information has a higher reliability requirement, and it can be determined that the value is greater than 0. An additional parity bit is used to improve decoding performance and code spectrum performance.
[0045] Combining the first and second aspects, in one possible implementation, when the index of the priority of the uplink control information is 1, Greater than 0; or, if the priority index of the uplink control information is 0. It is 0.
[0046] Based on this possible implementation, the priority of uplink control information with an index of 1 is higher than that of uplink control information with an index of 0. The higher the priority of the uplink control information, the higher the reliability requirement. This can be achieved by determining a priority greater than 0. An additional parity bit is used to improve decoding performance and code spectrum performance.
[0047] 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.
[0048] For example, the processing module is configured to determine a second sequence of length M based on the reliability corresponding to a first sequence of length N; wherein the second sequence includes positions in the first sequence excluding the positions of pre-frozen bits and rate-matching bits; N and M are both positive integers; the processing module is further configured to determine a set of check bit positions based on the second sequence; wherein the set of check bit positions includes the position with the highest reliability from the first position set. The weight of each row is equal to w min The first set of positions includes the K+n positions with the highest reliability in the second sequence. wmin One location, Determined according to one or more of the following: K, n wmin The methods for generating parity bits include: Cyclic Redundancy Check (CRC) bits, or maximum code rate; or, the parity bit position set includes all positions in the pre-frozen bit position set, with different K values corresponding to different pre-frozen bit position sets; K is the number of information bits, w min The minimum row weight corresponding to the first position set. w min , and K are both positive integers, n wminThe integer is greater than or equal to 0; the processing module is used to polarize the third sequence according to the set of check bit positions to obtain the encoded bit sequence; wherein the third sequence includes information bits; the transceiver module is used to output one or more bits of the encoded bit sequence.
[0049] 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.
[0050] 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.
[0051] For example, the transceiver module is used to receive information to be decoded; wherein the number of information bits corresponding to the information to be decoded is K, and K is a positive integer; 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; wherein the second sequence includes positions in the first sequence excluding the positions of pre-frozen bits and rate matching bits; N and M are both positive integers; the processing module is further used to determine a set of check bit positions based on the second sequence; wherein the set of check bit positions includes the position with the highest reliability in the first position set. Each row weight equals w min The first set of positions includes the K+n positions with the highest reliability in the second sequence. wmin One location, Determined according to one or more of the following: K, n wmin The method of generating parity bits, cyclic redundancy check (CRC) bits, or maximum code rate; or, the parity bit position set includes all positions in the pre-frozen bit position set, with different K corresponding to different pre-frozen bit position sets; w min The minimum row weight corresponding to the first position set. w min , and K are both positive integers, n wminIt is an integer greater than or equal to 0; the processing module is also used to decode the information to be decoded based on the set of check bit positions.
[0052] 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.
[0053] 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.
[0054] 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.
[0055] 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.
[0056] 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 any one of the first to second aspects, and to process and / or generate information based on the information.
[0057] 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 any one of the first to second aspects to be performed.
[0058] 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 any one of the first to second aspects to be executed.
[0059] Ninthly, embodiments of this application provide a computer program that, when run on a computer, causes the communication method described in any one of the first to second aspects to be executed.
[0060] 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, wherein when the program or instructions are executed by the processor, the communication method as described in the first to second aspects is executed.
[0061] The technical effects of any of the design methods in aspects three through ten are similar to those in aspects one through two, and will not be elaborated upon further.
[0062] 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
[0063] Figure 1 is a schematic diagram of an LTE-RM code decoding process provided in an embodiment of this application;
[0064] Figure 2 is a schematic diagram of a communication system provided in an embodiment of this application;
[0065] 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;
[0066] Figure 4 is a schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0067] Figure 5 is a flowchart illustrating a communication method provided in an embodiment of this application;
[0068] Figure 6 is a simulation diagram illustrating the performance of different encoding methods provided in an embodiment of this application;
[0069] Figure 7 is a flowchart illustrating a communication method provided in an embodiment of this application;
[0070] Figure 8 is a flowchart illustrating a communication method provided in an embodiment of this application;
[0071] Figure 9 is a simulation diagram illustrating the performance of different encoding methods provided in an embodiment of this application;
[0072] Figure 10 is a simulation diagram illustrating the performance of different encoding methods provided in an embodiment of this application;
[0073] Figure 11 is a schematic diagram of the structure of a transmitting device provided in an embodiment of this application;
[0074] Figure 12 is a schematic diagram of the structure of a receiving device provided in an embodiment of this application;
[0075] Figure 13 is a schematic diagram of another communication device provided in an embodiment of this application. Detailed Implementation
[0076] Before describing the embodiments of this application, the technical terms involved in the embodiments of this application will be described.
[0077] LTE-RM encoding: The transmitting device can encode 3-11 bit sequences of ultra-short messages in the following manner:
[0078] 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 .
[0079] For example, K can be any value from 3 to 11, and N can be 32.
[0080] in, M i,k The value can be determined according to Table 1 below, i = 0, 1, 2, ..., N-1.
[0081] Table 1
[0082] 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 .
[0083] 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.
[0084] 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.
[0085] For example, the rate-matching sequence f0, f1, ..., f E-1 You can obtain it in the following way:
[0086] for k=0to E-1
[0087] f k =dk mod N ;
[0088] end for
[0089] Step 3: Send the rate matching sequence f0, f1, ..., f E-1 .
[0090] 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:
[0091] 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.
[0092] The received sequence can be the rate-matching sequence mentioned above.
[0093] Optionally, if the codeword length after simple decision is not equal to N, high-order zeros can be added.
[0094] 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, i.e., 0, ..., 0, b0, b1, ..., b 19 .
[0095] Step 2: Interleave the received codewords processed in Step 1 according to the mask vector.
[0096] The interleaving process is the same as the interleaving process in step 1 above.
[0097] 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.
[0098] 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.
[0099] 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.
[0100] 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.
[0101] 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.
[0102] However, the LTE-RM decoding method described above uses FHT. When the information bit sequence length 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 rate matching length E is small, the number of punctures is large, which can lead to performance defects and affect decoding performance.
[0103] Parity check polar codes (PC-Polar codes) can include information bits, CRC bits, frozen bits, PC bits, and rate-matched shortening or punching bits.
[0104] A subset of frozen bits can be selected as PC bits. These PC bits differ from other frozen bits in that their values are not fixed at 0, but are 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 positions originate from frozen bits, but their values are not fixed at 0). Rate matching shortening or puncturing bits are not transmitted to the channel; therefore, their positions cannot be selected as PC bits.
[0105] 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 The minimum row overlap w among the first K bit positions sorted from highest to lowest reliability. min In the corresponding set of bit positions, the top (K+n) can be sorted from highest to lowest reliability. PC The first few choices are sorted by reliability from highest to lowest. 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 From the positions of the PC bits, select the first bit positions sorted from lowest to highest reliability. Each bit position is used as the position of the PC bit. However, in the above encoding process, there may be a situation where, when it is necessary to sacrifice a lot of reliability 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 most cases, the number of PC bits is predefined by the communication protocol, which makes the design inflexible and limits the code spectrum and decoding performance.
[0106] Furthermore, the selection of information bits, rate matching, and generation of PC check relationships for PC-Polar codes based on nested PC equations are incompatible with the New Radio (NR) communication standard and cannot be implemented in NR communication systems. The constructive parameters and check equations of PC-Polar codes in the NR standard cannot meet the error correction performance requirements of ultra-short code intervals and cannot approach the decoding performance of LTE-RM codes.
[0107] 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.
[0108] Therefore, this application provides a communication method, which includes: a transmitting device performing polar coding on a third sequence based on a set of check bit positions to obtain and output an encoded bit sequence. The third sequence includes information bits, and the set of check bit positions includes the set of positions with the highest reliability from a first set. The weight of each row is equal to w min Location, Determined according to one or more of the following: K, n wmin The determination method of the PC bits, CRC bits, or maximum code rate; or, the check bit position set can include all positions in the pre-frozen bit position set. The first position set can include the K+n positions with the highest reliability. wmin There are 1 position, K is the number of information bits, and w min The minimum row weight corresponding to the first position set. w min , and K are both positive integers, n wmin It is an integer greater than or equal to 0.
[0109] The transmitting device can determine a second sequence of length M based on the reliability corresponding to a first sequence of length N. 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.
[0110] In this embodiment, on the one hand, the set of check bit positions can be determined based on the first set of positions, which increases the selection range of the check bit position set and ensures the most reliable K+n.wmin The minimum row weight w in each bit position 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 under SCL8 decoding, it can approach the ML decoding performance of LTE-RM codes. Furthermore, compared to... The value can be 0 or 1. In this application, it can be dynamically determined according to one or more of the following methods. K, n wmin The method of generating parity bits, CRC bits, or maximum code rate can improve the accuracy of determination. Its flexibility and versatility allow it to be tailored to different communication needs or scenarios. It can better improve code spectrum performance and decoding performance.
[0111] On the other hand, the parity bit position set can include all positions in the pre-frozen bit position set. Since different K values correspond to different pre-frozen bit position sets, the pre-frozen bit position set can be dynamically determined based on K, thereby determining the parity bit position set. This increases the selection range of the parity bit position set and improves the flexibility and diversity of its determination. Furthermore, since all positions in the pre-frozen bit position set are used to determine the parity bit and are independent of reliability, decoding performance and code spectrum performance can be improved.
[0112] The embodiments of this application will now be described in detail with reference to the accompanying drawings.
[0113] 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 future communication systems are not restricted. Non-terrestrial network (NTN) systems (such as satellite communication systems) and non-3GPP communication systems are also included.
[0114] 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.
[0115] The communication system provided in the embodiments of this application will be described below using Figure 2 as an example.
[0116] 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.
[0117] 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.
[0118] 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.
[0119] For example, the terminal device 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.
[0120] 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.
[0121] 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.
[0122] 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.
[0123] 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).
[0124] 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).
[0125] 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.
[0126] 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.
[0127] 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.
[0128] 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.
[0129] 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.
[0130] 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.
[0131] 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.
[0132] 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.
[0133] Communication line 403 is used to transmit information between the components included in communication device 400.
[0134] Memory 404 is used to store instructions. These instructions can be computer programs.
[0135] 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.
[0136] The memory 404 may exist independently of the processor 401 or may be integrated with the processor 401. The memory 404 may be used to store instructions, program code, or some data. The memory 404 may be located within 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.
[0137] In one example, processor 401 may include one or more CPUs, such as CPU0 and CPU1 in Figure 4.
[0138] 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.
[0139] 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.
[0140] The communication device 400 may be a desktop computer, a laptop 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.
[0141] In this embodiment of the application, the chip system may be composed of chips or may include chips and other discrete devices.
[0142] 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.
[0143] 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.
[0144] 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:
[0145] Step 501: The transmitting device determines the second sequence of length M based on the reliability corresponding to the first sequence of length N.
[0146] 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.
[0147] For example, the transmitting device can determine the mother code length N = max(min([N]) based on the length K1 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 K1 and minimum bitrate R min related, R min = 1 / 8. N max =1024.
[0148] in, This is for rounding up.
[0149] The pre-frozen bit positions can be determined from the set of positions specified in section 5.4.1.1 of standard 38.212. The positions are obtained from the given information. Additionally, frozen bits can be understood as the NK bit positions excluding the K information bit positions out of N bit positions. The frozen bit positions can be a set defined according to section 5.3.1 of standard 38.212. The position is obtained from the middle.
[0150] The information bit sequence may include information bits and CRC bits, in which case K1 can be the sum of the number of information bits and the number of CRC bits included in the information bit sequence. Alternatively, the information bit sequence may include the information bits themselves, in which case K1 can be the number of information bits included in the information bit sequence.
[0151] The transmitting device can determine the reliability of the first sequence based on the reliability sequence of length N, and then determine the second sequence of length M.
[0152] The reliability sequence can be used to indicate the reliability of each bit position in the sequence. The higher the reliability value, the more reliable the position corresponding to that reliability.
[0153] Optionally, the reliability sequence can be predefined by the protocol. The transmitting device can select a reliability sequence of length N from one or more predefined reliability sequences. For example, if the transmitting device determines that N is 32, the reliability sequence of length 32 can be the reliability sequence shown in Table 2 above. It is understood that Table 2 is defined starting from bit 0, but it can also be defined starting from bit 1, that is, 0, 1, ..., 31 can be replaced with 1, 2, ..., 32 respectively, without restriction.
[0154] Based on the above reliability sequence, the transmitting device can determine the position of the pre-frozen bit and the position of the rate matching bit in the first sequence according to the reliability corresponding to the first sequence of length N, and determine the positions in the first sequence other than the positions of the pre-frozen bit and the rate matching bit as the second sequence.
[0155] The position of the rate matching bit can be determined based on the rate matching method.
[0156] Exemplarily, the rate matching method can be determined according to the length E after rate matching and the length N of the mother code. For example, if E > N, the rate matching method is determined to be repetition, that is, after the transmitting device sends the mother code with length N, it sends (E - N) bits again. If E < N, the transmitting 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, rate matching is performed in the way of puncturing from front to back, that is, puncturing (N - E) bits from front to back; otherwise, shortening (N - E) bits from back to front.
[0157] Exemplarily, taking the length N of the first sequence as 32, the first sequence sorted in ascending order of reliability can be: {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 that the positions of the rate matching bits and the pre-frozen bits 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}.
[0158] Step 502, the transmitting device determines the set of check bit positions according to the second sequence.
[0159] Among them, the set of check bit positions may include the positions with the highest reliability in the first position set and the row weight equal to w min of.
[0160] Among them, is a positive integer. Exemplarily, can be 0, or can be 1, or can be 2, or can be 3, or can be 4.
[0161] Optionally, the maximum value of can be determined according to E and K.
[0162] Exemplarily, in the case where E is less than N, the maximum value of can be E - K; or, in the case where E is greater than or equal to N, the maximum value of can be N - K.
[0163] Among them, The maximum value can be EK or can be described as It can be less than or equal to EK; similarly, The maximum value can be NK or can be described as It can be less than or equal to NK.
[0164] Understandable, The value of cannot be infinitely large; it should have a definite upper bound. This upper bound (i.e., The maximum value can be associated with the mother code length N and the rate matching method. When the rate matching method is shortening or punching, the length E after rate matching is less than the mother code length N, and the upper bound value can be EK; when the rate matching method is repetition, the length E after rate matching is equal to or less than the mother code length N, and the upper bound value can be NK.
[0165] in, K and n can be determined based on one or more of the following: wmin The method for generating parity bits, CRC bits, or maximum code rate. For specific determination methods, please refer to the following section on determination. Related descriptions.
[0166] The method of generating parity bits can be described as the method of generating parity bit values, or it can be described as the method of determining parity bits, without any limitation.
[0167] The first set of positions includes the most reliable (K+n) positions in the second sequence. wmin There are ) positions, K is the number of information bits, and n wmin It is an integer greater than or equal to 0.
[0168] Here, K can also be described as the length of the information bits, or the number of information bits in the information bit sequence excluding the CRC bits, or the length of the information bits in the information bit sequence excluding the CRC bits. For example, when the information bit sequence includes the information bits themselves, K1 is equal to K; when the information bit sequence includes the information bits themselves and the CRC bits, K1 is greater than K.
[0169] Optional, n wmin It can be 0, or n wmin It can be
[0170] In one example, with n wminIf the first position is 0, and the second sequence 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}, for example, assuming K equals 11, the first position set can be {21 26 25 22 28 15 23 27 29 30 31}.
[0171] In another example, with n wmin for 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, and assuming K equals 11, If the value is 4, the set of the first position can be {11 19 13 14 21 26 25 22 28 15 23 27 29 30 31}.
[0172] Among them, w min The minimum row weight corresponding to the first position set.
[0173] In one example, K equals 11, Taking an equal-zero value as an example, the first position set can be {21 26 25 22 28 15 23 27 29 30 31}. In this first position set, the row weight of {31} is 32, the row weight of {15 23 27 29 30} is 16, and the row weight of {21 26 25 22 28} is 8. Therefore, the minimum row weight w corresponding to the first position set is... min It can be 8.
[0174] In another example, with K equal to 11, Taking an integer equal to 4 as an example, the first position set can be {11 19 13 14 21 26 25 22 28 15 23 27 29 30 31}. In this first position set, the row weight of {31} is 32, the row weight of {15 23 27 29 30} is 16, and the row weight of {11 19 13 14 21 26 25 22 28} is 8. Therefore, the minimum row weight w corresponding to the first position set is... min It can be 8.
[0175] Based on the above, w min , set of check bit positions, set of first positions, n wmin As described in the present application, this application provides a possible embodiment where K equals 11. Taking an equal value of 4 as an example, let's assume nwmin If the value is 0, the first position set can be {21 26 25 22 28 15 23 27 29 30 31}, and the minimum row weight w corresponding to the first position set is... min If the value can be 8, then the row weight in the first position set is equal to w. min =8 is the most reliable The positions can be {26 25 22 28}. Or, suppose n wmin for The first position set can be {11 19 13 14 21 26 25 22 28 15 23 27 29 30 31}, and the minimum row weight w corresponding to the first position set is... min If the value can be 8, then the row weight in the first position set is equal to w. min =8 is the most reliable The positions can be {26 25 22 28}.
[0176] It is understandable that the first position set includes the most reliable (K+n) sequence in the second sequence. wmin In the case of ) positions, the set of check bit positions can include the most reliable position from the first set of positions. The weight of each row is equal to w min The position, if the row weight in the first position set is equal to w min The number of positions is less than The sending device can determine that the line weight is equal to w in the first location set. min After determining all positions, then determine the row weight equal to 2w from the first position set. min The highest reliability There are 10 positions, P1 is the first position set where the row weight is 2w. min The position. Similarly, if the row weight in the first position set is equal to 2w min The number of positions and the row weight are equal to w min The sum of the number of positions is less than The sending device can determine that the line weight is equal to w in the first location set. min The sum of the rows equals 2w min After determining all positions, continue from the first position set to determine the row weight equal to 3w. min The highest reliability There are 2 positions, P2 is the row weight in the first position set equal to 2w. min The location is determined, and so on, until it is confirmed. There are 3 positions. Among them, P1 and P2 are both positive integers.
[0177] Optionally, the set of check bit positions may also include the K+n bits with the highest reliability in the second sequence.PC The location with the lowest reliability One position.
[0178] Where, n PC n represents the number of parity bits, or it can be described as the length of the parity bits. PC It is a positive integer.
[0179] For example, with K equal to 11, n PC It equals 19. Taking 4 as an example, the K+n sequence with the highest reliability in the second sequence PC The positions 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}, and the K+n with the highest reliability in the second sequence is... PC The location with the lowest reliability The position can be {2 4 8 16 3 5 9 6 17 10 18 12 20 24 7}, and the set of check bit positions can be {2 4 8 16 3 5 9 6 17 10 18 12 20 24 7 26 25 22 28}.
[0180] Step 503: The transmitting device performs polar coding on the third sequence according to the set of check bit positions to obtain the coded bit sequence.
[0181] The third sequence includes information bits.
[0182] Optionally, the third sequence may also include CRC bits.
[0183] For example, the third sequence may be an information bit sequence, or the third sequence may include information bits, or the third sequence may include information bits and CRC bits.
[0184] Understandably, the number of CRC bits can be determined based on the number of information bits. For example, if the number of information bits is greater than or equal to 12 and less than or equal to 19, the number of CRC bits can be 6; or, if the number of information bits is greater than or equal to 19, the number of CRC bits can be 11.
[0185] The transmitting device can determine the information bit position set based on the parity bit position set; and determine the parity check 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.
[0186] The information bit position set may include K positions in the second sequence other than the check bit position set.
[0187] For example, taking the second sequence 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} and the set of check bit positions as {2 4 8 16 3 5 9 6 17 10 18 12 20 24 7 26 25 22 28}, the set of information bit positions can be {11 19 13 14 21 15 23 27 29 30 31}.
[0188] It is understandable that, since the value of the parity bit can be determined based on the value of the information bit preceding it, the set of parity bit positions can be simplified based on the set of information bit positions. That is, the parity bit positions that are preceded by information bits are retained in the set of parity bit positions as valid parity bit positions.
[0189] For example, taking the set of check bit positions as {2 4 8 16 3 5 9 6 17 10 18 12 20 24 7 26 25 22 28} and the set of information bit positions as {11 19 13 14 21 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: {16 17 18 12 20 24 26 25 22 28}.
[0190] 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.
[0191] The number of information bits corresponding to the information to be decoded is K.
[0192] 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.
[0193] Step 505: The receiving device determines the second sequence of length M based on the reliability corresponding to the first sequence of length N.
[0194] Step 506: The receiving device determines the set of check bit positions based on the second sequence.
[0195] 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.
[0196] Step 507: The receiving device decodes the information to be decoded based on the set of check bit positions.
[0197] 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.
[0198] Based on the communication method shown in Figure 5, the set of check bit positions can be determined from the first set of positions, which increases the selection range of the check bit position set and ensures the most reliable K+n. wmin The minimum row weight w in each bit position 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 under SCL8 decoding, it can approach the ML decoding performance of LTE-RM codes. Furthermore, compared to... The value can be 0 or 1. In this application, it can be dynamically determined according to one or more of the following methods. K, n wmin The method of generating parity bits, CRC bits, or maximum code rate can improve the accuracy of determination. Its flexibility and versatility allow it to be tailored to different communication needs or scenarios. It can better improve code spectrum performance and decoding performance.
[0199] Based on step 502 As described above, this application is aimed at Determined according to one or more of the following: K, n wmin The design provides four possibilities: the method of generating parity bits, CRC bits, or determining the maximum code rate.
[0200] The first possible design is when K is greater than or equal to 12 and less than or equal to 19. Based on K and n wmin Confirmed. Specifically, in n wmin When K is 0 and K is 13 or 19, It can be 2; or, in n wmin When K is 0 and K is 12, 14, 15, 16, 17, or 18, It can be 3; or, in nwmin for In this case, It can be 3.
[0201] It is understandable that when n wmin When w is 0, min The minimum row weight corresponding to the K positions with the highest reliability in the second sequence can be further determined by K. And when n wmin for At that time, w min The most reliable among the second sequences The minimum row weight corresponding to each position is determined by changing w. min The determination method can be directly configured. It is 3 (or it can be understood as soon as possible) The value of is fixed at 3), which simplifies the determination. The implementation reduces the degree of uncertainty. The complexity.
[0202] The second possible design is when K is greater than or equal to 12 and less than or equal to 19. Based on K, n wmin The parity bits are determined by the method of generating them. Specifically, the parity bits are determined based on a multi-tap shift register, n. wmin for And when K is 12, 13, or 14, It can be 4; or, the parity bit is determined by the multi-tap shift register, n. wmin for And when K is 15, 16, 17, 18, or 19, It can be 2; or, the parity bit is determined by the single-tap shift register, and n wmin When the value is 0, It can be 3.
[0203] The way parity bits are generated can be understood as follows: different parity bits can be determined by different shift registers, or different parity equations can be used to determine different parity bits.
[0204] For example, a multi-tap shift register can be a three-tap shift register. For instance, the parity check equation for a three-tap shift register can be D^4+D^3+D, with the most significant bit on the left and the least significant bit on the right. The decimal representation of D^4+D^3+D can be 24, and the binary representation can be [1 1 0 1 0]. Alternatively, the parity check equation for a three-tap shift register can be D^3+D+1, with the most significant bit on the right and the least significant bit on the left. The decimal representation of D^3+D+1 can be 11, and the binary representation can be [0 1 0 1 1].
[0205] For example, the parity check equation corresponding to a single-tap shift register can be D^4, with the highest bit on the left and the lowest bit on the right. The decimal representation of D^4 can be 16, and the binary representation can be [1 0 0 0 0]. Alternatively, the parity check equation corresponding to a single-tap shift register can be 1, with the highest bit on the right and the lowest bit on the left. The decimal representation of 1 can be 1, and the binary representation can be [0 0 0 0 1].
[0206] Based on the second possible design, the corresponding values for different K values can be determined by improving the shift register (e.g., changing a single-tap shift register to a multi-tap shift register). This can improve code spectrum performance and decoding performance. A third possible design, where the third sequence includes information bits and CRC bits, It can be determined based on K and the CRC bits. Specifically, when the first length and the second length are the same, It can be 0; or, if the first length is greater than the second length. It can be the first length.
[0207] Wherein, the first length is the length of the CRC bits in the third sequence, and the second length is the length of the preset CRC bits corresponding to K.
[0208] The first length can be understood as the optimal length of the CRC bits determined based on error detection and correction capabilities. For example, the first length can be any of the following: 3, 4, 5, 6, or 11.
[0209] For example, when K is greater than or equal to 12 and less than or equal to 19, the second length can be 6; when K is greater than 19, the second length can be 11. That is, the value of the second length can be any of the following: 6 or 11.
[0210] For example, The following formula can be satisfied: Where L1 is the first length and L2 is the second length.
[0211] Based on the third possible design, the first length and the second length can be compared to determine... In this sequence, the CRC bits in the third sequence occupy the position with the largest sequence number (or index) in the information bit position set. In other words, the CRC bits in the third sequence sacrifice reliability. When the length of the CRC bits in the third sequence exceeds the preset CRC bit length, reliability can be sacrificed to determine... A parity check bit is used to ensure decoding performance and code spectrum performance; similarly, when the length of the CRC bits in the third sequence is less than or equal to the preset CRC bit length, then a value greater than 0 is determined. An extra parity bit can lead to too much loss of reliability, which can actually reduce decoding performance.
[0212] The fourth possible design, This can be determined based on K and the maximum bitrate. Specifically, when K is greater than or equal to 3 and less than or equal to 11, and the maximum bitrate is greater than or equal to the first threshold, It can be 4; or, if K is greater than or equal to 3 and less than or equal to 11, and the maximum bit rate is less than the first threshold, It can be 0.
[0213] For example, the first threshold can be 0.5; or, the first threshold can be 7 / 16.
[0214] Understandably, when the code rate exceeds the first threshold, decoding performance will exhibit poor performance. This can be addressed by determining... Parity check bits are used to improve decoding performance; additionally, decoding performance is better when the code rate is less than or equal to a first threshold, and then bits greater than 0 are used to determine the parity check bits. An extra parity bit can lead to too much loss of reliability, which can actually reduce decoding performance.
[0215] Figure 6 presents a performance comparison diagram of the simulation effects of LTR-RM codes and Polar codes determined based on the communication method described in Figure 6 and the fourth possible design, under different information bit numbers, code rates, and lengths after rate matching. The horizontal axis represents the length E after rate matching, and the vertical axis represents the signal-to-noise ratio (SNR) (dB) required to achieve a block error rate (BLER) of 1%. A lower SNR indicates better performance. Figure 6 shows the performance of the fourth possible design described above. The decoding performance curve of the Polar code corresponding to the value of can approach the ML decoding performance curve of the LTE-RM code under SCL8 decoding, and even exceed the ML decoding performance curve of the LTE-RM code under the length after partial rate matching.
[0216] Optionally, the maximum code rate can be configured via radio resource control (RRC) signaling.
[0217] In this context, network devices can indicate the maximum code rate to terminal devices via RRC signaling; that is, network devices can send RRC signaling to terminal devices, and correspondingly, terminal devices can receive RRC signaling from network devices. RRC signaling is used to indicate the maximum code rate.
[0218] The sending device can be a network device or a terminal device; or the receiving device can be a network device or a terminal device.
[0219] Based on the above Determined according to one or more of the following: K, n wmin The method of generating parity bits, CRC bits, or a description of the maximum bit rate are optional. It can also be determined based on any of the following: PUCCH resource set, PUCCH format, payload type of uplink control information, or priority of uplink control information.
[0220] The PUCCH resource set is used to transmit information bits; the PUCCH format is the format of the PUCCH for transmitting information bits; and the uplink control information is used to carry information bits.
[0221] The following describes several possible implementations in detail. Determination:
[0222] In the first possible implementation It can also be determined based on the PUCCH resource set.
[0223] Specifically, when the PUCCH resource set is PUCCH resource set 1 or PUCCH resource set 2, It can be greater than 0; or, if the PUCCH resource set is PUCCH resource set 0 or PUCCH resource set 3, It can be 0.
[0224] The PUCCH resource set can also be referred to as a PUCCH resource collection. For example, the PUCCH resource set can be one or more of the following: PUCCH resource set 0, PUCCH resource set 1, PUCCH resource set 2, or PUCCH resource set 3.
[0225] It is understandable that different PUCCH resource sets can transmit different numbers of information bits. For example, PUCCH resource set 0 can transmit less than or equal to 2 information bits, while PUCCH resource set 3 can transmit a larger number of information bits.
[0226] If the PUCCH resource set is PUCCH resource set 0, since the number of information bits transmitted in PUCCH resource set 0 is relatively small, a value greater than 0 is then determined. Multiple parity check equations can lead to excessive reliability sacrifices, which can actually reduce decoding performance. If the PUCCH resource set is PUCCH resource set 3, since the number of information bits transmitted in PUCCH resource set 3 is relatively large, the information bits can be checked using CRC bits to determine those greater than 0. An excessive number of parity check equations can lead to too much reliability sacrifice, which can actually reduce decoding performance.
[0227] It is understandable that, given that the PUCCH resource set is either PUCCH resource set 1 or PUCCH resource set 2, the design can be further determined based on any of the four possible designs mentioned above. The specific value to be taken.
[0228] In the first example, when K is greater than or equal to 12 and less than or equal to 19, the sending or receiving device can determine whether the PUCCH resource set is PUCCH resource set 1 or PUCCH resource set 2. Greater than 0; furthermore, it can be determined based on the first possible design. That is, if n wmin The value is 0, which can be determined when K is 13 or 19. The value can be 2, or it can be determined when K is 12, 14, 15, 16, 17, or 18. The value is 3; if n wmin for It can be confirmed The value is 3.
[0229] In the second example, when K is greater than or equal to 12 and less than or equal to 19, the sending or receiving device can determine whether the PUCCH resource set is PUCCH resource set 1 or PUCCH resource set 2. Greater than 0; furthermore, it can be determined based on the second possible design. That is, if the parity bits are determined based on the multi-tap shift register, n wmin for And if K is 12, 13, or 14, it can be determined that... The value is 4; if the parity bits are determined based on the multi-tap shift register, n wmin for And if K is 15, 16, 17, 18, or 19, it can be determined that... The value is 2; if the parity bit is determined based on the single-tap shift register, and n wmin The value is 0, which can be determined. The value is 3.
[0230] In the third example, when the third sequence includes CRC bits, the sending or receiving device can determine, if it is determined that the PUCCH resource set is PUCCH resource set 1 or PUCCH resource set 2, that... Greater than 0; furthermore, it can be determined based on a third possible design. That is, if the first length is greater than the second length, it can be determined that... This is the first length.
[0231] In the fourth example, the sending or receiving device can determine whether the PUCCH resource set is PUCCH resource set 1 or PUCCH resource set 2. Greater than 0; furthermore, it can be determined based on the fourth possible design. That is, if the maximum bit rate is greater than or equal to the first threshold, it can be determined that... The value is 4.
[0232] In the second possible implementation, It can also be determined based on the PUCCH format.
[0233] Specifically, when the PUCCH format is PUCCH format 2, PUCCH format 3, or PUCCH format 4, It can be greater than 0; or, if the PUCCH format is PUCCH format 0 or PUCCH format 1, It can be 0.
[0234] Different PUCCH formats have different minimum and maximum code lengths, different time-frequency resources (e.g., different numbers of physical resource blocks (PRBs) in the frequency domain, or different orthogonal frequency division multiplexing (OFDM) symbols in the time domain), and different modulation orders (e.g., binary phase shift keying (BPSK) or quadrature phase shift keying (QPSK)). For example, the minimum code length, maximum code length, time-frequency resources, and modulation order corresponding to PUCCH format 2, PUCCH format 3, or PUCCH format 4 can be shown in Table 2 below.
[0235] Table 2
[0236] When transmitting information bits via PUCCH format 0 or PUCCH format 1, polar coding is not performed on the information bits, which can be determined The value is 0; when transmitting information bits via PUCCH format 2, PUCCH format 3, or PUCCH format 4, the information bits can be polar-coded, which can determine that the value is greater than 0. An additional parity bit is used to improve decoding performance and code spectrum performance.
[0237] In cases where the PUCCH format is PUCCH format 2, PUCCH format 3, or PUCCH format 4, the design can be further determined based on any of the four possible designs mentioned above. The specific values can be found in the four examples of the first possible implementation mentioned above, which will not be elaborated upon here.
[0238] In the third possible implementation It can also be determined based on the load type of the uplink control information.
[0239] Specifically, when the payload type of the uplink control information is a scheduling request, a hybrid automatic repeat request feedback, or channel state information type I, It can be greater than 0; or, if the payload type of the uplink control information is Channel State Information Type II, It can be 0.
[0240] The feedback for the hybrid automatic repeat request can be either an acknowledgement (ACK) or a non-acknowledgement (NACK).
[0241] Understandably, the reliability requirements of uplink control information can be determined based on the payload type of the uplink control information. For example, when the payload type of the uplink control information is Channel State Information Type II, the reliability requirements for the uplink control information are lower, allowing for more reliable uplink control information. The value is 0; or, when the payload type of the uplink control information is a scheduling request, a hybrid automatic repeat request feedback, or channel state information type I, the uplink control information has a higher reliability requirement and can be determined to be greater than 0. An additional parity bit is used to improve decoding performance and code spectrum performance.
[0242] In cases where the payload type of the uplink control information is a scheduling request, a hybrid automatic repeat request feedback, or channel state information type I, the design can be further determined based on any of the four possible designs mentioned above. The specific values can be found in the four examples of the first possible implementation mentioned above, which will not be elaborated upon here.
[0243] In the fourth possible implementation, It can also be determined based on the priority of the uplink control information.
[0244] Specifically, when the priority index of the uplink control information is 1, It can be greater than 0; or, if the priority index of the uplink control information is 0, It can be 0.
[0245] For example, taking the payload type of the uplink control information as a scheduling request, when the priority index of the scheduling request is 1, It can be greater than 0; or, if the priority index of the scheduling request is 0, It can be 0. Alternatively, taking the payload type of the uplink control information as Hybrid Automatic Repeat Request Feedback as an example, if the priority index of the Hybrid Automatic Repeat Request Feedback is 1, It can be greater than 0; or, if the priority index of the hybrid automatic repeat request feedback is 0, It can be 0.
[0246] In this context, the priority of uplink control information is determined by an index of 1, which corresponds to a higher priority than the index of 0. A higher priority indicates a higher reliability requirement. This can be achieved by specifying a priority greater than 0. An additional parity bit is used to improve decoding performance and code spectrum performance.
[0247] In the case where the priority index of the uplink control information is 1, it is possible to further determine the priority based on any one of the four possible designs mentioned above. The specific values can be found in the four examples of the first possible implementation mentioned above, which will not be elaborated upon here.
[0248] Unlike the communication method shown in Figure 5, the set of check bit positions is the one with the highest reliability in the first set. The weight of each row is equal to w min Regarding the location, this application also proposes a communication method that allows the set of check bit locations to include all locations in the set of pre-frozen bit locations (or it can be described as the set of check bit locations including all pre-frozen bit locations in the set of pre-frozen bit locations), which simplifies implementation. The specific steps are shown in Figure 7 below:
[0249] Step 701: The transmitting device determines the second sequence of length M based on the reliability corresponding to the first sequence of length N.
[0250] Step 701 can be referred to the description of step 501 above, and will not be repeated here.
[0251] Step 702: The transmitting device determines the set of check bit positions based on the second sequence.
[0252] The set of check bit positions includes all positions in the set of pre-frozen bit positions.
[0253] Different values of K correspond to different sets of pre-frozen bit positions. For example, when K is less than or equal to 6, there is no set of pre-frozen bit positions; or, when K is 7, the set of pre-frozen bit positions can be {28}; or, when K is 8, the set of pre-frozen bit positions can be {28 25 26 21 14}; or, when K is 9, the set of pre-frozen bit positions can be {28 25 26 21}; or, when K is 10, the set of pre-frozen bit positions can be {28 25 26 21 19}; or, when K is 11, the set of pre-frozen bit positions can be {25 26 21 19}.
[0254] For example, when K is 7, the set of pre-frozen bit positions can be determined to be {28}, and the set of check bit positions can be determined to include 28; or, when K is 8, the set of pre-frozen bit positions can be determined to be {28 25 26 21 14}, and the set of check bit positions can be determined to include 28, 25, 26, 21, and 14; or, when K is 9, the set of pre-frozen bit positions can be determined to be {28 25 26 21}, and the set of check bit positions can be determined to include 28, 25, 26, and 21; or, when K is 10, the set of pre-frozen bit positions can be determined to be {28 25 26 21 19}, and the set of check bit positions can be determined to include 28, 25, 26, 21, and 19; or, when K is 11, the set of pre-frozen bit positions can be determined to be {25 26 21}. From 19}, we can determine that the set of check bit positions includes 25, 26, 21, and 19.
[0255] Optionally, the set of check bit positions may also include the K+n bits with the highest reliability in the second sequence. PC The location with the lowest reliability One position.
[0256] Where, n PC n represents the number of parity bits, or it can be described as the length of the parity bits. PC It is a positive integer.
[0257] in, This can be the number of pre-frozen bit positions in the set of pre-frozen bit positions. For example, when K is less than or equal to 6, It can be 0; or, in the case of K being 7, It can be 1; or, in the case of K being 8, It can be 5; or, if K is 9, It can be 4; or, in the case where K is 10, It can be 5; or, in the case where K is 11, It can be 4.
[0258] For example, with K equal to 11, n PC Taking 19 as an example, the set of pre-frozen bit positions can be {25 26 21 19}, and the K+n with the highest reliability in the second sequence is... PC The positions 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}, and the K+n with the highest reliability in the second sequence is...PC The location with the lowest reliability The positions can be {2 4 8 16 3 5 9 6 17 10 18 12 20 24 7}, and the set of check bit positions can be {2 4 8 16 3 5 9 6 17 10 18 12 20 24 7 25 26 21 19}.
[0259] Step 703: The transmitting device performs polar coding on the third sequence according to the set of check bit positions to obtain the coded bit sequence.
[0260] Step 703 can be referred to the description of step 503 above, and will not be repeated here.
[0261] Step 704: 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.
[0262] Step 704 can be referred to the description of step 504 above, and will not be repeated here.
[0263] Step 705: The receiving device determines the second sequence of length M based on the reliability corresponding to the first sequence of length N.
[0264] Step 706: The receiving device determines the set of check bit positions based on the second sequence.
[0265] The method by which the receiving device determines the set of check bit positions based on steps 705 and 706 can be referred to the method by which the sending device determines the set of check bit positions based on steps 701 and 702, and will not be repeated here.
[0266] Step 707: The receiving device decodes the information to be decoded according to the set of check bit positions.
[0267] 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.
[0268] Based on the communication method shown in Figure 7, the parity bit position set can include all positions in the pre-frozen bit position set. Since different K correspond to different pre-frozen bit position sets, the pre-frozen bit position set can be dynamically determined based on K, thereby determining the parity bit position set. This increases the selection range of the parity bit position set and improves the flexibility and diversity of its determination. Furthermore, since all positions in the pre-frozen bit position set are used to determine the parity check bit and are independent of reliability, decoding performance and code spectrum performance can be improved.
[0269] Optionally, the communication method shown in Figure 7 can also be combined with the four possible implementations described above to determine the set of check bit positions.
[0270] In the first example, the communication method shown in Figure 7 can also be combined with the first possible implementation described above, in the case where the PUCCH resource set is PUCCH resource set 0 or PUCCH resource set 3. The value can be 0, in which case the set of check bit positions can include the K+n bits with the highest reliability in the second sequence. PC The n with the lowest reliability among the n positions. PC One position; when the PUCCH resource set is PUCCH resource set 1 or PUCCH resource set 2. It can be greater than 0. Furthermore, the corresponding set of pre-frozen bit positions can be determined by K. In this case, the set of check bit positions can include all pre-frozen bit positions in the set of pre-frozen bit positions, as well as the K+n with the highest reliability in the second sequence. PC The location with the lowest reliability Locations ( That is, the number of pre-frozen bit positions in the set of pre-frozen bit positions.
[0271] In the second example, the communication method shown in Figure 7 can also be combined with the second possible implementation described above, in the case where the PUCCH format is PUCCH format 0 or PUCCH format 1. The value can be 0, in which case the set of check bit positions can include the K+n bits with the highest reliability in the second sequence. PC The n with the lowest reliability among the n positions. PC The position; when the PUCCH format is PUCCH format 2, PUCCH format 3, or PUCCH format 4, It can be greater than 0. Furthermore, the corresponding set of pre-frozen bit positions can be determined by K. In this case, the set of check bit positions can include all pre-frozen bit positions in the set of pre-frozen bit positions, as well as the K+n with the highest reliability in the second sequence. PC The location with the lowest reliability Locations ( That is, the number of pre-frozen bit positions in the set of pre-frozen bit positions.
[0272] In the third example, the communication method shown in Figure 7 can also be combined with the third possible implementation described above, where the payload type of the uplink control information is channel state information type II. The value can be 0, in which case the set of check bit positions can include the K+n bits with the highest reliability in the second sequence. PC The n with the lowest reliability among the n positions. PC The location; when the payload type of the uplink control information is a scheduling request, a hybrid automatic repeat request feedback, or channel state information type I. It can be greater than 0. Furthermore, the corresponding set of pre-frozen bit positions can be determined by K. In this case, the set of check bit positions can include all pre-frozen bit positions in the set of pre-frozen bit positions, as well as the K+n with the highest reliability in the second sequence. PC The location with the lowest reliability Locations ( That is, the number of pre-frozen bit positions in the set of pre-frozen bit positions.
[0273] In the fourth example, the communication method shown in Figure 7 can also be combined with the fourth possible implementation described above, where the priority index of the uplink control information is 0. The value can be 0, in which case the set of check bit positions can include the K+n bits with the highest reliability in the second sequence. PC The n with the lowest reliability among the n positions. PC One position; when the priority index of the uplink control information is 1, It can be greater than 0. Furthermore, the corresponding set of pre-frozen bit positions can be determined by K. In this case, the set of check bit positions can include all pre-frozen bit positions in the set of pre-frozen bit positions, as well as the K+n with the highest reliability in the second sequence. PC The location with the lowest reliability among the n positions. PC - ) positions ( That is, the number of pre-frozen bit positions in the set of pre-frozen bit positions.
[0274] In NR, the transmitting device can perform CRC encoding on information bits of length K to obtain an information bit sequence (the information bit sequence may include information bits and CRC bits); further, if the length of the information bit sequence is greater than or equal to 18 and less than or equal to 25, the transmitting device can perform PC precoding on the information bit sequence to obtain a fourth sequence; further, the transmitting device can perform polar encoding on the fourth sequence to obtain an encoded bit sequence.
[0275] For CRC encoding, if K is greater than or equal to 12 and less than or equal to 19, the number of CRC bits can be determined to be 6; if K is greater than 19, the number of CRC bits can be determined to be 11.
[0276] For PC precoding, the number of polarization check bits can be 3. One polarization check bit can occupy the position with the smallest line weight and the highest reliability in the information bit position set, and the remaining two polarization check bits can occupy the position with the lowest reliability in the information bit position set. The polarization check bits can be determined by a 5-bit shift register.
[0277] Based on the above description of the polar coding process, when CRC bits are present, adding polar check bits will sacrifice... For a given highly reliable information bit position, there might be a minimum row overlap w among the K most reliable bit positions when a significant loss of reliability is required to improve the code spectrum. min The number of corresponding bit positions cannot be supported. In cases where K is greater than or equal to 12 and less than or equal to 19, the CRC bits are removed (which can also be understood as not performing CRC encoding on the information bits), and the information bits are checked using the soft checking capability of the polarization check bits themselves. The specific steps are shown in Figure 8:
[0278] Step 801: The transmitting device determines the second sequence of length M based on the reliability corresponding to the first sequence of length N.
[0279] Step 801 can be referred to in the above description of step 501, and will not be repeated here.
[0280] Step 802: The transmitting device determines the set of check bit positions based on the second sequence.
[0281] The set of check bit positions can include the most reliable bit position from the first set. The weight of each row is equal to w min The location.
[0282] Among them, the first position set and w minSee step 502 above for the first position set and w. min The description of that will not be repeated here.
[0283] in, K and n can be determined based on one or more of the following: wmin Or, a method for generating parity bits.
[0284] Where, n wmin The method for generating parity bits can be found in the above discussion of n. wmin The description of how parity bits are generated will not be elaborated here.
[0285] In the first example, in n wmin When K is 0 and K is 13 or 19, It can be 2; or, in n wmin When K is 0 and K is 12, 14, 15, 16, 17, or 18, It can be 3.
[0286] The pseudocode for the first example can be shown below:
[0287] If the information bit sequence includes information bits and CRC bits The definitive pseudocode can be shown below:
[0288] Where K1 is the length of the information bit sequence (or it can be described as K1 being the sum of the number of information bits and the number of CRC bits).
[0289] This application presents a performance comparison diagram in Figure 9 of the Polar code (including CRC bits, i.e., curve 1 in Figure 9) and the Polar code determined based on the communication method shown in Figure 8 and the first example, with a simulated information bit count (excluding CRC bits) of 12, under different rate-matched lengths. The horizontal axis represents the length E after rate matching, and the vertical axis represents the signal-to-noise ratio (SNR) (dB) required to achieve BLER = 1%. A lower curve indicates better performance. Figure 9 shows the performance of the first example described above. The decoding performance curve of the Polar code corresponding to the value of (i.e., curve 2 in Figure 9) under SCL8 decoding can achieve better decoding performance than the PC-Polar code containing CRC bits (i.e., curve 1 in Figure 9).
[0290] Figure 10 illustrates the block error rate traversal search method for determining the length of a 18-bit information bit pair at different rate matching lengths. The diagram illustrates the performance comparison of the Polar code corresponding to the optimal value, the Polar code including CRC bits, and the simulation results of the Polar code determined based on the communication method shown in Figure 8 and the first example. The horizontal axis represents the length E after rate matching, the left vertical axis represents the SNR (dB) required to achieve BLER = 0.01, and the right vertical axis represents the false alarm rate (FAR) (×10). -3 In Figure 10, the solid line corresponds to the BLER performance on the left vertical axis, and the dashed line corresponds to the FAR performance on the right vertical axis; the lower the curve, the better the performance. Figure 10 illustrates the first example described above. The decoding performance curve of the Polar code corresponding to the given value can be approximated by SCL8 decoding based on the block error rate (e.g., the block error rate can be 0.01) determined by traversal search. The optimal value corresponds to the decoding performance curve of the Polar code, which is far superior to the decoding performance curve of the Polar code including the CRC bit.
[0291] In the second example, in n wmin for In this case, It can be 3.
[0292] The second example can be understood as a simplification of the first example. The pseudocode for the second example can be:
[0293] In the third example, the parity bit is determined based on the multi-tap shift register, n wmin for And when K is 12, 13, or 14, It can be 4; or, the parity bit is determined by the multi-tap shift register, n. wmin for And when K is 15, 16, 17, 18, or 19, It can be 2.
[0294] Step 803: The transmitting device performs polar coding on the information bits according to the set of check bit positions to obtain the coded bit sequence.
[0295] It is understandable that the sending device does not perform CRC encoding on the information bits, but performs polar encoding on the information bits.
[0296] Step 804: 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.
[0297] Step 804 can be referred to the description of step 504 above, and will not be repeated here.
[0298] Step 805: The receiving device determines the second sequence of length M based on the reliability corresponding to the first sequence of length N.
[0299] Step 806: The receiving device determines the set of check bit positions based on the second sequence.
[0300] The method by which the receiving device determines the set of check bit positions based on steps 805 and 806 can be referred to the method by which the sending device determines the set of check bit positions based on steps 801 and 802, and will not be repeated here.
[0301] Step 807: The receiving device decodes the information to be decoded based on the set of check bit positions.
[0302] 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.
[0303] Based on the communication method shown in Figure 8, the transmitting device can skip CRC encoding of the information bits (i.e., it can directly perform polarization encoding on the information bits). Compared to adding six CRC bits to check the information bits when K is greater than or equal to 12 and less than or equal to 19, in this application, the CRC bits can be removed, and the information bits can be checked using the soft checking capability of the polarization check bits themselves. This can improve the code spectrum performance and decoding performance, and at the same time provide design space for determining the polarization check bits.
[0304] Based on the communication method shown in Figure 8, optionally, Alternatively, it can be determined based on any of the following: PUCCH resource set, PUCCH format, payload type of uplink control information, or priority of uplink control information. For details, please refer to the description of the four possible implementations above, which will not be repeated here.
[0305] The various embodiments of this application can be implemented independently or in combination, without limitation. Unless otherwise specified or in conflict of logic, 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.
[0306] 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.
[0307] 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.
[0308] 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. 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.
[0309] 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, 7 and 8. 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.
[0310] 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).
[0311] 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 FIG5, FIG7 and FIG8, 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 FIG5, FIG7 and FIG8, and / or to support other processes of the technology described herein.
[0312] Figure 12 shows a receiving device 120, which can perform the actions performed by the receiving device in the methods shown in Figures 5, 7 and 8. 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.
[0313] 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).
[0314] 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 FIG5, FIG7 and FIG8, 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 FIG5, FIG7 and FIG8, and / or to support other processes of the technology described herein.
[0315] 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.
[0316] 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.
[0317] 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.
[0318] 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.
[0319] This application also provides a computer program that, when executed by a computer, can implement the functions of any of the above method embodiments.
[0320] 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.
[0321] The terms "first" and "second," etc., used 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.
[0322] 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.
[0323] 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.
[0324] 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.
[0325] 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.
[0326] 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.
[0327] 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.
[0328] 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.
[0329] 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.
[0330] 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; N and M are both positive integers; Based on the second sequence, a set of check bit positions is determined; wherein, the set of check bit positions includes the most reliable position from the first set. The weight of each row is equal to w min The first set of positions includes the K+n positions with the highest reliability in the second sequence. wmin One location, Determined according to one or more of the following: K, n wmin The method of generating parity bits, cyclic redundancy check (CRC) bits, or maximum code rate; or, the parity bit position set includes all positions in the pre-frozen bit position set, with different K corresponding to different pre-frozen bit position sets; K is the number of information bits, w min The minimum row weight corresponding to the first position set. w min , and K are both positive integers, n wmin Integers greater than or equal to 0; Based on the set of check bit positions, the third sequence is polar-coded to obtain an encoded bit sequence; wherein, the third sequence includes the information bits; Output one or more bits of the encoded bit sequence.
2. A communication method, characterized in that, include: Receive information to be decoded; wherein the number of information bits corresponding to the information to be decoded is K, and K is a positive integer; 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; N and M are both positive integers; Based on the second sequence, a set of check bit positions is determined; wherein, the set of check bit positions includes the most reliable position from the first set. The weight of each row is equal to w min The first set of positions includes the K+n positions with the highest reliability in the second sequence. wmin One location, Determined according to one or more of the following: K, n wmin The method of generating parity bits, cyclic redundancy check (CRC) bits, or maximum code rate; or, the parity bit position set includes all positions in the pre-frozen bit position set, with different K corresponding to different pre-frozen bit position sets; w min The minimum row weight corresponding to the first position set. w min , and K are both positive integers, n wmin Integers greater than or equal to 0; The information to be decoded is decoded according to the set of check bit positions.
3. The method according to claim 1 or 2, characterized in that, n wmin It is 0; or, n wmin for 4. The method according to any one of claims 1-3, characterized in that, When K is greater than or equal to 12 and less than or equal to 19 The third sequence does not include the CRC bits.
5. The method according to claim 4, characterized in that, Based on K and n wmin Determined, including: In n wmin When K is 0 and K is 13 or 19, It is 2; or In n wmin When K is 0 and K is 12, 14, 15, 16, 17, or 18, The value is 3.
6. The method according to claim 4, characterized in that, Based on K and n wmin Determined, including: In n wmin for In this case, The value is 3.
7. The method according to claim 4, characterized in that, According to K, n wmin The method for generating the parity bits is determined, including: The parity bit is determined based on a multi-tap shift register, n wmin for And when K is 12, 13, or 14, It is 4; or The parity bit is determined based on a multi-tap shift register, n wmin for And when K is 15, 16, 17, 18, or 19, It is 2; or The parity bit is determined based on a single-tap shift register, and n wmin When the value is 0, The value is 3.
8. The method according to claim 7, characterized in that, The parity check equation corresponding to the multi-tap shift register is D^4 + D^3 + D; or The parity check equation corresponding to the multi-tap shift register is D^3 + D + 1.
9. The method according to any one of claims 1-3, characterized in that, Determined based on K and the CRC bits, including: the third sequence further includes the CRC bits. When the first length and the second length are the same =0; or When the first length is greater than the second length The first length; Wherein, the first length is the length of the CRC bits in the third sequence, and the second length is the length of the preset CRC bits corresponding to K.
10. The method according to any one of claims 1-3, characterized in that, Determined based on K and the maximum bit rate, including: If the maximum bit rate is greater than or equal to the first threshold, It is 4; or When the maximum bit rate is less than the first threshold, It is 0.
11. The method according to claim 10, characterized in that, The first threshold is 0.5; or, the first threshold is 7 / 16.
12. The method according to any one of claims 1-11, characterized in that, When E is less than N The maximum value is EK; or When E is greater than or equal to N The maximum value is NK; Where E is the length after rate matching.
13. The method according to any one of claims 1-3 and 9-12, characterized in that, The third sequence also includes the CRC bits.
14. The method according to any one of claims 1-13, characterized in that, The set of check bit positions also includes the K+n sequence with the highest reliability in the second sequence. PC The location with the lowest reliability There are n positions; where n is the number of positions. PC The number of parity bits.
15. The method according to any one of claims 1-14, characterized in that, It is also determined according to any of the following: the physical uplink control channel (PUCCH) resource set, the PUCCH format, the payload type of the uplink control information, or the priority of the uplink control information; Wherein, the PUCCH resource set is used to transmit the information bits; the PUCCH format is the format of the PUCCH for transmitting the information bits; and the uplink control information is used to carry the information bits.
16. The method according to claim 15, characterized in that, It is also determined based on the PUCCH resource set, including: When the PUCCH resource set is either PUCCH resource set 1 or PUCCH resource set 2. Greater than 0; or When the PUCCH resource set is PUCCH resource set 0 or PUCCH resource set 3. It is 0.
17. The method according to claim 15, characterized in that, It is also determined according to the PUCCH format, including: When the PUCCH format is PUCCH format 2, PUCCH format 3, or PUCCH format 4, Greater than 0; or When the PUCCH format is PUCCH format 0 or PUCCH format 1 It is 0.
18. The method according to claim 15, characterized in that, It is also determined based on the payload type of the uplink control information, including: When the payload type of the uplink control information is a scheduling request, a hybrid automatic repeat request feedback, or channel state information type I. Greater than 0; or When the payload type of the uplink control information is Channel State Information Type II. It is 0.
19. The method according to claim 15, characterized in that, It is also determined based on the priority of the uplink control information, including: When the priority index of the uplink control information is 1, Greater than 0; or When the priority index of the uplink control information is 0. It is 0.
20. 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, 3-19 to be executed, or cause the communication method as described in any one of claims 2-19 to be executed.
21. 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, 3-19, or to execute the communication method as described in any one of claims 2-19, and to process and / or generate the information based on the information.
22. 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, 3-19 to be executed, or cause the communication method as described in any one of claims 2-19 to be executed.
23. 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, 3-19 to be executed, or cause the communication method as described in any one of claims 2-19 to be executed.