Polar code encoding method, polar code decoding method, and apparatuses thereof
Embodiments of this application disclose a polar code encoding method, a polar code decoding method, and apparatuses thereof, to reduce encoding and decoding complexity. The method in embodiments of this application includes: generating an input vector, where the input vector includes T subblocks, a first information bit of a first subblock is obtained by replicating a second information bit of a second subblock, the first subblock and the second subblock are subblocks of the T subblocks, a sequence number of the first subblock is after a sequence number of the second subblock, and T is an integer greater than or equal to 2; and performing polar encoding on the input vector to obtain an encoded bit.
1 . A polar code decoding method, wherein the method comprises:
receiving, by a communications apparatus, to-be-decoded bit information, wherein the to-be-decoded bit information comprises information about a bit of a first subblock and information about a bit of a second subblock, the bit of the first subblock is obtained by replicating the bit of the second subblock, and a sequence number of the second subblock is after a sequence number of the first subblock, and wherein a quantity of information bits included in the first subblock is larger than a quantity of information bits included in the second subblock; and
performing, by the communications apparatus, polar decoding based on the to-be-decoded bit information to obtain polar decoded bits.
2 . The method according to claim 1 , wherein that the bit of the first subblock is obtained by replicating the bit of the second subblock comprises:
obtaining a first information bit of the first subblock by replicating a second information bit of the second subblock according to a mapping relationship, wherein the mapping relationship comprises a mapping relationship between a subchannel that is comprised in the first subblock and that carries the first information bit and a subchannel that is comprised in the second subblock and that carries the second information bit.
3 . The method according to claim 2 , wherein the performing polar decoding based on the to-be-decoded bit information to obtain polar decoded bits comprises:
performing polar decoding on the to-be-decoded bit information based on a first generator matrix and according to the mapping relationship to obtain the polar decoded bits, wherein
the first generator matrix is generated based on a second generator matrix, the second generator matrix comprises at least two matrix blocks distributed based on a preset location relationship, the matrix block comprises a plurality of first generator matrix cores, the first generator matrix comprises A matrix blocks, a location relationship between two adjacent matrix blocks in the A matrix blocks is determined based on the preset location relationship, and A is a positive integer.
4 . The method according to claim 3 , wherein the to-be-decoded bit information comprises Q first log likelihood ratios (LLRs), and Q is a positive integer.
5 . The method according to claim 4 , wherein the Q first LLRs comprise P first LLR sequences, a first LLR sequence of the P first LLR sequences comprises at least two first LLRs, and P is an integer greater than or equal to 2, and wherein the performing polar decoding on the to-be-decoded bit information based on a first generator matrix and according to the mapping relationship to obtain the polar decoded bits comprises:
determining P second LLR sequences corresponding to the P first LLR sequences, wherein one first LLR sequence corresponds to one subblock, and one second LLR sequence corresponds to one subblock;
determining, based on a P th second LLR sequence to obtain a codeword decoding result of a P th subblock and an information decoding result of the P th subblock; and
determining, based on at least one codeword decoding result of a subblock from a codeword decoding result of an (i+1) th subblock to the codeword decoding result of the P th subblock, at least one information decoding result of a subblock from an information decoding result of the (i+1) th subblock to the information decoding result of the P th subblock, and an i th second LLR sequence, a codeword decoding result of an i th subblock and an information decoding result of the i th subblock, wherein i is an integer ranging from 1 to P−1.
6 . The method according to claim 3 , wherein the location relationship between two adjacent matrix blocks in the A matrix blocks is the same as the preset location relationship.
7 . The method according to claim 2 , wherein the mapping relationship is determined based on a preset reliability sequence indicating a reliability ranking of subchannels in at least one of the first subblock or the second subblock.
8 . The method according to claim 7 , wherein the preset reliability sequence comprises a reliability ranking of subchannels of the first subblock, and the mapping relationship is determined by selecting a subchannel of the first subblock based on the reliability ranking.
9 . A decoding apparatus, wherein the decoding apparatus comprises:
at least one processor; and
one or more memories coupled to the at least one processor and storing programming instructions, which when executed by the at least one processor, cause the apparatus to:
receive to-be-decoded bit information, wherein the to-be-decoded bit information comprises information about a bit of a first subblock and information about a bit of a second subblock, the bit of the first subblock is obtained by replicating the bit of the second subblock, and a sequence number of the second subblock is after a sequence number of the first subblock, and wherein a quantity of information bits included in the first subblock is larger than a quantity of information bits included in the second subblock; and
perform polar decoding based on the to-be-decoded bit information to obtain polar decoded bits.
10 . The apparatus according to claim 9 , wherein the programming instructions, when executed by the at least one processor, cause the apparatus to:
obtain a first information bit of the first subblock by replicating a second information bit of the second subblock according to a mapping relationship, wherein the mapping relationship comprises a mapping relationship between a subchannel that is comprised in the first subblock and that carries the first information bit and a subchannel that is comprised in the second subblock and that carries the second information bit.
11 . The apparatus according to claim 10 , wherein the programming instructions, when executed by the at least one processor, cause the apparatus to:
perform polar decoding on the to-be-decoded bit information based on a first generator matrix and according to the mapping relationship to obtain the polar decoded bits, wherein
the first generator matrix is generated based on a second generator matrix, the second generator matrix comprises at least two matrix blocks distributed based on a preset location relationship, the matrix block comprises a plurality of first generator matrix cores, the first generator matrix comprises A matrix blocks, a location relationship between two adjacent matrix blocks in the A matrix blocks is determined based on the preset location relationship, and A is a positive integer.
12 . The apparatus according to claim 11 , wherein the to-be-decoded bit information comprises Q first log likelihood ratios (LLRs), and Q is a positive integer.
13 . The apparatus according to claim 12 , wherein the Q first LLRs comprise P first LLR sequences, a first LLR sequence of the P first LLR sequences comprises at least two first LLRs, and P is an integer greater than or equal to 2, and wherein the programming instructions, when executed by the at least one processor, cause the apparatus to:
determine P second LLR sequences corresponding to the P first LLR sequences, wherein one first LLR sequence corresponds to one subblock, and one second LLR sequence corresponds to one subblock;
determine, based on a P th second LLR sequence to obtain a codeword decoding result of a P th subblock and an information decoding result of the P th subblock; and
determine, based on at least one codeword decoding result of a subblock from a codeword decoding result of an (i+1) th subblock to the codeword decoding result of the P th subblock, at least one information decoding result of a subblock from an information decoding result of the (i+1) th subblock to the information decoding result of the P th subblock, and an i th second LLR sequence, a codeword decoding result of an i th subblock and an information decoding result of the i th subblock, wherein i is an integer ranging from 1 to P−1.
14 . The apparatus according to claim 11 , wherein the location relationship between two adjacent matrix blocks in the A matrix blocks is the same as the preset location relationship.
15 . The apparatus according to claim 10 , wherein the mapping relationship is determined based on a preset reliability sequence indicating a reliability ranking of subchannels in at least one of the first subblock or the second subblock.
16 . The apparatus according to claim 15 , wherein the preset reliability sequence comprises a reliability ranking of subchannels of the first subblock, and the mapping relationship is determined by selecting a subchannel of the first subblock based on the reliability ranking.
17 . A non-transitory computer-readable storage medium, wherein the computer-readable storage medium comprises a computer program, and the computer program, when executed by a computer, causes the computer to:
receive to-be-decoded bit information, wherein the to-be-decoded bit information comprises information about a bit of a first subblock and information about a bit of a second subblock, the bit of the first subblock is obtained by replicating the bit of the second subblock, and a sequence number of the second subblock is after a sequence number of the first subblock, and wherein a quantity of information bits included in the first subblock is larger than a quantity of information bits included in the second subblock; and
perform polar decoding based on the to-be-decoded bit information to obtain polar decoded bits.
18 . The non-transitory computer-readable storage medium according to claim 17 , wherein the computer program, when executed by the computer, causes the computer to:
obtain a first information bit of the first subblock by replicating a second information bit of the second subblock according to a mapping relationship, wherein the mapping relationship comprises a mapping relationship between a subchannel that is comprised in the first subblock and that carries the first information bit and a subchannel that is comprised in the second subblock and that carries the second information bit.
19 . The non-transitory computer-readable storage medium according to claim 18 , wherein the computer program, when executed by the computer, causes the computer to:
perform polar decoding on the to-be-decoded bit information based on a first generator matrix and according to the mapping relationship to obtain the polar decoded bits, wherein
the first generator matrix is generated based on a second generator matrix, the second generator matrix comprises at least two matrix blocks distributed based on a preset location relationship, the matrix block comprises a plurality of first generator matrix cores, the first generator matrix comprises A matrix blocks, a location relationship between two adjacent matrix blocks in the A matrix blocks is determined based on the preset location relationship, and A is a positive integer.
20 . The non-transitory computer-readable storage medium according to claim 19 , wherein the to-be-decoded bit information comprises Q first log likelihood ratios (LLRs), and Q is a positive integer.
21 . The non-transitory computer-readable storage medium according to claim 20 , wherein the Q first LLRs comprise P first LLR sequences, a first LLR sequence of the P first LLR sequences comprises at least two first LLRs, and P is an integer greater than or equal to 2, and wherein the computer program, when executed by the computer, causes the computer to:
determine P second LLR sequences corresponding to the P first LLR sequences, wherein one first LLR sequence corresponds to one subblock, and one second LLR sequence corresponds to one subblock;
determine, based on a P th second LLR sequence to obtain a codeword decoding result of a P th subblock and an information decoding result of the P th subblock; and
determine, based on at least one codeword decoding result of a subblock from a codeword decoding result of an (i+1) th subblock to the codeword decoding result of the P th subblock, at least one information decoding result of a subblock from an information decoding result of the (i+1) th subblock to the information decoding result of the P th subblock, and an i th second LLR sequence, a codeword decoding result of an i th subblock and an information decoding result of the i th subblock, wherein i is an integer ranging from 1 to P−1.
22 . The non-transitory computer-readable storage medium according to claim 19 , wherein the location relationship between two adjacent matrix blocks in the A matrix blocks is the same as the preset location relationship.
23 . The non-transitory computer-readable storage medium according to claim 18 , wherein the mapping relationship is determined based on a preset reliability sequence indicating a reliability ranking of subchannels in at least one of the first subblock or the second subblock.