Encoding method, decoding method, and apparatus

By selecting the basic sequence or polar coding based on the number of information bits in the new wireless communication, and combining the pre-transformation matrix and the polar code matrix, the problem of high decoding complexity is solved, and the decoding complexity is reduced and the performance is optimized.

WO2025218592A1PCT designated stage Publication Date: 2025-10-23HUAWEI TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/088469
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-16
Filing Date
2025-04-11
Publication Date
2025-10-23

AI Technical Summary

Technical Problem

In new wireless communications, when the number of information bits is large, the use of ultra-short code encoding leads to high decoding complexity, and existing technologies are unable to effectively reduce the decoding complexity.

Method used

Choose an appropriate encoding method based on the number of information bits: use basic sequence encoding when the number of information bits is small, and use polar encoding when the number is large. Combine the pre-transformation matrix and the encoding matrix of the polar code for encoding and decoding.

Benefits of technology

While balancing decoding complexity and transmission code length, it reduces decoding complexity, minimizes performance degradation caused by rate mismatch, and simplifies implementation complexity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025088469_23102025_PF_FP_ABST
    Figure CN2025088469_23102025_PF_FP_ABST
Patent Text Reader

Abstract

The embodiments of the present application relates to the technical field of wireless communications. Provided are an encoding method, a decoding method, and an apparatus, which are used for reducing the complexity of decoding. The encoding method comprises: a first communication device acquiring a first sequence, wherein the first sequence is a bit sequence to be encoded, and the first sequence comprises K information bits; and the first communication device encoding the first sequence. If K is less than (or equal to) K1, the first sequence is encoded on the basis of a basic sequence. Alternatively, if K is greater than (or equal to) K1, polar encoding is performed on the first sequence. K1 is a positive integer less than 11. On the basis of the solution, when the number K of information bits is larger (for example, greater than K1), if a basic sequence is used for performing encoding, the complexity of decoding is also larger due to the larger number of mask sequences, and if polarization encoding is used, the complexity of decoding can be reduced.
Need to check novelty before this filing date? Find Prior Art

Description

An encoding and decoding method and device

[0001] Cross-reference to Related Applications

[0002] This application claims priority to the Chinese Patent Application No. 202410462393.1, filed on April 16, 2024, and entitled “An encoding and decoding method and device”, the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD

[0003] The present application relates to the technical field of wireless communication, and in particular to an encoding and decoding method and device. BACKGROUND

[0004] At present, when the number of information bits of uplink control information (UCI) of new radio (NR) is in the range of 3-11 bits, a super-short code encoding is adopted, such as Reed-Muller (RM) code encoding. When decoding, the receiving end can use a fast Hadamard transform (FHT) decoding method for decoding.

[0005] However, in the decoding process, if the number of information bits is large, the receiving end needs to enumerate the mask sequence of the received code word. Therefore, when the number of information bits is large, using RM encoding will cause a large decoding complexity. SUMMARY

[0006] Embodiments of the present application provide an encoding and decoding method and device to reduce the decoding complexity of super-short code.

[0007] In a first aspect, an encoding method is provided. The method can be performed by a first communication device. In the absence of special description, the “first communication device” in the present application can refer to the first communication device itself (for example, a network device, a terminal device), a component (for example, a processor, a chip or a chip system, etc.) in the first communication device, or a logic module or software capable of realizing all or part of the functions of the first communication device. The method includes: the first communication device acquires a first sequence, the first sequence being a bit sequence to be encoded, and the first sequence including K information bits. The first communication device encodes the first sequence. If K is less than or equal to K1, the first sequence is encoded based on a basic sequence, and the encoded code word is c k is an element in the first sequence, and M i,k is an element in the basic sequence. Alternatively, if K is greater than K1, the first sequence is polar encoded, and the encoded code word is based on u and GN wherein u is a vector of length N, u comprises elements in the first sequence, G N is a coding matrix of a polar code, N is a positive integer. K1 is a positive integer less than 11.

[0008] Based on the above scheme, when the number of information bits K is large, if the basic sequence is used for encoding, the number of mask sequences that need to be enumerated during decoding is large, and therefore the decoding complexity is also large. Under this condition, if polar encoding is used, the decoding complexity can be reduced, and the existing related design of the polar code in NR can be reused, thereby simplifying the implementation complexity.

[0009] In a possible implementation of the first aspect, when K is less than or equal to K1, and the transmission code length E corresponding to the first sequence is greater than or equal to the first value, the first communication device encodes the first sequence based on the basic sequence. Alternatively, when K is greater than K1, and the transmission code length E corresponding to the first sequence is less than the first value, the first communication device polar encodes the first sequence.

[0010] Based on the above scheme, while the decoding complexity is taken into account, the basic sequence is used for encoding when the transmission code length is large, and the polar encoding is used when the transmission code length is small, so that the performance bad point caused by rate matching can be reduced.

[0011] In a second aspect, a decoding method is provided. The method can be executed by a second communication device. In the absence of special description, the "second communication device" in the present application can refer to the second communication device itself (for example, a network device or a terminal device), a component (for example, a processor, a chip or a chip system) in the second communication device, or a logic module or software capable of realizing all or part of the functions of the second communication device. The method comprises the following steps: a second communication device acquires a second sequence, the second sequence being obtained by encoding a first sequence, the first sequence comprising K information bits. If K is less than or equal to K1, the second sequence is obtained by encoding the first sequence based on a basic sequence, and the elements in the second sequence c k are elements in the first sequence, and M i,k are elements in the basic sequence. Alternatively, if K is greater than K1, the second sequence is obtained by polar encoding the first sequence, and the second sequence is based on u and G N wherein u is a vector of length N, u comprises elements in the first sequence, G N is a coding matrix of a polar code, N is a positive integer. K1 is a positive integer less than 11. The second communication device decodes the second sequence to obtain K information bits.

[0012] Based on the above scheme, when the number of information bits K is large, if the basic sequence is used for encoding, the number of mask sequences that need to be enumerated during decoding is large, and therefore the decoding complexity is also large. In this condition, if polar encoding is used, the decoding complexity can be reduced, and the related design of the existing polar code in NR can be reused, thereby simplifying the implementation complexity.

[0013] In a possible implementation of the second aspect, if K is less than or equal to K1, the second communication device performs FHT decoding on the second sequence. Alternatively, if K is greater than K1, the second communication device performs polar decoding on the second sequence.

[0014] In a possible implementation of the second aspect, when K is less than or equal to K1, and the transmission code length E corresponding to the first sequence is greater than or equal to a first value, the second sequence is obtained by encoding the first sequence based on the basic sequence. Alternatively, when K is greater than K1, and the transmission code length E corresponding to the first sequence is less than the first value, the second sequence is obtained by polar encoding the first sequence.

[0015] Based on the above scheme, while taking into account the decoding complexity, the basic sequence is used for encoding when the transmission code length is large, and polar encoding is used when the transmission code length is small, thereby reducing the performance bad points caused by rate matching.

[0016] In a possible implementation of the first aspect or the second aspect, when N=32, M i,k The following table is used for determination:

[0017] In a possible implementation of the first aspect or the second aspect, when N=64, M i,k The following table is used for determination:

[0018] In a possible implementation of the first aspect or the second aspect, when N=16, M i,k The following table is used for determination:

[0019] Based on the above different implementations, the present application provides different basic sequences corresponding to the length N of the encoded sequence, to implement encoding of the first sequence based on the basic sequence when K is less than or equal to K1.

[0020] In a possible implementation of the first aspect or the second aspect, the basic sequence is obtained based on a first-order Reed Muller (RM) code or a Walsh sequence.

[0021] Based on the above scheme, a manner of obtaining the basic sequence is provided to realize encoding the first sequence based on the basic sequence when K is less than or equal to K1.

[0022] In a possible implementation of the first aspect or the second aspect, corresponding to K being greater than K1, the encoded code word d = u*G N , where T is a pre-transformation matrix. For example, T is an upper triangular matrix of N*N.

[0023] In a possible implementation of the first aspect or the second aspect, corresponding to K being greater than K1, the encoded code word d = v*G N .

[0024] In a possible implementation of the first aspect or the second aspect, corresponding to K being greater than K1, the encoded code word d = v*G N , where v is a sequence of length N after pre-encoding of u. For example, v can not contain elements in the first sequence, but is a sequence after pre-encoding of a sequence containing elements in the first sequence, and the pre-encoding can be systematic encoding or non-systematic encoding.

[0025] In a possible implementation of the first aspect or the second aspect, M i,k is determined according to the table after row interleaving.

[0026] Based on the above different implementations, the application provides different polar encoding manners.

[0027] In a possible implementation of the first aspect or the second aspect, K1 is determined according to a first-order RM code point.

[0028] Based on the above scheme, when K is greater than the first-order RM code point, the number of mask sequences is large, and polar encoding can reduce decoding complexity, so K1 is determined according to the first-order RM code point, which can reduce decoding complexity.

[0029] In a possible implementation of the first aspect or the second aspect, when N = 32, K1 is 6.

[0030] In a possible implementation of the first aspect or the second aspect, when N = 64, K1 is 7.

[0031] In a possible implementation of the first aspect or the second aspect, when N = 16, K1 is 5.

[0032] In a possible implementation of the first aspect or the second aspect, when N = 2 n , n is a positive integer less than or equal to 3 or n is a positive integer greater than or equal to 7, and K1 = n + 1.

[0033] Based on the different implementation manners described above, the application provides the value of K1 when the length N of the coded sequence is at different values.

[0034] In a third aspect, an encoding method is provided. The method can be performed by a first communication device. In the case where no special description is given, the first communication device in the present application can refer to the first communication device itself (for example, a network device, a terminal device), a component (for example, a processor, a chip or a chip system, etc.) in the first communication device, or a logic module or software capable of realizing all or part of the functions of the first communication device. The method comprises: the first communication device acquires a first sequence, the first sequence being a bit sequence to be encoded, and the first sequence comprising K information bits. The first communication device encodes the first sequence. If the transmission code length corresponding to the first sequence is greater than or equal to a first value, the first sequence is encoded based on a basic sequence, and the coded codeword is c k is an element in the first sequence, and M i,k is an element in the basic sequence. Alternatively, if the transmission code length corresponding to the first sequence is less than the first value, the first sequence is polar encoded, and the coded codeword is determined based on u and G N , u is a vector with a length of N, u comprises elements in the first sequence, and G N is a coding matrix of a polar code, and N is a positive integer.

[0035] Based on the above scheme, when the first communication device encodes the first sequence, the encoding manner can be determined through the transmission code length E. When the transmission code length E is large, the basic sequence is used for encoding, and when the transmission code length E is small, the polar encoding is used, so that the performance bad point caused by rate matching can be reduced.

[0036] In a possible implementation manner of the third aspect, when the transmission code length corresponding to the first sequence is less than the first value and K is less than or equal to K1, the first communication device encodes the first sequence based on the basic sequence. Alternatively, when the transmission code length corresponding to the first sequence is greater than or equal to the first value and K is greater than K1, the first communication device polar encodes the first sequence. K1 is an integer less than 11.

[0037] Based on the above scheme, while the performance bad point is taken into account, when the number of information bits is small, the basic sequence is used for encoding, and when the number of information bits is large, if the polar encoding is used, the decoding complexity can be reduced, and the existing related design of the polar code in the NR can be reused, so that the implementation complexity is reduced.

