Encoding method, decoding method and apparatus
By adjusting the polar coding method and optimizing the information bit set, the reliability ranking problem caused by rate matching of polar codes in the 3GPP-5G standard was solved, improving coding performance and information bit reliability.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2026-01-15
- Publication Date
- 2026-07-30
AI Technical Summary
In the 3GPP-5G standard, the rate matching of polar codes causes the reliability ordering at each position to differ from the reliability ordering under the mother code length, affecting coding performance and urgently needing to be addressed.
By determining the set of information bits, information bits are selected preferentially from the bit indices with higher reliability, and the polar coding method is adjusted, including the bit indices of the first set of information bits, the second set of information bits, and the third set of information bits, to optimize the bit sequence after polar coding.
It improves the performance of polar codes, enhances the reliability of information bits, and optimizes the quality of the encoded bit sequence.
Smart Images

Figure CN2026072934_30072026_PF_FP_ABST
Abstract
Description
An encoding and decoding method and apparatus
[0001] Cross-references to related applications
[0002] This application claims priority to Chinese Patent Application No. 202510112540.7, filed on January 23, 2025, with the title “An Encoding, Decoding Method and Apparatus”, the entire contents of which are incorporated herein by reference. Technical Field
[0003] This application relates to the field of wireless communication technology, and in particular to an encoding and decoding method and apparatus. Background Technology
[0004] Currently, polar coding is a channel coding scheme that can be rigorously proven to achieve the required channel capacity, possessing characteristics such as high performance, low decoding complexity, and flexible code length and rate. It has already been adopted by the Third Generation Cooperative Project (3GCP). rd The Generation Partnership Project (3GPP) has determined it to be the control channel coding scheme for the 5G control channel in the enhanced mobile broadband (eMBB) scenario.
[0005] In the 3GPP-5G standard, the construction of polar codes under rate matching requires sub-block interleaving. In addition to using repetitive codes, high and low code rates employ shortening and puncturing techniques to achieve flexible code length and code rate. Since rate matching affects the reliability of each position in the polar code, the actual reliability order of each position after rate matching differs from the reliability order under the mother code length. Therefore, the construction problem of polar codes under rate matching urgently needs to be solved. Summary of the Invention
[0006] This application provides an encoding and decoding method and apparatus to improve the performance of polar codes.
[0007] Firstly, an encoding method is provided. This method can be executed by a first communication device. Unless otherwise specified, "first communication device" in this application can refer to a first communication device (e.g., a network device, a terminal device), a component within the first communication device (e.g., a processor, a chip, or a chip system), or a logic module or software capable of implementing all or part of the functions of the first communication device. The method includes: the first communication device determining an information bit set based on a reliability sequence. The information bit set includes bit indices contained in a first information bit set, a second information bit set, and a third information bit set. The first information bit set includes bit indices with a reliability ranking higher than Nr-1 and a value greater than or equal to N / 2; the second information bit set includes bit indices with a reliability ranking lower than Nr and a value greater than or equal to N / 2; and the third information bit set includes bit indices with a reliability ranking higher than r-1 and a value less than N / 2. The first communication device performs polar encoding on the information bit sequence based on the information bit set to obtain a polar-encoded bit sequence. The polar-encoded bit sequence is then output. The length of the polar-coded bit sequence is N, and r is a positive integer.
[0008] Based on the above scheme, when the first communication device determines the information bit set, it increases the number of information bits read from bit indices with values greater than or equal to N / 2, and correspondingly reduces the number of information bits read from bit indices with values less than N / 2. This improves the reliability of the bit indices included in the determined information bit set. Therefore, the performance of the polar code is also improved.
[0009] In one possible implementation, the minimum value in the reliability sort corresponding to the bit index contained in the first information bit set is greater than the maximum value in the reliability sort corresponding to the bit index contained in the second information bit set.
[0010] In one possible implementation, the number of bit indices contained in the first, second, and third information bit sets is less than K. The information bit sets also include bit indices contained in the fourth information bit set, which includes bit indices with a reliability less than r and a value less than N / 2. Here, K is the length of the information bit sequence.
[0011] Based on the above scheme, when the number of bit indices in the information bit set determined by the first communication device is less than K, the first communication device can further select information bits from bit indices with a reliability less than r and a value less than N / 2. This selection method allows the first communication device to prioritize selecting information bits from the first, second, and third information bit sets, which have higher reliability rankings, thereby improving the reliability of the information bits.
[0012] In one possible implementation, the minimum reliability value corresponding to the bit index contained in the third information bit set is greater than the maximum reliability value corresponding to the bit index contained in the fourth information bit set.
[0013] In one possible implementation, r is related to at least one of the following: mother code length N, rate matching ratio, code rate, or rate matching method. The rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N.
[0014] In one possible implementation, r satisfies one or more of the following: r is monotonically increasing with respect to the mother code length N. This is because as the mother code length N increases, the reliability order of the bit indices becomes more compact, thus the reliability variation corresponding to the upper half code (bit indices with values less than N / 2) is greater. Alternatively, r is monotonically increasing with respect to the rate matching ratio. This is because as the rate matching ratio increases, the lower half code (bit indices with values greater than or equal to N / 2) is more significantly affected by changes relative to the upper half code, thus the reliability variation corresponding to the upper half code is greater. Here, the rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N. Alternatively, when the rate matching method is puncturing, r is monotonically increasing with respect to the code rate; when the rate matching method is shortening, r is monotonically decreasing with respect to the code rate. This is because when the rate matching method is punched, as the bit rate decreases and approaches 0, the selected information bits gradually become independent of the rate matching effect, which means that r becomes smaller. When the rate matching method is shortened, as the bit rate increases and approaches 1, the selected information bits gradually become independent of the rate matching effect, which means that r becomes smaller.
[0015] In one possible implementation, the information bit set and the pre-frozen set There is no overlap. In other words, the first communication device does not select the pre-frozen set when selecting information bits. The bit index it contains.
[0016] In one possible implementation, if the bit index corresponding to the i-th position in the reliability sequence satisfies a first condition, then the bit index corresponding to the i-th position in the reliability sequence belongs to the first information bit set, where i iterates from N-1 to Nr. The first condition is that the bit index corresponding to the i-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the i-th position in the reliability sequence is greater than or equal to N / 2.
[0017] In one possible implementation, when the first information bit set contains fewer than K elements, if the bit index corresponding to the i-th position in the reliability sequence satisfies the second condition, the bit index corresponding to the i-th position in the reliability sequence belongs to the second information bit set; if the bit index corresponding to the (i+r)-th position in the reliability sequence satisfies the third condition, the bit index corresponding to the (i+r)-th position in the reliability sequence belongs to the third information bit set. i is traversed starting from Nr-1 until the sum of the number of bit indices contained in the first, second, and third information bit sets equals K, or until i = 0. The second condition is that the bit index corresponding to the i-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the i-th position in the reliability sequence is greater than or equal to N / 2. The third condition is that the bit index corresponding to the (i+r)-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the (i+r)th position in the reliability sequence is less than N / 2.
[0018] In one possible implementation, if the sum of the number of bit indices contained in the first information bit set, the second information bit set, and the third information set is less than K, and if the bit index corresponding to the (i+r)th position in the reliability sequence satisfies the fourth condition, then the bit index corresponding to the (i+r)th position in the reliability sequence belongs to the fourth information bit set, where i iterates from r-1 to 0. The fourth condition is that the bit index corresponding to the (i+r)th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the (i+r)th position in the reliability sequence is less than N / 2.
[0019] Based on the above scheme, when selecting information bits, the first communication device prioritizes selecting information bits from the first set of information bits, the second set of information bits, and the third set of information bits with higher reliability ranking, which can improve the reliability of information bits.
[0020] In one possible implementation, when the rate matching method is punching: when p is less than 3 / 10, When p is greater than 3 / 10 and less than or equal to 1 / 2, When p equals 3 / 10 or in, denoted as rounding up, p represents the ratio of the number of punctured bits to the length N of the encoded master code, and R represents the code rate.
[0021] In one possible implementation, when the rate matching mode is shortened: when p is less than 3 / 10, When p is greater than 3 / 10 and less than 9 / 20, When p is greater than 9 / 20 and less than or equal to 1 / 2, When p equals 3 / 10 or When p equals 9 / 20, or in, denoted as rounding up, p represents the ratio of the number of shortened bits to the length N of the encoded mother code, and R represents the code rate.
[0022] Based on the above scheme, under different rate matching methods, the value of r is determined according to the above method, so as to improve the coding performance.
[0023] In one possible implementation, r is determined based on a mapping relationship, which includes the mapping relationship between the code rate, the rate matching ratio, and r. The rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N.
[0024] Based on the above mapping relationship, the first communication device can determine r according to the rate matching ratio and the code rate. Since the code rate R and the rate matching ratio affect the size of r, the first communication device can determine a more reasonable r through the above mapping relationship.
[0025] Secondly, a decoding method is provided. This method can be executed by a second communication device. Unless otherwise specified, "second communication device" in this application can refer to a second communication device (e.g., a network device, a terminal device), a component within the second communication device (e.g., a processor, a chip, or a chip system), or a logic module or software capable of implementing all or part of the functions of the second communication device. The method includes: the second communication device receiving a first sequence, the first sequence corresponding to a polar-coded bit sequence; and the second communication device decoding the first sequence according to an information bit set. The information bit set includes bit indices contained in a first information bit set, a second information bit set, and a third information bit set. The first information bit set includes bit indices with a reliability ranking higher than Nr-1 and a value greater than or equal to N / 2; the second information bit set includes bit indices with a reliability ranking lower than Nr and a value greater than or equal to N / 2; and the third information bit set includes bit indices with a reliability ranking higher than r-1 and a value less than N / 2. N is the length of the polar-coded bit sequence, and r is a positive integer.
[0026] In one possible implementation, the minimum value in the reliability sort corresponding to the bit index contained in the first information bit set is greater than the maximum value in the reliability sort corresponding to the bit index contained in the second information bit set.
[0027] In one possible implementation, the number of bit indices contained in the first, second, and third information bit sets is less than K. The information bit sets also include bit indices contained in the fourth information bit set, which includes bit indices with a reliability less than r and a value less than N / 2. Here, K is the length of the information bit sequence.
[0028] In one possible implementation, the minimum reliability value corresponding to the bit index contained in the third information bit set is greater than the maximum reliability value corresponding to the bit index contained in the fourth information bit set.
[0029] In one possible implementation, r is related to at least one of the following: mother code length N, rate matching ratio, code rate, or rate matching method. The rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N.
[0030] In one possible implementation, r satisfies one or more of the following: r is monotonically increasing with respect to the mother code length N. Alternatively, r is monotonically increasing with respect to the rate matching ratio, where the rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N. Alternatively, when the rate matching method is puncturing, r is monotonically increasing with respect to the code rate, and when the rate matching method is shortening, r is monotonically decreasing with respect to the code rate.
[0031] In one possible implementation, the information bit set and the pre-frozen set There is no overlap.
[0032] In one possible implementation, if the bit index corresponding to the i-th position in the reliability sequence satisfies a first condition, then the bit index corresponding to the i-th position in the reliability sequence belongs to the first information bit set, where i iterates from N-1 to Nr. The first condition is that the bit index corresponding to the i-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the i-th position in the reliability sequence is greater than or equal to N / 2.
[0033] In one possible implementation, when the first information bit set contains fewer than K elements, if the bit index corresponding to the i-th position in the reliability sequence satisfies the second condition, the bit index corresponding to the i-th position in the reliability sequence belongs to the second information bit set; if the bit index corresponding to the (i+r)-th position in the reliability sequence satisfies the third condition, the bit index corresponding to the (i+r)-th position in the reliability sequence belongs to the third information bit set. i is traversed starting from Nr-1 until the sum of the number of bit indices contained in the first, second, and third information bit sets equals K, or until i = 0. The second condition is that the bit index corresponding to the i-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the i-th position in the reliability sequence is greater than or equal to N / 2. The third condition is that the bit index corresponding to the (i+r)-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the (i+r)th position in the reliability sequence is less than N / 2.
[0034] In one possible implementation, if the sum of the number of bit indices contained in the first information bit set, the second information bit set, and the third information set is less than K, and if the bit index corresponding to the (i+r)th position in the reliability sequence satisfies the fourth condition, then the bit index corresponding to the (i+r)th position in the reliability sequence belongs to the fourth information bit set, where i iterates from r-1 to 0. The fourth condition is that the bit index corresponding to the (i+r)th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the (i+r)th position in the reliability sequence is less than N / 2.
[0035] In one possible implementation, when the rate matching method is punching: when p is less than 3 / 10, When p is greater than 3 / 10 and less than or equal to 1 / 2, When p equals 3 / 10 or in, denoted as rounding up, p represents the ratio of the number of punctured bits to the length N of the encoded master code, and R represents the code rate.
[0036] In one possible implementation, when the rate matching mode is shortened: when p is less than 3 / 10, When p is greater than 3 / 10 and less than 9 / 20, When p is greater than 9 / 20 and less than or equal to 1 / 2, When p equals 3 / 10, or When p equals 9 / 20, or in, denoted as rounding up, p represents the ratio of the number of shortened bits to the length N of the encoded mother code, and R represents the code rate.
[0037] In one possible implementation, r is determined based on a mapping relationship, which includes the mapping relationship between the code rate, the rate matching ratio, and r. The rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N.
[0038] Thirdly, a communication device is provided, which can be used in the first communication device of the first aspect. The communication device can be a terminal device or a network device, or a device in the terminal device or network device (e.g., a chip, a chip system, or a circuit, such as a circuit or chip in the terminal device responsible for communication functions (e.g., a modem chip, also known as a baseband chip, or a system-on-chip (SoC) chip containing a modem core or a system-in-package (SIP) chip)), or a device that can be matched with the terminal device or network device, or a logic module or software that can implement all or part of the functions of the terminal device or network device.
[0039] In one possible implementation, the communication device may include modules or units that perform the methods / operations / steps / actions described in the first aspect. These modules or units may be hardware circuits, software, or a combination of hardware circuits and software.
[0040] In one possible implementation, the communication device may include a processing unit and a transceiver unit.
[0041] The processing unit is used to determine the information bit set based on the reliability sequence. The information bit set includes bit indices from a first information bit set, a second information bit set, and a third information bit set. Specifically, the first information bit set includes bit indices with a reliability ranking higher than Nr-1 and a value greater than or equal to N / 2; the second information bit set includes bit indices with a reliability ranking lower than Nr and a value greater than or equal to N / 2; and the third information bit set includes bit indices with a reliability ranking higher than r-1 and a value less than N / 2. The processing unit is also used to perform polar coding on the information bit sequence based on the information bit set to obtain a polar-coded bit sequence. The transceiver unit is used to output the polar-coded bit sequence. The length of the polar-coded bit sequence is N, and r is a positive integer.
[0042] In one possible implementation, the minimum value in the reliability sort corresponding to the bit index contained in the first information bit set is greater than the maximum value in the reliability sort corresponding to the bit index contained in the second information bit set.
[0043] In one possible implementation, the number of bit indices contained in the first, second, and third information bit sets is less than K. The information bit sets also include bit indices contained in the fourth information bit set, which includes bit indices with a reliability less than r and a value less than N / 2. Here, K is the length of the information bit sequence.
[0044] In one possible implementation, the minimum reliability value corresponding to the bit index contained in the third information bit set is greater than the maximum reliability value corresponding to the bit index contained in the fourth information bit set.
[0045] In one possible implementation, r is related to at least one of the following: mother code length N, rate matching ratio, code rate, or rate matching method. The rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N.
[0046] In one possible implementation, r satisfies one or more of the following: r is monotonically increasing with respect to the mother code length N. Alternatively, r is monotonically increasing with respect to the rate matching ratio, where the rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N. Alternatively, when the rate matching method is puncturing, r is monotonically increasing with respect to the code rate, and when the rate matching method is shortening, r is monotonically decreasing with respect to the code rate.
[0047] In one possible implementation, the information bit set and the pre-frozen set There is no overlap.
[0048] In one possible implementation, if the bit index corresponding to the i-th position in the reliability sequence satisfies a first condition, then the bit index corresponding to the i-th position in the reliability sequence belongs to the first information bit set, where i iterates from N-1 to Nr. The first condition is that the bit index corresponding to the i-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the i-th position in the reliability sequence is greater than or equal to N / 2.
[0049] In one possible implementation, when the first information bit set contains fewer than K elements, if the bit index corresponding to the i-th position in the reliability sequence satisfies the second condition, the bit index corresponding to the i-th position in the reliability sequence belongs to the second information bit set; if the bit index corresponding to the (i+r)-th position in the reliability sequence satisfies the third condition, the bit index corresponding to the (i+r)-th position in the reliability sequence belongs to the third information bit set. i is traversed starting from Nr-1 until the sum of the number of bit indices contained in the first, second, and third information bit sets equals K, or until i = 0. The second condition is that the bit index corresponding to the i-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the i-th position in the reliability sequence is greater than or equal to N / 2. The third condition is that the bit index corresponding to the (i+r)-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the (i+r)th position in the reliability sequence is less than N / 2.
[0050] In one possible implementation, if the sum of the number of bit indices contained in the first information bit set, the second information bit set, and the third information set is less than K, and if the bit index corresponding to the (i+r)th position in the reliability sequence satisfies the fourth condition, then the bit index corresponding to the (i+r)th position in the reliability sequence belongs to the fourth information bit set, where i iterates from r-1 to 0. The fourth condition is that the bit index corresponding to the (i+r)th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the (i+r)th position in the reliability sequence is less than N / 2.
[0051] In one possible implementation, when the rate matching method is punching: when p is less than 3 / 10, When p is greater than 3 / 10 and less than or equal to 1 / 2, When p equals 3 / 10, or in, denoted as rounding up, p represents the ratio of the number of punctured bits to the length N of the encoded master code, and R represents the code rate.
[0052] In one possible implementation, when the rate matching mode is shortened: when p is less than 3 / 10, When p is greater than 3 / 10 and less than 9 / 20, When p is greater than 9 / 20 and less than or equal to 1 / 2, When p equals 3 / 10, or When p equals 9 / 20, or in, denoted as rounding up, p represents the ratio of the number of shortened bits to the length N of the encoded mother code, and R represents the code rate.
[0053] In one possible implementation, r is determined based on a mapping relationship, which includes the mapping relationship between the code rate, the rate matching ratio, and r. The rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N.
[0054] Fourthly, a communication device is provided that can be used in the second communication device of the second aspect. The communication device can be a terminal device or a network device, or a device in the terminal device or network device (e.g., a chip, a chip system, or a circuit, such as a circuit or chip in the terminal device responsible for communication functions (e.g., a modem chip, also known as a baseband chip, or a SoC chip or SIP chip containing a modem core), or a device that can be used in conjunction with the terminal device or network device, or a logic module or software that can implement all or part of the functions of the terminal device or network device.
[0055] In one possible implementation, the communication device may include modules or units that perform the methods / operations / steps / actions described in the second aspect one by one. These modules or units may be hardware circuits, software, or a combination of hardware circuits and software.
[0056] In one possible implementation, the communication device includes a processing unit and a transceiver unit.
[0057] The transceiver unit receives a first sequence, which corresponds to a polar-coded bit sequence. The processing unit decodes the first sequence based on the information bit set. The information bit set includes bit indices from a first information bit set, a second information bit set, and a third information bit set. Specifically, the first information bit set includes bit indices with a reliability ranking higher than Nr-1 and a value greater than or equal to N / 2; the second information bit set includes bit indices with a reliability ranking lower than Nr and a value greater than or equal to N / 2; and the third information bit set includes bit indices with a reliability ranking higher than r-1 and a value less than N / 2. The length of the polar-coded bit sequence is N, and r is a positive integer.
[0058] In one possible implementation, the minimum value in the reliability sort corresponding to the bit index contained in the first information bit set is greater than the maximum value in the reliability sort corresponding to the bit index contained in the second information bit set.
[0059] In one possible implementation, the number of bit indices contained in the first, second, and third information bit sets is less than K. The information bit sets also include bit indices contained in the fourth information bit set, which includes bit indices with a reliability less than r and a value less than N / 2. Here, K is the length of the information bit sequence.
[0060] In one possible implementation, the minimum reliability value corresponding to the bit index contained in the third information bit set is greater than the maximum reliability value corresponding to the bit index contained in the fourth information bit set.
[0061] In one possible implementation, r is related to at least one of the following: mother code length N, rate matching ratio, code rate, or rate matching method. The rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N.
[0062] In one possible implementation, r satisfies one or more of the following: r is monotonically increasing with respect to the mother code length N. Alternatively, r is monotonically increasing with respect to the rate matching ratio, where the rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N. Alternatively, when the rate matching method is puncturing, r is monotonically increasing with respect to the code rate, and when the rate matching method is shortening, r is monotonically decreasing with respect to the code rate.
[0063] In one possible implementation, the information bit set and the pre-frozen set There is no overlap.
[0064] In one possible implementation, if the bit index corresponding to the i-th position in the reliability sequence satisfies a first condition, then the bit index corresponding to the i-th position in the reliability sequence belongs to the first information bit set, where i iterates from N-1 to Nr. The first condition is that the bit index corresponding to the i-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the i-th position in the reliability sequence is greater than or equal to N / 2.
[0065] In one possible implementation, when the first information bit set contains fewer than K elements, if the bit index corresponding to the i-th position in the reliability sequence satisfies the second condition, the bit index corresponding to the i-th position in the reliability sequence belongs to the second information bit set; if the bit index corresponding to the (i+r)-th position in the reliability sequence satisfies the third condition, the bit index corresponding to the (i+r)-th position in the reliability sequence belongs to the third information bit set. i is traversed starting from Nr-1 until the sum of the number of bit indices contained in the first, second, and third information bit sets equals K, or until i = 0. The second condition is that the bit index corresponding to the i-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the i-th position in the reliability sequence is greater than or equal to N / 2. The third condition is that the bit index corresponding to the (i+r)-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the (i+r)th position in the reliability sequence is less than N / 2.
[0066] In one possible implementation, if the sum of the number of bit indices contained in the first information bit set, the second information bit set, and the third information set is less than K, and if the bit index corresponding to the (i+r)th position in the reliability sequence satisfies the fourth condition, then the bit index corresponding to the (i+r)th position in the reliability sequence belongs to the fourth information bit set, where i iterates from r-1 to 0. The fourth condition is that the bit index corresponding to the (i+r)th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the (i+r)th position in the reliability sequence is less than N / 2.
[0067] In one possible implementation, when the rate matching method is punching: when p is less than 3 / 10, When p is greater than 3 / 10 and less than or equal to 1 / 2, When p equals 3 / 10 or in, denoted as rounding up, p represents the ratio of the number of punctured bits to the length N of the encoded master code, and R represents the code rate.
[0068] In one possible implementation, when the rate matching mode is shortened: when p is less than 3 / 10, When p is greater than 3 / 10 and less than 9 / 20, When p is greater than 9 / 20 and less than or equal to 1 / 2, When p equals 3 / 10 or When p equals 9 / 20, or in, denoted as rounding up, p represents the ratio of the number of shortened bits to the length N of the encoded mother code, and R represents the code rate.
[0069] In one possible implementation, r is determined based on a mapping relationship, which includes the mapping relationship between the code rate, the rate matching ratio, and r. The rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N.
[0070] Fifthly, a communication device is provided for implementing the various methods described above. This communication device may be the first communication device described in the first aspect, or a device comprising the first communication device, or a device included in the first communication device, such as a chip; or, the communication device may be the second communication device described in the second aspect, or a device comprising the second communication device, or a device included in the second communication device. The communication device includes modules, units, or means corresponding to the methods described above, which may be implemented in hardware, software, or by hardware executing corresponding software. The hardware or software includes one or more modules or units corresponding to the functions described above.
[0071] A sixth aspect provides a communication device, comprising: a processor and a communication interface; the communication interface being used to communicate with a module outside the communication device; the processor being used to execute a computer program or instructions to cause the method described in any of the preceding aspects to be executed. The communication device may be a first communication device as described in the first aspect, or a device including the first communication device, or a device included in the first communication device, such as a chip; or, the communication device may be a second communication device as described in the second aspect, or a device including the second communication device, or a device included in the second communication device.
[0072] A seventh aspect provides a communication device, comprising: at least one processor; the processor implementing the method described in any of the preceding aspects via logic circuitry and / or by executing a computer program. The communication device may be a first communication device as described in the first aspect, or a device comprising the first communication device, or a device included in the first communication device, such as a chip; or, the communication device may be a second communication device as described in the second aspect, or a device comprising the second communication device, or a device included in the second communication device.
[0073] Optionally, the communication device described above may further include a memory. This memory may be coupled to the processor, or it may be independent of the processor, or it may be integrated with the processor.
[0074] Optionally, the above-mentioned communication device further includes a communication interface for inputting and / or outputting signals.
[0075] Eighthly, this application provides a communication system that may include a first communication device that performs the method described in the first aspect and a second communication device that performs the method described in the second aspect.
[0076] Ninthly, this application provides a computer-readable storage medium storing computer-readable instructions that, when read and executed by a computer, cause the computer to perform a method in any possible implementation of any of the first to second aspects described above.
[0077] In a tenth aspect, this application provides a computer program product that, when read and executed by a computer, causes the computer to perform a method in any possible implementation of any of the first to second aspects described above.
[0078] In one aspect, this application provides a chip for reading a computer program stored in a memory to execute the method in any possible implementation of any of the first to second aspects described above.
[0079] It is understandable that the technical effects of the second to eleventh aspects can refer to the technical effects of the first aspect, and will not be elaborated here. Attached Figure Description
[0080] Figure 1 is a schematic diagram of the architecture of a communication system provided in an embodiment of this application;
[0081] Figure 2 is a schematic diagram of a polarization coding provided in an embodiment of this application;
[0082] Figure 3 is a schematic diagram of a successive cancellation decoding process provided in an embodiment of this application;
[0083] Figure 4 is a schematic diagram of a coding / decoding process provided in an embodiment of this application;
[0084] Figure 5 is an exemplary flowchart of an encoding method provided in an embodiment of this application;
[0085] Figure 6 is a schematic diagram of a reliability ranking provided in an embodiment of this application;
[0086] Figure 7 is an exemplary flowchart of a decoding method provided in an embodiment of this application;
[0087] Figure 8 is a schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0088] Figure 9 is a schematic diagram of another communication device provided in an embodiment of this application;
[0089] Figure 10 is a schematic diagram of another communication device provided in an embodiment of this application;
[0090] Figure 11 is a schematic diagram of the structure of another communication device provided in an embodiment of this application. Detailed Implementation
[0091] The technical solutions of this application can be applied to various communication systems, such as Long Term Evolution (LTE) systems, 5th Generation (5G) mobile communication systems, and New Radio (NR) systems. The technical solutions provided in this application can also be applied to future communication systems. These communication systems can also be Bluetooth communication systems, Wireless Local Area Network (WLAN) / WiFi communication systems, Narrow Band Internet of Things (NB-IoT) communication systems, etc. The technical solutions of this application can also be applied to satellite communication systems, wherein the satellite communication system can be integrated with the aforementioned communication systems.
[0092] To facilitate understanding of the content of this application, the nouns or terms involved in the embodiments of this application will be explained below.
[0093] I. Information Bit Sequence
[0094] An information bit sequence refers to a sequence of bits to be encoded. For example, if the bits to be encoded are 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, then the resulting information bit sequence is 10101100101. An information bit sequence may or may not contain check bits (such as cyclic redundancy check (CRC) bits), and this distinction is not made here.
[0095] II. Bitrate
[0096] The bit rate refers to the ratio of the number of information bits to the number of encoded (to be) transmitted bits. The encoded (to be) transmitted bits can be the bits after rate matching.
[0097] III. Information Length
[0098] The information length refers to the number of encoded bits to be transmitted. These bits may or may not include CRC bits, which is not distinguished here.
[0099] Figure 1 is a schematic diagram of the architecture of a communication system 1000 provided in an embodiment of this application. As shown in Figure 1, the communication system 1000 includes a radio access network (RAN) 100, wherein the RAN 100 includes at least one RAN node (110a and 110b in Figure 1, collectively referred to as 110), and may also include at least one terminal (120a-120j in Figure 1, collectively referred to as 120). The RAN 100 may also include other RAN nodes, such as wireless relay devices and / or wireless backhaul devices (not shown in Figure 1). The terminal 120 is wirelessly connected to the RAN node 110. Terminals and RAN nodes can be interconnected via wired or wireless means. The communication system 1000 may also include a core network 200. The RAN node 110 is connected to the core network 200 via wireless or wired means. The core network equipment in core network 200 and the RAN node 110 in RAN 100 can be independent and different physical devices, or they can be the same physical device that integrates the logical functions of the core network equipment and the logical functions of the RAN node. The communication system 1000 may also include the Internet (not shown in the figure).
[0100] The communication system 1000 provided in this application may further include AI network elements for implementing some or all AI-related operations. AI network elements may also be referred to as AI nodes, AI devices, AI entities, AI modules, AI models, or AI units, etc. The AI network element may be built into a network element within the communication system. For example, an AI network element may be an AI module built into: access network equipment, core network equipment, cloud server, or operation, administration, and maintenance (OAM) to implement AI-related functions. The OAM may serve as the network management system for the core network equipment and / or the access network equipment. Alternatively, the AI network element may also be an independently configured network element within the communication system. Optionally, the terminal or its built-in chip may also include an AI entity for implementing AI-related functions.
[0101] RAN100 can be an evolved universal terrestrial radio access (E-UTRA) system, a new radio (NR) system, a 6th generation (6G) radio access system, or a future radio access system as defined in the 3rd generation partnership project (3GPP). RAN100 can also include two or more of the above-mentioned different radio access systems. RAN100 can also be an open RAN (O-RAN).
[0102] RAN nodes, also known as radio access network devices, RAN entities, or access nodes, are used to help terminals access communication systems wirelessly. In one application scenario, an RAN node can be a base station, an evolved NodeB (eNodeB), a transmission reception point (TRP), a next-generation NodeB (gNB) in a 5G mobile communication system, or a base station in a future mobile communication system. RAN nodes can be macro base stations (as shown in Figure 1, 110a), micro base stations or indoor stations (as shown in Figure 1, 110b), relay nodes, or donor nodes.
[0103] In another application scenario, multiple RAN nodes can collaborate to help terminals achieve wireless access, with different RAN nodes implementing different functions of the base station. For example, a RAN node can be a central unit (CU), a distributed unit (DU), or a radio unit (RU). Here, the CU performs the functions of the base station's Radio Resource Control (RRC) and Packet Data Convergence Protocol (PDCP), and can also perform the functions of the Service Data Adaptation Protocol (SDAP). The DU performs the functions of the base station's Radio Link Control (RANC) and Medium Access Control (MAC) layers, and can also perform some or all of the physical layer functions. For specific descriptions of these protocol layers, refer to the relevant 3GPP technical specifications. The RU can be used to implement radio frequency signal transmission and reception. The CU and DU can be two independent RAN nodes or integrated into the same RAN node, such as within a baseband unit (BBU). The RU can be included in radio frequency equipment, such as in a remote radio unit (RRU) or an active antenna unit (AAU). The CU can be further divided into two types of RAN nodes: CU-control plane and CU-user plane.
[0104] In different systems, RAN nodes may have different names. For example, in an O-RAN system, a CU can be called an open CU (O-CU), a DU can be called an open DU (O-DU), and an RU can be called an open RU (O-RU). The RAN nodes in the embodiments of this application can be implemented through software modules, hardware modules, or a combination of software and hardware modules. For example, a RAN node can be a server loaded with the corresponding software modules. The embodiments of this application do not limit the specific technology or device form used in the RAN nodes. For ease of description, a base station is used as an example of a RAN node in the following description.
[0105] A terminal is a device with wireless transceiver capabilities, capable of sending signals to or receiving signals from a base station. Terminals can also be called terminal equipment, user equipment (UE), mobile station, mobile terminal, etc. Terminals can be widely used in various scenarios, such as device-to-device (D2D), vehicle-to-everything (V2X) communication, machine-type communication (MTC), Internet of Things (IoT), virtual reality, augmented reality, industrial control, autonomous driving, telemedicine, smart grids, smart furniture, smart offices, smart wearables, smart transportation, smart cities, etc. Terminals can be mobile phones, tablets, computers with wireless transceiver capabilities, wearable devices, vehicles, airplanes, ships, robots, robotic arms, smart home devices, etc. The embodiments of this application do not limit the specific technology or device form used in the terminal. For example, terminal devices can be: mobile phones, tablets, laptops, PDAs, mobile internet devices (MIDs), wearable devices (such as smartwatches, smart bracelets, pedometers, smart glasses, etc.), in-vehicle equipment (such as cars, bicycles, electric vehicles, airplanes, ships, trains, high-speed trains, etc.), satellite terminals, virtual reality (VR) devices, augmented reality (AR) devices, smart point of sale (POS) machines, customer-premises equipment (CPE), light user equipment (UE), reduced capability user equipment (REDCAP UE), wireless terminals in industrial control, smart home devices (such as refrigerators, televisions, air conditioners, electricity meters, etc.), smart robots, robotic arms, workshop equipment, wireless terminals in autonomous driving, wireless terminals in telemedicine, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, or wireless terminals in smart homes, and flying equipment (such as smart robots, hot air balloons, drones, airplanes), etc. Terminal equipment can also be vehicle devices (such as vehicle devices, vehicle modules, vehicle chips, on-board units (OBU) or telematics boxes (T-BOX)). Terminal equipment can also be other devices with terminal functions. For example, terminal equipment can also be a device that plays a terminal function in D2D communication.
[0106] Base stations and terminals can be fixed or mobile. They can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; they can also be deployed on water; and they can be deployed on aircraft, balloons, and satellites. The embodiments of this application do not limit the application scenarios of the base stations and terminals.
[0107] The roles of base stations and terminals can be relative. For example, the helicopter or drone 120i in Figure 1 can be configured as a mobile base station. For terminals 120j that access the wireless access network 100 through 120i, terminal 120i is a base station; however, for base station 110a, 120i is a terminal, meaning that 110a and 120i communicate via a wireless air interface protocol. Of course, 110a and 120i can also communicate via a base station-to-base station interface protocol. In this case, relative to 110a, 120i is also a base station. Therefore, both base stations and terminals can be collectively referred to as communication devices. 110a and 110b in Figure 1 can be called communication devices with base station functions, and 120a-120j in Figure 1 can be called communication devices with terminal functions.
[0108] Communication between base stations and terminals, between base stations, and between terminals can be conducted using licensed spectrum, unlicensed spectrum, or both simultaneously. The embodiments of this application do not limit the spectrum resources used for wireless communication.
[0109] In the embodiments of this application, the functions of the base station can be executed by modules (such as chips) within the base station, or by a control subsystem that includes base station functions. This control subsystem, including base station functions, can be a control center in the aforementioned application scenarios such as smart grids, industrial control, intelligent transportation, and smart cities. Similarly, the functions of the terminal can be executed by modules (such as chips or modems) within the terminal, or by a device that includes terminal functions.
[0110] In this application, the base station sends downlink signals or downlink information to the terminal, with the downlink information carried on the downlink channel; the terminal sends uplink signals or uplink information to the base station, with the uplink information carried on the uplink channel. To communicate with the base station, the terminal needs to establish a radio connection on a cell controlled by the base station. The cell with which the terminal has established a radio connection is called the terminal's serving cell. When the terminal communicates with this serving cell, it is also susceptible to interference from signals from neighboring cells.
[0111] In this application, entity A sends information to entity B, either directly or indirectly through other entities. Similarly, entity B receives information from entity A, either directly or indirectly through other entities. Entities A and B can be RAN nodes or terminals, or modules within RAN nodes or terminals. Information transmission and reception can be between RAN nodes and terminals, such as between a base station and a terminal; between two RAN nodes, such as between a CU and a DU; or between different modules within a single device, such as between a terminal chip and other modules of the terminal, or between a base station chip and other modules of the base station.
[0112] The communication systems and service scenarios described in the embodiments of this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the evolution of network architecture and the emergence of new service scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.
[0113] In the field of communication technology, communication devices (such as terminals and base stations) can perform channel coding using polar codes. The following sections introduce polar coding through two different methods.
[0114] Method 1: Encode the bits to be encoded by generating a matrix.
[0115] in, A row vector representing the bits to be encoded. N is the code length, where N is an integer greater than or equal to 1. i represents the bits before encoding, and i is an integer between 1 and N. This includes information bits and / or frozen bits, i.e., u i These can be either information bits or frozen bits. Information bits are used to carry information. Frozen bits are padding bits, and they can typically be 0.
[0116] G N To generate the matrix, G N It is an N*N matrix. or Among them, B N Given an N*N permutation matrix, for example, B NIt can be a bit reversal matrix. This is a Kronecker product of log2(N) matrices F2. All the additions and multiplications mentioned above are operations on the binary Galois field. G can also be... N It is called the generator matrix kernel.
[0117] Method 2: Introduce the polar encoding process through an encoding diagram.
[0118] Referring to Figure 2, the encoding diagram corresponds to an 8-bit code length. The encoding process includes several polarization kernel operations (polarization kernels are represented by solid-line rectangles). The polarization kernel ANDs the two input bits with... Multiplying them yields two output bits. It can be seen that the polar code is constructed recursively. A polar code with an encoding length of 8 can be considered as a result of coupling two polar codes with an encoding length of 4 (represented by two dashed rectangles), and a polar code with an encoding length of 4 can be considered as a result of coupling two polar codes with an encoding length of 2.
[0119] The construction process of the Polar code is used to determine the information bits and frozen bits. Generally, the reliability of each sub-channel can be sorted, and the K positions with the highest reliability are set as information bits, while the remaining NK positions are set as frozen bits. It should be understood that each bit corresponds to one sub-channel. As shown in Figure 2, a Polar code with N=8 and K=4 is constructed, typically u3, u5, u6, and u7 are information bits, and the remaining positions are frozen bits. (In specific implementations, the Polar code can be constructed offline using a reliability sequence or online using methods such as Gaussian approximation; this application is not limited to this).
[0120] Polar codes are decoded using successive cancellation (SC) decoding. In SC, the log-likelihood ratio (LLR) of the information bits is calculated step by step. For an information bit, if LLR > 0, the bit is determined to be 0; if LLR < 0, the bit is determined to be 1. For frozen bits, the bit is set to 0 regardless of the LLR value. A simple SC decoding diagram is shown in Figure 3: There are 8 computation nodes in the figure, including 4 f nodes and 4 g nodes. The calculation of the f node requires 2 LLR inputs on its right side, and the calculation of the g node requires 2 LLR inputs on its right side and 1 "partial sum" input above it. The output can only be calculated after the inputs are calculated. According to the above rules, starting from the received signal on the right side, the 8 nodes are calculated sequentially, resulting in the decoding sequence ①→②→③→④, which is the SC decoding process.
[0121] In the 3GPP-5G standard, polar code rate matching requires sub-block interleaving. Specifically, the polar-coded bit sequence undergoes sub-block interleaving during rate matching, followed by bit selection for rate matching. Besides using repetition codes, high and low code rates employ shortening and puncturing techniques to achieve flexible code length and rate. Sequential puncturing and shortening are crucial techniques in polar code construction under rate matching. Sequential puncturing involves punching out several bit positions from front to back, while sequential shortening involves shortening several bit positions from back to front. The reliability of each bit position in a rate-matched polar code varies significantly; therefore, directly constructing the code based on the reliability sequence under the mother code length negatively impacts coding performance.
[0122] Therefore, embodiments of this application provide an encoding and decoding method. In this method, the sending end can perform polar coding on an information bit sequence based on a determined set of information bits. The information bit set includes elements that can include bit indices contained in three information bit sets: a first information bit set, a second information bit set, and a third information bit set. In this embodiment, the first information bit set can include bit indices with a reliability ranking higher than Nr-1 and a value greater than or equal to N / 2; the second information bit set can include bit indices with a reliability ranking lower than Nr and a value greater than or equal to N / 2; and the third information bit set can include bit indices with a reliability ranking higher than r-1 and a value less than N / 2.
[0123] As mentioned above, in polar codes, each bit corresponds one-to-one with a subchannel, so the bit index can also be the subchannel index.
[0124] In the above method, N is the length of the polar-coded bit sequence. For example, N can be the length of the bit sequence before rate matching after planned coding; N can also be understood as the length of the polar-coded master code. Where N = 2... n n is a positive integer. r is a positive integer. Optionally, r can be understood as the offset value of the reliability sort corresponding to the bit index with a value less than N / 2.
[0125] Based on the above scheme, when determining the information bit set, the transmitting end increases the number of information bits read from bit indices with values greater than or equal to N / 2, and correspondingly reduces the number of information bits read from bit indices with values less than N / 2. This improves the reliability of the bit indices included in the determined information bit set. Therefore, the performance of the polar code is also improved.
[0126] Taking the communication system shown in Figure 1 as an example, to ensure the reliability of communication between devices, the transmitting end can encode the information to be transmitted, and correspondingly, the receiving end decodes the encoded information after receiving it. As shown in the encoding and decoding process in Figure 4, the source signal from the transmitting end is transmitted on the channel after sequentially undergoing source coding, channel coding, rate matching, and modulation. After receiving the signal, the receiving end sequentially undergoes demodulation and rate matching, channel decoding, and source decoding to obtain the destination signal. The transmitting end and receiving end can be either network devices or terminal devices, respectively. It can be understood that in downlink communication, the network device is the transmitting end, and the terminal device is the receiving end; in uplink communication, the terminal device is the transmitting end, and the network device is the receiving end. The network device can be either a transmitting end or a receiving end. Furthermore, this application does not exclude the possibility that both the transmitting end and the receiving end are terminal devices, in which case downlink communication occurs between the transmitting end and the receiving end. The method provided in this application's embodiments can be used in the channel coding process.
[0127] Figure 5 shows a flowchart of an encoding method. This method can be applied to a first communication device. The first communication device can be the transmitting end in the encoding / decoding flow shown in Figure 4; correspondingly, the second communication device can be the receiving end in the encoding / decoding flow shown in Figure 4. Unless otherwise specified, the term "first communication device" in this application can refer to the first communication device itself (e.g., a base station, a terminal), a component within the first communication device (e.g., a processor, a chip, or a chip system), or a logic module or software capable of implementing all or part of the functions of the first communication device. Similarly, unless otherwise specified, the term "second communication device" in this application can refer to the second communication device itself (e.g., a base station, a terminal), a component within the second communication device (e.g., a processor, a chip, or a chip system), or a logic module or software capable of implementing all or part of the functions of the second communication device.
[0128] For example, when the first communication device is a terminal, the second communication device can be a base station, or the second communication device can also be a terminal; when the first communication device is a base station, the second communication device can be a terminal, or the second communication device can also be a terminal. The method includes:
[0129] S501: Determine the set of information bits based on the reliability sequence.
[0130] The information bit set includes bit indices from the first information bit set, the second information bit set, and the third information bit set. Specifically, the first information bit set includes bit indices with a reliability ranking higher than Nr-1 and a value greater than or equal to N / 2; the second information bit set includes bit indices with a reliability ranking lower than Nr and a value greater than or equal to N / 2; and the third information bit set includes bit indices with a reliability ranking higher than r-1 and a value less than N / 2.
[0131] It should be noted that the reliability sorting in this embodiment can be either from low to high reliability or from high to low reliability. In one possible scenario, where the reliability is sorted from low to high reliability, the first information bit set includes bit indices whose reliability ranking is higher than Nr-1 and whose values are greater than or equal to N / 2. Here, "reliability ranking higher than Nr-1" indicates that the reliability ranking index is greater than Nr-1. In another possible scenario, where the reliability is sorted from high to low reliability, the first information bit set includes bit indices whose reliability ranking is higher than r and whose values are greater than or equal to N / 2. Here, "reliability ranking higher than r" indicates that the reliability ranking index is less than r.
[0132] In both scenarios, when sorting by reliability from low to high, a reliability sorting index greater than Nr-1 refers to the same bit index as when sorting by reliability from high to low. For example, consider N=16 and r=2. If the reliability is sorted from low to high, a reliability sorting index greater than Nr-1 refers to bit indices with reliability sorting indices of 14 and 15, which are the first and second most reliable bit indices. If the reliability is sorted from high to low, a reliability sorting index less than r refers to bit indices with reliability sorting indices of 0 and 1, which are also the first and second most reliable bit indices.
[0133] Similarly, if the reliability is sorted from low to high, the second information bit set includes bit indices whose reliability ranking is below Nr and whose values are greater than or equal to N / 2. Here, "reliability ranking below Nr" means the reliability ranking index is greater than Nr. If the reliability is sorted from high to low, the second information bit set includes bit indices whose reliability ranking is below r-1 and whose values are greater than or equal to N / 2. Here, "reliability ranking below r-1" means the reliability ranking index is greater than r-1.
[0134] Similarly, if the reliability is sorted from low to high, the third information bit set includes bit indices whose reliability is higher than r-1 and whose values are less than N / 2. Here, a reliability sorting higher than r-1 means the reliability sorting index is greater than r-1. If the reliability is sorted from high to low, the third information bit set includes bit indices whose reliability is higher than Nr and whose values are less than N / 2. Here, a reliability sorting higher than Nr means the reliability sorting index is less than Nr.
[0135] S502: Polarize the information bit sequence according to the information bit set to obtain the polarized bit sequence.
[0136] The polarization encoding method for the information bit sequence can refer to the methods described in Method 1 and Method 2 above, and will not be repeated here.
[0137] In S502, the first communication device can place information bits at the positions corresponding to the bit indices in the information bit set, and place frozen bits at other positions to obtain a bit sequence to be encoded. The first communication device can then perform polar encoding on the bit sequence to be encoded to obtain a polar-coded bit sequence.
[0138] S503: Outputs the polar-coded bit sequence.
[0139] In S503, the first communication device can perform operations such as rate matching, modulation, and mapping on the polarized encoded bit sequence and then output the bit sequence to be transmitted. Optionally, the first communication device can transmit the bit sequence to be transmitted.
[0140] In this embodiment of the application, the information bit set and the pre-frozen set There is no overlap. Similarly, the first set of information bits and the pre-frozen set... There is no overlap between the second information bit set and the pre-frozen set. There is no overlap between the third information bit set and the pre-frozen set. There is no overlap.
[0141] It should be noted that the pre-frozen set Related to rate matching. For example, pre-frozen sets. The selection differs under punching and shortening conditions. For example, in the case where rate matching is achieved through punching, the pre-frozen set... This can include the bit index corresponding to the punctured bit sequence number and a set of surrounding sub-channels. For example, in the case where the rate matching method is shortening, the pre-frozen set... This can include the bit index corresponding to the shortened bit sequence number. Pre-frozen set. You can refer to the pre-frozen set used in the construction of 5G polar codes. This will not be elaborated upon here.
[0142] For example, referring to Figure 6, a schematic diagram of a reliability sorting based on bit indexes is shown. This document uses a reliability sorting starting from 0 as an example, but those skilled in the art can also set the reliability sorting to start from 1. Similarly, this document uses a bit index starting from 0 as an example, but those skilled in the art can also set the bit index to start from 1.
[0143] It should be noted that when the reliability ranking starts from 1, the reliability ranking of the bit indices included in each information bit set needs to be incremented by 1. For example, the first information bit set includes bit indices with a reliability ranking higher than Nr and a value greater than or equal to N / 2. Another example is the second information bit set, which includes bit indices with a reliability ranking lower than N-r+1 and a value greater than or equal to N / 2. Yet another example is the third information bit set, which includes bit indices with a reliability ranking higher than r and a value less than N / 2. This will not be repeated below.
[0144] In one possible scenario, the minimum value in the reliability ranking corresponding to the bit index contained in the first information bit set is greater than the maximum value in the reliability ranking corresponding to the bit index contained in the second information bit set.
[0145] In one possible implementation, if the sum of the number of bit indices contained in the first, second, and third information bit sets is less than K, the information bit sets also include bit indices contained in the fourth information bit set. The fourth information bit set includes bit indices with a reliability less than r and a value less than N / 2.
[0146] The following describes the methods for determining the first set of information bits, the second set of information bits, the third set of information bits, and the fourth set of information bits in the embodiments of this application.
[0147] I. First Information Bit Set
[0148] If the bit index corresponding to the i-th position in the reliability sequence satisfies the first condition, then the bit index corresponding to the i-th position in the reliability sequence belongs to the first information bit set. The first condition is that the bit index corresponding to the i-th position in the reliability sequence does not belong to the pre-frozen set. And the bit index corresponding to the i-th position in the reliability sequence is greater than or equal to N / 2. That is, when... And Q i When ≥N / 2, the set of information bits Q i This represents the bit index corresponding to the i-th position in the reliability ranking.
[0149] It should be noted that the initial value of the above information bit set is an empty set.
[0150] Where i is traversed starting from N-1. When the information bit set... The traversal ends when the number of elements contained is equal to K or when i = Nr. At this point, the information bit set... It contains only the first set of information bits, therefore the set of information bits The fact that the number of elements contained is equal to K can also be understood as the end of the traversal when the number of elements contained in the first information bit set is equal to K.
[0151] II. Second Information Bit Set and Third Information Bit Set
[0152] When the information bit set The number of elements contained is less than K, because at this time the information bit set Since it only contains the first set of information bits, it can also be understood that when the number of elements in the first set of information bits is less than K, if the bit index corresponding to the i-th position in the reliability sequence satisfies the second condition, then the bit index corresponding to the i-th position in the reliability sequence belongs to the second set of information bits. If the bit index corresponding to the (i+r)-th position in the reliability sequence satisfies the third condition, then the bit index corresponding to the (i+r)-th position in the reliability sequence belongs to the third set of information bits.
[0153] The second condition is that the bit index corresponding to the i-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the i-th position in the reliability sequence is greater than or equal to N / 2; the third condition is that the bit index corresponding to the (i+r)-th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the (i+r)th position in the reliability sequence is less than N / 2.
[0154] In other words, when And Q i When ≥N / 2, when and Q i+r when < N / 2
[0155] where i traverses starting from N - r - 1 until the number of elements in the information bit set contains K elements, or until i = 0 to end the traversal. At this time, the information bit set includes the sum of the number of bit indices contained in the three information bit sets: the first information bit set, the second information bit set, and the third information bit set. Therefore, the information bit set containing K elements can also be understood as the sum of the number of bit indices contained in the three information bit sets: the first information bit set, the second information bit set, and the third information bit set being equal to K.
[0156] III. The fourth information bit set.
[0157] When the number of elements in the information bit set is less than K, since at this time the information bit set includes the sum of the number of bit indices contained in the three information bit sets: the first information bit set, the second information bit set, and the third information bit set, it can also be understood that at this time the information bit set includes the sum of the number of bit indices contained in the three information bit sets: the first information bit set, the second information bit set, and the third information bit set is less than K. If the bit index corresponding to the (i + r)-th position in the reliability sequence satisfies the fourth condition, then the bit index corresponding to the (i + r)-th position in the reliability sequence belongs to the fourth information bit set. Among them, the fourth condition is that the bit index corresponding to the (i + r)-th position in the reliability sequence does not belong to the pre-frozen set and the bit index corresponding to the (i + r)-th position in the reliability sequence is less than N / 2.
[0158] That is to say, when and Q i < N / 2
[0159] where i traverses starting from r - 1 until i = 0 or the number of elements in the information bit set is equal to K. At this time, the information bit set includes the sum of the number of bit indices contained in the four information bit sets: the first information bit set, the second information bit set, the third information bit set, and the fourth information bit set. Therefore, the information bit set containing K elements can also be understood as the sum of the number of bit indices contained in the four information bit sets: the first information bit set, the second information bit set, the third information bit set, and the fourth information bit set being equal to K.
[0160] Based on the above methods for determining the first set of information bits, the second set of information bits, the third set of information bits, and the fourth set of information bits, the following explanation and illustration of the method for determining the set of information bits will be provided with specific examples.
[0161] Example 1
[0162] Assuming the mother code length N = 16, the information length E = 12, the information bit sequence length K = 5, and r = 2, the information length E is less than the mother code length N, and the code rate R = K / E ≤ 7 / 16. Therefore, the first communication device can determine that the rate matching method is puncturing. For example, the puncturing method is sequential puncturing, that is, puncturing from front to back. Based on the puncturing rate matching method, a pre-freeze set is determined.
[0163] When N=16, the reliability ranking is shown in Figure 6. The reliability ranking in Figure 6 is based on reliability from low to high, therefore the value of i can represent the order of reliability. [The information set...] The default is an empty set. First, the first communication device traverses from position i = N-1 = 15 in the reliability sort. Where i = 15, Q... 15 =15, not belonging to the pre-frozen set and greater than N / 2 = 8, satisfying the first condition. Therefore, the information bit set is... The first communication device iterates up to i = Nr = 14. Where i = 14, Q 14 =14, not belonging to the pre-frozen set and greater than N / 2 = 8, satisfying the first condition. Therefore, the information bit set is...
[0164] At this point, the first communication device has completed traversing the first set of information bits, but the set of information bits... The number of elements contained is 2, which is less than K. The first communication device starts traversing from the position Nr-1 = 13 in the reliability sort. First, when i = 13, Q 13 =13, does not belong to the pre-frozen set, and is greater than N / 2 = 8, satisfying the second condition. Therefore, the information bit set is... Secondly, when i = 13, i + r = 15, Q 15 =15, does not belong to the pre-frozen set and is greater than N / 2=8, does not satisfy the third condition.
[0165] Information bit set The number of elements contained is less than K, and the first communication device traverses to the position i = 12. First, when i = 12, Q... 12 =11, does not belong to the pre-frozen set, and is greater than N / 2 = 8, satisfying the second condition. Therefore, the information bit set is... Secondly, when i = 12, i + r = 14, Q 14 =14, which does not belong to the pre-frozen set and is greater than N / 2=8, thus not satisfying the third condition.
[0166] Information bit set The number of elements contained is less than K, and the first communication device traverses to the position i = 11. First, when i = 11, Q... 11 =7, not belonging to the pre-frozen set, and less than N / 2 = 8, thus not satisfying the second condition. Secondly, when i = 11, i + r = 13, Q 13 =13, does not belong to the pre-frozen set and is greater than N / 2=8, does not satisfy the third condition.
[0167] Information bit set The number of elements contained is less than K, and the first communication device traverses to the position i = 10. First, when i = 10, Q... 10 =12, does not belong to the pre-frozen set, and is greater than N / 2 = 8, satisfying the second condition. Therefore, the information bit set is... Secondly, since the set of information bits contains K elements, the first communication device ends its traversal.
[0168] Then the set of information bits determined by the first communication device
[0169] Example 2
[0170] Assuming the mother code length N = 16, the information length E = 12, the information bit sequence length K = 6, and r = 3, the information length E is less than the mother code length N, and the code rate R = K / E > 7 / 16. Therefore, the first communication device can determine that the rate matching method is shortening. In this embodiment, the shortening method is sequential shortening, that is, shortening from back to front. Therefore, based on the shortened rate matching method, the pre-frozen set is determined.
[0171] When N=16, the reliability ranking is shown in Figure 6. (Information set) The default is an empty set. First, the first communication device traverses from position i = N-1 = 15 in the reliability sort. Where i = 15, Q... 15 =15, belongs to the pre-frozen set and is greater than N / 2 = 8, does not satisfy the first condition. When i = 14, Q 14 =14, belongs to the pre-frozen set and is greater than N / 2 = 8, does not satisfy the first condition. When i = 13, Q 13 =13, which belongs to the pre-frozen set and is greater than N / 2=8, thus not satisfying the first condition.
[0172] At this point, the first communication device has completed traversing the first set of information bits, but the set of information bits... The number of elements contained is 0 less than K. The first communication device starts traversing from the position Nr-1 = 12 in the reliability sort. First, when i = 12, Q 12 =11, does not belong to the pre-frozen set, and is greater than N / 2 = 8, satisfying the second condition. Therefore, the information bit set is... Secondly, when i = 12, i + r = 15, Q 15 =15, which belongs to the pre-frozen set and is greater than N / 2=8, thus not satisfying the third condition.
[0173] Information bit set The number of elements contained is less than K, and the first communication device traverses to the position i = 11. First, when i = 11, Q... 11 =7, not belonging to the pre-frozen set, and less than N / 2 = 8, thus not satisfying the second condition. Secondly, when i = 11, i + r = 14, Q 14 =14, which does not belong to the pre-frozen set and is greater than N / 2=8, thus not satisfying the third condition.
[0174] Information bit set The number of elements contained is less than K, and the first communication device traverses to the position i = 10. First, when i = 10, Q... 10 =12, belongs to the pre-frozen set, and is greater than N / 2 = 8, thus not satisfying the second condition. Secondly, when i = 10, i + r = 13, Q 13 =13, does not belong to the pre-frozen set and is greater than N / 2=8, does not satisfy the third condition.
[0175] Information bit set The number of elements contained is less than K, and the first communication device traverses to position i = 9. First, when i = 9, Q9 = 10, which does not belong to the pre-frozen set and is greater than N / 2 = 8, satisfying the second condition. Therefore, the information bit set... Secondly, when i = 9, i + r = 12, Q 12 =11, does not belong to the pre-frozen set and is greater than N / 2=8, does not satisfy the third condition.
[0176] Information bit set The number of elements contained is less than K, and the first communication device traverses to position i = 8. First, when i = 8, Q8 = 9, which does not belong to the pre-frozen set and is greater than N / 2 = 8, satisfying the second condition. Therefore, the information bit set... Secondly, when i = 8, i + r = 11, Q 11 =7, does not belong to the pre-frozen set, and is less than N / 2 = 8, satisfying the third condition. Therefore, the information bit set is...
[0177] Information bit set The number of elements contained is less than K. The first communication device traverses to position i = 7. First, when i = 7, Q7 = 6, which does not belong to the pre-frozen set and is less than N / 2 = 8, thus not satisfying the second condition. Second, when i = 7, i + r = 10, Q 10 =12, which belongs to the pre-frozen set and is greater than N / 2 = 8, so it does not satisfy the third condition.
[0178] Information bit set The number of elements contained is less than K. When the first communication device traverses to position i=6, firstly, when i=6, Q6=5, which does not belong to the pre-frozen set and is less than N / 2=8, thus not satisfying the second condition. Secondly, when i=6, i+r=9, Q9=10, which does not belong to the pre-frozen set and is greater than N / 2=8, thus not satisfying the third condition.
[0179] Information bit set The number of elements contained is less than K. When the first communication device traverses to position i=5, firstly, when i=5, Q5=3, which does not belong to the pre-frozen set and is less than N / 2=8, thus not satisfying the second condition. Secondly, when i=5, i+r=8, Q8=9, which does not belong to the pre-frozen set and is greater than N / 2=8, thus not satisfying the third condition.
[0180] Information bit set The number of elements contained is less than K. When the first communication device traverses to position i=4, firstly, when i=4, Q4=8, which does not belong to the pre-frozen set and is greater than N / 2=8, satisfying the second condition. Therefore, the information bit set... Secondly, when i = 4, i + r = 7, Q7 = 6, which does not belong to the pre-frozen set and is less than N / 2 = 8, satisfying the third condition. Therefore, the information bit set...
[0181] Information bit set When the number of elements contained is equal to K, the first communication device stops traversing. Then, the set of information bits determined by the first communication device...
[0182] Based on Examples 1 and 2 above, the method by which the first communication device determines the set of information bits is illustrated in an embodiment of this application. The pseudocode design of an embodiment of this application is described below:
[0183] In one possible implementation, the first communication device can perform rate matching on the polar-coded bit sequence after polar coding based on a determined set of information bits. For example, shortening is performed when the code rate is higher than a threshold, or puncturing is performed when the code rate is lower than or equal to the threshold. For example, if the code rate R = K / E ≤ 7 / 16, the first communication device can puncture the polar-coded bit sequence. During puncturing, the first communication device can perform puncturing sequentially from front to back. As another example, if the code rate R = K / E > 7 / 16, the first communication device can shorten the polar-coded bit sequence. During puncturing, the first communication device can shorten sequentially from front to back; during shortening, the first communication device can shorten sequentially from back to front.
[0184] In one possible scenario, the first communication device may not perform sub-block interleaving before rate matching. By determining the set of information bits as shown in Figure 5, the selected information bits can be made more reliable. Therefore, by not performing sub-block interleaving, the reliability of the information bits can be improved, thus enhancing the performance of polar coding.
[0185] In this embodiment, r can be understood as the offset value of the reliability sorting corresponding to the bit index with a value less than N / 2. As can be seen from the method of determining the third information bit set, the bit index obtained from the third information bit set is less than N / 2; therefore, r is the offset value of the reliability sorting corresponding to the bit index with a value less than N / 2.
[0186] In one possible implementation, r is related to at least one of the following: mother code length N, rate matching ratio, code rate, or rate matching method. The rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N.
[0187] For example, r monotonically increases with respect to the mother code length N. This is because as the mother code length N increases, the reliability order of the bit indices becomes more compact, so the reliability change corresponding to the bit indices of the upper half code, that is, the bit indices with values less than N / 2, is greater.
[0188] For example, the proportion of r with respect to rate matching increases monotonically. This is because as the proportion of rate matching increases, the lower half of the code, i.e., the bit index with a value greater than or equal to N / 2, is more affected by the change than the upper half of the code, and therefore the reliability of the upper half of the code changes more.
[0189] For example, when the rate matching method is punched, r increases monotonically with respect to the bit rate. This is because as the bit rate decreases and approaches 0, the selected information bits gradually become less dependent on the influence of rate matching, which means that r becomes smaller.
[0190] For example, when the rate matching mode is shortened, r decreases monotonically with respect to the bit rate. This is because as the bit rate increases and approaches 1, the selected information bits gradually become independent of the rate matching effect, which means that r becomes smaller.
[0191] In some embodiments, in combination with the above characteristics, when the rate matching method is punching, r satisfies the following formula (1).
[0192] in, p represents the ratio of rate matching when rounded up, and R represents the code rate. It should be noted that when p = 3 / 10, the first communication device can choose any one of the two formulas in formula (1) to determine r.
[0193] In other embodiments, in combination with the above characteristics, when the rate matching method is shortening, r satisfies the following formula (2).
[0194] in, This represents the percentage of rate matching p, rounded up, where p represents the bit rate. It should be noted that when p = 3 / 10, or Similarly, when p = 9 / 20, or,
[0195] In one example, the first communication device can determine the rate matching method and select either formula (1) or formula (2) to determine r based on the rate matching method. For example, if the first communication device determines that the rate matching method is punching, then the first communication device can determine r according to formula (1). For example, the first communication device can determine r based on the ratio p of the code rate and the rate matching method, and formula (1). For another example, if the first communication device determines that the rate matching method is shortening, then the first communication device can determine r according to formula (2). For example, the first communication device can determine r based on the code rate, the ratio p of the rate matching method, and formula (2). After determining r, the first communication device can determine the set of information bits based on r and the reliability sequence of the bit index.
[0196] In other embodiments, r can be determined based on a mapping relationship. This mapping relationship can include a mapping between the code rate R, the rate matching ratio p, and r. For example, the first communication device can determine r corresponding to a certain code rate and a certain rate matching ratio based on the mapping relationship.
[0197] Optionally, the rate matching method is a mapping relationship used when using puncturing, which differs from the mapping relationship used when using shortening. For example, the first communication device can determine the rate matching method. When the rate matching method is puncturing, the first communication device can determine the ratio r corresponding to a certain bitrate and a certain rate matching based on the mapping relationship corresponding to puncturing. When the rate matching method is shortening, the first communication device can determine the ratio r corresponding to a certain bitrate and a certain rate matching based on the mapping relationship corresponding to shortening.
[0198] For example, when the rate matching method is punching, the mapping relationship may include one or more of the following.
[0199] Mapping relationship 1-1: When At that time, the ratios p and r of rate matching are shown in Table 1:
[0200] In this context, the rate matching method corresponding to mapping relationship 1-1 is punching, and when When r = 0, when r = 1, and so on. It should be noted that the mapping relationship shown in the embodiments of this application is only an example. Those skilled in the art can adjust the value of r, the range of R, and the range of p based on the mapping relationship shown in the embodiments of this application. This will not be repeated below.
[0201] Mapping relationship 1-2: When At that time, the ratios p and r of rate matching are shown in Table 2:
[0202] Mapping relationship 1-3: When At that time, the ratios p and r of rate matching are shown in Table 3:
[0203] Mapping relationships 1-4: When At that time, the ratios p and r of rate matching are shown in Table 4:
[0204] Mapping relationships 1-5: When At that time, the ratios p and r of rate matching are shown in Table 5:
[0205] Mapping relationships 1-6: When At that time, the ratios p and r of rate matching are shown in Table 6:
[0206] For example, when the rate matching method is shortening, the mapping relationship can include one or more of the following. Mapping relationship 2-1: When At that time, the ratios p and r of rate matching are shown in Table 7:
[0207] Mapping relation 2-2: When At that time, the ratios p and r of rate matching are shown in Table 8:
[0208] Mapping relationship 2-3: When At that time, the ratios p and r of rate matching are shown in Table 9:
[0209] Mapping relationship 2-4: When At that time, the ratios p and r of rate matching are shown in Table 10:
[0210] Mapping relationship 2-5: When At that time, the ratios p and r of rate matching are shown in Table 11:
[0211] Based on the above mapping relationship, the sender can determine r according to the rate matching ratio and the bit rate. Since the bit rate R and the rate matching ratio affect the size of r, the sender can determine a more reasonable r through this mapping relationship.
[0212] This application also provides a decoding method. Referring to Figure 7, an exemplary flowchart of a decoding method provided in this application is shown. This method can be applied to a second communication device. The second communication device is the receiving end in the encoding / decoding flow shown in Figure 4. The method includes:
[0213] S701: Receive the first sequence.
[0214] The first sequence corresponds to the polar-coded bit sequence. For example, the first sequence can be the sequence obtained after rate matching of the polar-coded bit sequence. Alternatively, the first sequence can be the sequence to be decoded obtained in the second communication device after the polar-coded bit sequence has undergone rate matching, modulation, mapping, and other operations (sent by the first communication device) and transmitted through a wireless transmission environment.
[0215] S702: Decode the first sequence based on the set of information bits.
[0216] The information bit set includes the sum of the bit indices contained in the first, second, and third information bit sets. Descriptions of the first, second, and third information bit sets can be found in Figure 5. The method by which the second communication device determines the information bit set is the same as that of the first communication device and will not be repeated here.
[0217] In S702, the second communication device can decode the first sequence using SC decoding and successive cancellation list (SCL) decoding.
[0218] Based on the concept of the above embodiments, and referring to FIG8, this application provides a communication device 800, which includes a processing unit 801 and a transceiver unit 802. The device 800 can be a communication device, or it can be an apparatus applied to a communication device that supports the communication device in performing encoding and decoding methods.
[0219] The transceiver unit can also be referred to as a transceiver module, transceiver, transceiver machine, transceiver device, etc. The processing unit can also be referred to as a processor, processing board, processing unit, processing device, etc. Optionally, the device in the transceiver unit used to implement the receiving function can be considered as a receiving unit. It should be understood that the transceiver unit is used to execute the sending and receiving operations of the communication device in the above method embodiments, and the device in the transceiver unit used to implement the sending function can be considered as a sending unit; that is, the transceiver unit includes a receiving unit and a sending unit.
[0220] Furthermore, it should be noted that if the device is implemented using a chip / chip circuit, the transceiver unit can be an input / output circuit and / or a communication interface, performing input operations (corresponding to the aforementioned receiving operations) and output operations (corresponding to the aforementioned sending operations); the processing unit is an integrated processor, microprocessor, or integrated circuit.
[0221] The following describes in detail the implementation of the device 800 in the first communication device and the second communication device.
[0222] By way of example, when the device 800 is applied to a first communication device, the operations performed by its various units will be described in detail.
[0223] In one optional implementation, the communication device 800 can be applied to a first communication device to execute the method performed by the first communication device, specifically, for example, the method performed by the first communication device in the embodiment shown in FIG5 above.
[0224] For example, processing unit 801 is used to determine the information bit set based on the reliability sequence. The information bit set includes bit indices from a first information bit set, a second information bit set, and a third information bit set. Specifically, the first information bit set includes bit indices with a reliability ranking higher than Nr-1 and a value greater than or equal to N / 2; the second information bit set includes bit indices with a reliability ranking lower than Nr and a value greater than or equal to N / 2; and the third information bit set includes bit indices with a reliability ranking higher than r-1 and a value less than N / 2. Processing unit 801 is also used to perform polar coding on the information bit sequence based on the information bit set to obtain a polar-coded bit sequence, where N is the length of the polar-coded master code and r is a positive integer. Transceiver unit 802 is used to output the polar-coded bit sequence. The length of the polar-coded bit sequence is N, and r is a positive integer.
[0225] For example, when the device 800 is applied to a second communication device, the operations performed by its various units will be described in detail.
[0226] In one optional implementation, the communication device 800 can be applied to a second communication device to execute the method performed by the second communication device, specifically, for example, the method performed by the second communication device in the embodiment shown in FIG7.
[0227] For example, transceiver unit 802 is used to receive a first sequence, which corresponds to a polar-coded bit sequence. Processing unit 801 is used to decode the first sequence according to the information bit set. The information bit set includes bit indices contained in a first information bit set, a second information bit set, and a third information bit set. Specifically, the first information bit set includes bit indices with a reliability ranking higher than Nr-1 and a value greater than or equal to N / 2; the second information bit set includes bit indices with a reliability ranking lower than Nr and a value greater than or equal to N / 2; and the third information bit set includes bit indices with a reliability ranking higher than r-1 and a value less than N / 2. The length of the polar-coded bit sequence is N, and r is a positive integer.
[0228] Based on the concept of the embodiments, as shown in FIG9, this application provides a communication device 900. The communication device 900 includes a processor 910. Optionally, the communication device 900 may further include a memory 920 for storing instructions executed by the processor 910, or storing input data required for the processor 910 to execute the instructions, or storing data generated after the processor 910 executes the instructions. The processor 910 can implement the method shown in the above method embodiments through the instructions stored in the memory 920.
[0229] Based on the concept of the embodiments, as shown in FIG10, this application provides a communication device 100, which may be a chip or a chip system. Optionally, in this application embodiment, the chip system may be composed of chips, or may include chips and other discrete devices.
[0230] The communication device 100 may include at least one processor 1010 coupled to a memory. Optionally, the memory may be located within or outside the device. For example, the communication device 100 may also include at least one memory 1020. The memory 1020 stores computer programs, configuration information, computer programs or instructions, and / or data necessary for implementing any of the above embodiments. The processor 1010 may execute the computer programs stored in the memory 1020 to perform the methods in any of the above embodiments. Optionally, the memory may also be integrated with the processor.
[0231] The coupling in this embodiment is an indirect coupling or communication connection between devices, units, or modules, which can be electrical, mechanical, or other forms, used for information exchange between devices, units, or modules. The processor 1010 may operate in conjunction with the memory 1020. This embodiment does not limit the specific connection medium between the transceiver 1030, processor 1010, and memory 1020.
[0232] The communication device 100 may also include a transceiver 1030, through which the communication device 100 can interact with other devices. The transceiver 1030 may be a circuit, a bus, a transceiver, or any other device that can be used for information interaction, or a signal transceiver unit. As shown in Figure 10, the transceiver 1030 includes a transmitter 1031, a receiver 1032, and an antenna 1033. Furthermore, when the communication device 100 is a chip-type device or circuit, the transceiver in the communication device 100 may also be an input / output circuit and / or a communication interface, capable of inputting data (or receiving data) and outputting data (or transmitting data). The processor may be an integrated processor, a microprocessor, or an integrated circuit, and the processor may determine the output data based on the input data.
[0233] In one possible implementation, the communication device 100 can be applied to a communication device. Specifically, the communication device 100 can be a communication device or a device capable of supporting a communication device and implementing the functions of the first or second communication device in any of the above embodiments. The memory 1020 stores the necessary computer programs, computer programs or instructions and / or data for implementing the functions of the first or second communication device in any of the above embodiments. The processor 1010 can execute the computer programs stored in the memory 1020 to perform the methods executed by the first or second communication device in any of the above embodiments.
[0234] In this application embodiment, the processor may include one or more of the following: a general-purpose processor, a central processing unit (CPU), an application-specific integrated circuit (ASIC), a digital signal processor (DSP), a microprocessor unit (MPU), a microcontroller unit (MCU), a graphics processing unit (GPU), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, an artificial intelligence processor (AI processor), or a neural processing unit (NPU). The processor may implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware processor, or executed by a combination of hardware and software modules within the processor.
[0235] In this embodiment, the memory (e.g., memory 1020) may include, but is not limited to, cache, read-only memory (ROM), random access memory (RAM), synchronous dynamic random access memory (SDRAM), non-volatile memory (such as hard disk drive (HDD) or solid-state drive (SSD)), erasable programmable read-only memory (EPROM), or compact disc read-only memory (CD-ROM), etc. Memory is any other medium capable of carrying or storing desired program code having an instruction or data structure form and accessible by a computer, but is not limited thereto. The memory in this embodiment may also be a circuit or any other device capable of implementing storage functions for storing computer programs or instructions, and / or data.
[0236] Based on the above embodiments, referring to FIG11, this application embodiment also provides another communication device 1100, including: an input / output interface 1110 and a logic circuit 1120; the input / output interface 1110 is used to receive code instructions and transmit them to the logic circuit 1120; the logic circuit 1120 is used to run the code instructions to execute the method executed by the first communication device or the second communication device in any of the above embodiments.
[0237] The following is a detailed description of the operation performed by the device 1100 when applied to a first communication device or a second communication device.
[0238] In one optional implementation, the communication device 1100 can be applied to a first communication device to execute the method performed by the first communication device, specifically, for example, the method performed by the first communication device in the embodiment shown in FIG5 above.
[0239] For example, logic circuit 1120 is used to determine the information bit set based on the reliability sequence. The information bit set includes bit indices from a first information bit set, a second information bit set, and a third information bit set. Specifically, the first information bit set includes bit indices with a reliability ranking higher than Nr-1 and a value greater than or equal to N / 2; the second information bit set includes bit indices with a reliability ranking lower than Nr and a value greater than or equal to N / 2; and the third information bit set includes bit indices with a reliability ranking higher than r-1 and a value less than N / 2. Logic circuit 1120 is also used to perform polar coding on the information bit sequence based on the information bit set to obtain a polar-coded bit sequence. Input / output interface 1110 is used to output the polar-coded bit sequence. The length of the polar-coded bit sequence is N, and r is a positive integer.
[0240] Since the communication device 1100 provided in this embodiment can be applied to the first communication device to execute the method performed by the first communication device, the technical effects it can achieve can be referred to the above method embodiment, and will not be repeated here.
[0241] In one optional implementation, the communication device 1100 can be applied to a second communication device to execute the method performed by the second communication device, specifically, for example, the method performed by the second communication device in the embodiment shown in FIG7.
[0242] For example, input / output interface 1110 is used to input a first sequence, which corresponds to the polar-coded bit sequence. Logic circuit 1120 is used to decode the first sequence based on the information bit set. The information bit set includes bit indices from a first information bit set, a second information bit set, and a third information bit set. Specifically, the first information bit set includes bit indices with a reliability ranking higher than Nr-1 and a value greater than or equal to N / 2; the second information bit set includes bit indices with a reliability ranking lower than Nr and a value greater than or equal to N / 2; and the third information bit set includes bit indices with a reliability ranking higher than r-1 and a value less than N / 2. The length of the polar-coded bit sequence is N, and r is a positive integer.
[0243] Since the communication device 1100 provided in this embodiment can be applied to a second communication device to execute the method performed by the second communication device, the technical effects it can achieve can be referred to the above method embodiment, and will not be repeated here.
[0244] Based on the above embodiments, this application also provides a communication system, which includes at least one second communication device and at least one first communication device. The technical effects obtained can be referred to the above method embodiments, and will not be repeated here.
[0245] Based on the above embodiments, this application also provides a computer-readable storage medium storing a computer program or instructions. When the instructions are executed, the method performed by the communication device in any of the above embodiments is implemented. The computer-readable storage medium may include various media capable of storing program code, such as a USB flash drive, portable hard drive, read-only memory, random access memory, magnetic disk, or optical disk.
[0246] To achieve the functions of the communication devices shown in Figures 8 to 11, this application embodiment also provides a chip, including a processor, for supporting the communication device in implementing the functions involved in the transmitting or receiving end in the above method embodiments. In one possible design, the chip is connected to a memory or the chip includes a memory for storing computer programs, instructions, and data necessary for the first or second communication device.
[0247] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0248] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer programs or instructions. These computer programs or instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in one or more blocks of the flowchart illustrations and / or one or more blocks of the block diagrams.
[0249] These computer programs or instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means that implement the functions specified in one or more flowcharts and / or one or more block diagrams.
[0250] These computer programs or instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, such that the instructions, which execute on the computer or other programmable apparatus, provide steps for implementing the functions specified in one or more flowcharts and / or one or more block diagrams.
Claims
1. An encoding method, characterized in that, include: The information bit set is determined based on the reliability sequence; wherein the information bit set includes bit indices contained in the first information bit set, the second information bit set, and the third information bit set; wherein the first information bit set includes bit indices whose reliability ranking is higher than Nr-1 and whose value is greater than or equal to N / 2, the second information bit set includes bit indices whose reliability ranking is lower than Nr and whose value is greater than or equal to N / 2, and the third information bit set includes bit indices whose reliability ranking is higher than r-1 and whose value is less than N / 2; The information bit sequence is polar-coded according to the information bit set to obtain a polar-coded bit sequence, wherein the length of the polar-coded bit sequence is N and r is a positive integer; Output the polarized encoded bit sequence.
2. A decoding method, comprising: include: Receive a first sequence, which corresponds to a polar-coded bit sequence; The first sequence is decoded according to the information bit set; wherein the information bit set includes bit indices contained in the first information bit set, the second information bit set, and the third information bit set; wherein the first information bit set includes bit indices with a reliability ranking higher than Nr-1 and a value greater than or equal to N / 2, the second information bit set includes bit indices with a reliability ranking lower than Nr and a value greater than or equal to N / 2, and the third information bit set includes bit indices with a reliability ranking higher than r-1 and a value less than N / 2, the length of the polar-coded bit sequence is N, and r is a positive integer.
3. The method according to claim 1 or 2, characterized in that, The minimum value in the reliability ranking corresponding to the bit index contained in the first information bit set is greater than the maximum value in the reliability ranking corresponding to the bit index contained in the second information bit set.
4. The method according to any one of claims 1 to 3, characterized in that, The number of bit indices contained in the first information bit set, the second information bit set, and the third information bit set is less than K. The elements contained in the information bit set also include the bit indices contained in the fourth information bit set. The fourth information bit set includes bit indices with a reliability less than r and a value less than N / 2. Where K is the length of the information bit sequence.
5. The method of claim 4, wherein, The minimum reliability value among the bit indices contained in the third set of information bits is greater than the maximum reliability value among the bit indices contained in the fourth set of information bits.
6. The method according to any one of claims 1 to 5, characterized in that, The r is related to at least one of the following: the mother code length N, the rate matching ratio, the code rate, or the rate matching method; The rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N.
7. The method according to any one of claims 1 to 6, characterized in that, The r satisfies one or more of the following: The r is monotonically increasing with respect to the mother code length N; or... The ratio of r to rate matching is monotonically increasing; wherein the ratio of rate matching is the ratio between the number of punctured or shortened bits and the mother code length N; or, When the rate matching method is punching, r increases monotonically with respect to the bit rate; when the rate matching method is shortening, r decreases monotonically with respect to the bit rate.
8. The method according to any one of claims 1 to 7, characterized in that, The set of information bits is disjoint from a pre-frozen set No intersection.
9. The method according to any one of claims 1 to 8, characterized in that, Also includes: If the bit index corresponding to the i-th position in the reliability sequence satisfies the first condition, the bit index corresponding to the i-th position in the reliability sequence belongs to the first information bit set, and i is traversed from N-1 to Nr; wherein the first condition is that the bit index corresponding to the i-th position in the reliability sequence does not belong to the pre-frozen set Furthermore, the bit index corresponding to the i-th position in the reliability sequence is greater than or equal to N / 2.
10. The method of claim 9, wherein, Also includes: When the number of elements in the first information bit set is less than K, if the bit index corresponding to the i-th position in the reliability sequence satisfies the second condition, the bit index corresponding to the i-th position in the reliability sequence belongs to the second information bit set; if the bit index corresponding to the (i+r)-th position in the reliability sequence satisfies the third condition, the bit index corresponding to the (i+r)-th position in the reliability sequence belongs to the third information bit set. The process continues from i starting from Nr-1 until the sum of the number of bit indices in the first information bit set, the second information bit set, and the third information bit set equals K, or until i = 0. wherein the second condition is that the bit index corresponding to the i-th position in the reliability sequence does not belong to a pre-freezing set Furthermore, the bit index corresponding to the i-th position in the reliability sequence is greater than or equal to N / 2; The third condition is that the bit index corresponding to the (i+r)th position in the reliability sequence does not belong to the pre-frozen set. Furthermore, the bit index corresponding to the (i+r)th position in the reliability sequence is less than N / 2.
11. The method of claim 10, wherein, Also includes: If the sum of the number of bit indices contained in the first information bit set, the second information bit set, and the third information set is less than K, and if the bit index corresponding to the (i+r)th position in the reliability sequence satisfies the fourth condition, the bit index corresponding to the (i+r)th position in the reliability sequence belongs to the fourth information bit set, and i iterates from r-1 to 0. wherein the fourth condition is that the bit index corresponding to the i+rth position in the reliability sequence does not belong to a pre-freezing set Furthermore, the bit index corresponding to the (i+r)th position in the reliability sequence is less than N / 2.
12. The method according to any one of claims 1 to 11, characterized in that, When the rate matching method is punching: when p is less than 3 / 10, when p is greater than 3 / 10 and less than or equal to 1 / 2, when p is equal to 3 / 10, or wherein denoted as rounding up, p represents the ratio of the number of punctured bits to the length N of the encoded master code, and R represents the code rate.
13. The method according to any one of claims 1 to 11, characterized in that, When the rate matching mode is shortened: when p is less than 3 / 10, when p is greater than 3 / 10 and less than 9 / 20, when p is greater than 9 / 20 and less than or equal to 1 / 2, when p is equal to 3 / 10, or when p is equal to 9 / 20, or wherein denoted as rounding up, p represents the ratio of the number of shortened bits to the length N of the encoded mother code, and R represents the code rate.
14. The method according to any one of claims 1 to 13, characterized in that, The r is determined based on a mapping relationship, which includes the mapping relationship between the bit rate, the rate matching ratio, and the r. The rate matching ratio is the ratio between the number of punctured or shortened bits and the mother code length N.
15. A communications device, characterized by The device includes a processor configured to cause the apparatus to perform the method as described in any one of claims 1, 3 to 14, or to cause the apparatus to perform the method as described in any one of claims 2 to 14, via logic circuitry and / or by executing a computer program.
16. The communication apparatus according to claim 15, wherein It also includes a memory for storing the computer program.
17. The communication apparatus according to claim 15 or 16, wherein, It also includes a communication interface for inputting and / or outputting signals.
18. A chip, characterized by The chip includes: Communication interface; A processor is configured to invoke and execute the instructions via the communication interface, causing a device equipped with the chip system to perform the method as described in any one of claims 1, 3 to 14, or causing a device equipped with the chip system to perform the method as described in any one of claims 2 to 14.
19. A computer program product, characterised in that, It includes computer execution instructions, which, when executed on a computer, cause the computer to perform the method as described in any one of claims 1, 3 to 14, or cause the electronic device to perform the method as described in any one of claims 2 to 14.
20. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions that, when invoked by an electronic device, cause the electronic device to perform the method as described in any one of claims 1, 3 to 14, or cause the electronic device to perform the method as described in any one of claims 2 to 14.
21. A communications device, characterized by It includes modules or units for performing the method as described in any one of claims 1, 3 to 14, or includes modules or units for performing the method as described in any one of claims 2 to 14.
22. A communication system, characterized by It includes a communication device for performing the method as described in any one of claims 1, 3 to 14, and a communication device for performing the method as described in any one of claims 2 to 14.