Communication methods and apparatus
By constructing a fifth sequence based on a first sequence of length N and other sequences, the problem of high complexity in the expansion of reliable Polar code sequences is solved, achieving efficient length expansion and improved transmission performance of Polar code sequences.
Patent Information
- Application Number
- PCT/CN2025/099924
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-08-28
- Filing Date
- 2025-06-09
- Publication Date
- 2026-04-16
AI Technical Summary
Existing methods for extending the reliability sequence of Polar codes are complex and difficult to implement efficiently.
The length of the Polar code sequence is extended by determining a second sequence of length 2N based on a first sequence of length N, and then determining a fifth sequence of length 2N based on the second sequence, a third sequence of length N, and a fourth sequence. The specific method includes constructing the element positions and value relationships in the fifth sequence.
It achieves efficient length extension of Polar code sequences, thereby improving transmission performance.
Smart Images

Figure CN2025099924_16042026_PF_FP_ABST
Abstract
Description
A communication method and apparatus
[0001] Cross-reference to related applications
[0002] This application claims priority to Chinese Patent Application No. 202410808063.3, filed on June 20, 2024, entitled "A Communication Method and Apparatus", the entire contents of which are incorporated herein by reference; and claims priority to the remainder of Chinese Patent Application No. 202411196021.5, filed on August 28, 2024, entitled "A Communication Method and Apparatus", excluding all contents of the aforementioned application No. 202410808063.3, the remainder of which are incorporated herein by reference. Technical Field
[0003] This application relates to the field of mobile communication technology, and in particular to a communication method and apparatus. Background Technology
[0004] Polar codes are the first coding scheme that can be rigorously proven to "achieve" the Shannon channel capacity. They have the advantages of good decoding performance and low complexity. They have been selected by the 3rd generation partnership project (3GPP) as the control channel coding scheme for enhanced mobile broadband (eMBB) scenarios.
[0005] Currently, the expansion schemes for Polar code reliability sequences are quite complex, and how to efficiently expand Polar code reliability sequences is a technical problem that urgently needs to be solved. Summary of the Invention
[0006] This application provides a communication method and apparatus for efficiently extending the length of a Polar code sequence.
[0007] In a first aspect, embodiments of this application provide a communication method, which can be executed by a first device. Unless otherwise specified, the "first device" in this application can refer to the first device itself (e.g., a terminal, terminal device, or network device), a component within the first device (e.g., a functional module, communication module, processor, circuit, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the first device. The method includes: determining a second sequence of length 2N based on a first sequence of length N, wherein the 2i-th and (2i+1)-th elements in the second sequence are determined based on the i-th element in the first sequence, and the 2i-th and (2i+1)-th elements in the second sequence are the same, i = 0, 1, 2…N-1; and determining a fifth sequence of length 2N based on the second sequence, a third sequence of length N, and a fourth sequence of length N. The first, third, and fourth sequences can respectively represent the reliability ranking of N sub-channels. For example, the elements of the third sequence and the elements of the fourth sequence have values greater than or equal to 0 and less than N; the information bits are polarized encoded according to the fifth sequence.
[0008] According to the method described in the first aspect, a fifth sequence of length 2N can be obtained based on a first, third, and fourth sequence of length N. Therefore, it can be viewed as extending the length of some or all of the first, third, or fourth sequences of length N. Since the extended fifth sequence can be used for polar coding, that is, the fifth sequence can be used as a Polar code sequence, thus efficiently extending the length of Polar code sequences can be achieved.
[0009] Secondly, embodiments of this application provide a communication method that can be executed by a second device. Unless otherwise specified, the term "second device" in this application can refer to the second device itself (e.g., a terminal, terminal device, or network device), a component within the second device (e.g., a functional module, communication module, processor, circuit, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the second device. The method includes: obtaining information to be decoded; obtaining a second sequence of length 2N, which is determined based on a first sequence of length N, wherein the 2i-th and (2i+1)-th elements in the second sequence are determined based on the i-th element in the first sequence, and the 2i-th and (2i+1)-th elements in the second sequence are the same, i = 0, 1, 2, ..., N-1; determining a fifth sequence of length 2N based on the second sequence, a third sequence of length N, and a fourth sequence of length N, wherein the elements of the third sequence and the fourth sequence are greater than or equal to 0 and less than N; and decoding the information to be decoded based on the fifth sequence.
[0010] The beneficial effects in the second aspect can be found in the description of the beneficial effects in the first aspect, and will not be repeated here.
[0011] Thirdly, embodiments of this application provide a communication method, which can be executed by a first device. Unless otherwise specified, the "first device" in this application can refer to the first device itself (e.g., a terminal, terminal device, or network device), a component within the first device (e.g., a functional module, communication module, processor, circuit, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the first device. The method includes: acquiring information bits; polar encoding the information bits according to a fifth sequence of length 2N, wherein the fifth sequence satisfies the following characteristic: for i = 0, 1, 2...N-1, the 2i-th and 2i+1-th elements in the fifth sequence are simultaneously less than N or simultaneously greater than or equal to N.
[0012] According to the method shown in the third aspect, polar coding can be performed using a fifth sequence of length 2N. In other words, the fifth sequence can be used as a Polar code sequence to improve the transmission performance of Polar codes.
[0013] Fourthly, embodiments of this application provide a communication method that can be executed by a second device. Unless otherwise specified, the "second device" in this application can refer to the second device itself (e.g., a terminal, terminal device, or network device), a component within the second device (e.g., a functional module, communication module, processor, circuit, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the second device. The method includes: acquiring information to be decoded; decoding the information to be decoded according to a fifth sequence of length 2N, wherein the fifth sequence satisfies the following characteristic: for i = 0, 1, 2...N-1, the 2i-th and 2i+1-th elements in the fifth sequence are simultaneously less than N or simultaneously greater than or equal to N.
[0014] The beneficial effects in the fourth aspect can be found in the description of the beneficial effects in the third aspect, and will not be repeated here.
[0015] Based on one or more of the first to fourth aspects mentioned above, there are the following different implementation methods:
[0016] In one possible implementation, the sequence formed by the elements less than N in the fifth sequence is a third sequence of length N, wherein the elements of the third sequence have values greater than or equal to 0 and less than N; and / or, the sequence formed by subtracting N from the elements greater than or equal to N in the fifth sequence is a fourth sequence of length N, wherein the elements of the fourth sequence have values greater than or equal to 0 and less than N.
[0017] Therefore, the fifth sequence can be obtained based on the third and fourth sequences, thus enabling flexible determination of the fifth sequence.
[0018] In one possible implementation, the positions of elements greater than or equal to N in the sequence formed by odd-numbered indices of the fifth sequence are the same as the positions of elements greater than or equal to N / 2 in the first sequence of length N; or, the positions of elements greater than or equal to N in the sequence formed by even-numbered indices of the fifth sequence are the same as the positions of elements greater than or equal to N / 2 in the first sequence of length N; or, the positions of elements less than N in the sequence formed by odd-numbered indices of the fifth sequence are the same as the positions of elements less than N / 2 in the first sequence of length N; or, the positions of elements less than N in the sequence formed by even-numbered indices of the fifth sequence are the same as the positions of elements less than N / 2 in the first sequence of length N.
[0019] Based on this implementation, the position of an element in the fifth sequence can be determined through the first sequence, thereby improving the encoding / decoding performance of the fifth sequence.
[0020] In one possible implementation, the fifth sequence is determined based on a second sequence of length 2N, a third sequence of length N, and a fourth sequence of length N. The second sequence is determined based on a first sequence of length N. The 2i-th and (2i+1)-th elements in the second sequence are determined based on the i-th element in the first sequence. The 2i-th and (2i+1)-th elements in the second sequence are the same, i = 0, 1, 2...N-1. The elements of the third and fourth sequences have values greater than or equal to 0 and less than N.
[0021] Based on this implementation method, a second sequence of length 2N can be obtained from the first sequence, and a fifth sequence can be determined based on the second, third, and fourth sequences, thus achieving flexible determination of the fifth sequence.
[0022] In one possible implementation, the fifth sequence includes a third sequence and a sixth sequence, where the k-th element of the sixth sequence is the sum of the k-th element of the fourth sequence and N; the third sequence includes elements in the fifth sequence that are less than N, and the element in the first sequence corresponding to the index of the third sequence in the fifth sequence divided by 2 and rounded down is less than N / 2; the sixth sequence includes elements in the fifth sequence that are greater than or equal to N, and the element in the first sequence corresponding to the index of the sixth sequence in the fifth sequence divided by 2 and rounded down is greater than or equal to N / 2; the lengths of the first sequence, the third sequence, and the fourth sequence are all N, and the values of the elements in the first sequence, the third sequence, and the fourth sequence are greater than or equal to 0 and less than N.
[0023] Based on this implementation, the positions of elements in the third and sixth sequences in the fifth sequence can be determined according to the positions of elements in the first sequence, thus enabling flexible determination of the fifth sequence. The sixth sequence can be determined based on the fourth sequence.
[0024] In one possible implementation, the fifth sequence includes the third sequence and the sixth sequence. The k-th element of the sixth sequence is the sum of the k-th element of the fourth sequence and N. The position of the j-th element of the third sequence in the fifth sequence is the same as the position of the j-th element less than N / 2 in the second sequence in the second sequence, where j = 0, 1, ..., N-1. The position of the k-th element of the sixth sequence in the fifth sequence is the same as the position of the k-th element greater than or equal to N / 2 in the second sequence in the second sequence, where k = 0, 1, ..., N-1.
[0025] Based on this implementation, the positions of elements in the third and sixth sequences in the fifth sequence can be determined according to the positions of elements in the second sequence, thus enabling flexible determination of the fifth sequence. The sixth sequence can be determined based on the fourth sequence.
[0026] In one possible implementation, the fifth sequence includes a third sequence and a sixth sequence. The k-th element of the sixth sequence is the sum of the k-th element of the fourth sequence and N. The elements in the second sequence take a first value and a second value. The first value corresponds to the elements in the first sequence that are less than N / 2, and the second value corresponds to the elements in the first sequence that are greater than or equal to N / 2. The j-th element of the third sequence is in the same position as the j-th first value in the second sequence, j = 0, 1, ..., N-1. The k-th element of the sixth sequence is in the same position as the k-th second value in the second sequence, k = 0, 1, ..., N-1.
[0027] Based on this implementation, the positions of elements in the third and sixth sequences in the fifth sequence can be determined according to the positions of elements in the second sequence, thus enabling flexible determination of the fifth sequence. The sixth sequence can be determined based on the fourth sequence.
[0028] In one possible implementation, determining a fifth sequence of length 2N based on the second sequence, the third sequence of length N, and the fourth sequence of length N includes: determining a sixth sequence based on the fourth sequence, wherein the k-th element of the sixth sequence is the sum of the k-th element of the fourth sequence and N; determining the fifth sequence based on the second sequence, the third sequence, and the sixth sequence, wherein the position of the j-th element of the third sequence in the fifth sequence is the same as the position of the j-th element less than N / 2 in the second sequence in the second sequence, j = 0, 1, ..., N-1, and the position of the k-th element of the sixth sequence in the fifth sequence is the same as the position of the k-th element greater than or equal to N / 2 in the second sequence in the second sequence, k = 0, 1, ..., N-1.
[0029] Based on this implementation, when the 2i-th element and the (2i+1)-th element in the second sequence are equal to the i-th element in the first sequence, the j-th element in the second sequence that is less than N / 2 can be replaced by the j-th element in the third sequence. In addition, the sixth sequence can be obtained by adding N to each element in the fourth sequence, and the k-th element in the second sequence that is greater than or equal to N / 2 can be replaced by the k-th element in the sixth sequence. The new sequence obtained after replacing the element is the fifth sequence.
[0030] In one possible implementation, the elements in the second sequence take a first value and a second value, where the first value corresponds to elements in the first sequence less than N / 2, and the second value corresponds to elements in the first sequence greater than or equal to N / 2. Determining a fifth sequence of length 2N based on the second sequence, a third sequence of length N, and a fourth sequence of length N includes: determining a sixth sequence based on the fourth sequence, where the k-th element of the sixth sequence is the sum of the k-th element of the fourth sequence and N; determining the fifth sequence based on the second sequence, the third sequence, and the sixth sequence, where the position of the j-th element in the third sequence in the fifth sequence is the same as the position of the j-th first value in the second sequence, j = 0, 1, ..., N-1, and the position of the k-th element in the sixth sequence in the fifth sequence is the same as the position of the k-th second value in the second sequence, k = 0, 1, ..., N-1.
[0031] Based on this implementation, the elements in the second sequence take the first value and the second value. The first value corresponds to the elements in the first sequence that are less than N / 2, and the second value corresponds to the elements in the first sequence that are greater than or equal to N / 2. That is, when the 2i-th element and the (2i+1)-th element in the second sequence are not equal to the i-th element in the first sequence, the j-th first value in the second sequence can be replaced by the j-th element in the third sequence. In addition, the sixth sequence can be obtained by adding N to each element of the fourth sequence, and the k-th second value in the second sequence can be replaced by the k-th element in the sixth sequence. The new sequence obtained after replacing the element is the fifth sequence.
[0032] In one possible implementation, the second sequence satisfies: kron(Q) A ,[1,1]);
[0033] Where kron(A, B) represents the Kronecker product of A and B. Q A This represents the first sequence, or Q. A This represents the quantized first sequence.
[0034] Based on this implementation, for schemes where the 2i-th element and the (2i+1)-th element in the second sequence are equal to the i-th element in the first sequence, Q A Let Q represent the first sequence. For the second sequence, where the elements take the first and second values (i.e., the 2i-th and (2i+1)-th elements of the second sequence are not equal to the i-th element of the first sequence), Q... AThis represents the quantized first sequence. The quantized first sequence contains a first value and a second value. That is, by replacing the elements in the first sequence that are less than N / 2 with the first value, and replacing the elements in the first sequence that are greater than or equal to N / 2 with the second value, the quantized first sequence can be obtained.
[0035] In one possible implementation, before determining the fifth sequence based on the second sequence, the third sequence, and the sixth sequence, the method further includes: obtaining the position of the element in the second sequence whose value is less than N / 2; and / or obtaining the position of the element in the second sequence whose value is greater than or equal to N / 2.
[0036] Based on this implementation, the j-th element less than N / 2 in the second sequence can be replaced by the j-th element in the third sequence, depending on the position of the element in the second sequence that has a value less than N / 2. Alternatively, the k-th element greater than or equal to N / 2 in the second sequence can be replaced by the k-th element in the sixth sequence, depending on the position of the element in the second sequence that has a value greater than or equal to N / 2. The second sequence must satisfy: kron(Q A ,[1,1]);
[0037] Where kron(A, B) represents the Kronecker product of A and B, Q A This indicates the first sequence.
[0038] In one possible implementation, before determining the fifth sequence based on the second sequence, the third sequence, and the sixth sequence, the method further includes: obtaining the position of a first value in the second sequence within the second sequence; and / or obtaining the position of a second value in the second sequence within the second sequence.
[0039] Based on this implementation, the j-th first value in the second sequence can be replaced by the j-th element of the third sequence, according to the position of the first value in the second sequence. Additionally, the k-th second value in the second sequence can be replaced by the k-th element of the sixth sequence, according to the position of the second value in the second sequence. The second sequence must satisfy: kron(Q A ,[1,1]);
[0040] Where kron(A, B) represents the Kronecker product of A and B, Q A This represents the quantized first sequence.
[0041] In one possible implementation, at least two sequences in the first sequence, the third sequence, and the fourth sequence are identical.
[0042] Based on this implementation, flexible expansion of sequences is possible. For example, the first and third sequences can be NR sequences, and the fourth sequence can be a sequence obtained through a re-search. (This is repeated three times in the original text.)
[0043] In one possible implementation, the first sequence is an NR sequence.
[0044] In one possible implementation, at least one of the third and fourth sequences is identical to the first sequence.
[0045] In one possible implementation, N=2 M M is greater than or equal to 5. For example, N = 128, 256, 512, 1024, etc. If N = 1024, any of the above methods can be adapted to the current scheme, that is, to extend the length of the commonly used 1024-length Polar code sequence. Alternatively, by iteratively executing any of the above methods, sequences with a length greater than 2048 can be obtained. If N < 1024, by executing (or iteratively executing) any of the above methods, the first sequence can be extended to a Polar code sequence with a length greater than or equal to 1024. Therefore, Polar code sequences with a length of 1024 or longer can be obtained relatively easily, and the decoding performance of the obtained 1024-length Polar code sequence is better.
[0046] In one possible implementation, N = 128, and at least one of the first sequence, the third sequence, or the fourth sequence is:
[0047] [0,1,2,4,8,16,32,3,5,64,9,6,17,10,18,12,33,65,20,34,24,36,7,66,11,40,68,19,13,48,14,72,21,35,26,80,37,25,22,38,96,67,41,28,69,42,49,74,70,44,81,50,73,15,52,23,76,82,56,27,97,39,84,29,43,98,88,30,71,45,1 00,51,46,75,104,53,77,54,83,57,112,78,85,58,99,86,60,89,101,31,90,102,105,92,47,106,55,113,79,108,59,114,87,116,61,91,120,62,103,93,107,94,109,115,110,117,118,121,122,63,124,95,111,119,123,125,126,127).
[0048] In one possible implementation, N = 256, and at least one of the first sequence, the third sequence, or the fourth sequence is:
[0049] [0,1,2,4,8,16,32,3,5,64,9,6,17,10,18,128,12,33,65,20,34,24,36,7,129,66,11,40,68,130,19,13,48,14,72,21,132,35,26,80,37,25,22,136,38,96,67,41,144,28,69,42,49,74,160,192,70,44,131,81,50,73,15,133,52,23,134,76,137,82,56,27,97,39,84,1 38,145,29,43,98,88,140,30,146,71,161,45,100,51,148,46,75,104,162,53,193,152,77,164,54,83,57,112,135,78,194,85,58,168,139,99,86,60,89,196,141,101,147,176,142,31,200,90,149,102,105,163,92,47,208,150,153,165,106,55,113,154,79,108,22 4,166,195,59,169,114,156,87,197,116,170,61,177,91,198,172,120,201,62,143,103,178,93,202,107,180,151,209,94,204,155,210,109,184,115,167,225,157,110,117,212,171,226,216,158,118,173,121,199,179,228,174,122,203,63,181,232,124,205,182 ,211,185,240,206,95,213,186,227,111,214,188,217,229,159,119,218,230,233,175,123,220,183,234,125,241,207,187,236,126,242,244,189,215,219,231,248,190,221,235,222,237,243,238,245,127,191,246,249,250,252,223,239,251,247,253,254,255).
[0050] In one possible implementation, N = 512, and at least one of the first sequence, the third sequence, or the fourth sequence is:
[0051] [0,1,2,4,8,16,32,3,5,64,9,6,17,10,18,128,12,33,65,20,256,34,24,36,7,129,66,11,40,68,130,19,13,48,14,72,257,21,132,35,258,26,80,37,25,22,136,260,264,38,96,67,41,144,28,69,42,49,74,272,160,288,192,70,44,131,81,50,73,15,320,133,52,23,134,384,76,137,82,56,27,97,39,259,84,138,145,261,29,43,98,88,140,30,146,71,262,265,161,45,100,51,148,46,75,266,273,104,162,53,193,152,77,164,268,274,54,83,57,112,135,78,289,194,85,276,58,168,139,99,86,60,280,89,290,196,141,101,147,176,142,321,31,200,90,292,322,263,149,102,105,304,296,163,92,47,267,385,324,208,386,150,153,165,106,55,328,113,154,79,269,108,224,166,195,270,275,291,59,169,114,277,156,87,197,116,170,61,281,278,177,293,388,91,198,172,120,201,336,62,282,143,103,178,294,93,202,323,392,297,107,180,151,209,284,94,204,298,400,352,325,155,210,305,300,109,184,115,167,225,326,306,157,329,110,117,212,171,330,226,387,308,216,416,271,279,158,337,118,332,389,173,121,199,179,228,338,312,390,174,393,283,122,448,353,203,63,340,394,181,295,285,232,124,205,182,286,299,354,211,401,185,396,344,240,206,95,327,402,356,307,301,417,213,186,404,227,418,302,360,111,331,214,309,188,449,217,408,229,159,420,310,333,119,339,218,368,230,391,313,450,334,233,175,123,341,220,314,424,395,355,287,183,234,125,342,316,241,345,452,397,403,207,432,357,187,236,126,242,398,346,456,358,405,303,244,189,361,215,348,419,406,464,362,409,219,311,421,410,231,248,369,190,364,335,480,315,221,370,422,425,451,235,412,343,372,317,222,426,453,237,433,347,243,454,318,376,428,238,359,457,399,434,349,245,458,363,127,191,407,436,465,246,350,460,249,411,365,440,374,423,466,250,371,481,413,366,468,429,252,373,482,427,414,223,472,455,377,435,319,484,430,488,239,378,459,437,380,461,496,351,467,438,251,462,442,441,469,247,367,253,375,444,470,483,415,485,473,474,254,379,431,489,486,476,439,490,463,381,497,492,443,382,498,445,471,500,446,475,487,504,255,477,491,478,383,493,499,502,494,501,447,505,506,479,508,495,503,507,509,510,511]。,
[0052] In one possible implementation, N = 1024, and at least one of the first sequence, the third sequence, or the fourth sequence is:
[0053] [0,1,2,4,8,16,32,3,5,64,9,6,17,10,18,128,12,33,65,20,256,34,24,36,7,129,66,512,11,40,68,130,19,13,48,14,72,257,21,132,35,258,26,513,80,37,25,22,136,260,264,38,514,96,67,41,144,28,69,42,516,49,74,272,160,520,288,528,192,544,70,44,131,81,50,73,15,320,133,52,23,134,384,76,137,82,56,27,97,39,259,84,138,145,261,29,43,98,515,88,140,30,146,71,262,265,161,576,45,100,640,51,148,46,75,266,273,517,104,162,53,193,152,77,164,768,268,274,518,54,83,57,521,112,135,78,289,194,85,276,522,58,168,139,99,86,60,280,89,290,529,524,196,141,101,147,176,142,530,321,31,200,90,545,292,322,532,263,149,102,105,304,296,163,92,47,267,385,546,324,208,386,150,153,165,106,55,328,536,577,548,113,154,79,269,108,578,224,166,519,552,195,270,641,523,275,580,291,59,169,560,114,277,156,87,197,116,170,61,531,525,642,281,278,526,177,293,388,91,584,769,198,172,120,201,336,62,282,143,103,178,294,93,644,202,592,323,392,297,770,107,180,151,209,284,648,94,204,298,400,608,352,325,533,155,210,305,547,300,109,184,534,537,115,167,225,326,306,772,157,656,329,110,117,212,171,776,330,226,549,538,387,308,216,416,271,279,158,337,550,672,118,332,579,540,389,173,121,553,199,784,179,228,338,312,704,390,174,554,581,393,283,122,448,353,561,203,63,340,394,527,582,556,181,295,285,232,124,205,182,643,562,286,585,299,354,211,401,185,396,344,586,645,593,535,240,206,95,327,564,800,402,356,307,301,417,213,568,832,588,186,646,404,227,896,594,418,302,649,771,360,539,111,331,214,309,188,449,217,408,609,596,551,650,229,159,420,310,541,773,610,657,333,119,600,339,218,368,652,230,391,313,450,542,334,233,555,774,175,123,658,612,341,777,220,314,424,395,673,583,355,287,183,234,125,557,660,616,342,316,241,778,563,345,452,397,403,207,674,558,785,432,357,187,236,664,624,587,780,705,126,242,565,398,346,456,358,405,303,569,244,595,189,566,676,361,706,589,215,786,647,348,419,406,464,680,801,362,590,409,570,788,597,572,219,311,708,598,601,651,421,792,802,611,602,410,231,688,653,248,369,190,364,654,659,335,480,315,221,370,613,422,425,451,614,543,235,412,343,372,775,317,222,426,453,237,559,833,804,712,834,661,808,779,617,604,433,720,816,836,347,897,243,662,454,318,675,618,898,781,376,428,665,736,567,840,625,238,359,457,399,787,591,678,434,677,349,245,458,666,620,363,127,191,782,407,436,626,571,465,681,246,707,350,599,668,790,460,249,682,573,411,803,789,709,365,440,628,689,374,423,466,793,250,371,481,574,413,603,366,468,655,900,805,615,684,710,429,794,252,373,605,848,690,713,632,482,806,427,904,414,223,663,692,835,619,472,455,796,809,714,721,837,716,864,810,606,912,722,696,377,435,817,319,621,812,484,430,838,667,488,239,378,459,622,627,437,380,818,461,496,669,679,724,841,629,351,467,438,737,251,462,442,441,469,247,683,842,738,899,670,783,849,820,728,928,791,367,901,630,685,844,633,711,253,691,824,902,686,740,850,375,444,470,483,415,485,905,795,473,634,744,852,960,865,693,797,906,715,807,474,636,694,254,717,575,913,798,811,379,697,431,607,489,866,723,486,908,718,813,476,856,839,725,698,914,752,868,819,814,439,929,490,623,671,739,916,463,843,381,497,930,821,726,961,872,492,631,729,700,443,741,845,920,382,822,851,730,498,880,742,445,471,635,932,687,903,825,500,846,745,826,732,446,962,936,475,853,867,637,907,487,695,746,828,753,854,857,504,799,255,964,909,719,477,915,638,748,944,869,491,699,754,858,478,968,383,910,815,976,870,917,727,493,873,701,931,756,860,499,731,823,922,874,918,502,933,743,760,881,494,702,921,501,876,847,992,447,733,827,934,882,937,963,747,505,855,924,734,829,965,938,884,506,749,945,966,755,859,940,830,911,871,639,888,479,946,750,969,508,861,757,970,919,875,862,758,948,977,923,972,761,877,952,495,703,935,978,883,762,503,925,878,735,993,885,939,994,980,926,764,941,967,886,831,947,507,889,984,751,942,996,971,890,509,949,973,1000,892,950,863,759,1008,510,979,953,763,974,954,879,981,982,927,995,765,956,887,985,997,986,943,891,998,766,511,988,1001,951,1002,893,975,894,1009,955,1004,1010,957,983,958,987,1012,999,1016,767,989,1003,990,1005,959,1011,1013,895,1006,1014,1017,1018,991,1020,1007,1015,1019,1021, 1022, 1023].
[0054] Fifthly, a communication device is provided. The device can implement the methods described in any possible implementation of any of the first to fourth aspects. The device possesses the functions of the first or second device described above. The device is, for example, a terminal device, a component within a terminal device, or a network device or a component within a network device. Components in this application can be part of a device; for example, components can include functional modules, communication modules, processors, circuits, chips, or chip systems.
[0055] In one alternative implementation, the device may include modules that correspond one-to-one with the methods / operations / steps / actions described in any possible implementation of any of the first to fourth aspects. These modules may be hardware circuits, software, or a combination of hardware circuits and software.
[0056] In one optional implementation, the component includes functional modules such as a processing unit (sometimes also called a processing module) and a communication unit (sometimes also called a transceiver module, communication module, etc.). The transceiver unit is capable of both sending and receiving functions. When the transceiver unit performs the sending function, it can be called a sending unit (sometimes also called a sending module); when the transceiver unit performs the receiving function, it can be called a receiving unit (sometimes also called a receiving module). The sending unit and the receiving unit can be the same functional module, which is called the transceiver unit and can perform both sending and receiving functions; alternatively, the sending unit and the receiving unit can be different functional modules, and the transceiver unit is a collective term for these functional modules.
[0057] For example, when the apparatus is used to perform the method described in any one of the first to fourth aspects, the apparatus may include a communication unit and a processing unit.
[0058] In a sixth aspect, embodiments of this application also provide a communication device, including a processor for executing a computer program (or computer-executable instructions) stored in a memory, which, when executed, causes the device to perform the method as described in any possible implementation of any of the first to fourth aspects.
[0059] In one possible implementation, the processor and memory are integrated together;
[0060] In another possible implementation, the memory is located outside the communication device.
[0061] The communication device also includes a communication interface for communicating with other devices, such as sending or receiving data and / or signals. Exemplarily, the communication interface may be a transceiver, circuit, bus, module, or other type of communication interface.
[0062] A seventh aspect provides a computer-readable storage medium for storing a computer program or instructions that, when executed, enable the implementation of the method described in any possible implementation of any of the first to fourth aspects, and the method shown in any possible implementation of the method described therein.
[0063] Eighthly, a computer program product containing instructions is provided, which, when run on a computer, enables the method described in any possible implementation of any of the first to fourth aspects to be implemented.
[0064] Ninthly, embodiments of this application also provide a communication device for performing the method described in any possible implementation of any of the first to fourth aspects.
[0065] In a tenth aspect, a chip system is provided, comprising logic circuitry (or, as understood, a processor, which may include logic circuitry, etc.), and further comprising input / output interfaces. The input / output interfaces can be used to input messages or to output messages. The input / output interfaces can be the same interface, i.e., the same interface can implement both sending and receiving functions; or, the input / output interface includes an input interface and an output interface, the input interface being used to implement the receiving function, i.e., to receive messages; and the output interface being used to implement the sending function, i.e., to send messages. The logic circuitry can be used to perform operations other than the sending and receiving functions in any possible implementation of any of the first to fourth aspects described above; the logic circuitry can also be used to transmit messages to the input / output interfaces or to receive messages from other communication devices from the input / output interfaces. The chip system can be used to implement the methods described in any possible implementation of any of the first to fourth aspects described above. The chip system can be composed of chips or can include chips and other discrete devices.
[0066] Optionally, the chip system may also include a memory, which can be used to store instructions, and the logic circuits can call the instructions stored in the memory to implement the corresponding functions.
[0067] Eleventhly, a communication method is provided, which may include the method implemented by a first device as shown in the first aspect and any possible implementation thereof, and the method implemented by a second device as shown in the second aspect and any possible implementation thereof. Alternatively, the communication method may include the method implemented by the first device as shown in the third aspect and any possible implementation thereof, and the method implemented by the second device as shown in the fourth aspect and any possible implementation thereof.
[0068] In a twelfth aspect, a communication system is provided, which may include a first device and a second device. The first device may be used to implement the method shown in the first aspect and any possible implementation thereof, and the second device may be used to implement the method shown in the second aspect and any possible implementation thereof. Alternatively, the first device may be used to implement the method shown in the third aspect and any possible implementation thereof, and the second device may be used to implement the method shown in the fourth aspect and any possible implementation thereof.
[0069] The technical effects brought about by aspects five through twelfth above can be found in the descriptions of the beneficial effects of the corresponding solutions in aspects one through four above, and will not be repeated here. Attached Figure Description
[0070] Figure 1 is a schematic diagram of the architecture of a wireless communication system provided in an embodiment of this application;
[0071] Figure 2 is a schematic diagram of a coding / decoding process provided in an embodiment of this application;
[0072] Figure 3 is a schematic diagram of a polarization transformation matrix provided in an embodiment of this application;
[0073] Figure 4 is a flowchart illustrating an encoding method provided in an embodiment of this application;
[0074] Figure 5 is a flowchart illustrating a decoding method provided in an embodiment of this application;
[0075] Figure 6 is a schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0076] Figure 7 is a schematic diagram of another communication device provided in an embodiment of this application. Detailed Implementation
[0077] The technical solutions of this application can be applied to various communication systems, such as Long Term Evolution (LTE) systems and 5th Generation (5G) mobile communication systems (e.g., New Radio (NR) systems). The technical solutions provided in this application can also be applied to future communication systems. These communication systems can also be Bluetooth communication systems, Wireless Local Area Network (WLAN) communication systems, Wireless Fidelity (WiFi) communication systems, Internet of Things (IoT) communication systems, Narrow Band Internet of Things (NB-IoT) systems, etc.
[0078] Figure 1 is a schematic diagram of the architecture of a communication system applied in an embodiment of this application. The communication system includes network devices and terminal devices. Figure 1 illustrates an example with one network device and two terminal devices (i.e., terminal device A and terminal device B). When the network device is the transmitter, terminal device A or terminal device B is the receiver; when terminal device A or terminal device B is the transmitter, the network device is the receiver.
[0079] The aforementioned terminal devices can also be referred to as terminals, user equipment (UE), mobile stations, mobile terminals, etc. Terminal devices can be widely used in various scenarios, such as device-to-device (D2D), vehicle-to-everything (V2X) communication, machine-type communication (MTC), IoT, virtual reality, augmented reality, industrial control, autonomous driving, telemedicine, smart grids, smart furniture, smart offices, smart wearables, smart transportation, smart cities, etc. Terminal devices can be mobile phones, tablets, computers with wireless transceiver capabilities, wearable devices, vehicles, drones, helicopters, airplanes, ships, robots, robotic arms, smart home devices, in-vehicle terminals, IoT terminals, wearable devices, etc. The embodiments of this application do not limit the specific technologies or device forms used in the terminal devices.
[0080] Network equipment can also be called access network (AN) equipment or radio access network (RAN) equipment. It can be a base station, an evolved NodeB (eNodeB), a transmitter and receiver point (TRP), an integrated access and backhauling (IAB) node, a next-generation NodeB (gNB) in a 5G mobile communication system, a base station in a future mobile communication system, an access node in a WiFi system, a home base station (e.g., home evolved nodeB, or home node B, HNB), an access point (AP) in a wireless fidelity (WIFI) system, a wireless relay node, a wireless backhaul node, etc. RAN can also be an open RAN (O-RAN or ORAN), a cloud radio access network (CRAN), or a communication network combining two or more of these. It can also be a module or unit that performs some of the functions of a base station. For example, it can be a central unit (CU), a distributed unit (DU), or a radio unit (RU). For instance, a CU is configured to implement the functions of the Packet Data Convergence Protocol (PDCP) layer and above (such as the RRC layer and / or the Service Data Adaptation Protocol (SDAP) layer); a DU is configured to implement the functions of the protocol layers below the PDCP layer (such as the radio link control (RLC) layer, the MAC layer, and / or the physical (PHY) layer). For specific descriptions of the above protocol layers, please refer to the relevant technical specifications of the 3rd Generation Partnership Project (3GPP). CU and DU can be set up separately or included in the same network element, such as in a baseband unit (BBU).RU can be included in radio frequency equipment or radio frequency units, such as in a remote radio unit (RRU), an active antenna unit (AAU), or a remote radio head (RRH). In different systems, CU, DU, or RU may have different names, but those skilled in the art will understand their meaning. For example, in an ORAN system, CU can also be called O-CU (open CU), DU can also be called O-DU, and RU can also be called O-RU. Any of the units among CU (or CU-control plane (CP), CU-user plane (UP)), DU, and RU in this application can be implemented through software modules, hardware modules, or a combination of software and hardware modules. Wireless access network equipment can be a macro base station, a micro base station, an indoor station, a relay node, or a donor node, etc. The embodiments of this application do not limit the specific technology or equipment form used in the wireless access network equipment. For ease of description, network equipment can be used as a shorthand for wireless access network equipment, and base station can be used as an example of wireless access network equipment.
[0081] Network equipment can also be non-terrestrial base stations, such as low earth orbit (LEO) / very low earth orbit (VLEO) satellites, high-attitude platform stations (HAPS), and terminals that perform network equipment functions in V2X, D2D, and machine-to-machine (M2M) communications.
[0082] In the embodiments of this application, the functions of the network device can be executed by modules (such as chips) within the network device, or by a control subsystem that includes network device functions. This control subsystem, including network device functions, can be a control center in application scenarios such as smart grids, industrial control, intelligent transportation, and smart cities. Similarly, the functions of the terminal device can be executed by modules (such as chips or modems) within the terminal device, or by a device that includes terminal device functions.
[0083] Taking the communication system shown in Figure 1 as an example, in order to ensure the reliability of communication between devices, the information can be encoded and decoded. The encoding and decoding process shown in Figure 2 can be referred to. The source of the transmitting end is sequentially encoded, channel encoded and modulated to output modulation symbols. After receiving the modulation symbols, the receiving end sequentially demodulates, decodes the channel and decodes the source to obtain the destination. The receiving end can obtain useful information based on the destination.
[0084] To facilitate understanding by those skilled in the art, some terms used in the embodiments of this application are explained below.
[0085] I. Polar code
[0086] Polar codes are the first coding scheme that can be rigorously proven to "achieve" Shannon channel capacity. They have advantages such as good decoding performance and low complexity, and have been selected by 3GPP as the control channel coding scheme for eMBB scenarios. Furthermore, this application can also be applied to scenarios such as ultra-reliable and low-latency communications (URLLC) and enhanced machine-type communication (eMTC), without specific limitations.
[0087] II. Polar code encoding
[0088] Polar codes are linear block codes, where the polarization transformation matrix is G. N The polarization transformation matrix can also be denoted as G, and it can also be called the encoding matrix or the generator matrix. The encoding process is as follows: in It is a binary row vector, that is, a binary sequence of length N, where N is the code length of the polar code; G N It is an N×N matrix, and G N = It can be defined as the Kronecker product of n matrices F2.
[0089] [Corrected from Rule 91, 05.01.2026] During the encoding process of polar codes, A portion of the bits are used to carry information; these information-carrying bits are called information bits, and the set of information bit indices (also called bit sequence numbers) of these bits is denoted as A. The remaining bits are set to fixed values agreed upon beforehand by the receiver and transmitter; this set is called fixed bits or frozen bits, and its set of bit indices is the complement of A. c This indicates that the polar code encoding process is equivalent to: Here, G N (A) is G N G is a submatrix obtained by considering the rows corresponding to the bit indices in set A. N (A C ) is G N The middle is composed of set A c The submatrix obtained by the rows corresponding to the bit indices in μ. A for The set of information bits in the data is L in number; for The set of frozen bits in the polar code, numbering (NL), consists of known bits. These frozen bits are typically set to 0, but can be arbitrarily set as long as the receiver and transmitter agree beforehand. The encoded output of the polar code can be simplified to: Here μ A for The set of information bits in μ A Let G be a row vector of length L, i.e., |A| = L, where |A| represents the number of elements in set A, and L is the block size, or the number of information bits, or the size of the set of information bits. N (A) is matrix G N G is a submatrix obtained by considering the rows corresponding to the bit indices in set A. N (A) is a K×N matrix.
[0090] The construction process of polar codes is essentially the selection process of set A, which determines the performance of polar codes. The construction process typically involves determining N polarization channels based on the code length N, each corresponding to one of the N rows of the polarization transformation matrix. The channel reliability of each polarization channel is calculated. The bit indices (i.e., bit sequences) of the top L polarization channels with the highest reliability are used as elements of set A. The bit indices of the remaining (NL) polarization channels are used as the bit index set A of the frozen bits. c The elements. Set A determines the position of the information bits. c This determines the position of the frozen bits.
[0091] Figure 3 shows an 8×8 polarization transformation matrix. Figure 3 exemplifies a specific encoding process, where the left side can be understood as the side to be encoded, and the bits on the left are represented by u. The right side can be understood as the encoding side (or codeword side), and the bits on the right are represented by x. The process from left to right is the process by which the transmitting end encodes the bit sequence to be encoded. The information bits to be encoded are represented by the sequence u(0, 0, 0, 0, 0, 0, 1, 1). After the polarization transformation matrix, the encoded bits are represented by the sequence x(0, 1, 0, 1, 0, 1, 0, 1). Mapping x to a modulation symbol allows transmission through channel W. Bits corresponding to high channel reliability are used to map information bits, and bits corresponding to low channel reliability are used to map frozen bits. As shown in Figure 3, {u0, u1, u2, u4} are frozen bits, i.e., the positions of frozen bits, and {u3, u5, u6, u7} are information bits, i.e., the positions of information bits. In this embodiment, information bits are also called information bits. Frozen bits are also called frozen bits.
[0092] Referring to Figure 3, during the encoding process, two adjacent columns constitute a coding layer. The left column of bits represents the input bits of the coding layer, and the right column represents the output bits. For example, in the leftmost coding layer, the input bit sequence is (0, 0, 0, 0, 0, 0, 1, 1), and the output bit sequence is (0, 0, 0, 0, 0, 0, 0, 1). The operation symbols in the middle of the coding layer... This represents the XOR operation, specifically... express The bits in the current row and A single XOR operation between the bits in the row. The bits on the right represent the result of the operation. For example, in the leftmost coding layer, the first input bit (value 0) and the second input bit (value 0) are processed... The operation yields the first output bit (with a value of 0).
[0093] The determination of information bits and frozen bits will be explained below.
[0094] Bits with higher reliability are designated as information bits (data), while bits with lower reliability are designated as frozen bits. In 5G NR, the frozen and information bits of a Polar code are determined based on a reliability sequence. Taking an 8-bit Polar code as an example, assuming the reliability sequence is [0 1 2 4 3 5 6 7], the bits with reliability from highest to lowest are: bit number 7, bit number 6, bit number 5, bit number 3, bit number 4, bit number 2, bit number 1, and bit number 0. Here, a bit can be understood as a sub-channel, and the bit number can be understood as an index or identifier for the bit. When constructing a Polar code with a coding length of 8 and an information length of 4, the bits corresponding to bit number 7, bit number 6, bit number 5, and bit number 3 are selected from the end to the beginning as information bits, while the bits corresponding to bit number 4, bit number 2, bit number 1, and bit number 0 are selected as frozen bits.
[0095] The key issue in constructing Polar codes is determining the set of information bit sequence numbers. In the early stages of theoretical research, the set The following method is typically used: First, density evolution or Gaussian analysis is used to obtain the polarization channel error probability corresponding to bit i. choose The K smallest indices form a set. This method requires calculating different methods for different channel conditions. In other words, it's a channel-dependent approach. However, this is difficult to implement in practice due to the variability of channels in real-world scenarios.
[0096] Further research shows that Polar codes can be constructed using sequences. When constructing a Polar code, the set of information bits can be determined simply by reading the corresponding sequence. Specifically, the sequence uses polarization channel numbers to represent the order in which information bits are selected. For example, when the code length is 8, the sequence ordered by the order in which information bits are selected is [0 1 2 4 3 5 6 7]. This is used to construct an information bit set of length K. At this time, only K sub-channels need to be read from back to front as the set of information bits. That's it. For example, when K=2, A=[6,7] is read from the end of the sequence; when K=4, A=[3,5,6,7]. This sequence storage method is easier to implement, and it is also used in the 5G standard.
[0097] Thanks to its good performance and low complexity, Polar codes have been selected as the channel coding scheme for control channels in 5G. In specific implementations, the standard pre-stores a reliability sequence (i.e., a Polar code sequence) of length 1024 for constructing Polar codes.
[0098] This application provides a communication method and apparatus for efficiently extending the length of a Polar code sequence.
[0099] Figure 4 is a flowchart illustrating an encoding method provided in an embodiment of this application. This method is executed by a first device. Unless otherwise specified, the "first device" in this application can refer to the first device itself (e.g., a terminal device or a network device), a component within the first device (e.g., a functional module, communication module, processor, circuit, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the first device. Furthermore, for a network device, components may also include CU, DU, or RU.
[0100] Specifically, the first device can be a terminal and / or a network device (such as a base station). For example, during uplink or downlink communication between a terminal and a base station, the first device can be either a terminal or a network device. During signal transmission, the first device can be either a signal transmitting device or a signal receiving device. Specifically, during uplink communication, the signal transmitting device can be a terminal and the signal receiving device can be a network device; during downlink communication, the signal transmitting device can be a network device and the signal receiving device can be a terminal. Furthermore, this application does not exclude application in terminal-to-terminal communication scenarios, in which case both the signal transmitting device and the signal receiving device can be terminals.
[0101] Taking the first device as the executing entity as an example, the method includes the following steps:
[0102] S101: The first device determines a second sequence of length 2N based on a first sequence of length N.
[0103] The first sequence can be a sequence used to characterize the reliability ranking of N sub-channels. For example, the values of the elements in the first sequence can be 0, 1, 2, ..., N-1, where each element is an index of a sub-channel. The later the sub-channel index appears in the sequence, the higher its reliability. For example, the first sequence can be a sequence of elements 0, 1, 2, ..., N-1, where each element appears once. Optionally, the first sequence can be the sequence to be extended. For example, the first sequence is the Polar code sequence before length extension. Furthermore, the values of the elements in the first sequence can also be 1, 2, ..., N, etc., without specific restrictions.
[0104] Optionally, the length of the first sequence can be N=2. M M is a positive integer greater than or equal to 1.
[0105] It can be understood that the second sequence is determined based on the first sequence. Specifically, the 2i-th and (2i+1)-th elements in the second sequence are determined based on the ith element of the first sequence, and the 2i-th and (2i+1)-th elements in the second sequence are the same, where i = 0, 1, 2, ..., N-1. The 2i-th and (2i+1)-th elements in the second sequence can be equal to or different from the ith element of the first sequence. Alternatively, it can be considered that two elements in the second sequence are determined based on the ith element of the first sequence. These two elements can be the 2i-th and (2i+1)-th elements of the second sequence, or they can be two elements at other positions. For example, in determining the second sequence, the 2i-th and (2i+1)-th elements in the new sequence can be determined based on the ith element of the first sequence. Subsequently, the 2i-th and / or (2i+1)-th elements in the new sequence can be swapped with other elements to obtain the second sequence. Therefore, this application does not limit the positions of the two elements in the second sequence determined based on the i-th element in the first sequence to be the 2i-th element and the (2i+1)-th element, but they can also be elements in other positions.
[0106] The following describes how to determine the second sequence based on the first sequence, using methods 1 and 2 respectively.
[0107] Method 1
[0108] As an example, the i-th element of the first sequence is used as the 2i-th and (2i+1)-th elements in the second sequence.
[0109] For example, the first sequence can be represented as [a,b,c……], meaning that the N elements in the first sequence are a,b,c……. Similarly, the second sequence can be represented as [a,a,b,b,c,c……], meaning that the 2N elements in the second sequence are a,a,b,b,c,c…….
[0110] It can be seen that in method 1, the 2ith element and the (2i+1)th element in the second sequence are equal to the ith element in the first sequence.
[0111] Method 2
[0112] As another example, the first sequence is quantized into a binary sequence of length N (which can be called the quantized first sequence), or in other words, the i-th element in the first sequence is quantized and becomes the i-th element in the binary sequence. Here, all elements in this binary sequence take either the first value or the second value, meaning the number of possible values for the elements in this sequence is 2. In method 2, the i-th element of the binary sequence becomes the 2i-th and (2i+1)-th elements in the second sequence.
[0113] For example, quantizing a first sequence into a binary sequence of length N can be achieved by quantizing all elements in the first sequence with values less than N / 2 to a first value, and quantizing all elements in the first sequence with values greater than or equal to N / 2 to a second value. The first and second values are not equal. As an example, and not a limitation, the first value can be 0, and the second value can be 1. Furthermore, the first and second values can be combined in other ways; for example, the first value can be 1, and the second value can be 0, or the first value can be any value other than 0 or 1, and the second value can be another value, etc., and so on. N / 2 represents half of N.
[0114] For example, taking N=1024 as an example, the first sequence is [0,512,1,513……], and the corresponding binary sequence can be represented as [A,B,A,B……], where A and B represent the first value and the second value, respectively.
[0115] In addition, the first device can use the i-th element of the binary sequence as the 2i-th and (2i+1)-th elements in the second sequence. Taking the binary sequence [A,B,A,B……] as an example, the second sequence can be represented as [A,A,B,B,A,A,B,B……], that is, the 2N elements in the second sequence are A,A,B,B,A,A,B,B…….
[0116] It can be seen that in method 2, the 2ith element and the (2i+1)th element in the second sequence are not equal to the ith element in the first sequence.
[0117] It is understandable that, in a formulaic expression, the second sequence Q in S101 A 'Can satisfy: Q A '=kron(Q A , [1, 1]); Formula 1
[0118] Where kron(A, B) represents the Kronecker product of A and B. For method 1, Q A This represents the first sequence. For method 2, Q... A This represents the first quantized sequence, i.e., a binary sequence.
[0119] It is understandable that Formula 1 is merely the second sequence and Q. A This application describes a formula that satisfies the relationship between the second sequence and Q. A Other formulas must be satisfied between them.
[0120] Additionally, the second sequence can be used to determine a fifth sequence of length 2N, which can serve as the sequence after length extension. For example, the first sequence is the Polar code sequence before length extension. The method for determining the fifth sequence is described in S102, and will not be elaborated here.
[0121] S101 can also be described as: the first device obtains a second sequence, which is determined based on a first sequence of length N.
[0122] The relationship between the first sequence and the second sequence can satisfy the following: the 2ith element and the (2i+1)th element in the second sequence are determined based on the ith element in the first sequence, the 2ith element and the (2i+1)th element in the second sequence are the same, i = 0, 1, 2...N-1, and the values of the elements in the third sequence and the fourth sequence are greater than or equal to 0 and less than N.
[0123] S102: The first device determines a fifth sequence of length 2N based on the second sequence, the third sequence of length N, and the fourth sequence of length N. The third and fourth sequences can each represent the reliability ranking of the N sub-channels. Taking the third sequence as an example, each element in the third sequence is an index of a sub-channel; the earlier the sub-channel index appears in the sequence, the higher its reliability. For example, the elements of the third and fourth sequences can be greater than or equal to 0 and less than N. Furthermore, the elements of the third and fourth sequences can also be greater than or equal to 1 and less than N+1, etc., without specific restrictions.
[0124] In this application, the fifth sequence satisfies the following property: for i = 0, 1, 2 ... N-1, the 2ith and 2i+1th elements in the fifth sequence are simultaneously less than N or simultaneously greater than or equal to N.
[0125] The third and fourth sequences will be introduced below.
[0126] The third sequence can be a sequence with values of 0, 1, 2, ..., N-1. That is, the third sequence can be a sequence composed of elements 0, 1, 2, ..., N-1, where each element appears once. Optionally, the third sequence can be used as the sequence to be extended. For example, the third sequence is the Polar code sequence before length extension.
[0127] As one implementation, the fourth sequence can be a sequence with values of 0, 1, 2, ..., N-1. That is, the fourth sequence can be a sequence composed of elements 0, 1, 2, ..., N-1, where any element appears once in the fourth sequence. Optionally, the fourth sequence can be used as the sequence to be extended. For example, the fourth sequence is the Polar code sequence before length extension. Correspondingly, in this implementation, when determining the fifth sequence, the first device can add N to each element of the fourth sequence to obtain the sixth sequence, and then, based on the second sequence, combine the elements in the third sequence and the elements in the fourth sequence to form the fifth sequence. The sixth sequence is a sequence with values of N, N+1, N+2, ..., 2N-1. That is, the sixth sequence can be a sequence composed of elements N, N+1, N+2, ..., 2N-1, where any element appears once in the sixth sequence. For example, the value of the i-th element in the sixth sequence is the sum of the value of the i-th element in the fourth sequence and N.
[0128] For example, the fourth sequence in this implementation can be represented as Q. C The sixth sequence can be represented as Q. C +N, i.e., Q C +N represents Q C Each element is incremented by N.
[0129] As another implementation, the fourth sequence can also be considered as a sequence with values N, N+1, N+2, ..., 2N-1. That is, the fourth sequence can be a sequence composed of elements N, N+1, N+2, ..., 2N-1, where each element appears once. Optionally, the fourth sequence can be obtained by adding N to each element of a seventh sequence (of length N) to be extended. For example, the seventh sequence is the Polar code sequence before length extension, and this seventh sequence can be described with reference to the first or third sequence. For instance, the value of the i-th element in the fourth sequence is the sum of the value of the i-th element in the seventh sequence and N. Correspondingly, in this implementation, when determining the fifth sequence, the first device can combine the elements of the third and fourth sequences to form the fifth sequence based on the second sequence.
[0130] For example, the seventh sequence in this implementation can be represented as Q. C The fourth sequence can be represented as Q. C +N, i.e., Q C +N represents Q C Each element is incremented by N.
[0131] It is understood that any two or more sequences in the first, third, or fourth (or seventh) sequence of length N can be the same. In addition, the first, third, and fourth (or seventh) sequences can also be different sequences. This application does not impose any specific restrictions.
[0132] Taking N=1024 as an example, any one of the first, third, or fourth (or seventh) sequences can be a Polar code reliability sequence (referred to as an NR sequence) of the NR standard, or any other arbitrary sequence. An NR sequence can be a Polar code sequence defined in the NR-related standards. A sequence obtained through re-searching can be a Polar code sequence not defined in the NR-related standards; this sequence can be a new sequence obtained based on error correction performance, channel reliability, row weight of the coding matrix, etc. For example, the first and fourth (or seventh) sequences can be NR sequences, and the third sequence can be a sequence obtained through re-searching. Alternatively, the third sequence can be an NR sequence, and the first and fourth (or seventh) sequences can be sequences obtained through re-searching. It can also be considered that at least one of the first, third, and fourth sequences is an NR sequence. The third and / or fourth sequences can be identical to the first sequence, meaning that at least one of the third and fourth sequences is the first sequence.
[0133] For example, when N=128, any one or more of the first, third, or fourth (or fifth) sequences can be: [0,1,2,4,8,16,32,3,5,64,9,6,17,10,18,12,33,65,20,34,24,36,7,66,11,40,68,19,13,48,14,72,21,35,26,80,37,25,22,38,96,67,41,28,69,42,49,74,70,44,81,50,73,15,52,23,76,82,56,27,97,39,84, 29,43,98,88,30,71,45,100,51,46,75,104,53,77,54,83,57,112,78,85,58,99,86,60,89,101,31,90,102,105,92,47,106,55,113,79,108,59,114,87,116,61,91,120,62,103,93,107,94,109,115,110,117,118,121,122,63,124,95,111,119,123,125,126,127).
[0134] For example, when N=256, any one or more of the first, third, or fourth (or fifth) sequences can be: [0,1,2,4,8,16,32,3,5,64,9,6,17,10,18,128,12,33,65,20,34,24,36,7,129,66,11,40,68,130,19,13,48,14,72,21,132,35,26,80,37,25,22,136,38,96,67,41,144,28,69,42,49,74,160,192,70,44,131,81,50,73,15,133,52, 23,134,76,137,82,56,27,97,39,84,138,145,29,43,98,88,140,30,146,71,161,45,100,51,148,46,75,104,162,53,193,152,77,164,54,83,57,112,135,78,194,85,58,168,139,99,86,60,89,196,141,101,147,176,142,31,200,90,149,102,105,163,92,47,208,150,153,165,10 6,55,113,154,79,108,224,166,195,59,169,114,156,87,197,116,170,61,177,91,198,172,120,201,62,143,103,178,93,202,107,180,151,209,94,204,155,210,109,184,115,167,225,157,110,117,212,171,226,216,158,118,173,121,199,179,228,174,122,203,63,181,232, 124,205,182,211,185,240,206,95,213,186,227,111,214,188,217,229,159,119,218,230,233,175,123,220,183,234,125,241,207,187,236,126,242,244,189,215,219,231,248,190,221,235,222,237,243,238,245,127,191,246,249,250,252,223,239,251,247,253,254,255).
[0135] For example, when N=512, any one or more of the first, third, or fourth (or fifth) sequences can be: [0,1,2,4,8,16,32,3,5,64,9,6,17,10,18,128,12,33,65,20,256,34,24,36,7,129,66,11,40,68,130,19,13,48,14,72,257,21,132,35,258,26,80,37,25,22,136,260,264,38,96,67,41,144,28,69,42,49,74,272,160,288,192,70,44,131,8 1,50,73,15,320,133,52,23,134,384,76,137,82,56,27,97,39,259,84,138,145,261,29,43,98,88,140,30,146,71,262,265,161,45,100,51,148 ,46,75,266,273,104,162,53,193,152,77,164,268,274,54,83,57,112,135,78,289,194,85,276,58,168,139,99,86,60,280,89,290,196,141,10 1,147,176,142,321,31,200,90,292,322,263,149,102,105,304,296,163,92,47,267,385,324,208,386,150,153,165,106,55,328,113,154,79,2 69,108,224,166,195,270,275,291,59,169,114,277,156,87,197,116,170,61,281,278,177,293,388,91,198,172,120,201,336,62,282,143,103 ,178,294,93,202,323,392,297,107,180,151,209,284,94,204,298,400,352,325,155,210,305,300,109,184,115,167,225,326,306,157,329,11 0,117,212,171,330,226,387,308,216,416,271,279,158,337,118,332,389,173,121,199,179,228,338,312,390,174,393,283,122,448,353,203,63,340,394,181,295,285,232,124,205,182,286,299,354,211,401,185,396,344,240,206,95,327,402,356,307,301,417,213,186,404,227,418,302,360,111,331,214,309,188,449,217,408,229,159,420,310,333,119,339,218,368,230,391,313,450,334,233,175,123,341,220,314,424,395,355,287,183,234,125,342,316,241,345,452,397,403,207,432,357,187,236,126,242,398,346,456,358,405,303,244,189,361,215,348,419,406,464,362,409,219,311,421,410,231,248,369,190,364,335,480,315,221,370,422,425,451,235,412,343,372,317,222,426,453,237,433,347,243,454,318,376,428,238,359,457,399,434,349,245,458,363,127,191,407,436,465,246,350,460,249,411,365,440,374,423,466,250,371,481,413,366,468,429,252,373,482,427,414,223,472,455,377,435,319,484,430,488,239,378,459,437,380,461,496,351,467,438,251,462,442,441,469,247,367,253,375,444,470,483,415,485,473,474,254,379,431,489,486,476,439,490,463,381,497,492,443,382,498,445,471,500,446,475,487,504,255,477,491,478,383,493,499,502,494,501,447,505,506,479,508,495,503,507,509,510,511]。,
[0136] For example, when N = 1024, any one or more of the first sequence, third sequence, or fourth sequence (or fifth sequence) can be:
[0137] [0,1,2,4,8,16,32,3,5,64,9,6,17,10,18,128,12,33,65,20,256,34,24,36,7,129,66,512,11,40,68,130,19,13,48,14,72,257,21,132,35,258,26,513,80,37,25,22,136,260,264,38,514,96,67,41,144,28,69,42,516,49,74,272,160,520,288,528,192,544,70,44,131,81,50,73,15,320,133,52,23,134,384,76,137,82,56,27,97,39,259,84,138,145,261,29,43,98,515,88,140,30,146,71,262,265,161,576,45,100,640,51,148,46,75,266,273,517,104,162,53,193,152,77,164,768,268,274,518,54,83,57,521,112,135,78,289,194,85,276,522,58,168,139,99,86,60,280,89,290,529,524,196,141,101,147,176,142,530,321,31,200,90,545,292,322,532,263,149,102,105,304,296,163,92,47,267,385,546,324,208,386,150,153,165,106,55,328,536,577,548,113,154,79,269,108,578,224,166,519,552,195,270,641,523,275,580,291,59,169,560,114,277,156,87,197,116,170,61,531,525,642,281,278,526,177,293,388,91,584,769,198,172,120,201,336,62,282,143,103,178,294,93,644,202,592,323,392,297,770,107,180,151,209,284,648,94,204,298,400,608,352,325,533,155,210,305,547,300,109,184,534,537,115,167,225,326,306,772,157,656,329,110,117,212,171,776,330,226,549,538,387,308,216,416,271,279,158,337,550,672,118,332,579,540,389,173,121,553,199,784,179,228,338,312,704,390,174,554,581,393,283,122,448,353,561,203,63,340,394,527,582,556,181,295,285,232,124,205,182,643,562,286,585,299,354,211,401,185,396,344,586,645,593,535,240,206,95,327,564,800,402,356,307,301,417,213,568,832,588,186,646,404,227,896,594,418,302,649,771,360,539,111,331,214,309,188,449,217,408,609,596,551,650,229,159,420,310,541,773,610,657,333,119,600,339,218,368,652,230,391,313,450,542,334,233,555,774,175,123,658,612,341,777,220,314,424,395,673,583,355,287,183,234,125,557,660,616,342,316,241,778,563,345,452,397,403,207,674,558,785,432,357,187,236,664,624,587,780,705,126,242,565,398,346,456,358,405,303,569,244,595,189,566,676,361,706,589,215,786,647,348,419,406,464,680,801,362,590,409,570,788,597,572,219,311,708,598,601,651,421,792,802,611,602,410,231,688,653,248,369,190,364,654,659,335,480,315,221,370,613,422,425,451,614,543,235,412,343,372,775,317,222,426,453,237,559,833,804,712,834,661,808,779,617,604,433,720,816,836,347,897,243,662,454,318,675,618,898,781,376,428,665,736,567,840,625,238,359,457,399,787,591,678,434,677,349,245,458,666,620,363,127,191,782,407,436,626,571,465,681,246,707,350,599,668,790,460,249,682,573,411,803,789,709,365,440,628,689,374,423,466,793,250,371,481,574,413,603,366,468,655,900,805,615,684,710,429,794,252,373,605,848,690,713,632,482,806,427,904,414,223,663,692,835,619,472,455,796,809,714,721,837,716,864,810,606,912,722,696,377,435,817,319,621,812,484,430,838,667,488,239,378,459,622,627,437,380,818,461,496,669,679,724,841,629,351,467,438,737,251,462,442,441,469,247,683,842,738,899,670,783,849,820,728,928,791,367,901,630,685,844,633,711,253,691,824,902,686,740,850,375,444,470,483,415,485,905,795,473,634,744,852,960,865,693,797,906,715,807,474,636,694,254,717,575,913,798,811,379,697,431,607,489,866,723,486,908,718,813,476,856,839,725,698,914,752,868,819,814,439,929,490,623,671,739,916,463,843,381,497,930,821,726,961,872,492,631,729,700,443,741,845,920,382,822,851,730,498,880,742,445,471,635,932,687,903,825,500,846,745,826,732,446,962,936,475,853,867,637,907,487,695,746,828,753,854,857,504,799,255,964,909,719,477,915,638,748,944,869,491,699,754,858,478,968,383,910,815,976,870,917,727,493,873,701,931,756,860,499,731,823,922,874,918,502,933,743,760,881,494,702,921,501,876,847,992,447,733,827,934,882,937,963,747,505,855,924,734,829,965,938,884,506,749,945,966,755,859,940,830,911,871,639,888,479,946,750,969,508,861,757,970,919,875,862,758,948,977,923,972,761,877,952,495,703,935,978,883,762,503,925,878,735,993,885,939,994,980,926,764,941,967,886,831,947,507,889,984,751,942,996,971,890,509,949,973,1000,892,950,863,759,1008,510,979,953,763,974,954,879,981,982,927,995,765,956,887,985,997,986,943,891,998,766,511,988,1001,951,1002,893,975,894,1009,955,1004,1010,957,983,958,987,1012,999,1016,767,989,1003,990,1005,959,1011,1013,895,1006,1014,1017,1018,991,1020,1007,1015,1019,1021, 1022, 1023].
[0138] In one possible embodiment, the first, third, and fourth (or seventh) sequences of length N may belong to the same sequence set. This sequence set may include multiple sequences of length N. The terminal and / or base station can extend the length of sequences in this sequence set to obtain sequences longer than N. As an example, this sequence set may be a predefined set, for example, locally configured by the terminal and base station, or defined by relevant standards. As another example, the set may be an agreement between the terminal and base station; for example, the base station and terminal may determine the sequences in this sequence set through a communication process.
[0139] Furthermore, for a single communication process (or sequence extension process), the terminal and the base station can agree on a first sequence, a third sequence, and a fourth sequence (or a seventh sequence) through signaling. For example, the terminal and the base station can send an index of at least one of the first, third, and fourth (or seventh) sequences in the sequence set to indicate that the fifth sequence is obtained through the sequence extension associated with that index. For example, the base station can send configuration signaling (such as radio resource control (RRC) messages, MAC control elements (CE), or downlink control information (DCI), etc., without specific limitations) to the terminal to indicate the index of the first, third, and fourth (or seventh) sequences. Accordingly, both the terminal and the base station use the signaling indicated by the index to generate the fifth sequence. Subsequently, during communication between the terminal and the base station, the terminal and the base station can use this fifth sequence for planned encoding and decoding of the communication process. Additionally, this application does not exclude the possibility that some or all of the first, third, and fourth (or seventh) sequences are defined by a standard.
[0140] The method for determining the fifth sequence based on the second, third, and fourth sequences is described below.
[0141] It is understood that the second sequence in this application can be used to determine the position of elements in the third sequence and the corresponding elements in the fourth sequence in the fifth sequence. The element corresponding to the fourth sequence can refer to an element in the fourth sequence, or it can refer to an element in the sixth sequence determined based on the fourth sequence.
[0142] Wherein, if the fourth sequence is a sequence with values of 0, 1, 2, ..., N-1, then the element corresponding to the fourth sequence refers to the element in the sixth sequence. Furthermore, if the fourth sequence is a sequence with values of N, N+1, N+2, ..., 2N-1, then the element corresponding to the fourth sequence refers to the element in the fourth sequence.
[0143] The following describes methods 1-1, 1-2, 2-1, and 2-2. Methods 1-1 and 1-2 are based on method 1 in S101, with the difference being that the fourth sequence in method 1-1 is a sequence with values 0, 1, 2, ..., N-1, while the fourth sequence in method 1-2 is a sequence with values N, N+1, N+2, ..., 2N-1. Similarly, methods 2-1 and 2-2 are based on method 2 in S101, with the difference being that the fourth sequence in method 2-1 is a sequence with values 0, 1, 2, ..., N-1, while the fourth sequence in method 2-2 is a sequence with values N, N+1, N+2, ..., 2N-1.
[0144] Method 1-1
[0145] The fourth sequence is a sequence with values of 0, 1, 2, ..., N-1. Correspondingly, the elements of the fourth sequence refer to the elements in the sixth sequence. For example, each element of the sixth sequence is obtained by adding N to each element of the fourth sequence. Combining with method 1 in S101, if the i-th element of the first sequence is used as the 2i-th and (2i+1)-th elements in the second sequence, the first device can obtain the positions of elements less than N / 2 and elements greater than or equal to N / 2 in the second sequence. Based on these positions, along with the third and sixth sequences, the fifth sequence is obtained. For example, the first device can determine the position of the element in the second sequence whose value is less than N / 2, and / or determine the position of the element in the second sequence whose value is greater than or equal to N / 2, and fill the position of the element in the second sequence whose value is less than N / 2 with the element in the third sequence in order, that is, replace the element in the second sequence whose value is less than N / 2 with the element in the third sequence in order, and fill the position of the element in the second sequence whose value is greater than or equal to N / 2 with the element in the sixth sequence in order, that is, replace the element in the second sequence whose value is greater than or equal to N / 2 with the element in the sixth sequence in order, to obtain the fifth sequence.
[0146] In other words, in method 1-1, the elements in the third sequence, the sixth sequence, and the fifth sequence satisfy the following: the position of the j-th element in the third sequence in the fifth sequence is the same as the position of the j-th element less than N / 2 in the second sequence in the second sequence; the position of the k-th element in the sixth sequence in the fifth sequence is the same as the position of the k-th element greater than or equal to N / 2 in the second sequence in the second sequence; and j, k = 1, 2, ..., N.
[0147] Method 1-2
[0148] The fourth sequence is a sequence with values N, N+1, N+2, ..., 2N-1. Combining with method 1 in S101, if the i-th element of the first sequence is used as the 2i-th and (2i+1)-th elements in the second sequence, the first device can obtain the position of the elements less than N / 2 in the second sequence, as well as the position of the elements greater than or equal to N / 2 in the second sequence. Based on the positions of the elements less than N / 2 and the elements greater than or equal to N / 2 in the second sequence, the third sequence, and the fourth sequence, the fifth sequence is obtained. For example, the first device can determine the positions of elements in the second sequence whose values are less than N / 2, and / or determine the positions of elements in the second sequence whose values are greater than or equal to N / 2, and fill the positions of elements in the second sequence whose values are less than N / 2 with elements in the third sequence in order, that is, replace the elements in the second sequence whose values are less than N / 2 with elements in the third sequence in order, and fill the positions of elements in the second sequence whose values are greater than or equal to N / 2 with elements in the fourth sequence in order, that is, replace the elements in the second sequence whose values are greater than or equal to N / 2 with elements in the fourth sequence in order, to obtain a fifth sequence.
[0149] In other words, in methods 1-2, the elements in the third sequence, the fourth sequence, and the fifth sequence satisfy the following: the position of the j-th element in the third sequence in the fifth sequence is the same as the position of the j-th element less than N / 2 in the second sequence in the second sequence; the position of the k-th element in the fourth sequence in the fifth sequence is the same as the position of the k-th element greater than or equal to N / 2 in the second sequence in the second sequence; and j, k = 1, 2, ..., N.
[0150] For methods 1-1 and 1-2, in a formulaic expression, the fifth sequence Q D Satisfy: Q D (Iv)=Q B Q D (Iu)=Q C +N;
[0151] Among them, Q D(Iv) represents the set of elements corresponding to the Iv index set in the fifth sequence, Q B Describing the third sequence, Q D (Iu) represents the set of elements corresponding to the Iu-th index set in the fifth sequence. For method 1-1, Q... C +N represents the sixth sequence, Q C This represents the fourth sequence. For methods 1-2, Q... C +N represents the fourth sequence, Q C It represents the seventh sequence.
[0152] Iv represents the set of indices of elements in the second sequence that are less than N / 2. Where Iv satisfies: Q A <N / 2,
[0153] That is, the value of Iv can be the set of indices of elements less than N / 2 in the second sequence.
[0154] Iu represents the set of indices of elements in the second sequence that are greater than or equal to N / 2. Iu satisfies: Q A '≥N / 2,
[0155] That is, the value of Iu can be the set of indices of the elements in the second sequence that are greater than or equal to N / 2.
[0156] It is understood that the above formulaic expression of the fifth sequence is merely an example, and this application does not limit the possibility of expressing the relationship between the fifth sequence and the third and fourth sequences in other ways.
[0157] Method 2-1
[0158] The fourth sequence is a sequence with values of 0, 1, 2, ..., N-1. Correspondingly, the elements of the fourth sequence refer to the elements in the sixth sequence. For example, each element of the sixth sequence is obtained by adding N to each element of the fourth sequence. Combining with method 2 in S101, if the i-th element of the binary sequence is used as the 2i-th and (2i+1)-th elements in the second sequence, the first device can obtain the position of the first value in the second sequence and the position of the second value in the second sequence. Based on the positions of the first and second values in the second sequence, the third sequence, and the sixth sequence, the fifth sequence is obtained. For example, the first device can sequentially fill the elements of the third sequence into the positions in the second sequence where the value is the first value, that is, sequentially replace the first value in the second sequence with the elements of the third sequence. Similarly, it can sequentially fill the elements of the sixth sequence into the positions in the second sequence where the value is the second value, and sequentially replace the second value in the second sequence with the elements of the sixth sequence, thus obtaining the fifth sequence.
[0159] In other words, in method 2-1, the elements in the third sequence, the sixth sequence, and the fifth sequence satisfy the following: the position of the j-th element in the third sequence in the fifth sequence is the same as the position of the j-th first value in the second sequence; the position of the k-th element in the sixth sequence in the fifth sequence is the same as the position of the k-th second value in the second sequence; and j, k = 0, 1, 2, ..., N-1.
[0160] Method 2-2
[0161] The fourth sequence is a sequence with values N, N+1, N+2, ..., 2N-1. Combining this with method 2 in S101, if the i-th element of the binary sequence is used as the 2i-th and (2i+1)-th elements in the second sequence, the first device can obtain the position of the first value in the second sequence, as well as the position of the second value in the second sequence. Based on the positions of the first and second values in the second sequence, the third sequence, and the fourth sequence, the fifth sequence is obtained. For example, the first device can sequentially fill the elements of the third sequence into the positions in the second sequence where the value is the first value, sequentially replace the first value in the second sequence with the elements of the third sequence, and sequentially fill the elements of the fourth sequence into the positions in the second sequence where the value is the second value, i.e., sequentially replace the second value in the second sequence with the elements of the fourth sequence, thus obtaining the fifth element.
[0162] In other words, in method 2-1, the elements in the third sequence, the fourth sequence, and the fifth sequence satisfy the following: the position of the j-th element in the third sequence in the fifth sequence is the same as the position of the j-th first value in the second sequence; the position of the k-th element in the fourth sequence in the fifth sequence is the same as the position of the k-th second value in the second sequence; and j, k = 1, 2, ..., N.
[0163] For methods 2-1 and 2-2, in a formulaic expression, the fifth sequence Q D Satisfy: Q D (Iv)=Q B Q D (Iu)=Q C +N;
[0164] Among them, Q D (Iv) represents the Iv-th element in the fifth sequence, where Iv can be the set of indices of the first value in the second sequence, Q. B Describing the third sequence, Q D (Iu) represents the Iu-th element in the fifth sequence, where Iu can be the set of indices of the second value in the second sequence. For method 2-1, Q...C +N represents the sixth sequence, Q C This represents the fourth sequence. For method 2-2, Q... C +N represents the fourth sequence, Q C This represents the seventh sequence. Q D (Iu)=Q C +N can also be understood as the Iu-th element Q in the fifth sequence. D (Iu) is based on the fourth sequence Q. C The obtained result is that the sixth sequence is not required.
[0165] It is understood that the above formulaic expression of the fifth sequence is merely an example, and this application does not limit the possibility of expressing the relationship between the fifth sequence and the third and fourth sequences in other ways.
[0166] It can also be described as the fifth sequence containing the third and sixth sequences; or as the fifth sequence containing the sequence obtained by adding N to each element of the third and fourth sequences, that is, the k-th element of the sixth sequence is the sum of the k-th element of the fourth sequence and N.
[0167] For example, the relationship between the third sequence and the fifth sequence can also be described as follows: the sequence formed by the elements less than N in the fifth sequence is the third sequence of length N, and the values of the elements in the third sequence are greater than or equal to 0 and less than N; correspondingly, the relationship between the sixth sequence and the fifth sequence can also be described as follows: the sequence formed by subtracting N from the elements greater than or equal to N in the fifth sequence is the fourth sequence of length N, and the values of the elements in the fourth sequence are greater than or equal to 0 and less than N.
[0168] For example, the relationship between the third sequence and the fifth sequence can also be described as follows: the third sequence includes elements less than N in the fifth sequence, and the element in the first sequence corresponding to the index of the element in the third sequence divided by 2 and rounded down is less than N / 2; correspondingly, the relationship between the sixth sequence and the fifth sequence can also be described as follows: the sixth sequence includes elements greater than or equal to N in the fifth sequence, and the element in the first sequence corresponding to the index of the element in the sixth sequence divided by 2 and rounded down is greater than or equal to N / 2.
[0169] For example, the relationship between the third and fifth sequences can also be described as follows: the j-th element in the third sequence is in the same position as the j-th element less than N / 2 in the second sequence, where j = 0, 1, ..., N-1. Similarly, the relationship between the third and fifth sequences can be described as follows: the k-th element in the sixth sequence is in the same position as the k-th element greater than or equal to N / 2 in the second sequence, where k = 0, 1, ..., N-1. Wherein, the i-th element of the first sequence is the same as the 2i-th and (2i+1)-th elements of the second sequence.
[0170] For example, the relationship between the third and fifth sequences can also be described as follows: the position of the j-th element in the third sequence in the fifth sequence is the same as the position of the j-th first value in the second sequence, where j = 0, 1, ..., N-1; correspondingly, the relationship between the third and fifth sequences can also be described as follows: the position of the k-th element in the sixth sequence in the fifth sequence is the same as the position of the k-th second value in the second sequence, where k = 0, 1, ..., N-1. Here, the elements in the second sequence take the first value and the second value, where the first value corresponds to the elements in the first sequence less than N / 2, and the second value corresponds to the elements in the first sequence greater than or equal to N / 2.
[0171] The fifth sequence can also satisfy any one or more of the following characteristics:
[0172] Feature A: The positions of elements greater than or equal to N in the sequence consisting of odd indices in the fifth sequence are the same as the positions of elements greater than or equal to N / 2 in the first sequence of length N.
[0173] Feature B: The positions of elements greater than or equal to N in the sequence consisting of even indices in the fifth sequence are the same as the positions of elements greater than or equal to N / 2 in the first sequence of length N.
[0174] Feature C is that the positions of elements less than N in the sequence formed by odd indices in the fifth sequence are the same as the positions of elements less than N / 2 in the first sequence of length N.
[0175] Feature D: The positions of elements less than N in the sequence formed by even indices in the fifth sequence are the same as the positions of elements less than N / 2 in the first sequence of length N.
[0176] S103: The first device performs polarization encoding on the information bits according to the fifth sequence.
[0177] Polar coding can be performed on the bit sequence to be encoded, as shown in Figure 3. For example, during the coding process, the first device can use the fifth sequence as a reliability sequence to determine the frozen bits and information bits of the Polar code. After polar coding, the encoded bit sequence can be obtained, and the first device can transmit the encoded bit sequence over the air interface.
[0178] Additionally, in S103, the fifth sequence can be further processed and then used for polar coding of the bit sequence to be encoded. This further processing, such as length extension or shortening, is a conventional sequence processing method and is not specifically limited in this application. For example, the fifth sequence can be further extended in length using methods other than those described in this application, and the extended sequence can be used for polar coding. For instance, if the length of the fifth sequence 2N is 2048, in S103, the fifth sequence can be further extended to a length of 4096 using other methods, and the 4096-length sequence can be used for polar coding of the bit sequence to be encoded.
[0179] Based on the process shown in Figure 4, on the transmitting side of the information bits, the length of the first sequence of length N can be easily extended to obtain a fifth sequence of length 2N. This fifth sequence can be used as a Polar code sequence for polar coding of the information bits. Correspondingly, on the receiving side of the information bits, the information to be decoded can be decoded according to the fifth sequence to obtain the information bits.
[0180] It is understood that the fifth sequence in this application can be a stored sequence, meaning that it is not necessary for the first device to generate the sequence through S101 and S102 in Figure 4 each time information bits are transmitted. The first device can read the fifth sequence locally.
[0181] For example, S101-S103 shown in Figure 4 above can also be replaced by the following steps:
[0182] S101: The first device acquires information bits.
[0183] S102: The first device performs polarization encoding on the information bits according to the fifth sequence.
[0184] The fifth sequence can be found in the description in this application, and will not be repeated here.
[0185] It is understandable that when N = 1024, the scheme shown in Figure 4 can extend the current Polar code sequence of length 1024 (such as the existing NR sequence) to be compatible with existing standard schemes. When N is less than 1024, for example, N = 128, N = 256, or N = 512, this application can extend shorter sequences to obtain sequences of length 1024 or longer. Based on this sequence, polar coding and decoding can achieve better decoding performance. Furthermore, N in this application can also be any value other than those in the examples above, without specific limitations.
[0186] As an example, the first sequence can be a Polar code sequence of length N = 1024. Based on this application, the length of this Polar code sequence can be extended to obtain a Polar code sequence of length 2048. Therefore, this scheme can be adapted to the current scheme, that is, to extend the length of the commonly used 1024-length Polar code sequence.
[0187] Alternatively, sequences with a length greater than 2048 can be obtained by iteratively executing the method of this application. For example, if the initial first sequence has a length of N = 1024, executing the method in Figure 4 for the first time will yield a fifth sequence with a length of 2N = 2048. Further executing the method in Figure 4 again with the sequence of length 2048 as the first sequence will result in N = 2048, yielding a fifth sequence with a length of 2N = 4096. The fifth sequence with a length of 4096 can be used as the length-extended Polar code sequence.
[0188] As another example, the length of the first sequence can be less than 1024, for example, N = 512, and the fifth sequence can be a sequence of length 2N = 1024, that is, a Polar code sequence of length 2N = 1024 can be obtained by the method shown in this application.
[0189] As another example, if the length N of the first sequence is less than 512, a sequence of length 1024 or longer can be obtained by iteratively executing the method of this application. For example, if the initial length of the first sequence is N = 128, executing the method in Figure 4 for the first time can obtain a fifth sequence of length 2N = 256; further, using the sequence of length 256 as the first sequence and executing the method in Figure 4 again, N = 256, can obtain a fifth sequence of length 2N = 512; further, using the sequence of length 512 as the first sequence and executing the method in Figure 4 again, N = 512, can obtain a fifth sequence of length 2N = 1024. The sequence of length 1024 can be used as the length-extended Polar code sequence.
[0190] Based on the above example, the length N of the first sequence can be less than 1024. By executing (or iteratively executing) the solution shown in this application, the first sequence can be extended to a Polar code sequence with a length greater than or equal to 1024. Therefore, a Polar code sequence with a length of 1024 or longer can be obtained relatively simply, and the decoding performance of the 1024-length Polar code sequence obtained by this solution is better.
[0191] As an example of iteratively executing the method described in this application, N target represents the target length; Q base represents the sequence whose length is to be extended. For example, Q base can be the sequence Q1024 with a length of 1024, the sequence Q128 with a length of 128, or the sequence Q256 with a length of 256, etc. Taking Q base as the first sequence, the third sequence, and the fourth sequence (or the seventh sequence) as an example, the pseudo-code for iteratively obtaining a sequence with a length of N target based on Method 1 is as follows: N = length(Q base ) / / Take N as the length of Qbase While N < N target / / Determine that N is less than Ntarget
[0192] Iv = kron(Q base , [1, 1]) < N / 2; / / Determine the index set Iv of the elements less than N / 2 in the second sequence in the second sequence
[0193] Iu = kron(Q base , [1, 1]) ≥ N / 2; / / Determine the index set Iu of the elements greater than or equal to N / 2 in the second sequence in the second sequence
[0194] Q extend (Iv) = Q base / / Fill the elements in Q base into the positions of the elements with values less than N / 2 in the second sequence in order to obtain the elements of Q extend at the Iv position; here Qbase is an example of the third sequence in S102, and Qbase can be replaced with other sequences as needed
[0195] Q extend (Iu) = Q base + N / / Fill the elements in Q base + N into the positions of the elements with values less than N / 2 in the second sequence in order to obtain the elements of Q extend at the Iu position; here Qbase is an example of the fourth sequence or the seventh sequence in S102, and Qbase can be replaced with other sequences as needed
[0196] Q base =Q extend / / Q extend As the new Q base
[0197] N = length(Q) base / / Take N as Q base length
[0198] End
[0199] Based on the above pseudocode, if N = length(Q) base ) = N target , representing the current Q base The length is the target length, which is the current Q. base This can be used as a sequence of the target length, thus completing the expansion of the sequence of the target length.
[0200] This application does not require that the second and / or sixth sequences be completely determined during the process of obtaining the fifth sequence, or in other words, it does not require that the second and / or sixth sequences be formed during the process of obtaining the fifth sequence. For example, if the elements in the second and / or sixth sequences are determined during the process of determining the fifth sequence, they are immediately used in the next step after being determined, without generating a complete second and / or sixth sequence.
[0201] As an implementation that does not require generating a complete sixth sequence, the pseudocode example of obtaining a sequence of length 2N from a sequence of length N is as follows:
[0202] Length N max Reliability ranking sequence For a polar code reliability sorting sequence of length 1024 in This represents the bit index before encoding the 1024-bit long polar code. Arranged in ascending order of reliability in Represents bit index The reliability metric.
[0203] In this application, N max >1024, can be based on Determine the reliability sorting sequence using the following pseudocode. To extend the reliability sequence.
[0204] In the pseudocode above, It can be one or more of the first, third, and fourth sequences. In addition, the first, third, and fourth sequences can be the same or different, without specific limitations.
[0205] As an example, N max It can be 2048, or a larger value such as 4096.
[0206] In this implementation, the elements in the fifth sequence are generated based on the elements in the third and fourth sequences; that is, it is not necessary to first obtain the complete sixth sequence from the fourth sequence and then use the sixth sequence to obtain the fifth sequence. It can be considered as an element in the sixth sequence.
[0207] As an implementation method that does not require generating a second sequence, in this implementation method, N max >1024, can be based on Determine the reliability sorting sequence using the following pseudocode. To extend the reliability sequence.
[0208] In the pseudocode above, It can be one or more of the first, third, and fourth sequences. In addition, the first, third, and fourth sequences can be the same or different, without specific limitations.
[0209] As an example, N max It can be 2048, or a larger value such as 4096.
[0210] In this implementation, the elements in the fifth sequence are determined by the elements in the third and fourth sequences, and their positions in the fifth sequence are determined by the i-th element in the first sequence. The fifth sequence is determined by the elements in the first sequence, not by the elements in the second sequence. In other words, it's not necessary to first obtain the second sequence from the first sequence, and then determine the positions of the elements in the third and fourth sequences in the fifth sequence based on the values of the elements in the second sequence. In other words, the step of determining the second sequence (or the second sequence itself) based on the first sequence can be omitted in the process of determining the fifth sequence.
[0211] Furthermore, it is evident that the pseudocode above does not require obtaining the complete sixth sequence from the fourth sequence first, and then using the sixth sequence to obtain the fifth sequence. and Each can be considered as an element in the sixth sequence.
[0212] In one or more embodiments, for a first sequence with length N belonging to a first interval, sequence expansion can be performed using the method shown in Figure 4 of this application. Alternatively, for a first sequence with length N belonging to a second interval, sequence expansion can be performed in other ways, such as using polarization weight (PW) sequence expansion. For example, when the first interval is [1024, 2048], i.e., N = 1024 or N = 2048, sequence expansion can be performed using the method shown in Figure 4 of this application; when the second interval is [4096, 8192], i.e., N = 4096 or N = 8192, expansion can be performed using a PW sequence. Based on this embodiment, a larger design space for Polar code sequences can be provided, offering the possibility of finding sequences with better performance. The first and second intervals can also be set to other values, without specific limitation.
[0213] In one or more embodiments, a sequence detection method can be used to verify whether any sequence L3 of length 2N is a sequence obtained based on the length extension method in this application. That is, this detection method can be used to verify whether L2 is the fifth sequence, in order to determine whether polar coding through L3 can achieve better decoding performance.
[0214] For example, this detection method can be implemented through the following steps:
[0215] 1. Obtain sequence L4 from L3. L4 can be obtained by comparing the elements in L3 with N. If an element in L3 is less than N, the element at the corresponding position in L4 is set to the first value (e.g., 0); otherwise, if an element in L3 is greater than or equal to N, the element at the corresponding position in L4 is set to the second value (e.g., 1).
[0216] L4 = (L3 >= N);
[0217] For sequence L4, if L4(2j+1) = L4(2*j) holds for any j = 0, 1, 2, ..., N-1, then the proposed sequence can be considered to be an extension of this scheme.
[0218] Figure 5 is a flowchart illustrating a decoding method provided in an embodiment of this application. This method is executed by a second device. Unless otherwise specified, the "second device" in this application can refer to the second device itself (e.g., a terminal device or a network device), a component within the second device (e.g., a functional module, communication module, processor, circuit, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the second device. Furthermore, for network devices, components may also include CU, DU, or RU.
[0219] The method includes the following steps:
[0220] S201: The second device acquires the sequence of symbols to be decoded.
[0221] The first sequence of symbols to be decoded corresponds to an encoded bit sequence, which is generated based on the information bits. The process of generating the encoded bit sequence based on the information bits can be seen in the operation of the first device in Figure 5, that is, the first device can generate the encoded bit sequence based on the information bits.
[0222] In one implementation method, the second device acquires the sequence of symbols to be decoded. Specifically, the second device may receive physical signals through an air interface and obtain the first sequence of symbols to be decoded by parsing the physical signals. Alternatively, the second device may acquire the sequence of symbols to be decoded locally through an internal interface. This sequence of symbols to be decoded may be obtained by parsing physical signals from other local devices, apparatuses, or modules. The aforementioned physical signals may carry the encoded bit sequence sent by the first device.
[0223] In other words, as an example, the first device can send a physical signal to the second device. This physical signal carries the encoded bit sequence obtained in step S103. The second device receives the physical signal generated based on the second encoded bit sequence, parses the physical signal, and obtains the sequence of symbols to be decoded. That is, the sequence of symbols to be decoded corresponds to the encoded bit sequence sent by the first device.
[0224] S202: The second device acquires the fifth sequence.
[0225] The second device may determine the fifth sequence by referring to the methods shown in S101 and S102. For example, if the first device and the second device use the same first sequence, third sequence and / or fourth sequence, the fifth sequence may be determined by the first device and the second device respectively, and the determination method may refer to S101 and S102.
[0226] Alternatively, the first device can indicate the fifth sequence to the second device via signaling (such as RRC messages, MAC CE, or DCI) after S101 and S102. Conversely, the second device can execute S101 and S102 and then indicate the fifth sequence to the first device via signaling (such as RRC messages, MAC CE, or DCI). In other words, S101 and S102 can be replaced by execution by the second device.
[0227] S203: The second device performs polarization decoding on the sequence of symbols to be decoded according to the fifth sequence.
[0228] The fifth sequence can serve as a reliability sequence for polarization decoding of the sequence of symbols to be decoded. This application does not limit the specific method by which the second device performs polarization decoding.
[0229] It is understood that the fifth sequence in this application can be a stored sequence, meaning that it is not necessary for the second device to generate the sequence through S201 and S202 in Figure 5 each time information bits are received. The second device can read the fifth sequence locally.
[0230] For example, S201-S203 shown in Figure 5 above can also be replaced by the following steps:
[0231] S201: The second device acquires the information to be decoded.
[0232] S202: The first device decodes the information to be decoded according to the fifth sequence.
[0233] The fifth sequence can be found in the description in this application, and will not be repeated here.
[0234] The previous example used a fifth sequence with a length of 2N. The fifth sequence in this application can also have a length of N. max = tN, where t = 2 T T > 1. That is, in this application, a sequence of length N can be expanded to obtain a sequence of length N. max A sequence of at least 2N.
[0235] If t = 2, then the fifth sequence can be considered to contain the third sequence and the sequence obtained by adding N to each element of the fourth sequence. In other words, the fifth sequence can be constructed based on the elements of two sequences of length N, which are the sequences obtained by adding N to each element of the third and fourth sequences (i.e., the sixth sequence).
[0236] If t = 4, then the fifth sequence can be considered to include sequence #1 of length N, the sequence obtained by adding N to each element of sequence #2 of length N, the sequence obtained by adding 2N to each element of sequence #3 of length N, and the sequence obtained by adding 3N to each element of sequence #4 of length N. In other words, the fifth sequence can be constructed from the elements of four sequences of length N: sequence #1, the sequence obtained by adding N to each element of sequence #2, the sequence obtained by adding 2N to each element of sequence #3, and the sequence obtained by adding 3N to each element of sequence #4. Any of the sequences #1, #2, #3, and #4 can be referenced from the descriptions of the first, third, or fourth sequences.
[0237] And so on, with a length of N max The fifth sequence of tN can be formed by t elements from sequences of length N.
[0238] It should be noted that the sequences or methods of determining sequences shown in this application are merely examples, and their application in the Polar encoding process can help improve the encoding and decoding performance of Polar codes, such as supporting longer Polar codes. In any of the example sequences, adjustments or equivalent substitutions can be made, including but not limited to the following, without affecting the overall effect:
[0239] 1. The positions of a few elements in a sequence can be interchanged. For example, the position of the index can be adjusted within a set range. For instance, if the set range is 5, the position of the element with index 10 can be adjusted within 5 positions to the left or right.
[0240] 2. Some elements in the sequence are adjusted, but the set of channels selected for transmitting P-bit information based on the sequence is consistent or similar.
[0241] 3. The sequence contains N elements starting from 0 and ending at N-1, representing the indices of the N polarization channels. In practice, the indices of the N polarization channels can also start from 1 and end at N; simply add 1 to each indice in the above sequence. This is the indices format used in the calculation methods described above. Of course, other methods can also be used to represent the indices or identifiers of the polarization channels; this specific representation does not affect the specific location of the polarization channels represented in the sequence.
[0242] 4. The N polarization channels in the above sequence are arranged in ascending order of reliability. Selecting K polarization channels from high to low reliability is equivalent to selecting the polarization channels corresponding to the last K numbers in any of the above sequences. In fact, the N polarization channels can also be arranged in descending order of reliability by reversing or reversing the order of the elements in the above sequence. In this case, selecting K polarization channels from high to low reliability is equivalent to selecting the polarization channels corresponding to the first K numbers.
[0243] 5. The above sequence can also be characterized using the normalized reliability or equivalent reliability sequence of each channel. For example, if channel x is in the sorting position n of the above sequence (the leftmost one is denoted as 1), then the reliability of the channel can be expressed as n or normalized n / N, where N is the length of the sequence.
[0244] It is understood that the first device can be a terminal, a chip (or other component) in the terminal, and the second device can be a base station or a chip (or other component (such as CU, DU, or RU) in the base station). Alternatively, the second device can be a terminal, a chip (or other component) in the terminal, and the first device can be a base station or a chip (or other component (such as CU, DU, or RU) in the base station).
[0245] It is understood that, in order to achieve the functions in the above embodiments, the terminal device or network device includes hardware structures and / or software modules corresponding to perform each function. Those skilled in the art should readily recognize that, based on the units and method steps of the various examples described in conjunction with the embodiments disclosed in this application, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed by hardware or by computer software driving hardware depends on the specific application scenario and design constraints of the technical solution.
[0246] Figures 6 and 7 are schematic diagrams illustrating possible communication devices provided in embodiments of this application. These communication devices can be used to implement the functions of terminal devices or network devices in the above method embodiments, and thus can also achieve the beneficial effects of the above method embodiments. In the embodiments of this application, the communication device can be a terminal device or a network device, or it can be a module (such as a chip) applied to a terminal device or a network device.
[0247] The communication device 600 shown in Figure 6 includes a processing unit 610 and a transceiver unit 620. The communication device 600 is used to implement the functions of the terminal device or network device in the above method embodiments.
[0248] When the communication device 600 is used to implement the function of the first device in the above method embodiment, the processing unit 610 and / or the transceiver unit 620 can be used to determine a second sequence of length 2N based on a first sequence of length N, determine a fifth sequence of length 2N based on the second sequence, a third sequence of length N and a fourth sequence of length N, and perform polar coding on the information bits based on the fifth sequence; the transceiver unit 620 can also be used to send the coded bit sequence obtained by polar coding to the second device.
[0249] When the communication device 600 is used to implement the function of the second device in the above method embodiment, the processing unit 610 and / or the transceiver unit 620 can be used to obtain the information to be decoded and acquire a second sequence of length 2N, determine a fifth sequence of length 2N based on the second sequence, a third sequence of length N, and a fourth sequence of length N, and decode the information to be decoded based on the fifth sequence. The information to be decoded can be obtained based on the encoded bit sequence sent by the first device.
[0250] In one possible implementation, when the communication device 600 is used to implement the functions of the first or second device in the above method embodiments, the processing unit 610 and / or the transceiver unit 620 may specifically be used to: determine a sixth sequence based on the fourth sequence, wherein the k-th element of the sixth sequence is the sum of the k-th element of the fourth sequence and N; and determine a fifth sequence based on the second sequence, the third sequence, and the sixth sequence, wherein the position of the j-th element of the third sequence in the fifth sequence is the same as the position of the j-th element less than N / 2 in the second sequence in the second sequence, j = 0, 1, ..., N-1, and the position of the k-th element of the sixth sequence in the fifth sequence is the same as the position of the k-th element greater than or equal to N / 2 in the second sequence in the second sequence, k = 0, 1, ..., N-1.
[0251] In one possible implementation, when the communication device 600 is used to implement the functions of the first device or the second device in the above method embodiments, the processing unit 610 and / or the transceiver unit 620 may also be used to: obtain the position of the element in the second sequence whose value is less than N / 2 in the second sequence; and / or, obtain the position of the element in the second sequence whose value is greater than or equal to N / 2 in the second sequence.
[0252] In one possible implementation, the elements in the second sequence take a first value and a second value. The first value corresponds to the elements in the first sequence that are less than N / 2, and the second value corresponds to the elements in the first sequence that are greater than or equal to N / 2. When the communication device 600 is used to implement the function of the first or second device in the above method embodiment, the processing unit 610 and / or the transceiver unit 620 can be specifically used to: determine a sixth sequence based on the fourth sequence, wherein the k-th element in the sixth sequence is the sum of the k-th element in the fourth sequence and N; and determine a fifth sequence based on the second sequence, the third sequence, and the sixth sequence, wherein the position of the j-th element in the third sequence in the fifth sequence is the same as the position of the j-th first value in the second sequence, j = 0, 1, ..., N-1, and the position of the k-th element in the sixth sequence in the fifth sequence is the same as the position of the k-th second value in the second sequence, k = 0, 1, ..., N-1.
[0253] In one possible implementation, when the communication device 600 is used to implement the function of the first device or the second device in the above method embodiments, the processing unit 610 and / or the transceiver unit 620 may also be used to: obtain the position of the first value in the second sequence in the second sequence; and / or, obtain the position of the second value in the second sequence in the second sequence.
[0254] For a more detailed description of the processing unit 610 and the transceiver unit 620, please refer directly to the relevant descriptions in the above method embodiments, which will not be repeated here.
[0255] The communication device 700 shown in Figure 7 includes a processor 710 and an interface circuit 720. The processor 710 and the interface circuit 720 are coupled to each other. It is understood that the interface circuit 720 can be a transceiver or an input / output interface. Optionally, the communication device 700 may also include a memory 730 for storing instructions executed by the processor 710, or storing input data required by the processor 710 to execute instructions, or storing data generated after the processor 710 executes instructions.
[0256] When the communication device 700 is used to implement the above method embodiment, the processor 710 is used to implement the function of the processing unit 610, and the interface circuit 720 is used to implement the function of the transceiver unit 620.
[0257] It is understood that the processor in the embodiments of this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), microprocessors without interlocked piped stages architecture (MIPS), advanced instruction set computers (RISC) machines (ARM), network processors (NPs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor can be a microprocessor or any conventional processor.
[0258] The method steps in the embodiments of this application can be implemented in hardware or by a processor executing software instructions. The software instructions can consist of corresponding software modules, which can be stored in random access memory, flash memory, read-only memory, programmable read-only memory, erasable programmable read-only memory, electrically erasable programmable read-only memory, registers, hard disks, portable hard disks, compact disc read-only memory (CD-ROM), or any other form of storage medium known in the art. An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and storage medium can reside in an ASIC. Additionally, the ASIC can reside in a terminal device or network device. Alternatively, the processor and storage medium can exist as discrete components in an access network device or terminal.
[0259] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer programs or instructions. A computer program is a set of instructions that directs each step of an action of an electronic computer or other device with message processing capabilities. It is typically written in a programming language and runs on a target architecture. When the computer program or instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this application are performed, in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer program or instructions can be stored in a computer-readable storage medium or transferred from one computer-readable storage medium to another. For example, the computer program or instructions can be transferred from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium, such as a floppy disk, hard disk, or magnetic tape; it can also be an optical medium, such as a digital video optical disc; or it can be a semiconductor medium, such as a solid-state drive. The computer-readable storage medium can be volatile or non-volatile, or it can include both types of storage media.
[0260] Based on the same technical concept, embodiments of this application also provide a computer-readable storage medium, including a program or instructions, which, when run on a computer, cause the methods in the above method embodiments to be executed.
[0261] Based on the same technical concept, embodiments of this application also provide a computer program product, including instructions that, when run on a computer, cause the methods in the above method embodiments to be executed.
[0262] Based on the same technical concept, embodiments of this application also provide a communication system, which may include a first device and a second device. In this communication system, the first device and the second device can be used to implement the method flows shown in Figures 4 and 5, respectively. As an example, the first device may be a terminal, and the second device may be a network device (such as a base station). As another example, the first device may be a network device, and the second device may be a terminal. Optionally, the communication system may also include other communication devices; for example, the communication system includes a network device and multiple terminal devices. As shown in Figure 1, the first device is a network device, the second device is terminal device A, and the communication system may also include terminal device B.
[0263] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0264] In the various embodiments of this application, unless otherwise specified or in case of logical conflict, the terminology and / or descriptions of different embodiments are consistent and can be referenced by each other. The technical features of different embodiments can be combined to form new embodiments according to their inherent logical relationship.
[0265] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. In the textual description of this application, the character " / " generally indicates an "or" relationship between the preceding and following related objects; in the formulas of this application, the character " / " indicates a "division" relationship between the preceding and following related objects.
[0266] It is understood that the various numerical designations used in the embodiments of this application are merely for descriptive convenience and are not intended to limit the scope of the embodiments of this application. The order of the process numbers described above does not imply the order of execution; the execution order of each process should be determined by its function and internal logic.
Claims
A communication method, characterized in that, include: A second sequence of length 2N is determined based on a first sequence of length N. The 2i-th and (2i+1)-th elements in the second sequence are determined based on the i-th element in the first sequence. The 2i-th and (2i+1)-th elements in the second sequence are the same, and i = 0, 1, 2...N-1. A fifth sequence of length 2N is determined based on the second sequence, the third sequence of length N, and the fourth sequence of length N, wherein the elements of the third sequence and the fourth sequence are greater than or equal to 0 and less than N. The information bits are polarized encoded according to the fifth sequence. A communication method, characterized in that, include: Obtain the information to be decoded; Obtain a second sequence of length 2N, which is determined based on the first sequence of length N. The 2i-th and (2i+1)-th elements in the second sequence are determined based on the i-th element in the first sequence. The 2i-th and (2i+1)-th elements in the second sequence are the same, and i = 0, 1, 2, ..., N-1. A fifth sequence of length 2N is determined based on the second sequence, the third sequence of length N, and the fourth sequence of length N, wherein the values of the elements of the third sequence and the fourth sequence are greater than or equal to 0 and less than N. The information to be decoded is decoded according to the fifth sequence. A communication method, characterized in that, include: Obtain information bits; The information bits are polarized encoded according to a fifth sequence of length 2N, which satisfies the following characteristics: for i = 0, 1, 2 ... N-1, the 2i-th and 2i+1-th elements in the fifth sequence are simultaneously less than N or simultaneously greater than or equal to N. A communication method, characterized in that, include: Obtain the information to be decoded; The information to be decoded is decoded according to a fifth sequence of length 2N, wherein the fifth sequence satisfies the following characteristics: for i = 0, 1, 2 ... N-1, the 2i-th and 2i+1-th elements in the fifth sequence are simultaneously less than N or simultaneously greater than or equal to N. The method as described in claim 3 or 4, characterized in that, The sequence formed by elements less than N in the fifth sequence is a third sequence of length N, wherein the elements of the third sequence have values greater than or equal to 0 and less than N; and / or The sequence formed by subtracting N from the elements greater than or equal to N in the fifth sequence is the fourth sequence of length N. The elements of the fourth sequence have values greater than or equal to 0 and less than N. The method as described in any one of claims 3-5, characterized in that, The positions of elements greater than or equal to N in the sequence formed by odd indices in the fifth sequence are the same as the positions of elements greater than or equal to N / 2 in the first sequence of length N; or, The positions of elements greater than or equal to N in the sequence formed by even-numbered indices in the fifth sequence are the same as the positions of elements greater than or equal to N / 2 in the first sequence of length N; or, The positions of elements less than N in the sequence formed by odd indices in the fifth sequence are the same as the positions of elements less than N / 2 in the first sequence of length N; or, The positions of elements less than N in the sequence formed by even indices in the fifth sequence are the same as the positions of elements less than N / 2 in the first sequence of length N. The method as described in claim 3 or 4, characterized in that, The fifth sequence is determined based on a second sequence of length 2N, a third sequence of length N, and a fourth sequence of length N. The second sequence is determined based on a first sequence of length N. The 2i-th and (2i+1)-th elements in the second sequence are determined based on the i-th element in the first sequence. The 2i-th and (2i+1)-th elements in the second sequence are the same, i = 0, 1, 2...N-1. The elements of the third and fourth sequences have values greater than or equal to 0 and less than N. The method as described in claim 3 or 4, characterized in that, The fifth sequence includes a third sequence and a sixth sequence. The k-th element of the sixth sequence is the sum of the k-th element of the fourth sequence and N. The third sequence includes elements in the fifth sequence that are less than N. The element in the first sequence corresponding to the index of the third sequence in the fifth sequence divided by 2 and rounded down is less than N / 2. The sixth sequence includes elements in the fifth sequence that are greater than or equal to N. The element in the first sequence corresponding to the index of the sixth sequence in the fifth sequence divided by 2 and rounded down is greater than or equal to N / 2. The length of the first sequence, the third sequence, and the fourth sequence is N. The values of the elements in the first sequence, the third sequence, and the fourth sequence are greater than or equal to 0 and less than N. The method as described in claim 1 or 2, characterized in that, The fifth sequence includes the third sequence and the sixth sequence. The k-th element in the sixth sequence is the sum of the k-th element in the fourth sequence and N. The position of the j-th element in the third sequence in the fifth sequence is the same as the position of the j-th element less than N / 2 in the second sequence in the second sequence, where j = 0, 1, ..., N-1. The position of the k-th element in the sixth sequence in the fifth sequence is the same as the position of the k-th element greater than or equal to N / 2 in the second sequence in the second sequence, where k = 0, 1, ..., N-1. The method as described in claim 1 or 2, characterized in that, The step of determining a fifth sequence of length 2N based on the second sequence, the third sequence of length N, and the fourth sequence of length N includes: The sixth sequence is determined based on the fourth sequence, wherein the k-th element of the sixth sequence is the sum of the k-th element of the fourth sequence and N; The fifth sequence is determined based on the second sequence, the third sequence, and the sixth sequence. The position of the j-th element in the third sequence in the fifth sequence is the same as the position of the j-th element less than N / 2 in the second sequence in the second sequence, where j = 0, 1, ..., N-1. The position of the k-th element in the sixth sequence in the fifth sequence is the same as the position of the k-th element greater than or equal to N / 2 in the second sequence in the second sequence, where k = 0, 1, ..., N-1. The method as described in claim 1 or 2, characterized in that, The fifth sequence includes the third sequence and the sixth sequence, and the k-th element of the sixth sequence is the sum of the k-th element of the fourth sequence and N; The elements in the second sequence take a first value and a second value. The first value corresponds to the elements in the first sequence that are less than N / 2, and the second value corresponds to the elements in the first sequence that are greater than or equal to N / 2. The j-th element in the third sequence is in the same position as the j-th first value in the second sequence, j = 0, 1, ..., N-1. The k-th element in the sixth sequence is in the same position as the k-th second value in the second sequence, k = 0, 1, ..., N-1. The method as described in claim 1 or 2, characterized in that, The elements in the second sequence take a first value and a second value. The first value corresponds to the elements in the first sequence that are less than N / 2, and the second value corresponds to the elements in the first sequence that are greater than or equal to N / 2. The step of determining a fifth sequence of length 2N based on the second sequence, the third sequence of length N, and the fourth sequence of length N includes: The sixth sequence is determined based on the fourth sequence, wherein the k-th element of the sixth sequence is the sum of the k-th element of the fourth sequence and N; The fifth sequence is determined based on the second sequence, the third sequence, and the sixth sequence. The position of the j-th element in the third sequence in the fifth sequence is the same as the position of the j-th first value in the second sequence, where j = 0, 1, ..., N-1. The position of the k-th element in the sixth sequence in the fifth sequence is the same as the position of the k-th second value in the second sequence, where k = 0, 1, ..., N-1. The method as described in any one of claims 1, 2, 7, 9-12, is characterized in that, The second sequence satisfies: kron(Q A ,[1,1]); Where kron(A, B) represents the Kronecker product of A and B, Q A Represents the first sequence, or, Q A The first sequence is quantized. The method as described in claim 10, characterized in that, Before determining the fifth sequence based on the second sequence, the third sequence, and the sixth sequence, the method further includes: Obtain the position of the element in the second sequence whose value is less than N / 2; and / or, Obtain the position of the element in the second sequence whose value is greater than or equal to N / 2. The method as described in claim 14, characterized in that, The second sequence satisfies: kron(Q A ,[1,1]); Where kron(A, B) represents the Kronecker product of A and B, Q A This refers to the first sequence. The method as described in claim 12, characterized in that, Before determining the fifth sequence based on the second sequence, the third sequence, and the sixth sequence, the method further includes: Obtain the position of the first value in the second sequence; and / or, Obtain the position of the second value in the second sequence. The method as described in claim 16, characterized in that, The second sequence satisfies: kron(Q A ,[1,1]); Where kron(A, B) represents the Kronecker product of A and B, Q A The first sequence is quantized. The method as described in any one of claims 1-2 and 6-17 is characterized in that, The first sequence is an NR sequence. The method as described in any one of claims 1-2 and 6-18 is characterized in that, At least two of the first sequence, the third sequence, and the fourth sequence are identical. The method as described in any one of claims 1-2 and 6-19 is characterized in that, At least one of the third and fourth sequences is the same as the first sequence. The method as described in any one of claims 1-20, characterized in that, N=2 M M is greater than or equal to 5. The method as described in any one of claims 1-2 and 5-21 is characterized in that, N = 128, and at least one of the first sequence, the third sequence, or the fourth sequence is: [0,1,2,4,8,16,32,3,5,64,9,6,17,10,18,12,33,65,20,34,24,36,7,66,11,40,68,19,13,48,14,72,21,35,26,80,37,25,22,38,96,67,41,28,69,42,49,74,70,44,81,50,73,15,52,23,76,82,56,27,97,39,84,29,43,98,88,30,71,45,100,51,46,75,104,53,77,54,83,57,112,78,85,58,99,86,60,89,101,31,90,102,105,92,47,106,55,113,79,108,59,114,87,116,61,91,120,62,103,93,107,94,109,115,110,117,118,121,122,63,124,95,111,119,123,125,126,127]。 The method as described in any one of claims 1-2 and 5-21 is characterized in that, N = 256, and at least one of the first sequence, the third sequence, or the fourth sequence is: [0,1,2,4,8,16,32,3,5,64,9,6,17,10,18,128,12,33,65,20,34,24,36,7,129,66,11,40,68,130,19,13,48,14,72,21,132,35,26,80,37,25,22,136,38,96,67,41,144,28,69,42,49,74,160,192,70,44,131,81,50,73,15,133,52,23,134,76,137,82,56,27,97,39,84,138,145,29,43,98,88,140,30,146,71,161,45,100,51,148,46,75,104,162,53,193,152,77,164,54,83,57,112,135,78,194,85,58,168,139,99,86,60,89,196,141,101,147,176,142,31,200,90,149,102,105,163,92,47,208,150,153,165,106,55,113,154,79,108,224,166,195,59,169,114,156,87,197,116,170,61,177,91,198,172,120,201,62,143,103,178,93,202,107,180,151,209,94,204,155,210,109,184,115,167,225,157,110,117,212,171,226,216,158,118,173,121,199,179,228,174,122,203,63,181,232,124,205,182,211,185,240,206,95,213,186,227,111,214,188,217,229,159,119,218,230,233,175,123,220,183,234,125,241,207,187,236,126,242,244,189,215,219,231,248,190,221,235,222,237,243,238,245,127,191,246,249,250,252,223,239,251,247,253,254,255]。 The method as described in any one of claims 1-2 and 5-21 is characterized in that, N = 512, and at least one of the first sequence, the third sequence, or the fourth sequence is: [0,1,2,4,8,16,32,3,5,64,9,6,17,10,18,128,12,33,65,20,256,34,24,36,7,129,66,11,40,68,130,19,13,48,14,72,257,21,132,35,258,26,80,37,25,22,136,260,264,38,96,67,41,144,28,69,42,49,74,272,160,288,192,70,44,131,81,50,73,15,320,133,52,23,134,384,76,137,82,56,27,97,39,259,84,138,145,261,29,43,98,88,140,30,146,71,262,265,161,45,100,51,148,46,75,266,273,104,162,53,193,152,77,164,268,274,54,83,57,112,135,78,289,194,85,276,58,168,139,99,86,60,280,89,290,196,141,101,147,176,142,321,31,200,90,292,322,263,149,102,105,304,296,163,92,47,267,385,324,208,386,150,153,165,106,55,328,113,154,79,269,108,224,166,195,270,275,291,59,169,114,277,156,87,197,116,170,61,281,278,177,293,388,91,198,172,120,201,336,62,282,143,103,178,294,93,202,323,392,297,107,180,151,209,284,94,204,298,400,352,325,155,210,305,300,109,184,115,167,225,326,306,157,329,110,117,212,171,330,226,387,308,216,416,271,279,158,337,118,332,389,173,121,199,179,228,338,312,390,174,393,283,122,448,353,203,63,340,394,181,295,285,232,124,205,182,286,299,354,211,401,185,396,344,240,206,95,327,402,356,307,301,417,213,186,404,227,418,302,360,111,331,214,309,188,449,217,408,229,159,420,310,333,119,339,218,368,230,391,313,450,334,233,175,123,341,220,314,424,395,355,287,183,234,125,342,316,241,345,452,397,403,207,432,357,187,236,126,242,398,346,456,358,405,303,244,189,361,215,348,419,406,464,362,409,219,311,421,410,231,248,369,190,364,335,480,315,221,370,422,425,451,235,412,343,372,317,222,426,453,237,433,347,243,454,318,376,428,238,359,457,399,434,349,245,458,363,127,191,407,436,465,246,350,460,249,411,365,440,374,423,466,250,371,481,413,366,468,429,252,373,482,427,414,223,472,455,377,435,319,484,430,488,239,378,459,437,380,461,496,351,467,438,251,462,442,441,469,247,367,253,375,444,470,483,415,485,473,474,254,379,431,489,486,476,439,490,463,381,497,492,443,382,498,445,471,500,446,475,487,504,255,477,491,478,383,493,499,502,494,501,447,505,506,479,508,495,503,507,509,510,511]。 The method as described in any one of claims 1-2 and 5-21 is characterized in that, N = 1024, and at least one of the first sequence, the third sequence, or the fourth sequence is: [0,1,2,4,8,16,32,3,5,64,9,6,17,10,18,128,12,33,65,20,256,34,24,36,7,129,66,512,11,40,68,130,19,13,48,14,72,257,21,132,35,258,26,513,80,37,25,22,136,260,264,38,514,96,67,41,144,28,69,42,516,49,74,272,160,520,288,528,192,544,70,44,131,81,50,73,15,320,133,52,23,134,384,76,137,82,56,27,97,39,259,84,138,145,261,29,43,98,515,88,140,30,146,71,262,265,161,576,45,100,640,51,148,46,75,266,273,517,104,162,53,193,152,77,164,768,268,274,518,54,83,57,521,112,135,78,289,194,85,276,522,58,168,139,99,86,60,280,89,290,529,524,196,141,101,147,176,142,530,321,31,200,90,545,292,322,532,263,149,102,105,304,296,163,92,47,267,385,546,324,208,386,150,153,165,106,55,328,536,577,548,113,154,79,269,108,578,224,166,519,552,195,270,641,523,275,580,291,59,169,560,114,277,156,87,197,116,170,61,531,525,642,281,278,526,177,293,388,91,584,769,198,172,120,201,336,62,282,143,103,178,294,93,644,202,592,323,392,297,770,107,180,151,209,284,648,94,204,298,400,608,352,325,533,155,210,305,547,300,109,184,534,537,115,167,225,326,306,772,157,656,329,110,117,212,171,776,330,226,549,538,387,308,216,416,271,279,158,337,550,672,118,332,579,540,389,173,121,553,199,784,179,228,338,312,704,390,174,554,581,393,283,122,448,353,561,203,63,340,394,527,582,556,181,295,285,232,124,205,182,643,562,286,585,299,354,211,401,185,396,344,586,645,593,535,240,206,95,327,564,800,402,356,307,301,417,213,568,832,588,186,646,404,227,896,594,418,302,649,771,360,539,111,331,214,309,188,449,217,408,609,596,551,650,229,159,420,310,541,773,610,657,333,119,600,339,218,368,652,230,391,313,450,542,334,233,555,774,175,123,658,612,341,777,220,314,424,395,673,583,355,287,183,234,125,557,660,616,342,316,241,778,563,345,452,397,403,207,674,558,785,432,357,187,236,664,624,587,780,705,126,242,565,398,346,456,358,405,303,569,244,595,189,566,676,361,706,589,215,786,647,348,419,406,464,680,801,362,590,409,570,788,597,572,219,311,708,598,601,651,421,792,802,611,602,410,231,688,653,248,369,190,364,654,659,335,480,315,221,370,613,422,425,451,614,543,235,412,343,372,775,317,222,426,453,237,559,833,804,712,834,661,808,779,617,604,433,720,816,836,347,897,243,662,454,318,675,618,898,781,376,428,665,736,567,840,625,238,359,457,399,787,591,678,434,677,349,245,458,666,620,363,127,191,782,407,436,626,571,465,681,246,707,350,599,668,790,460,249,682,573,411,803,789,709,365,440,628,689,374,423,466,793,250,371,481,574,413,603,366,468,655,900,805,615,684,710,429,794,252,373,605,848,690,713,632,482,806,427,904,414,223,663,692,835,619,472,455,796,809,714,721,837,716,864,810,606,912,722,696,377,435,817,319,621,812,484,430,838,667,488,239,378,459,622,627,437,380,818,461,496,669,679,724,841,629,351,467,438,737,251,462,442,441,469,247,683,842,738,899,670,783,849,820,728,928,791,367,901,630,685,844,633,711,253,691,824,902,686,740,850,375,444,470,483,415,485,905,795,473,634,744,852,960,865,693,797,906,715,807,474,636,694,254,717,575,913,798,811,379,697,431,607,489,866,723,486,908,718,813,476,856,839,725,698,914,752,868,819,814,439,929,490,623,671,739,916,463,843,381,497,930,821,726,961,872,492,631,729,700,443,741,845,920,382,822,851,730,498,880,742,445,471,635,932,687,903,825,500,846,745,826,732,446,962,936,475,853,867,637,907,487,695,746,828,753,854,857,504,799,255,964,909,719,477,915,638,748,944,869,491,699,754,858,478,968,383,910,815,976,870,917,727,493,873,701,931,756,860,499,731,823,922,874,918,502,933,743,760,881,494,702,921,501,876,847,992,447,733,827,934,882,937,963,747,505,855,924,734,829,965,938,884,506,749,945,966,755,859,940,830,911,871,639,888,479,946,750,969,508,861,757,970,919,875,862,758,948,977,923,972,761,877,952,495,703,935,978,883,762,503,925,878,735,993,885,939,994,980,926,764,941,967,886,831,947,507,889,984,751,942,996,971,890,509,949,973,1000,892,950,863,759,1008,510,979,953,763,974,954,879,981,982,927,995,765,956,887,985,997,986,943,891,998,766,511,988,1001,951,1002,893,975,894,1009,955,1004,1010,957,983,958,987,1012,999,1016,767,989,1003,990,1005,959,1011,1013,895,1006,1014,1017,1018,991,1020,1007,1015,1019,1021,1022,1023]。 A communication device, characterized in that, Includes units or modules for performing the method as described in any one of claims 1-25. A communication device, characterized in that, Includes a processor for executing computer programs or instructions to implement the method as described in any one of claims 1-25. A computer-readable storage medium, characterized in that, The storage medium stores a computer program or instructions, and when the computer program or instructions are executed by a communication device, the method as described in any one of claims 1-25 is implemented. A computer program product, characterized in that, When the computer program product is executed by a computer, the computer executes the method as described in any one of claims 1-25. A chip system, characterized in that, Including logic circuits; The logic circuit is configured to execute a computer-executable program, enabling a device equipped with the chip system to perform the method as described in any one of claims 1-25.