[0038] In a fourth aspect, a decoding method is provided. The method can be performed by a second communication device. The second communication device can refer to the second communication device itself (e.g., a network device, a terminal device), a component (e.g., a processor, a chip, or a chip system) in the second communication device, or a logic module or software capable of realizing all or part of the functions of the second communication device. The method includes: obtaining, by the second communication device, a second sequence. The second sequence is encoded from a first sequence, and the first sequence includes K information bits. If a transmission code length corresponding to the first sequence is greater than or equal to a first value, the second sequence is encoded from the first sequence by a base sequence, and an element in the second sequence is an element in the first sequence. M is an element in the base sequence. Alternatively, if the transmission code length corresponding to the first sequence is less than the first value, the second sequence is polar encoded from the first sequence, and the second sequence is determined based on u and G, u is a vector with a length of N, u includes elements in the first sequence, G is a coding matrix of a polar code, and N is a positive integer. The second communication device decodes the second sequence to obtain the K information bits. c k is an element in the first sequence, and M i,k is an element in the base sequence. Alternatively, if the transmission code length corresponding to the first sequence is less than the first value, the second sequence is polar encoded from the first sequence, and the second sequence is determined based on u and G N , u is a vector with a length of N, u includes elements in the first sequence, G N is a coding matrix of a polar code, and N is a positive integer. The second communication device decodes the second sequence to obtain the K information bits.

[0039] Based on the above scheme, when the transmission code length E is large, the base sequence is used for encoding, and when the transmission code length E is small, the polar encoding is used, so that the performance bad point caused by rate matching can be reduced.

[0040] In a possible implementation of the fourth aspect, if the transmission code length is greater than or equal to the first value, the second communication device performs FHT decoding on the second sequence. Alternatively, if the transmission code length is less than the first value, the second communication device performs polar decoding on the second sequence.

[0041] In a possible implementation of the fourth aspect, when the transmission code length corresponding to the first sequence is less than the first value and K is less than or equal to K1, the second sequence is encoded from the first sequence by the base sequence. Alternatively, when the transmission code length corresponding to the first sequence is greater than or equal to the first value and K is greater than K1, the second sequence is polar encoded from the first sequence.

[0042] Based on the above scheme, while the performance bad point is considered, when the number of information bits is small, the base sequence is used for encoding, and when the number of information bits is large, if the polar encoding is used, the decoding complexity can be reduced, and the existing polar code design in NR can be reused, so that the implementation complexity is reduced.

[0043] In a possible implementation of the third aspect or the fourth aspect, the first value is related to K.

[0044] In a possible implementation of the third aspect or the fourth aspect, when K=11, the first value is 18.

[0045] In a possible implementation of the third aspect or the fourth aspect, when K=10, the first value is 11.

[0046] In a possible implementation of the third aspect or the fourth aspect, when K=9, the first value is 11.

[0047] In a possible implementation of the third aspect or the fourth aspect, when K=8, the first value is 11.

[0048] In a possible implementation of the third aspect or the fourth aspect, when K=7, the first value is 11.

[0049] In a possible implementation of the third aspect or the fourth aspect, when K=6, the first value is 12.

[0050] In a possible implementation of the third aspect or the fourth aspect, the first value is a fixed value, which can be 11, 12, 20, 24, or the like.

[0051] Based on the different implementations, different values of the first value are provided.

[0052] In a possible implementation of the third aspect or the fourth aspect, when N=32, M i,k Based on the following table:

[0053] In a possible implementation of the third aspect or the fourth aspect, when N=64, M i,k Based on the following table:

[0054] In a possible implementation of the third aspect or the fourth aspect, when N=16, M i,k Based on the following table:

[0055] In a possible implementation of the third aspect or the fourth aspect, the basic sequence is based on a first-order Reed Muller (RM) code or based on a Walsh sequence.

[0056] In a possible implementation of the third aspect or the fourth aspect, M i,k Based on the above table, the table after row interleaving is determined.

[0057] Based on the different implementations, the present application provides different basic sequences corresponding to the length N after encoding.

[0058] In a possible implementation of the third aspect or the fourth aspect, corresponding to K being greater than K1, the encoded codeword d = u*G N , where T is a pre-transformation matrix. For example, T is an upper triangular matrix of N*N.

[0059] In a possible implementation of the third aspect or the fourth aspect, corresponding to K being greater than K1, the encoded codeword d = u*G N .

[0060] In a possible implementation of the third aspect or the fourth aspect, corresponding to K being greater than K1, the encoded codeword d = v*G N , where v is a pre-encoding sequence of u of length N. For example, v can not contain the elements in the first sequence, but is a pre-encoding sequence of a sequence containing the elements in the first sequence, and the pre-encoding can be systematic encoding or non-systematic encoding.

[0061] Based on the different implementations described above, different polar encoding modes are provided.

[0062] In a fifth aspect, a communication apparatus is provided, including a processing unit and a transceiver unit.

[0063] The processing unit is configured to obtain a first sequence, the first sequence being a bit sequence to be encoded, and the first sequence including K information bits. The processing unit is further configured to encode the first sequence. If K is less than or equal to K1, the first sequence is encoded based on a base sequence, and an encoded codeword d = u*G c k is an element in the first sequence, and M i,k is an element in the base sequence. If K is greater than K1, the first sequence is polar encoded, and the encoded codeword is determined based on u and G N , where u is a vector of length N, u includes elements in the first sequence, G N is a coding matrix of a polar code, and N is a positive integer. K1 is a positive integer less than 11. The transceiver unit is configured to send a signal carrying a second sequence.

[0064] In a possible implementation of the fifth aspect, corresponding to K being less than or equal to K1, and a transmission code length E corresponding to the first sequence being greater than or equal to a first value, the processing unit is specifically configured to encode the first sequence based on the base sequence. Or, corresponding to K being greater than K1, and the transmission code length E corresponding to the first sequence being less than the first value, the processing unit is specifically configured to polar encode the first sequence.

[0065] In a sixth aspect, a communication apparatus is provided, including a processing unit and a transceiver unit.

[0066] a transceiving unit, configured to receive a signal carrying a second sequence; and a processing unit, configured to obtain the second sequence, the second sequence being encoded from a first sequence, the first sequence comprising K information bits, wherein, if K is less than or equal to K1, the second sequence is encoded from the first sequence by a base sequence, and an element in the second sequence is determined based on an element in the first sequence and an element in the base sequence. c k i,k is an element in the base sequence. Or, if K is greater than K1, the second sequence is polar encoded from the first sequence, the second sequence being determined based on u and G N , u being a vector with a length of N, u comprising elements in the first sequence, G N being a coding matrix of a polar code, and N being a positive integer. K1 is a positive integer less than 11. The processing unit is further configured to decode the second sequence to obtain the K information bits.

[0067] In a possible implementation of the sixth aspect, if K is less than or equal to K1, the processing unit is specifically configured to perform FHT decoding on the second sequence. Or, if K is greater than K1, the processing unit is specifically configured to perform polar decoding on the second sequence.

[0068] In a possible implementation of the sixth aspect, when K is less than or equal to K1, and a transmission code length E corresponding to the first sequence is greater than or equal to a first value, the second sequence is encoded from the first sequence by the base sequence. Or, when K is greater than K1, and the transmission code length E corresponding to the first sequence is less than the first value, the second sequence is polar encoded from the first sequence.

[0069] In a possible implementation of the fifth aspect or the sixth aspect, when N = 32, M i,k is determined based on the following table:

[0070] In a possible implementation of the fifth aspect or the sixth aspect, when N = 64, M i,k is determined based on the following table:

[0071] In a possible implementation of the fifth aspect or the sixth aspect, when N = 16, M i,k is determined based on the following table:

[0072] In a possible implementation of the fifth aspect or the sixth aspect, the base sequence is obtained based on a first-order Reed Muller (RM) code or based on a Walsh sequence.

[0073] ​In a possible implementation of the fifth aspect or the sixth aspect, the M i,k The table after the row interleaving is determined according to the above table.

[0074] In a possible implementation of the fifth aspect or the sixth aspect, corresponding to K being greater than K1, the encoded code word d = u*G N , where T is a pre-transformation matrix. For example, T is an upper triangular matrix of N*N.

[0075] In a possible implementation of the fifth aspect or the sixth aspect, corresponding to K being greater than K1, the encoded code word d = v*G N .

[0076] In a possible implementation of the fifth aspect or the sixth aspect, corresponding to K being greater than K1, the encoded code word d = v*G N , where v is a pre-encoded sequence of length N of u. For example, v can not contain the elements in the first sequence, but is a pre-encoded sequence of a sequence containing the elements in the first sequence, and the pre-encoding can be systematic encoding or non-systematic encoding.

[0077] In a possible implementation of the fifth aspect or the sixth aspect, K1 is determined according to a first-order RM code point.

[0078] In a possible implementation of the fifth aspect or the sixth aspect, when N = 32, K1 is 6.

[0079] In a possible implementation of the fifth aspect or the sixth aspect, when N = 64, K1 is 7.

[0080] In a possible implementation of the fifth aspect or the sixth aspect, when N = 16, K1 is 5.

[0081] In a possible implementation of the fifth aspect or the sixth aspect, when N = 2 n , n is a positive integer less than or equal to 3 or n is a positive integer greater than or equal to 7, and K1 = n + 1.

[0082] In a seventh aspect, a communication apparatus is provided, including a processing unit and a transceiver unit.

[0083] The processing unit is configured to obtain a first sequence, the first sequence being a bit sequence to be encoded, and the first sequence including K information bits. The processing unit is further configured to encode the first sequence. If a transmission code length corresponding to the first sequence is greater than or equal to a first value, the first sequence is encoded based on a basic sequence, and an encoded code word c k is an element in the first sequence, and M i,kis an element in the basic sequence. Alternatively, if the transmission code length corresponding to the first sequence is less than the first value, the first sequence is polar encoded, and the encoded codeword is based on u and G N is determined, u is a vector of length N, u includes elements in the first sequence, G N is a coding matrix of the polar code, and N is a positive integer. The transceiver is configured to transmit a signal carrying the second sequence.

[0084] In a possible implementation of the seventh aspect, when the transmission code length corresponding to the first sequence is less than the first value and K is less than or equal to K1, the processing unit is specifically configured to encode the first sequence based on the basic sequence. Alternatively, when the transmission code length corresponding to the first sequence is greater than or equal to the first value and K is greater than K1, the processing unit is specifically configured to polar encode the first sequence. K1 is an integer less than 11.

[0085] In an eighth aspect, a communication apparatus is provided, including a processing unit and a transceiver.

[0086] The transceiver is configured to receive a signal carrying the second sequence. The processing unit is configured to obtain the second sequence. The second sequence is obtained by encoding the first sequence, and the first sequence includes K information bits. Wherein, if the transmission code length corresponding to the first sequence is greater than or equal to the first value, the second sequence is obtained by encoding the first sequence based on the basic sequence, and an element in the second sequence c k is an element in the first sequence, M i,k is an element in the basic sequence. Alternatively, if the transmission code length corresponding to the first sequence is less than the first value, the second sequence is obtained by polar encoding the first sequence, and the second sequence is based on u and G N is determined, u is a vector of length N, u includes elements in the first sequence, G N is a coding matrix of the polar code, and N is a positive integer. The processing unit is further configured to decode the second sequence to obtain K information bits.

[0087] In a possible implementation of the eighth aspect, if the transmission code length is greater than or equal to the first value, the processing unit is specifically configured to perform FHT decoding on the second sequence. Alternatively, if the transmission code length is less than the first value, the processing unit is specifically configured to perform polar decoding on the second sequence.

[0088] In a possible implementation of the eighth aspect, when the transmission code length corresponding to the first sequence is less than the first value and K is less than or equal to K1, the second sequence is obtained by encoding the first sequence based on the basic sequence. Alternatively, when the transmission code length corresponding to the first sequence is greater than or equal to the first value and K is greater than K1, the second sequence is obtained by polar encoding the first sequence.

[0089] In a possible implementation of the seventh aspect or the eighth aspect, the first value is related to K.

[0090] In a possible implementation of the seventh aspect or the eighth aspect, when K = 11, the first value is 18.

[0091] In a possible implementation of the seventh aspect or the eighth aspect, when K = 10, the first value is 11.

[0092] In a possible implementation of the seventh aspect or the eighth aspect, when K = 9, the first value is 11.

[0093] In a possible implementation of the seventh aspect or the eighth aspect, when K = 8, the first value is 11.

[0094] In a possible implementation of the seventh aspect or the eighth aspect, when K = 7, the first value is 11.

[0095] In a possible implementation of the seventh aspect or the eighth aspect, when K = 6, the first value is 12.

[0096] In a possible implementation of the seventh aspect or the eighth aspect, the first value is a fixed value, which can be 11, 12, 20, or 24, etc.

[0097] In a possible implementation of the seventh aspect or the eighth aspect, when N = 32, M i,k The following table is used for determination:

[0098] In a possible implementation of the seventh aspect or the eighth aspect, when N = 64, M i,k The following table is used for determination:

[0099] In a possible implementation of the seventh aspect or the eighth aspect, when N = 16, M i,k The following table is used for determination:

[0100] In a possible implementation of the seventh aspect or the eighth aspect, the basic sequence is based on a first-order Reed Muller (RM) code or is obtained based on a Walsh sequence.

[0101] In a possible implementation of the seventh aspect or the eighth aspect, M i,k The following table is used for determination after row interleaving according to the above table.

[0102] In a possible implementation of the seventh aspect or the eighth aspect, corresponding to K being greater than K1, the encoded code word d = u*G N . Wherein, T is a pre-transformation matrix. Exemplarily, T is an upper triangular matrix of N*N.

[0103] In a possible implementation of the seventh aspect or the eighth aspect, corresponding to K being greater than K1, the encoded code word d = u*G N .

[0104] In a possible implementation of the seventh aspect or the eighth aspect, corresponding to K being greater than K1, the encoded code word d = v*G N . v is a pre-encoding sequence of u with a length of N. Exemplarily, v can not contain elements in the first sequence, but is a pre-encoding sequence of a sequence containing elements in the first sequence u, and the pre-encoding can be systematic encoding or non-systematic encoding.

[0105] In a ninth aspect, a communication apparatus is provided for implementing the above-described various methods. The communication apparatus can be the first communication device in the first aspect or the third aspect, or an apparatus including the first communication device, or an apparatus included in the first communication device, such as a chip; or the communication apparatus can be the second communication device in the second aspect or the fourth aspect, or an apparatus including the second communication device, or an apparatus included in the second communication device. The communication apparatus includes modules, units, or means for implementing the above-described methods, which can be implemented by hardware, software, or by executing corresponding software by hardware. The hardware or software includes one or more modules or units corresponding to the above-described functions.

[0106] In a tenth aspect, a communication apparatus is provided, including a processor and a communication interface; the communication interface is configured to communicate with modules outside the communication apparatus; the processor is configured to execute computer programs or instructions, so that the methods in any of the above aspects are executed. The communication apparatus can be the first communication device in the first aspect or the third aspect, or an apparatus including the first communication device, or an apparatus included in the first communication device, such as a chip; or the communication apparatus can be the second communication device in the second aspect or the fourth aspect, or an apparatus including the second communication device, or an apparatus included in the second communication device.

[0107] In an eleventh aspect, a communication apparatus is provided, which can include at least one processor; the processor is configured to execute computer programs or instructions stored in a memory to implement the method in any possible implementation of any one of the first aspect or the third aspect. The memory can be coupled with the processor, or can be independent of the processor. The communication apparatus can be the first communication device in the first aspect or the third aspect, or an apparatus including the first communication device, or an apparatus included in the first communication device, such as a chip; or the communication apparatus can be the second communication device in the second aspect or the fourth aspect, or an apparatus including the second communication device, or an apparatus included in the second communication device.

[0108] In a twelfth aspect, a communication system is provided, which can include the first communication device implementing the method in the first aspect and the second communication device implementing the method in the second aspect.

[0109] In a thirteenth aspect, a communication system is provided, which can include the first communication device implementing the method in the third aspect and the second communication device implementing the method in the fourth aspect.

[0110] In a fourteenth aspect, a computer readable storage medium is provided, which can store computer readable instructions, when the computer readable instructions are read and executed by a computer, the computer is caused to perform the method in any possible implementation of any one of the first aspect to the fourth aspect.

[0111] In a fifteenth aspect, a computer program product is provided, when the computer program product is read and executed by a computer, the computer is caused to perform the method in any possible implementation of any one of the first aspect to the fourth aspect.

[0112] In a sixteenth aspect, a chip is provided, which can be used to read computer programs stored in a memory to perform the method in any possible implementation of any one of the first aspect to the fourth aspect.

[0113] It can be understood that the technical effects of the fifth aspect to the sixteenth aspect can refer to the technical effects of the first aspect to the fourth aspect, which will not be repeated here. BRIEF DESCRIPTION OF DRAWINGS

[0114] FIG. 1 is a schematic diagram of a communication system architecture according to an embodiment of the present application;

[0115] FIG. 2A is a schematic diagram of a FHT decoding process according to an embodiment of the present application;

[0116] FIG. 2B is a schematic diagram of decoding complexity according to an embodiment of the present application;

[0117] FIG. 3 is a schematic diagram of a coding flow provided by an embodiment of the present application;

[0118] FIG. 4 is an exemplary flowchart of an encoding method provided by an embodiment of the present application;

[0119] FIG. 5A is a schematic diagram of a pre-transformation matrix T provided by an embodiment of the present application;

[0120] FIG. 5B is a schematic diagram of another pre-transformation matrix T provided by an embodiment of the present application;

[0121] FIG. 6 is a schematic diagram of a simulation effect provided by an embodiment of the present application;

[0122] FIG. 7 is an exemplary flowchart of a decoding method provided by an embodiment of the present application;

[0123] FIG. 8 is a schematic diagram of a structure of a communication apparatus provided by an embodiment of the present application;

[0124] FIG. 9 is a schematic diagram of a structure of another communication apparatus provided by an embodiment of the present application;

[0125] FIG. 10 is a schematic diagram of a structure of another communication apparatus provided by an embodiment of the present application;

[0126] FIG. 11 is a schematic diagram of a structure of another communication apparatus provided by an embodiment of the present application. DETAILED DESCRIPTION

[0127] The technical solutions of the embodiments of the present application can be applied to various communication systems, for example: a global system for mobile communications (GSM), an enhanced data rate for GSM evolution (EDGE), a wideband code division multiple access (WCDMA) system, a time division-synchronization code division multiple access (TD-SCDMA) system, a long term evolution (LTE) system, a worldwide interoperability for microwave access (WiMAX) communication system, a 5th generation (5G) mobile communication system such as a new radio (NR) system, and the like. The technical solutions provided in the present application can also be applied to future communication systems such as a 6th generation (6G) mobile communication system, and the like. The communication system can also be a Bluetooth communication system, a wireless local area network (WLAN) / wireless communication technology (WiFi) communication system, a narrow band internet of things (NB-IoT) communication system, and the like. The technical solutions of the embodiments of the present application can also be applied to a satellite communication system, wherein the satellite communication system can be integrated with the above-mentioned communication systems.

[0128] In order to facilitate understanding of the embodiments of the present application, the application scenarios used in the present application are described by taking the communication system architecture shown in FIG. 1 as an example. Referring to FIG. 1, the communication system includes a network device 101 and a terminal device 102. The communication apparatus provided in the embodiments of the present application can be applied to the network device 101 or the terminal device 102. It can be understood that FIG. 1 only shows one possible communication system architecture to which the embodiments of the present application can be applied, and in other possible scenarios, other devices can also be included in the communication system architecture.

[0129] The network device 101 is a node in a radio access network (RAN), which can be referred to as an access network device, a RAN node, and the like. Optionally, the RAN can be a 3GPP related cellular system, for example, a 4G mobile communication system (such as an LTE system), a 5G mobile communication system (such as an NR system), or a future-oriented evolution system (for example, a 6G mobile communication system). The RAN can also be an open RAN (O-RAN or ORAN), a cloud radio access network (CRAN), or a wireless fidelity (WiFi) system. The RAN can also be a communication system that combines two or more of the above systems.

[0130] In a possible scenario, the access network device can be a base station, an evolved NodeB (eNodeB), an access point (AP), a transmission reception point (TRP), a next generation NodeB (gNB), a next generation base station in a 6th generation (6G) mobile communication system, a base station in a future mobile communication system, or an access node in a WiFi system, and the like. The access network device can also be a macro base station, a micro base station, or an indoor station, a relay node or a donor node, or a wireless controller in a CRAN scenario. Optionally, the access network device can also be a server, a wearable device, a vehicle or a vehicle-mounted device, and the like. For example, the access network device in vehicle to everything (V2X) technology can be a road side unit (RSU).

[0131] In another possible scenario, a terminal is assisted by multiple RAN nodes to implement wireless access in cooperation, and different RAN nodes respectively implement part of functions of a base station. For example, a RAN node can be a central unit (CU), a distributed unit (DU), a CU-control plane (CP), a CU-user plane (UP), or a radio unit (RU), etc. The CU and the DU can be separately arranged, or can be included in the same network element, for example, in a baseband unit (BBU). The RU can be included in a radio frequency device or a radio frequency unit, for example, in a remote radio unit (RRU), an active antenna processing unit (AAU), or a remote radio head (RRH).

[0132] In different systems, the CU (or CU-CP and CU-UP), DU or RU can also have different names, but those skilled in the art can understand their meanings. For example, in an ORAN system, the CU can also be referred to as an open centralized unit (O-CU) or an open CU, the DU can also be referred to as an open distributed unit (O-DU), the CU-CP can also be referred to as an open centralized unit control plane (O-CU-CP), the CU-UP can also be referred to as an open centralized unit user plane (O-CU-UP), and the RU can also be referred to as an open radio unit (O-RU). For the convenience of description, the CU, CU-CP, CU-UP, DU and RU are taken as examples for description in this application. Any one of the CU (or CU-CP, CU-UP), DU and RU in this application can be implemented by a software module, a hardware module, or a combination of a software module and a hardware module.

[0133] In the embodiments of this application, the functions of the network device can also be performed by a module (such as a chip) in the network device, or by a control subsystem containing network device functions. The control subsystem containing network device functions herein can be a control center in the above-mentioned application scenarios such as smart grid, industrial control, intelligent transportation, and smart city.

[0134] The terminal device 102, which can also be referred to as a user equipment (UE), a mobile station (MS), a mobile terminal (MT), or the like, is a device that provides voice or data connectivity to a user, and can also be an Internet of Things (IoT) device. For example, the terminal device includes a handheld device having wireless connection capability, a vehicle-mounted device, or the like. Currently, the terminal device can be a mobile phone, a tablet computer, a notebook computer, a palm computer, a mobile Internet device (MID), a wearable device (e.g., a smart watch, a smart bracelet, a pedometer, or the like), a vehicle-mounted device (e.g., a car, a bicycle, an electric vehicle, an airplane, a ship, a train, a high-speed rail, or the like), a virtual reality (VR) device, an augmented reality (AR) device, a wireless terminal in industrial control, a smart home device (e.g., a refrigerator, a television, an air conditioner, an electricity meter, or the like), a smart robot, a plant device, a wireless terminal in unmanned driving, a wireless terminal in remote surgery, a wireless terminal in a smart grid, a wireless terminal in transportation safety, a wireless terminal in a smart city, or a wireless terminal in a smart home, a flight device (e.g., a smart robot, a hot air balloon, a drone, an airplane), or the like. The terminal device can also be other devices having terminal functions, for example, the terminal device can also be a device that plays a terminal function in device-to-device (D2D) communication. In this application, the terminal device having wireless transceiving function and the chip that can be arranged in the terminal device are collectively referred to as the terminal device.

[0135] In the embodiments of the present application, the functions of the terminal device can also be performed by a module (such as a chip or a modem) in the terminal device, or by a device containing terminal functions.

[0136] The network device and the terminal can be fixed in position or movable. The network device and the terminal can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; can also be deployed on the water surface; and can also be deployed on an airplane, a balloon, and a man-made satellite in the air. The embodiments of the present application do not limit the application scenarios of the network device and the terminal.

[0137] In the embodiments of the present application, "at least one" means one or more, and "multiple" means two or more. The "and / or" describes the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B can represent the following three cases: A exists alone, A and B exist together, and B exists alone, where A and B can be singular or plural. The character " / " generally represents an "or" relationship between the front and rear associated objects. "At least one of the following" or similar expressions means any combination of these items, including any combination of single item or multiple items. For example, at least one of a, b and (or) c can represent a, b, c, a and b, a and c, b and c, or a, b and c, where each of a, b and c can be an element or a set containing one or more elements.

[0138] In the present application, "example", "in some embodiments", "in another embodiment" and the like are used to mean by way of example, illustration or description. Any embodiment or design scheme described as "example" in the present application should not be interpreted as more preferred or more advantageous than other embodiments or design schemes. Rather, the word "example" is intended to present the concept in a specific way.

[0139] In the present application, "of", "corresponding" and "corresponding" can be used interchangeably at times, and it should be pointed out that when the distinction is not emphasized, the meanings expressed are consistent. In the embodiments of the present application, communication and transmission can be used interchangeably at times, and it should be pointed out that when the distinction is not emphasized, the meanings expressed are consistent. For example, transmission can include sending and / or receiving, and can be a noun or a verb.

[0140] In the present application, "indication" can include direct indication, indirect indication, display indication and implicit indication. When describing that certain indication information is used to indicate A, it can be understood that the indication information carries A, directly indicates A, or indirectly indicates A.

[0141] It should be noted that the "first", "second" and the like referred to in the embodiments of the present application are only used for the purpose of distinguishing description, and cannot be understood as indicating or implying relative importance, nor can it be understood as indicating or implying sequence.

[0142] At present, the standard encodes the ultra-short message of 3-11 bits into an ultra-short code, as shown in Table 1.

[0143] Table 1: Example of an encoding code type

[0144] For example, the sequence before encoding is c0, c1,..., c K-1, the coded codeword sequence is d0, d1, …, d N-1 , K represents the number of information bits in the sequence before encoding. Among them, M i,k The value of is determined according to the basic sequence, as shown in Table 2.

[0145] Table 2: An example of a basic sequence

[0146] Among them, Table 2 shows a basic sequence of a coded codeword sequence with a length of 32. The above encoding method can be called LTE-RM encoding. In order to facilitate the description, the length of the coded codeword sequence will be referred to as the RM mother code length N in the following. Taking N = 32 as an example, when the length of the codeword to be transmitted is not equal to N, the following rate matching method can be used.

[0147] 1) When the transmission code length E < N, puncture from the back to the front according to the order of the codeword.

[0148] 2) When the transmission code length E > N, repeat from the front to the back according to the order of the codeword.

[0149] Among them, the transmission code length E is the transmission code length after rate matching of the coded codeword sequence, that is, the length of the codeword actually transmitted by the sending end.

[0150] For the codeword encoded by LTE-RM, the receiving end can use fast hadamard transfrom (FHT) decoding method to decode the received codeword, as shown in Figure 2A:

[0151] Step 1) The codeword or soft bit information after decision needs to be interleaved.

[0152] Taking E = 19 as an example, the input codeword (b0, b1, …, b19) is transformed into: 0…0, b0, b1, …, b19. Among them, 12 0s are added to the high bits of the received codeword, so that the length of the codeword sequence becomes 32.

[0153] Step 2) Interleaving processing, the interleaving transformation process is the same as step 1). Among them, 7 basic mask sequences will produce 128 mask vectors. Multiply (mask removal processing) with the received codeword processed by step 1), so as to obtain 128 bipolar sequences with a length of 32.

[0154] Step 3) At the receiving end, the bipolar sequence obtained in step 2) is subjected to FHT with a 32-order hadamard matrix to obtain a 128x32 correlation value matrix.

[0155] Step 4) Find the maximum absolute value from the relevant value matrix obtained in step 3), and the binary form of the row number corresponding to the maximum absolute value is the 2nd-6th bit, and the binary form of the column number corresponding to the maximum absolute value is the 7th-13th bit.

[0156] Step 5) The 1st bit is determined according to the actual sign of the maximum absolute value.

[0157] When the actual sign is positive, the 1st bit is translated as 0, and when the actual sign is negative, the 1st bit is translated as 1.

[0158] In the above FHT decoding mode, the decoding complexity is high and the power consumption is large. Referring to FIG. 2B, the decoding complexity of the RM code at different code rates is shown. It can be seen that when K is large, the complexity of reaching the maximum likelihood decoding (ML) decoding performance is high. When K is large, the de-masking needs to enumerate all possible masking sequences, thus leading to a large decoding complexity. In addition, when the transmission code length E is small, the number of puncturing is large, and the RM code can have a performance bad point.

[0159] In view of this, an embodiment of the present application provides an encoding and decoding method. In the method, a sending end obtains a to-be-encoded bit sequence containing K information bits, referred to as a first sequence. The sending end can encode the first sequence. The sending end can encode the first sequence based on a basic sequence, or polar encode the first sequence. The encoding manner adopted by the sending end for the first sequence can be related to the number K of information bits and / or the transmission code length E.

[0160] Taking the communication system shown in FIG. 1 as an example, in order to ensure the reliability of communication between devices, the sending end can encode the information to be sent, and accordingly, the receiving end decodes the encoded information after receiving the encoded information. As shown in the encoding and decoding process in FIG. 3, the source of the sending end is sequentially subjected to source encoding, channel encoding, rate matching and modulation, and then sent on the channel. The receiving end obtains the sink after sequentially undergoing demodulation and de-rate matching, channel decoding and source decoding after receiving the signal. The sending end and the receiving end can be network devices or terminal devices. It can be understood that in downlink communication, the network device is the sending end and the terminal device is the receiving end; in uplink communication, the terminal device is the sending end and the network device is the receiving end. The network device can be the sending end or the receiving end. In addition, the present application does not exclude that the sending end and the receiving end are both terminal devices, and at this time, the sending end and the receiving end perform D2D communication. The method provided in the embodiments of the present application can be used in channel encoding.

[0161] A flowchart of an encoding method is shown in FIG. 4. The method can be applied to a first communication device. The first communication device can be a transmitter in the encoding and decoding flow shown in FIG. 3. Correspondingly, the second communication device can be a receiver in the encoding and decoding flow shown in FIG. 3. In the absence of a special description, the first communication device in the present application can refer to the first communication device itself (for example, a network device or a terminal device), a component (for example, a processor, a chip or a chip system) in the first communication device, or a logic module or software capable of realizing all or part of the functions of the first communication device. Similarly, in the absence of a special description, the second communication device in the present application can refer to the second communication device itself (for example, a network device or a terminal device), a component (for example, a processor, a chip or a chip system) in the second communication device, or a logic module or software capable of realizing all or part of the functions of the second communication device.

[0162] For example, when the first communication device is a terminal device, the second communication device can be a network device, or the second communication device can also be a terminal device. When the first communication device is a network device, the second communication device can be a terminal device, or the second communication device can also be a terminal device. The method comprises the following steps.

[0163] S401: The first communication device acquires a first sequence.

[0164] The first sequence can be a bit sequence to be encoded, and the first sequence includes K information bits. For example, the information bits can be information bits subjected to source encoding.

[0165] S402: The first communication device encodes the first sequence.

[0166] For example, the first communication device can encode the first sequence based on a basic sequence, that is, the first communication device can perform RM encoding on the first sequence. For another example, the first communication device can perform polarization encoding on the first sequence. It can be understood that the encoding manner of the first communication device on the first sequence can be related to the number K of information bits and / or can be related to the transmission code length E.

[0167] Case 1: The encoding manner of the first communication device on the first sequence is related to the number K of information bits.

[0168] For example, when K is less than K1 (for example, K is greater than or equal to 3 and less than K1), the first communication device can encode the first sequence based on a basic sequence. K1 is a positive integer less than 11. For example, the encoded code word wherein c k is an element in the first sequence, and Mi,k is an element in the base sequence, mod 2 represents modulo 2 operation, and N is a positive integer, which can represent the length of the encoded codeword sequence, and can also be referred to as the RM mother code length.

[0169] For example, when K is greater than K1, the first communication device can perform polar encoding on the first sequence. For example, the encoded codeword is based on u and G N , u is a vector with a length of N, u includes elements in the first sequence, and G N is a coding matrix of the polar code. For another example, when K is greater than K1, the encoded codeword d = v * G N , v is a sequence with a length of N after pre-encoding of u. Optionally, v can not include elements in the first sequence, but is a sequence after pre-encoding of a sequence including elements in the first sequence, and the pre-encoding can be systematic encoding or non-systematic encoding. For another example, when K is greater than K1, the encoded codeword d = uTG N , wherein T is a pre-transformation matrix, such as an upper triangular matrix with a size of N*N.

[0170] It can be understood that when K = K1, the first communication device can encode the first sequence based on the base sequence, or perform polar encoding on the first sequence.

[0171] In a possible implementation, K1 can be determined according to a first-order RM code point. For example, when N = 2 n , K1 = n + 1. For another example, when N, n = log2(N), the corresponding first-order RM code point is K1 = nchoosek(n, 0) + nchoosek(n, 1). Wherein the function nchoosek(n, k) represents the combination number of selecting k numbers from n numbers. For example, when N = 32, K1 = 6; when N = 64, K1 = 7; and when N = 16, K1 = 5.

[0172] Hereinafter, examples are described by taking Table 3 to Table 5 as examples.

[0173] Table 3: An example of an encoding code type

[0174] For example, when N = 32, K is less than (or equal to) 6, the first communication device can encode the first sequence based on the base sequence, and K is greater than (or equal to) 6, the first communication device can perform polar encoding on the first sequence.

[0175] Table 4: An example of an encoding code type

[0176] Exemplarily, when N=64, K is less than (or equal to) 7, the first communication device can encode the first sequence based on the basic sequence, and when K is greater than (or equal to) 7, the first communication device can polar encode the first sequence.

[0177] Table 5: An example of an encoding code type

[0178] Exemplarily, when N=16, K is less than (or equal to) 5, the first communication device can encode the first sequence based on the basic sequence, and when K is greater than (or equal to) 5, the first communication device can polar encode the first sequence.

[0179] Based on the above scheme, when the number of information bits K is less than the first-order RM code point, the number of mask sequences in decoding is small, so the complexity in enumerating the mask sequence is small, and therefore RM encoding can be used. When the number of information bits K is greater than the first-order RM code point, the number of mask sequences in decoding is large if RM encoding is used, so the complexity in enumerating the mask sequence is also large. In this condition, if polar encoding is used, the decoding complexity can be reduced, and the existing NR polar code related design can be reused, and the implementation complexity is simplified.

[0180] Next, the encoding manner of the first communication device to the first sequence in the embodiments of the present application is introduced respectively.

[0181] I. The first communication device encodes the first sequence based on the basic sequence.

[0182] Wherein, M i,k may be related to the RM mother code length N, that is, the basic sequence can be related to the RM mother code length N.

[0183] For example, when N=32, assuming that K1=6, the basic sequence can refer to Table 6.

[0184] Table 6: An example of a basic sequence

[0185] Table 6 shows the basic sequence when N=32 and the number of information bits K contained in the first sequence is less than or equal to 6. In the embodiments of the present application, M i,k may be determined according to the above Table 6. For example, M 0,0 may be 1, and M 0,1 may be 1. For another example, M i,k may be determined according to the table after the interleaving operation based on Table 6, which will not be described again hereinafter.

[0186] When N=64, assuming K1=7, the base sequence can refer to Table 7.

[0187] Table 7: An example of a base sequence

[0188] Table 7 shows the base sequence when N=64, the number of information bits K contained in the first sequence is less than or equal to 7.

[0189] For example, when N=16, assuming K1=5, the base sequence can refer to Table 8.

[0190] Table 8: An example of a base sequence

[0191] Table 8 shows the base sequence when N=16, the number of information bits K contained in the first sequence is less than or equal to 5.

[0192] It should be noted that the above base sequence is shown in the form of a table (such as Tables 6-8). It can be understood that the base sequence in the table in the embodiments of the present application is not limited to the form of a table, but can also be expressed in the form of a sequence or a matrix, which will not be repeated hereinafter.

[0193] In the embodiments of the present application, the base sequence can be obtained based on a first-order RM code, or can be obtained based on a Walsh sequence. Hereinafter, the base sequence obtained based on a first-order RM code is taken as an example for description.

[0194] For example, if it is desired to generate a first-order RM code word sequence with a length of N=2 m , first perform m times of Kronecker product operation according to Mathematically, the Kronecker product is an operation between two matrices of any size, denoted as In simple terms, it is to multiply each element of the former matrix by the complete matrix of the latter. The m times of Kronecker product operation based on F can be recursively implemented by .

[0195] The specific implementation method can be implemented by the following pseudo code

[0196] F=[1,0;1,1]; / / F binary kernel matrix

[0197] Implement m times of Kronecker product

[0198] F=[F,zeros(size(F));F,F];

[0199] end for

[0200] G=F; / / the matrix G obtained after the for loop is a N by N matrix. Next, calculate the row weight of each row of the matrix G (row weight refers to the number of non-zero elements in each row)

[0201] weights=sum(G,2); / / calculate the row weight of the matrix G

[0202] sort_weight=sort(unique(weights),'descend'); / / sort the row weights from large to small

[0203] dmin=sort_weight(r+1); / / obtain the value of the second largest row weight, denoted as dmin; here r is the order of the RM code, the order of the first-order RM code r=1; rows=(weights>=dmin); / / select the row numbers of the rows with row weight greater than or equal to dmin, denoted as rows G=G(rows,r:) / / finally obtain the basic sequence corresponding to the first-order RM code

[0204] For example, if you want to obtain the basic sequence corresponding to a first-order RM code with length N=16, (m=4, r=1), first obtain the basic binary kernel matrix , and obtain the matrix G with dimension N,

[0205] The row weights of each row of the matrix G are calculated as

[0206] 1

[0207] 2

[0208] 2

[0209] 4

[0210] 2

[0211] 4

[0212] 4

[0213] 8

[0214] 2

[0215] 4

[0216] 4

[0217] 8

[0218] 4

[0219] 8

[0220] 8

[0221] 16

[0222] Determine that the second-heavy row weight is 8, and take out the row numbers with row weights greater than or equal to 8, denoted as rows = [8, 12, 14, 15, 16]. Taking out the [8, 12, 14, 15, 16]th row in the matrix G constitutes the basic sequence corresponding to the first-order RM code with length N = 16. The 16th row is the column corresponding to Mi,0 when N = 16 above, the 15th row is the column corresponding to Mi,1 when N = 16 above, and so on. The 8th row is the column corresponding to Mi,4 when N = 16 above (the last column in the basic sequence).

[0223] The basic sequence obtained by interleaving the basic sequence will not affect the error correction capability of the encoded codeword. Therefore, the basic sequence can also be interleaved and then encoded according to the interleaved basic sequence.

[0224] 2. The first communication device performs polarization encoding on the first sequence.

[0225] For example, the first communication device may perform polar coding, cyclic redundancy check aid (CA-polar) coding, parity check polar (PC polar) coding, or PC-CA polar coding on the first sequence, which is not specifically limited in this application.

[0226] For example, the encoded codeword d=u*G N , that is, the first communication device can combine the vector u with the encoding matrix G of the polarization code N Multiply them to get the encoded codeword.

[0227] In another exemplary embodiment, the first communication device performs PC polar encoding on the first sequence. The encoded codeword d=uTG N , T is the pre-transformation matrix. Where T is an N*N upper triangular matrix. Here, N=32 is used as an example. The process is as follows:

[0228] Step (1) Select the K positions with the highest reliability in the polar code mother code sequence as message bits, and the remaining positions as frozen bits. Mapped to the message bit, the remaining 32-K positions are set to 0, and the sequence is obtained

[0229] Step (2) Sequence Multiply it with the upper triangular matrix T to get the sequence after upper triangular pre-transformation

[0230] Wherein, T is a 32*32 upper triangular matrix, which may be shown in FIG. 5A or FIG. 5B .

[0231] Step (3) is to transform the sequence Perform polar coding to obtain the final codeword sequence

[0232] In the above step (3), the first communication device can and the encoding matrix G of the polar code N Multiplication, G N is the 5th Kronecker product of G2.

[0233] It is understandable that the polarization coding operation performed by the first communication device on the first sequence is performed in the binary domain. Furthermore, it should be noted that the above two polarization coding methods are merely exemplary. The first communication device may also use other types of polarization coding methods to encode the first sequence, which is not specifically limited in this application.

[0234] Referring to Figure 6, when the RM mother code length N = 32, the performance gain of different numbers of information bits K encoded using the coding method provided in the embodiment of the present application relative to the LTE-RM coding method is shown. In Figure 6, the horizontal axis is the ratio of signal power to noise power EsNo, and the vertical axis is the bit error rate (block error rate, BLER). In Figure 6, the polar coding method in the coding method provided in the embodiment of the present application is nested PC-polar coding as an example for illustration. In Figure 6, starting from the leftmost curve, K = 3, K = 4, K = 5, and so on, the rightmost curve corresponds to K = 11.

[0235] As can be seen from Figure 6, when K is greater than 6, the coding method provided in the embodiment of the present application has little impact on error correction performance compared to LTE-RM coding, and may even have better error correction performance. However, the coding method provided in the embodiment of the present application has lower decoding complexity when K is greater than 6.

[0236] Case 2: The encoding method of the first sequence by the first communication device is related to the transmission code length E.

[0237] Exemplarily, when the transmission code length E corresponding to the first sequence is less than E1, the first communications device performs polarization coding on the first sequence. Furthermore, exemplarily, when the transmission code length E corresponding to the first sequence is greater than E1, the first communications device encodes the first sequence based on the base sequence. E1 is a positive integer.

[0238] It can be understood that, when E = E1, the first communication device can encode the first sequence based on the base sequence, or polar encode the first sequence.

[0239] In case 2, the base sequence can be as shown in Table 2, or can also be as shown in the base sequence in case 1, which is not described here in detail. Similarly, the manner in which the first communication device polar encodes the first sequence can refer to the manner in which the first sequence is polar encoded in case 1, which is not described here in detail.

[0240] In a possible implementation, E1 can be determined according to one or more of a physical uplink control channel (PUCCH) format, a modulation order, a proportion of a demodulation reference signal (DMRS) occupying available physical resources, or a performance factor.

[0241] In a possible case, E1 can be related to the number K of information bits in the first sequence. For example, when K = 11, E1 = 18; for another example, when K = 10, E1 = 11; for another example, when K = 9, E1 = 11; for another example, when K = 8, E1 = 11; for another example, when K = 7, E1 = 11; for another example, when K = 6, E1 = 12.

[0242] In another possible case, E1 can be a fixed value, such as 11, 12, 20, or 24, etc. In this case, E1 can be independent of K.

[0243] Based on the above case 2, when the first communication device encodes the first sequence, the encoding manner can be determined by the transmission code length E, so that the performance bad point caused by rate matching can be reduced.

[0244] Case 3: The encoding manner of the first communication device for the first sequence is related to the number K of information bits and the transmission code length E.

[0245] In a possible implementation, when K is less than (or equal to) K1 and the transmission code length E is greater than or equal to a first value, the first communication device can encode the first sequence based on the base sequence; when K is less than (or equal to) K1 and the transmission code length E is less than the first value, the first communication device polar encodes the first sequence. It can be understood that the first value can be a predefined positive integer, such as 18, 19, or 20, etc., which is not limited in the present application.

[0246] For example, K1 can refer to that shown in case 1, and E1 can refer to that shown in case 2, which is not described here in detail.

[0247] Based on the above scheme, the embodiment of the present application can adopt RM encoding when the number of information bits is small and adopt polar encoding when the number of information bits is large while avoiding performance bad points as much as possible, so as to reduce decoding complexity.

[0248] After the first communication device polar encodes the first sequence, a codeword sequence can be obtained. The first communication device can perform rate matching on the codeword sequence according to a transmission code length E to obtain a second sequence. The length of the second sequence can be the transmission code length E. The transmission code length E can be the actual transmission code length of the codeword sequence transmitted between the first communication device and the second communication device, or in other words, the transmission code length E is the transmission code length after rate matching on the first sequence after the parity check polar encoding, and E is an integer greater than 0.

[0249] Optionally, the first communication device can send the second sequence to the second communication device.

[0250] The embodiment of the present application also provides a decoding method. Referring to FIG. 7, an exemplary flowchart of a decoding method provided by the embodiment of the present application. The method can be applied to a second communication device. The second communication device can be the receiving end in the encoding and decoding process shown in FIG. 3. For example, when the first communication device is a terminal device or a module (such as a chip) in a terminal device, the second communication device can be a terminal device or a module (such as a chip) in a terminal device, or the second communication device can also be a network device or a module (such as a chip) in a network device; when the first communication device is a network device or a module (such as a chip) in a network device, the second communication device can be a module (such as a chip) in a terminal device. The method includes:

[0251] S701: The second communication device obtains a second sequence.

[0252] For example, the second communication device can receive the second sequence from the first communication device. The second sequence can refer to the description of the second sequence generated by the first communication device, which will not be described here. For example, the second sequence is a to-be-decoded sequence obtained in the second communication device after the first communication device sends the first sequence after encoding, rate matching, modulation, frequency conversion and other operations through a wireless transmission environment. The first sequence can refer to the description of the first sequence obtained by the first communication device, which will not be described here.

[0253] S702: The second communication device decodes the second sequence.

[0254] At S702, the second communication device can decode the second sequence to obtain the K information bits. For example, the second communication device can perform FHT decoding on the second sequence. For another example, the second communication device can perform polar decoding on the second sequence, or in other words, perform decoding based on successive cancellation (SC) on the second sequence, such as successive cancellation list (SCL) decoding.

[0255] In a possible implementation, when the first communication device encodes the first sequence based on the base sequence, the second communication device can perform FHT decoding on the second sequence. For example, when K is less than (or equal to) K1, the second communication device can perform FHT decoding on the second sequence. K1 can refer to the description in case 1 and will not be repeated. For another example, when the transmission code length E is greater than (or equal to) E1, the second communication device can perform FHT decoding on the second sequence. E1 can refer to the description in case 2 and will not be repeated.

[0256] The process of FHT decoding can refer to FIG. 2A.

[0257] In another possible implementation, when the first communication device polar encodes the first sequence, the second communication device can perform polar decoding on the second sequence. For example, when K is greater than (or equal to) K1, the second communication device can perform polar decoding on the second sequence. K1 can refer to the description in case 1 and will not be repeated. For another example, when the transmission code length E is less than (or equal to) E1, the second communication device can perform polar decoding on the second sequence. E1 can refer to the description in case 2 and will not be repeated.

[0258] It can be understood that the polar decoding can refer to the related manner in NR, and the present application will not be limited.

[0259] Based on the above-described embodiments, referring to FIG. 8, the embodiments of the present application provide a communication device 800, which includes a processing unit 801 and a transceiver unit 802. The device 800 can be a communication device, or can be a device applied to a communication device, and can support the communication device to perform the encoding and decoding method.

[0260] The transceiver unit may also be referred to as a transceiver module, transceiver, transceiver, transceiver device, etc. The processing unit may also be referred to as a processor, processing board, processing unit, processing device, etc. Optionally, the device used to implement the receiving function in the transceiver unit may be considered a receiving unit. It should be understood that the transceiver unit is used to perform the sending and receiving operations of the communication device in the above method embodiments, and the device used to implement the sending function in the transceiver unit is considered a sending unit, that is, the transceiver unit includes a receiving unit and a sending unit.

[0261] In addition, it should be noted that if the device is implemented using a chip / chip circuit, the transceiver unit can be an input and 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 or microprocessor or integrated circuit.

[0262] The following describes in detail the implementation of applying the device 800 to the transmitting end and the receiving end.

[0263] For example, when the apparatus 800 is applied to a transmitting end, operations performed by each unit thereof are described in detail.

[0264] In an optional implementation, the communication device 800 may be applied to a transmitting end to execute the method executed by the transmitting end, for example, the method executed by the transmitting end in the embodiment shown in FIG. 4 .

[0265] For example, the processing unit 801 is configured to obtain a first sequence, where the first sequence is a bit sequence to be encoded, and the first sequence includes K information bits. The processing unit 801 is further configured to encode the first sequence. If K is less than or equal to K1, the first sequence is encoded based on the basic sequence, and the encoded codeword c k is an element in the first sequence, M i,k is an element in the basic sequence. Alternatively, if K is greater than K1, the first sequence is polarized and the encoded codeword is based on u and G N Determine that u is a vector of length N, and u includes the elements in the first sequence, G N is a coding matrix of the polar code, N is a positive integer, K1 is a positive integer less than 11. The transceiver unit 802 is configured to send a signal carrying a second sequence.

[0266] For another example, the processing unit 801 is configured to obtain a first sequence, where the first sequence is a bit sequence to be encoded, and the first sequence includes K information bits. The processing unit 801 is further configured to encode the first sequence. If the transmission code length corresponding to the first sequence is greater than or equal to the first value, the first sequence is encoded based on the basic sequence, and the encoded codeword c kis an element in the first sequence, M i,k is an element in the basic sequence. Alternatively, if the transmission code length corresponding to the first sequence is less than the first value, the first sequence is polar encoded, and the encoded codeword is based on u and G N is determined, u is a vector of length N, u includes elements in the first sequence, G N is a coding matrix of the polar code, and N is a positive integer. The transceiving unit 802 is configured to receive a signal carrying the second sequence.

[0267] For example, when the apparatus 800 is applied to a receiving end, the operations performed by each unit of the apparatus 800 are described in detail.

[0268] In an alternative implementation, the communication apparatus 800 can be applied to a receiving end, and perform the method performed by the receiving end as described above, for example, the method performed by the receiving end in the example shown in FIG. 7.

[0269] For example, the transceiving unit 802 is configured to receive a signal carrying the second sequence. The processing unit 801 is configured to obtain the second sequence, which is encoded from the first sequence, and the first sequence includes K information bits. If K is less than or equal to K1, the second sequence is encoded from the first sequence by the basic sequence, and an element in the second sequence is c k is an element in the first sequence, M i,k is an element in the basic sequence. Alternatively, if K is greater than K1, the second sequence is polar encoded from the first sequence, and the second sequence is based on u and G N is determined, u is a vector of length N, u includes elements in the first sequence, G N is a coding matrix of the polar code, and N is a positive integer. K1 is a positive integer less than 11. The processing unit 801 is further configured to decode the second sequence to obtain the K information bits.

[0270] For example, the transceiving unit 802 is configured to receive a signal carrying the second sequence. The processing unit 801 is configured to obtain the second sequence, which is encoded from the first sequence, and the first sequence includes K information bits. If the transmission code length corresponding to the first sequence is greater than or equal to the first value, the second sequence is encoded from the first sequence by the basic sequence, and an element in the second sequence is c k is an element in the first sequence, M i,k is an element in the basic sequence. Alternatively, if the transmission code length corresponding to the first sequence is less than the first value, the second sequence is polar encoded from the first sequence, and the second sequence is based on u and G N is determined, u is a vector of length N, u includes elements in the first sequence, G Nis a polar code encoding matrix, and N is a positive integer. The processing unit 801 is further configured to decode the second sequence to obtain the K information bits.

[0271] Based on the idea of the embodiment, as shown in FIG. 9, the embodiment of the present application provides a communication device 900. The communication device 900 includes a processor 910. Optionally, the communication device 900 can further include a memory 920, used for storing instructions executed by the processor 910 or storing input data required by the processor 910 to run instructions or storing data generated after the processor 910 runs instructions. The processor 910 can realize the method shown in the method embodiment of the present application through the instructions stored in the memory 920.

[0272] Based on the idea of the embodiment, as shown in FIG. 10, the embodiment of the present application provides a communication device 1000, which can be a chip or a chip system. Optionally, in the embodiment of the present application, the chip system can be composed of a chip, or can include a chip and other discrete devices.

[0273] The communication device 1000 can include at least one processor 1010 coupled with a memory. Optionally, the memory can be located in the device or outside the device. For example, the communication device 1000 can further include at least one memory 1020. The memory 1020 stores necessary computer programs, configuration information, computer programs or instructions and / or data in any of the above embodiments; the processor 1010 can execute the computer programs stored in the memory 1020 to complete the method in any of the above embodiments. Optionally, the memory can also be integrated with the processor.

[0274] The coupling in the embodiment of the present application is an indirect coupling or communication connection between devices, units or modules, which can be electrical, mechanical or other forms, used for information interaction between devices, units or modules. The processor 1010 can operate in cooperation with the memory 1020. The specific connection medium between the transceiver 1030, the processor 1010 and the memory 1020 is not limited in the embodiment of the present application.

[0275] The communication apparatus 1000 can further include a transceiver 1030, and the communication apparatus 1000 can interact with other devices through the transceiver 1030. The transceiver 1030 can be a circuit, a bus, a transceiver, or any other device that can be used for information interaction, or a signal transceiving unit. As shown in FIG. 10, the transceiver 1030 includes a transmitter 1031, a receiver 1032, and an antenna 1033. In addition, when the communication apparatus 1000 is a chip-type device or a circuit, the transceiver in the communication apparatus 1000 can also be an input / output circuit and / or a communication interface, which can input data (or receive data) and output data (or send data), and the processor is an integrated processor or a microprocessor or an integrated circuit, which can determine the output data according to the input data.

[0276] In a possible implementation, the communication apparatus 1000 can be applied to a communication apparatus, and specifically, the communication apparatus 1000 can be a communication apparatus or a device capable of supporting a communication apparatus, and can implement the functions of a sending end or a receiving end in any of the above-mentioned embodiments. The memory 1020 stores necessary computer programs, computer programs or instructions and / or data for implementing the functions of the sending end or the receiving end in any of the above-mentioned embodiments. The processor 1010 can execute the computer programs stored in the memory 1020 to complete the method executed by the sending end or the receiving end in any of the above-mentioned embodiments.

[0277] In the embodiments of the present application, the processor can be a general processor, a digital signal processor, an application specific integrated circuit, a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, and can implement or execute the methods, steps and logic block diagrams disclosed in the embodiments of the present application. The general processor can be a microprocessor or any conventional processor. The steps of the method disclosed in combination with the embodiments of the present application can be directly embodied as a hardware processor for execution, or executed by a combination of hardware and software modules in the processor.

[0278] In the embodiments of the present application, the memory can be a non-volatile memory such as a hard disk drive (HDD) or a solid-state drive (SSD), and can also be a volatile memory such as a random-access memory (RAM). The memory can also be any other medium capable of carrying or storing desired program codes in the form of instructions or data structures and capable of being accessed by a computer, but is not limited to this. The memory in the embodiments of the present application can also be a circuit or any other device capable of implementing a storage function, used for storing computer programs, computer programs or instructions and / or data.

[0279] Based on the above embodiments, referring to FIG11 , an embodiment of the present application 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 code instructions to execute the method executed by the sending end or the receiving end in any of the above embodiments.

[0280] The following describes in detail the operations performed by the apparatus 1100 when applied to a transmitting end or a receiving end.

[0281] In an optional implementation, the communication device 1100 may be applied to a transmitting end to execute the method executed by the transmitting end, for example, the method executed by the transmitting end in the embodiment shown in FIG. 4 .

[0282] For example, the logic circuit 1120 is used to obtain a first sequence, where the first sequence is a bit sequence to be encoded, and the first sequence includes K information bits. The logic circuit 1120 is also used to encode the first sequence. If K is less than or equal to K1, the first sequence is encoded based on the basic sequence, and the encoded codeword c k is an element in the first sequence, M i,k is an element in the basic sequence. Alternatively, if K is greater than K1, the first sequence is polarized and the encoded codeword is based on u and G N Determine that u is a vector of length N, and u includes the elements in the first sequence, G N is the coding matrix of the polar code, N is a positive integer, K1 is a positive integer less than 11. The input / output interface 1110 is configured to output a signal carrying the second sequence.

[0283] For another example, the logic circuit 1120 is configured to obtain a first sequence, where the first sequence is a bit sequence to be encoded and includes K information bits. The logic circuit 1120 is further configured to encode the first sequence. If the transmission code length corresponding to the first sequence is greater than or equal to the first value, the first sequence is encoded based on the basic sequence, and the encoded codeword is c k is an element in the first sequence, M i,k is an element in the basic sequence. Alternatively, if the transmission code length corresponding to the first sequence is less than the first value, the first sequence is polarized and encoded, and the encoded codeword is based on u and G N Determine that u is a vector of length N, and u includes the elements in the first sequence, G N is the coding matrix of the polar code, and N is a positive integer. The input / output interface 1110 is configured to output a signal carrying the second sequence.

[0284] The communication apparatus 1100 provided in the embodiment can be applied to a sending end to perform the method performed by the sending end. Therefore, the technical effects that can be achieved by the communication apparatus 1100 can refer to the method embodiments, which will not be repeated here.

[0285] In an optional implementation, the communication apparatus 1100 can be applied to a receiving end to perform the method performed by the receiving end, for example, the method performed by the receiving end in the embodiment shown in FIG. 7.

[0286] For example, the input and output interface 1110 is configured to input a signal carrying a second sequence. The logic circuit 1120 is configured to obtain the second sequence, the second sequence being encoded from a first sequence, the first sequence including K information bits. Wherein, if K is less than or equal to K1, the second sequence is encoded from the first sequence by a base sequence, an element in the second sequence being an element in the first sequence, and M being an element in the base sequence. c k is an element in the first sequence, and M i,k is an element in the base sequence. Or, if K is greater than K1, the second sequence is polar encoded from the first sequence, the second sequence being determined based on u and G N , u being a vector with a length of N, u including elements in the first sequence, G N being a coding matrix of a polar code, and N being a positive integer. K1 is a positive integer less than 11. The logic circuit 1120 is further configured to decode the second sequence to obtain the K information bits.

[0287] For another example, the input and output interface 1110 is configured to input a signal carrying a second sequence. The logic circuit 1120 is configured to obtain the second sequence, the second sequence being encoded from a first sequence, the first sequence including K information bits. Wherein, if a transmission code length corresponding to the first sequence is greater than or equal to a first value, the second sequence is encoded from the first sequence by a base sequence, an element in the second sequence being an element in the first sequence, and M being an element in the base sequence. c k is an element in the first sequence, and M i,k is an element in the base sequence. Or, if the transmission code length corresponding to the first sequence is less than the first value, the second sequence is polar encoded from the first sequence, the second sequence being determined based on u and G N , u being a vector with a length of N, u including elements in the first sequence, G N being a coding matrix of a polar code, and N being a positive integer. The logic circuit 1120 is further configured to decode the second sequence to obtain the K information bits.

[0288] The communication apparatus 1100 provided in the embodiment can be applied to a receiving end to perform the method performed by the receiving end. Therefore, the technical effects that can be achieved by the communication apparatus 1100 can refer to the method embodiments, which will not be repeated here.

[0289] Based on the above embodiments, the embodiments of the present application further provide a communication system, which comprises at least one receiving end and at least one sending end. The technical effects that can be achieved can refer to the above method embodiments, which will not be described herein again.

[0290] Based on the above embodiments, the embodiments of the present application further provide a computer readable storage medium, which stores computer programs 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 can include: a U disk, a mobile hard disk, a read-only memory, a random access memory, a magnetic disk or an optical disk, and various storage program codes.

[0291] In order to realize the functions of the communication device in the above Figs. 8-11, the embodiments of the present application further provide a chip, which comprises a processor for supporting the communication device to realize the functions involved by the sending end or the receiving end in the above method embodiments. In a possible design, the chip is connected with a memory or the chip comprises a memory, and the memory is used to save the computer programs or instructions and data necessary for the sending end or the receiving end.

[0292] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can adopt a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can adopt a computer program product in the form of one or more computer usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer usable program codes.

[0293] The present application is described with reference to flowcharts and / or block diagrams according to the methods, devices (systems), and computer program products of the embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of the flows and / or blocks in the flowcharts and / or block diagrams can be implemented by computer programs or instructions. These computer programs or instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing devices produce a device for implementing the functions specified in one or more flows in the flowcharts and / or one or more blocks in the block diagrams.

[0294] These computer programs or instructions can also be stored in a computer readable medium that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function specified in the flowchart or flow diagram one or more flowcharts and / or block diagrams one or more blocks.

[0295] These computer programs or instructions can 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 the flowchart or flow diagram one or more flowcharts and / or block diagrams one or more blocks.

Claims

1. An encoding method characterized by, The method comprises: obtaining a first sequence, the first sequence being a bit sequence to be encoded, the first sequence comprising K information bits; encoding the first sequence; wherein if the K is less than or equal to K1, encoding the first sequence based on a base sequence, the encoded codeword c k is an element in the first sequence, M i,k is an element in the base sequence; or, if the K is greater than K1, polar encoding is performed on the first sequence, and the encoded codeword is based on u and G N is determined, the u is a vector with length N, N is a positive integer, the u includes elements in the first sequence, and the G N is a coding matrix of a polar code; and the K1 is a positive integer less than 11.

2. The method of claim 1, wherein, N = 32, the M ik Based on the following table:

3. The method of claim 1, wherein, N = 64, the M i,k Based on the following table:

4. The method of claim 1, wherein, N = 16, the M ik Based on the following table:

5. The method according to any one of claims 2 to 4, characterized in that, The M i,k The table after row interleaving is determined according to the table.

6. The method of claim 1, wherein, corresponding to said K being greater than K1, said encoded code word d = uTG N ; wherein T is a pre-transformation matrix.

7. The method of claim 1, wherein, corresponding to said K being greater than K1, said encoded code word d = u*G N .

8. The method according to any one of claims 1 to 7, characterized in that, when N=32, K1 is 6.

9. The method according to any one of claims 1 to 7, characterized in that, when N=64, K1 is 7.

10. The method according to any one of claims 1 to 7, characterized in that, when N=16, K1 is 5.

11. The method according to any one of claims 1 to 7, characterized in that, The N = 2 n n is a positive integer less than or equal to 3 or n is a positive integer greater than or equal to 7, and the K1 = n + 1.

12. The method of claim 1, wherein, corresponding to K being less than or equal to K1 and a transmission code length E corresponding to the first sequence being greater than or equal to a first value, the first sequence is encoded based on the basic sequence; or, corresponding to K being greater than K1 and the transmission code length E corresponding to the first sequence being less than the first value, the first sequence is polar encoded.

13. The method according to any one of claims 1 to 12, characterized in that, K1 is determined according to a first Reed Muller (RM) code point.

14. The method according to any one of claims 1 to 13, characterized in that, The basic sequence is obtained based on a first-order Reed Muller (RM) code or a Walsh sequence.

15. A decoding method, comprising: The method comprises: obtaining a second sequence, the second sequence being encoded from a first sequence, the first sequence comprising K information bits; wherein, if the K is less than or equal to K1, the second sequence is encoded from the first sequence by a base sequence, the elements of the second sequence being c k is an element in the first sequence, M i,k is an element in the base sequence; or, if the K is greater than K1, the second sequence is obtained by polar encoding of the first sequence, the second sequence is based on u and G N is determined, the u is a vector with length N, the u includes elements in the first sequence, the G N is a coding matrix of a polar code, N is a positive integer; the K1 is a positive integer less than 11; decoding the second sequence to obtain the K information bits.

16. The method of claim 15, wherein, The decoding the second sequence to obtain the K information bits comprises: if K is less than or equal to K1, the second sequence is FHT decoded; or, if K is greater than K1, the second sequence is polar decoded.

17. The method of claim 15 or 16, wherein, N = 32, the M ik Based on the following table:

18. The method of claim 15 or 16, wherein, N = 64, the M i,k Based on the following table:

19. The method of claim 15 or 16, wherein, N = 16, the M i,k Based on the following table:

20. The method of any one of claims 16-19, wherein, The M i,k The table after row interleaving is determined according to the table.

21. The method of claim 15, wherein, corresponding to said K being greater than K1, said second sequence d = uTG N ; where T is a pre-transformation matrix.

22. The method of claim 15, wherein, corresponding to said K being greater than K1, said encoded code word d = u*G N .

23. The method of any one of claims 15-22, wherein, when N=32, K1 is 6.

24. The method of any one of claims 15-22, wherein, when N=64, K1 is 7.

25. The method of any one of claims 15-22, wherein, when N=16, K1 is 5.

26. The method of any one of claims 15-22, wherein, The N = 2 n n is a positive integer less than or equal to 3 or n is a positive integer greater than or equal to 7, and the K1 = n + 1.

27. The method of claim 15, wherein, corresponding to K being less than or equal to K1 and a transmission code length E corresponding to the first sequence being greater than or equal to a first value, the second sequence is obtained by encoding the first sequence based on the basic sequence; or, corresponding to K being greater than K1 and the transmission code length E corresponding to the first sequence being less than the first value, the second sequence is obtained by polar encoding the first sequence.

28. The method of any one of claims 15-23, wherein, K1 is determined according to a first Reed Muller (RM) code point.

29. The method of any one of claims 15-24, wherein, The basic sequence is obtained based on a first-order Reed Muller (RM) code or a Walsh sequence.

30. An encoding method, characterized by, The method comprises: obtaining a first sequence, the first sequence being a bit sequence to be encoded, the first sequence comprising K information bits; encode the first sequence; wherein, if the transmission code length corresponding to the first sequence is greater than or equal to a first value, the first sequence is encoded based on a basic sequence, and the code word after encoding The c k is an element in the first sequence, the M i,k is an element in the base sequence; Or, if the transmission code length corresponding to the first sequence is less than a first value, performing polar encoding on the first sequence, and the code word after encoding is based on u and G N It is determined that the u is a vector with a length of N, the u includes elements in the first sequence, the G N is a coding matrix of a polar code, and the N is a positive integer.

31. The method of claim 30, wherein, corresponding to a transmission code length corresponding to the first sequence being less than a first value and K being less than or equal to K1, the first sequence is encoded based on the basic sequence; or, corresponding to the transmission code length corresponding to the first sequence being greater than or equal to the first value and K being greater than K1, the first sequence is polar encoded, K1 being an integer less than 11.

32. The method of claim 30 or 31, wherein, The first value is related to K.

33. The method of any one of claims 30-32, wherein, when K=11, the first value is 18.

34. The method of any one of claims 30-32, wherein, when K=10, the first value is 11.

35. The method of any one of claims 30-32, wherein, when K=9, the first value is 11.

36. The method of any one of claims 30-32, wherein, when K=8, the first value is 11.

37. The method of any one of claims 30-32, wherein, when K=7, the first value is 11.

38. The method of any one of claims 30-32, wherein, when K=6, the first value is 12.

39. The method of claim 30 or 31, wherein, The first value is a fixed value.

40. The method of any one of claims 30-39, wherein, When N = 32, M ik Based on the following table:

41. The method of any one of claims 30-39, wherein, When N = 64, M ik Based on the following table:

42. The method of any one of claims 30-39, wherein, When N = 16, M i,k Based on the following table:

43. The method of any one of claims 40-42, wherein, The M i,k The table after row interleaving is determined according to the table.

44. The method of any one of claims 30-43, wherein, The basic sequence is obtained based on a first-order Reed Muller (RM) code or a Walsh sequence.

45. The method of claim 31, wherein, corresponding to said K being greater than K1, said encoded code word d = uTG N ; wherein said T is a pre-transformation matrix.

46. The method of claim 31, wherein, corresponding to said K being greater than K1, said encoded code word d = u*G N .

47. The method of claim 31, wherein, corresponding to said K being greater than K1, said encoded code word d = v*G N ; said v being a pre- encoded sequence of length N of said u.

48. A decoding method, comprising: The method comprises: obtaining a second sequence, the second sequence being encoded by a first sequence, the first sequence comprising K information bits; wherein, if a transmission code length corresponding to the first sequence is greater than or equal to a first value, the second sequence is encoded by a basic sequence on the first sequence, and an element in the second sequence is The c k is an element in the first sequence, the M i,k is an element in the basic sequence; or, if the transmission code length corresponding to the first sequence is less than a first value, the second sequence is obtained by polar encoding of the first sequence, the second sequence is determined based on u and G N , the u is a vector with a length of N, the u includes elements in the first sequence, the G N is a coding matrix of a polar code, and the N is a positive integer; decoding the second sequence to obtain the K information bits.

49. The method of claim 48, wherein, The method further comprises: if the transmission code length is greater than or equal to the first value, the second sequence is FHT decoded; or, if the transmission code length is less than the first value, the second sequence is polar decoded.

50. The method of claim 48, wherein, Corresponding to the transmission code length corresponding to the first sequence being less than a first value and K being less than or equal to K1, the second sequence is obtained by encoding the first sequence based on the base sequence; or, Corresponding to the transmission code length corresponding to the first base sequence being greater than or equal to the first value and K being greater than K1, the second sequence is obtained by polar encoding the first sequence.

51. The method of any one of claims 48-50, wherein, The first value is related to the K.

52. The method of any one of claims 48-51, wherein, When the K is 11, the first value is 18.

53. The method of any one of claims 48-51, wherein, When the K is 10, the first value is 11.

54. The method of any one of claims 48-51, wherein, When the K is 9, the first value is 11.

55. The method of any one of claims 48-51, wherein, When the K is 8, the first value is 11.

56. The method of any one of claims 48-51, wherein, When the K is 7, the first value is 11.

57. The method of any one of claims 48-51, wherein, When the K is 6, the first value is 12.

58. The method of any one of claims 48-50, wherein, The first value is a fixed value.

59. The method of any of claims 48-58, wherein, When N = 32, M ik Based on the following table:

60. The method of any one of claims 48-58, wherein, When N = 64, M i,k Based on the following table:

61. The method of any one of claims 48-58, wherein, When N = 16, M ik Based on the following table:

62. The method of any one of claims 59-61, wherein, The M i,k The table after row interleaving is determined according to the table.

63. The method of any one of claims 48-62, wherein, The base sequence is obtained based on a first-order Reed Muller (RM) code or based on a Walsh sequence.

64. The method of claim 50, wherein, corresponding to said K being greater than K1, said encoded code word d = uTG N ; wherein said T is a pre-transformation matrix.

65. The method of claim 50, wherein, corresponding to said K being greater than K1, said encoded code word d = u*G N .

66. The method of claim 50, wherein, corresponding to said K being greater than K1, said encoded code word d = v*G N ; said v being a pre- encoded sequence of length N of said u.

67. A communications device, characterized by Comprising: A processing unit configured to obtain a first sequence, the first sequence being a bit sequence to be encoded, the first sequence comprising K information bits; The processing unit is further configured to encode the first sequence; wherein if the K is less than or equal to K1, the first sequence is encoded based on a base sequence, and a code word after encoding c k is an element in the first sequence, M i,k is an element in the base sequence; or, if the K is greater than K1, polar encoding the first sequence, the encoded codeword based on u and G N is determined, u is a vector of length N, u includes elements in the first sequence, G N is a coding matrix of a polar code, N is a positive integer, and K1 is a positive integer less than 11. A transceiver configured to transmit a signal carrying a second sequence.

68. The device of claim 67, wherein, N = 32, the M ik Based on the following table:

69. The device of claim 67, wherein, N = 64, the M i,k Based on the following table:

70. The device of claim 67, wherein, N = 16, the M i,k Based on the following table:

71. The apparatus of any of claims 68-70, wherein The M i,k The table after row interleaving is determined according to the table.

72. The device of claim 67, wherein, corresponding to said K being greater than K1, said encoded code word d = uTG N ; wherein T is a pre-transformation matrix.

73. The device of claim 67, wherein, corresponding to said K being greater than K1, said encoded code word d = u*G N .

74. The apparatus of any of claims 67-73, wherein When the N is 32, the K1 is 6.

75. The apparatus of any of claims 67-73, wherein When the N is 64, the K1 is 7.

76. The apparatus of any of claims 67-73, wherein When the N is 16, the K1 is 5.

77. The apparatus of any one of claims 67-73, wherein The N = 2 n n is a positive integer less than or equal to 3 or n is a positive integer greater than or equal to 7, and the K1 = n + 1.

78. The device of claim 67, wherein, Corresponding to the K being less than or equal to K1 and the transmission code length E corresponding to the first sequence being greater than or equal to a first value, the second sequence is obtained by encoding the first sequence based on the base sequence; or, corresponding to the K being greater than K1 and the transmission code length E corresponding to the first sequence being less than the first value, the second sequence is obtained by polar encoding the first sequence.

79. The device of any of claims 67-78, wherein, The K1 is determined according to a first-order Reed Muller (RM) code point.

80. The apparatus of any of claims 67-79, wherein The base sequence is obtained based on a first-order RM code or based on a Walsh sequence.

81. A communications device, characterized by Comprising: A transceiver configured to receive a signal carrying a second sequence; a processing unit, configured to obtain the second sequence, the second sequence being encoded from a first sequence, the first sequence comprising K information bits; wherein, if the K is less than or equal to K1, the second sequence is encoded from the first sequence by a base sequence, and an element in the second sequence is determined by c k is an element in the first sequence, M i,k is an element in the base sequence; Or, if the K is greater than K1, the second sequence is polar coded from the first sequence, the second sequence is based on u and G N It is determined that the u is a vector of length N, the u includes elements in the first sequence, the G N is a coding matrix of a polar code, N is a positive integer; the K1 is a positive integer less than 11; The processing unit is further configured to decode the second sequence to obtain the K information bits.

82. The device of claim 81, wherein, The processing unit decodes the second sequence to obtain the K information bits, and is specifically configured to: If the K is less than or equal to K1, perform FHT decoding on the second sequence; Or, if the K is greater than K1, perform polar decoding on the second sequence.

83. The device of claim 81 or 82, wherein, N = 32, the M ik Based on the following table:

84. The device of claim 81 or 82, wherein, N = 64, the M i,k Based on the following table:

85. The device of claim 81 or 82, wherein, N = 16, the M i,k Based on the following table:

86. The apparatus of any of claims 83-85, wherein The M i,k The table after row interleaving is determined according to the table.

87. The device of claim 81, wherein, corresponding to said K being greater than K1, said second sequence d = uTG N ; where T is a pre-transformation matrix.

88. The device of claim 81, wherein, corresponding to said K being greater than K1, said encoded code word d = u*G N .

89. The device of any of claims 81-88, wherein, When the N is 32, the K1 is 6.

90. The device of any of claims 81-88, wherein, When the N is 64, the K1 is 7.

91. The device of any of claims 81-88, wherein, When the N is 16, the K1 is 5.

92. The device of any of claims 81-88, wherein, The N = 2 n n is a positive integer less than or equal to 3 or n is a positive integer greater than or equal to 7, and the K1 = n + 1.

93. The device of claim 81, wherein, Corresponding to the K being less than or equal to K1 and the transmission code length E corresponding to the first sequence being greater than or equal to a first value, the second sequence is obtained by encoding the first sequence based on the base sequence; or, corresponding to the K being greater than K1 and the transmission code length E corresponding to the first sequence being less than the first value, the second sequence is obtained by polar encoding the first sequence.

94. The device of any of claims 81-89, wherein, The K1 is determined according to a first-order Reed Muller (RM) code point.

95. The device of any of claims 81-90, wherein, The base sequence is obtained based on a first-order RM code or based on a Walsh sequence.

96. A communications device, characterized by Comprising: A processing unit configured to obtain a first sequence, the first sequence being a bit sequence to be encoded, the first sequence comprising K information bits; The processing unit is further configured to encode the first sequence; wherein if the transmission code length corresponding to the first sequence is greater than or equal to a first value, the first sequence is encoded based on a basic sequence, and the code word after encoding The c k is an element in the first sequence, the M i,k is an element in the basic sequence; or, if the transmission code length corresponding to the first sequence is less than a first value, the first sequence is polar encoded, and the code word after encoding is based on u and G N determined, the u is a vector with a length of N, the u includes elements in the first sequence, the G N is a coding matrix of a polar code, and the N is a positive integer; A transceiver configured to transmit a signal carrying a second sequence.

97. The device of claim 96, wherein, when the transmission code length corresponding to the first sequence is less than a first value and K is less than or equal to K1, the processing unit is specifically configured to encode the first sequence based on the base sequence; or when the transmission code length corresponding to the first base sequence is greater than or equal to the first value and K is greater than K1, the processing unit is specifically configured to polar encode the first sequence. K1 is an integer less than 11.

98. The device of claim 96 or 97, wherein, The first value is related to the K.

99. The apparatus of any of claims 96-98, wherein When the K is 11, the first value is 18.

100. The apparatus of any of claims 96-98, wherein When the K is 10, the first value is 11.

101. The apparatus of any of claims 96-98, wherein When the K is 9, the first value is 11.

102. The apparatus of any of claims 96-98, wherein When the K is 8, the first value is 11.

103. The apparatus of any of claims 96-98, wherein When the K is 7, the first value is 11.

104. The apparatus of any of claims 96-98, wherein When the K is 6, the first value is 12.

105. The device of claim 96 or 97, wherein, The first value is a fixed value.

106. The apparatus of any of claims 96-105, wherein When N = 32, M i,k Based on the following table:

107. The apparatus of any of claims 96-105, wherein When N = 64, M i,k Based on the following table:

108. The apparatus of any of claims 96-105, wherein When N = 16, M i,k Based on the following table:

109. The apparatus of any of claims 106-108, wherein The M i,k The table after row interleaving is determined according to the table.

110. The device of any of claims 96-109, wherein, The base sequence is obtained based on a first-order Reed Muller (RM) code or a Walsh sequence.

111. The device of claim 97, wherein, corresponding to said K being greater than K1, said encoded code word d = uTG N ; wherein said T is a pre-transformation matrix.

112. The device of claim 97, wherein, corresponding to said K being greater than K1, said encoded code word d = u*G N .

113. The device of claim 97, wherein, corresponding to said K being greater than K1, said encoded code word d = v*G N ; said v being a pre- encoded sequence of length N of said u.

114. A communications device, characterized by The method comprises the following steps: The transceiver unit is configured to receive a signal carrying a second sequence. The processing unit is configured to obtain the second sequence, the second sequence being encoded by a first sequence, the first sequence comprising K information bits; wherein, if a transmission code length corresponding to the first sequence is greater than or equal to a first value, the second sequence is encoded by a basic sequence on the first sequence, and an element in the second sequence is determined according to the following formula: wherein, i is an index of the element in the second sequence, and i is an integer between 0 and K-1. The c k is an element in the first sequence, the M i,k is an element in the base sequence; Or, if the transmission code length corresponding to the first sequence is less than a first value, the second sequence is obtained by polar encoding of the first sequence, and the second sequence is based on u and G N It is determined that the u is a vector with a length of N, the u includes elements in the first sequence, the G N is a coding matrix of a polar code, and the N is a positive integer. The processing unit is further configured to decode the second sequence to obtain the K information bits.

115. The device of claim 114, wherein, When the transmission code length is greater than or equal to the first value, the processing unit is specifically configured to perform FHT decoding on the second sequence; or when the transmission code length is less than the first value, the processing unit is specifically configured to perform polar decoding on the second sequence.

116. The device of claim 114 or 115, wherein, When the transmission code length corresponding to the first sequence is less than a first value and K is less than or equal to K1, the second sequence is obtained by encoding the first sequence based on the base sequence; or when the transmission code length corresponding to the first base sequence is greater than or equal to the first value and K is greater than K1, the second sequence is obtained by polar encoding the first sequence.

117. The apparatus of any of claims 114-116, wherein The first value is related to the K.

118. The apparatus of any of claims 114-117, wherein When the K is 11, the first value is 18.

119. The apparatus of any of claims 114-117, wherein When the K is 10, the first value is 11.

120. The device of any of claims 114-117, wherein, When the K is 9, the first value is 11.

121. The apparatus of any of claims 114-117, wherein When the K is 8, the first value is 11.

122. The device of any of claims 114-117, wherein, When the K is 7, the first value is 11.

123. The apparatus of any of claims 114-117, wherein When the K is 6, the first value is 12.

124. The device of any of claims 114-116, wherein, The first value is a fixed value.

125. The device of any of claims 114 to 124, wherein, When N = 32, M i,k Based on the following table:

126. The device of any of claims 114 to 124, wherein, When N = 64, M i,k Based on the following table:

127. The device of any of claims 114-124, wherein When N = 16, M i,k Based on the following table:

128. The apparatus of any of claims 125-127, wherein The M i,k The table after row interleaving is determined according to the table.

129. The device of any of claims 114 to 128, wherein, The base sequence is obtained based on a first-order Reed Muller (RM) code or a Walsh sequence.

130. The device of claim 116, wherein, corresponding to said K being greater than K1, said encoded code word d = uTG N ; wherein said T is a pre-transformation matrix.

131. The device of claim 116, wherein, corresponding to said K being greater than K1, said encoded code word d = u*G N .

132. The device of claim 116, wherein, corresponding to said K being greater than K1, said encoded code word d = v*G N ; said v being a pre- encoded sequence of length N of said u.

133. A communications device, characterized by The method comprises the following steps: The processor is coupled with a memory, and the memory is configured to store programs or instructions, when the programs or instructions are executed by the processor, the device executes the method in any one of claims 1-14, or the device executes the method in any one of claims 15-29, or the device executes the method in any one of claims 30-47, or the device executes the method in any one of claims 48-66.

134. A chip system, characterized by The chip system comprises: A communication interface; The processor is configured to invoke and run the instructions through the communication interface, so that the device installed with the chip system executes the method of any one of claims 1-14, or so that the device installed with the chip system executes the method of any one of claims 15-29, or so that the device installed with the chip system executes the method of any one of claims 30-47, or so that the device installed with the chip system executes the method of any one of claims 48-66.

135. A computer readable storage medium, characterized in that, The computer readable storage medium stores computer executable instructions, which, when invoked by the electronic device, cause the electronic device to execute the method of any one of claims 1-14, or cause the electronic device to execute the method of any one of claims 15-29, or cause the electronic device to execute the method of any one of claims 30-47, or cause the electronic device to execute the method of any one of claims 48-66.

136. A computer program product, characterized in that, The computer executable instructions, when executed on a computer, cause the computer to execute the method of any one of claims 1-14, or cause the electronic device to execute the method of any one of claims 15-29, or cause the electronic device to execute the method of any one of claims 30-47, or cause the electronic device to execute the method of any one of claims 48-66.

Citation Information

Patent Citations

  • Coding method and device

    CN108282259A

  • Polarization coding method and device, electronic equipment and storage medium

    CN109600201A

  • Bit allocation for encoding and decoding

    CN110249535A

  • Signal fault monitoring method, device and system and storage medium

    CN116074870A

  • Polarization coding method and apparatus

    WO2022100114A1