Communication method and apparatus
By constructing various encoding matrices, the problem of poor decoding performance when N is an integer power of 2 is solved, the error correction performance in different communication scenarios is improved, and the construction of encoding matrices is simplified.
Patent Information
- Application Number
- PCT/CN2025/096932
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-06-17
- Filing Date
- 2025-05-23
- Publication Date
- 2025-12-26
AI Technical Summary
Existing technologies have a unique encoding matrix when N is an integer power of 2, which makes it impossible to obtain good decoding performance at all K values simultaneously. Furthermore, rate matching when N is not an integer power of 2 leads to a decrease in decoding performance.
By constructing an N x N matrix, and using the second matrix, third matrix, second set, third set, and first indicator sequence, the coding matrix for different communication scenarios is determined, thereby improving error correction performance.
It achieves flexibility and efficient error correction performance under different N and K conditions, and reduces the complexity of constructing the encoding matrix.
Smart Images

Figure CN2025096932_26122025_PF_FP_ABST
Abstract
Description
Communication methods and devices
[0001] This application claims priority to Chinese patent application No. 202410783498.7, filed on June 17, 2024, entitled "Communication Method and Apparatus", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of communication technology, and in particular to communication methods and apparatus. Background Technology
[0003] In communication systems, polar codes can be used to encode information bit sequences. For example, an information bit sequence of length K can be mapped to a first sequence of length N, and then the first sequence can be multiplied by the encoding matrix to obtain the encoded information bit sequence. When N is an integer power of 2, this can be achieved by multiplying the matrix... Performing log2N Kronecker products yields an encoding matrix with N rows.
[0004] However, when N is an integer power of 2, there is only one encoding matrix, which cannot achieve good decoding performance under all K values simultaneously. At the same time, when N is not an integer power of 2, rate matching is required for the encoding matrix with the minimum number of rows that is an integer power of 2 greater than N to obtain an encoding matrix with N rows, which leads to a decrease in decoding performance.
[0005] Therefore, how to construct a better coding matrix for different N and K to improve error correction performance has become an urgent problem to be solved. Summary of the Invention
[0006] This application provides a communication method and apparatus that can construct a better coding matrix for different N and K values to improve error correction performance.
[0007] Firstly, this application provides a communication method that can be executed by a transmitting device. Unless otherwise specified, "transmitting device" in this application can refer to the transmitting device itself, a component within the transmitting device (e.g., a processor, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the transmitting device. The method includes: the transmitting device performing polar encoding on a first sequence of length N according to a first matrix to obtain a second sequence; and outputting one or more bits of the second sequence. The first matrix is an N x N matrix, determined by one or more of the following: a second matrix, a third matrix, a second set, a third set, or a first indicator sequence; the second matrix is a p x p matrix, the third matrix is a q x q matrix, the sum of p and q is N, and both p and q are greater than 0; the second set includes p positive integers less than or equal to N, the third set includes q positive integers less than or equal to N, and the intersection of the second and third sets is an empty set; the first indicator sequence includes q elements, the t-th element in the first indicator sequence is used to indicate the positional relationship between the t-th row of the third matrix and the x-th row of the second matrix, x is determined by the t-th element in the third set from smallest to largest and the t-th element in the first indicator sequence, t = 1, 2, 3, ..., q.
[0008] Based on the first aspect, multiple first matrices can be constructed based on N. That is, during the construction of the first matrix, multiple second and third matrices can be determined while ensuring that the sum of the number of rows or columns of the second and third matrices is N. Correspondingly, multiple second sets can be determined while ensuring that the second set includes p positive integers less than or equal to N, and multiple third sets can be determined while ensuring that the third set includes q positive integers less than or equal to N. Different second matrices, third matrices, second sets, and third sets can construct different first matrices. Therefore, the corresponding first matrix can be determined according to different communication scenarios (such as N being the same, but K (K being the number of information bits in the first sequence) being different), so as to ensure that the error correction performance of the first matrix is better under different communication scenarios, thereby improving the decoding performance. In addition, compared to rate matching of the encoding matrix with the number of rows (or columns) being an integer power of 2 to obtain first matrices with different numbers of rows (or columns), in this application, first matrices with different numbers of rows (or columns) can be directly constructed according to the above method, which can improve the flexibility of constructing the first matrix and reduce the complexity of constructing the first matrix, thereby simplifying the implementation.
[0009] One possible implementation is that the sending device acquires the first sequence, which includes one or more of the following: information bits, CRC bits, check bits, or frozen bits.
[0010] Secondly, this application provides a communication method that can be executed by a receiving device. Unless otherwise specified, "receiving device" in this application can refer to the receiving device itself, a component within the receiving device (e.g., a processor, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the receiving device. The method includes: the receiving device receiving information to be decoded; and decoding the information to be decoded according to a first matrix. Wherein, the length of the first sequence corresponding to the information to be decoded is N; the first matrix is an N-row N-column matrix, and the first matrix is determined according to one or more of the following: a second matrix, a third matrix, a second set, a third set, or a first indicator sequence; the second matrix is a p-row p-column matrix, the third matrix is a q-row q-column matrix, the sum of p and q is N, and both p and q are greater than 0; the second set includes p positive integers less than or equal to N, the third set includes q positive integers less than or equal to N, and the intersection of the second set and the third set is an empty set; the first indicator sequence includes q elements, and the t-th element in the first indicator sequence is used to indicate the positional relationship between the t-th row of the third matrix and the x-th row of the second matrix, where x is determined according to the t-th element in the third set from smallest to largest and the t-th element in the first indicator sequence, t = 1, 2, 3, ..., q.
[0011] Based on the second aspect, multiple first matrices can be constructed based on N. That is, during the construction of the first matrix, multiple second and third matrices can be determined if the sum of the number of rows or columns of the second and third matrices is N. Correspondingly, multiple second sets can be determined if the second set includes p positive integers less than or equal to N, and multiple third sets can be determined if the third set includes q positive integers less than or equal to N. Different second matrices, third matrices, second sets, and third sets can construct different first matrices. Therefore, the corresponding first matrix can be determined according to different communication scenarios (such as the same N, but different K (K is the number of information bits in the first sequence)) to ensure that the error correction performance of the first matrix is better under different communication scenarios, thereby improving the decoding performance. In addition, compared with rate matching of the encoding matrix with the number of rows (or columns) being an integer power of 2 to obtain first matrices with different numbers of rows (or columns), in this application, first matrices with different numbers of rows (or columns) can be directly constructed according to the above method, which can improve the flexibility of constructing the first matrix and reduce the complexity of constructing the first matrix, thereby simplifying the implementation.
[0012] Combining the first and second aspects, in one possible implementation, x is the difference between the first difference and the t-th element in the first indicator sequence; wherein the first difference is the difference between the t-th element in the third set from smallest to largest and (t-1).
[0013] Based on the above possible implementations, x can be determined according to the first difference and the elements in the first indicator sequence, providing a feasible solution for determining x.
[0014] Combining the first and second aspects, in one possible implementation, the elements in the rows and columns of the first matrix that correspond to the second set are the same as the elements of the second matrix.
[0015] Combining the first and second aspects, in one possible implementation, the elements in the first matrix corresponding to the third set in the rows and columns are the same as the elements in the third matrix.
[0016] Combining the first and second aspects, in one possible implementation, the elements in the first matrix corresponding to the second set and the elements in the columns corresponding to the third set are 0.
[0017] Combining the first and second aspects, in one possible implementation, the elements in the row corresponding to the third set and the column corresponding to the second set in the first matrix are the same as the elements in the row corresponding to the fifth set and the 1st to pth columns in the second matrix; wherein the t-th element in the fifth set is determined based on the t-th element in the third set in ascending order.
[0018] Based on the above four possible implementations, the first matrix can be determined according to the second set, the third set, the second matrix, and the third matrix. A feasible scheme for determining the first matrix is proposed, which is to place the t-th row of the second matrix below the coupled rows of the first matrix, thereby reducing the complexity of constructing the first matrix.
[0019] Combining the first and second aspects, in one possible implementation, the t-th element in the fifth set is the difference between the t-th element in the third set (from smallest to largest) and t.
[0020] Based on this possible implementation, the elements in the fifth set can be determined according to the elements in the third set and t, providing a feasible solution for determining the elements in the fifth set.
[0021] Combining the first and second aspects, in one possible implementation, the elements in the rows and columns of the first matrix that correspond to the second set are the same as the elements of the second matrix.
[0022] Combining the first and second aspects, in one possible implementation, the elements in the first matrix corresponding to the third set in the rows and columns are the same as the elements in the third matrix.
[0023] Combining the first and second aspects, in one possible implementation, the elements in the first matrix corresponding to the third set and the elements in the columns corresponding to the second set are 0.
[0024] Combining the first and second aspects, in one possible implementation, the elements in the row corresponding to the sixth set and the column corresponding to the third set in the first matrix are the same as the elements in the third matrix; wherein, the t-th element in the sixth set is determined based on the t-th element in the third set in ascending order.
[0025] Combining the first and second aspects, in one possible implementation, the elements in the first matrix corresponding to the positive integers in the second set (excluding the sixth set) and the elements in the columns corresponding to the third set are 0.
[0026] Based on the above five possible implementations, the first matrix can be determined according to the second set, the third set, the second matrix, and the third matrix. A feasible scheme for determining the first matrix is proposed, which is to place the t-th row of the second matrix above the coupled rows of the first matrix, thereby reducing the complexity of constructing the first matrix.
[0027] Combining the first and second aspects, in one possible implementation, the t-th element in the sixth set is the sum of the t-th element in the third set from smallest to largest and 1.
[0028] Based on this possible implementation, elements in the sixth set can be determined from elements in the third set, and a feasible scheme for determining elements in the sixth set is proposed.
[0029] Combining the first and second aspects, in one possible implementation, the elements in the rows and columns of the first matrix that correspond to the second set are the same as the elements of the second matrix.
[0030] Combining the first and second aspects, in one possible implementation, the elements in the first matrix corresponding to the third set in the rows and columns are the same as the elements in the third matrix.
[0031] Combining the first and second aspects, in one possible implementation, the elements in the first matrix corresponding to the rows of positive integers in the second set excluding the fourth set and the columns corresponding to the third set are 0; wherein, the t-th element in the fourth set is determined based on the t-th element in the third set in ascending order and the t-th element in the first indicator sequence.
[0032] Combining the first and second aspects, in one possible implementation, when the t-th element in the first indicator sequence is 1, the elements in the (j-1)-th row of the first matrix and the column corresponding to the third set are 0; or, when the t-th element in the first indicator sequence is 0, the elements in the j-th row of the first matrix and the column corresponding to the second set are 0; j is the t-th element in the third set from smallest to largest.
[0033] Combining the first and second aspects, in one possible implementation, when the t-th element in the first indicator sequence is 1, the elements in row j of the first matrix and the column corresponding to the second set are the same as the elements in row x of the second matrix and columns 1 to p of the second matrix; or, when the t-th element in the first indicator sequence is 0, the elements in row j+1 of the first matrix and the column corresponding to the third set are the same as the elements in row t of the third matrix and columns 1 to q of the third matrix; where j is the t-th element in the third set.
[0034] Based on the above five possible implementations, the first matrix can be determined according to the first indicator sequence, the second set, the third set, the second matrix, and the third matrix. A feasible scheme for determining the first matrix is proposed, which can determine whether the t-th row of the second matrix is placed above or below the coupled rows of the first matrix through the first indicator sequence, thereby improving the flexibility of constructing the first matrix.
[0035] In a possible implementation, combining the first and second aspects, the second matrix is determined according to one or more of the following: a fourth matrix, a fifth matrix, a seventh set, an eighth set, or a second indicator sequence; the fourth matrix is an a-row a-column matrix, the fifth matrix is a b-row b-column matrix, the sum of a and b is p, and both a and b are greater than 0; the seventh set includes a positive integers less than or equal to p, the eighth set includes b positive integers less than or equal to p, and the intersection of the seventh set and the eighth set is an empty set; the second indicator sequence includes b elements, and the m-th element in the third set is used to indicate the positional relationship between the m-th row of the fifth matrix and the y-th row of the fourth matrix, where y is determined according to the m-th element of the eighth set and the m-th element of the second indicator sequence, m = 1, 2, 3, ..., b.
[0036] Based on this possible implementation, a second matrix can be constructed in the same way as the first matrix, providing a feasible solution for determining the second matrix.
[0037] Combining the first and second aspects, in one possible implementation, the third matrix is determined according to one or more of the following: a sixth matrix, a seventh matrix, a ninth set, a tenth set, or a third indicator sequence; the sixth matrix is a c-row, c-column matrix, the seventh matrix is a d-row, d-column matrix, the sum of c and d is q, and both c and d are greater than 0; the ninth set includes c positive integers less than or equal to q, the tenth set includes d positive integers less than or equal to q, and the intersection of the ninth and tenth sets is an empty set; the third indicator sequence includes d elements, the nth element of the third indicator sequence is used to indicate the positional relationship between the nth row of the seventh matrix and the zth row of the sixth matrix, z is determined according to the nth element of the tenth set and the nth element of the third indicator sequence, n = 1, 2, 3, ..., d.
[0038] Based on this possible implementation, a third matrix can be constructed in the same way as the first matrix, providing a feasible solution for determining the third matrix.
[0039] Combining the first and second aspects, in one possible implementation, p is greater than or equal to q.
[0040] Based on this possible implementation, a feasible solution is provided for determining p and q.
[0041] Combining the first and second aspects, in one possible implementation, when N is 4 and K is 2, the first matrix is: Alternatively, when N is 5 and K is 2, the first matrix is: Alternatively, when N is 5 and K is 3, the first matrix is: Alternatively, when N is 6 and K is 3, the first matrix is: Alternatively, when N is 7 and K is 2, the first matrix is: Alternatively, when N is 7 and K is 5, the first matrix is: Alternatively, when N is 8 and K is 2, the first matrix is: Alternatively, when N is 8 and K is 3, the first matrix is: Alternatively, when N is 8 and K is 5, the first matrix is: Alternatively, when N is 8 and K is 6, the first matrix is: Alternatively, when N is 9 and K is 6, the first matrix is: Alternatively, when N is 10 and K is 7, the first matrix is: Alternatively, when N is 14 and K is 7, the first matrix is: Alternatively, when N is 15 and K is 6, the first matrix is: Alternatively, when N is 16 and K is 2, the first matrix is: Alternatively, when N is 16 and K is 3, the first matrix is: Alternatively, when N is 16 and K is 6, the first matrix is: Alternatively, when N is 16 and K is 7, the first matrix is: Alternatively, when N is 16 and K is 8, the first matrix is: Alternatively, when N is 16 and K is 9, the first matrix is: Alternatively, when N is 16 and K is 12, the first matrix is: Alternatively, when N is 16 and K is 13, the first matrix is: Where K is the number of information bits in the first sequence.
[0042] Based on this possible implementation, for different N and K, this application determines the first matrix corresponding to different N and K based on the above method of determining the first matrix, so that the error correction performance of the determined first matrix is better and the decoding performance of the first matrix can be improved.
[0043] Thirdly, embodiments of this application provide a communication device that can be applied to the transmitting end device described in the first aspect to realize the functions performed by the transmitting end device. The communication device can be the transmitting end device itself, or it can be a chip, chip system, or system-on-a-chip of the transmitting end device, etc. The communication device can execute the functions performed by the transmitting end device through hardware, or it can execute corresponding software through hardware. The hardware or software includes one or more modules corresponding to the above functions. For example, a transceiver module and a processing module. The transceiver module can independently complete the following transceiver operations, or it can cooperate with the processing module to complete the following transceiver operations; correspondingly, the processing module can independently complete the following processing operations, or it can cooperate with the transceiver module to complete the following processing operations, without limitation.
[0044] For example, a processing module is used to perform polar encoding on a first sequence of length N according to a first matrix to obtain a second sequence; wherein, the first matrix is an N-row N-column matrix, and the first matrix is determined according to one or more of the following: a second matrix, a third matrix, a second set, a third set, or a first indicator sequence; the second matrix is a p-row p-column matrix, the third matrix is a q-row q-column matrix, the sum of p and q is N, and both p and q are greater than 0; the second set includes p positive integers less than or equal to N, the third set includes q positive integers less than or equal to N, and the intersection of the second set and the third set is an empty set; the first indicator sequence includes q elements, and the t-th element in the first indicator sequence is used to indicate the positional relationship between the t-th row of the third matrix and the x-th row of the second matrix, where x is determined according to the t-th element in the third set in ascending order and the t-th element in the first indicator sequence, t = 1, 2, 3, ..., q. A transceiver module is used to output one or more bits of the second sequence.
[0045] Optionally, the transceiver module and processing module of the communication device in the third aspect may also perform the corresponding functions in the first aspect or any possible design of the first aspect, as detailed in the method examples, and the beneficial effects that can be achieved can also be found in the foregoing related content.
[0046] Fourthly, embodiments of this application provide a communication device that can be applied to the receiving device described in the second aspect to realize the functions performed by the receiving device. The communication device can be the receiving device itself, or it can be a chip, chip system, or system-on-a-chip of the receiving device. The communication device can execute the functions performed by the receiving device through hardware or through corresponding software. The hardware or software includes one or more modules corresponding to the functions described above. For example, a transceiver module and a processing module. The transceiver module can independently complete the following transceiver operations or cooperate with the processing module to complete the following transceiver operations; correspondingly, the processing module can independently complete the following processing operations or cooperate with the transceiver module to complete the following processing operations, without limitation.
[0047] For example, the transceiver module is used to receive information to be decoded; wherein the length of the first sequence corresponding to the information to be decoded is N. The processing module is used to decode the information to be decoded according to the first matrix; wherein the first matrix is an N-row N-column matrix, and the first matrix is determined according to one or more of the following: a second matrix, a third matrix, a second set, a third set, or a first indicator sequence; the second matrix is a p-row p-column matrix, the third matrix is a q-row q-column matrix, the sum of p and q is N, and both p and q are greater than 0; the second set includes p positive integers less than or equal to N, the third set includes q positive integers less than or equal to N, and the intersection of the second set and the third set is an empty set; the first indicator sequence includes q elements, and the t-th element in the first indicator sequence is used to indicate the positional relationship between the t-th row of the third matrix and the x-th row of the second matrix, where x is determined according to the t-th element in the third set from smallest to largest and the t-th element in the first indicator sequence, t = 1, 2, 3, ..., q.
[0048] Optionally, the transceiver module and processing module of the communication device in the fourth aspect may also perform the corresponding functions in the second aspect or any possible design of the second aspect, as detailed in the method examples, and the beneficial effects that can be achieved can also be found in the foregoing related content.
[0049] Fifthly, embodiments of this application provide a communication device, which includes one or more processors; the one or more processors are configured to run computer programs or instructions, such that when the one or more processors execute the computer instructions or instructions, the communication method described in any one of the first to second aspects is performed.
[0050] In one possible design, the communication device further includes one or more memories coupled to one or more processors, the memories used to store the aforementioned computer programs or instructions. In one possible implementation, the memories are located outside the communication device. In another possible implementation, the memories are located inside the communication device. In embodiments of this application, the processor and memory may also be integrated into a single device, i.e., the processor and memory may be integrated together. In one possible implementation, the communication device further includes a transceiver for receiving and / or transmitting information.
[0051] In one possible design, the communication device further includes one or more communication interfaces coupled to one or more processors, and the communication interfaces are used to communicate with other modules outside the communication device.
[0052] In a sixth aspect, embodiments of this application provide a communication device, which includes an interface circuit and a logic circuit; the interface circuit is used for inputting and / or outputting information; the logic circuit is used for executing the communication method as described in either the first or second aspect, processing and / or generating information based on the information.
[0053] In a seventh aspect, embodiments of this application provide a computer-readable storage medium storing computer instructions or programs that, when executed on a computer, cause the communication method described in either the first or second aspect to be performed.
[0054] Eighthly, embodiments of this application provide a computer program product containing computer instructions that, when run on a computer, causes the communication method described in either the first or second aspect to be executed.
[0055] Ninthly, embodiments of this application provide a computer program that, when run on a computer, causes the communication method described in either the first or second aspect to be executed.
[0056] In a tenth aspect, embodiments of this application provide a chip, including: a processor coupled to a memory, the memory being used to store programs or instructions, wherein when the program or instructions are executed by the processor, a communication method as described in either the first or second aspect is executed.
[0057] The technical effects of any of the design methods in aspects three through ten are similar to those in aspects one and two above, and will not be elaborated upon further.
[0058] Eleventhly, embodiments of this application provide a communication system that may include communication means for performing the communication as described in the first aspect or any possible design of the first aspect, and communication means for performing the communication as described in the second aspect or any possible design of the second aspect. Attached Figure Description
[0059] Figure 1 is a schematic diagram of a Polar code encoding provided in an embodiment of this application;
[0060] Figure 2 is a schematic diagram of a Polar code decoding method provided in an embodiment of this application;
[0061] Figure 3 is a schematic diagram of a polarization coupling process provided in an embodiment of this application;
[0062] Figure 4 is a schematic diagram of a 3-core embodiment provided in this application;
[0063] Figure 5 is a schematic diagram of a communication system provided in an embodiment of this application;
[0064] Figure 6 is a schematic diagram of encoding and decoding performed by a transmitting end device and a receiving end device according to an embodiment of this application;
[0065] Figure 7 is a schematic diagram of the composition of a communication device provided in an embodiment of this application;
[0066] Figure 8 is an interactive schematic diagram of a communication method provided in an embodiment of this application;
[0067] Figure 9 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0068] Figure 10 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0069] Figure 11 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0070] Figure 12 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0071] Figure 13 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0072] Figure 14 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0073] Figure 15 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0074] Figure 16 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0075] Figure 17 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0076] Figure 18 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0077] Figure 19 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0078] Figure 20 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0079] Figure 21 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0080] Figure 22 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0081] Figure 23 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0082] Figure 24 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0083] Figure 25 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0084] Figure 26 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0085] Figure 27 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0086] Figure 28 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0087] Figure 29 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0088] Figure 30 is a simulation diagram of the performance corresponding to different first matrices provided in the embodiments of this application;
[0089] Figure 31 is a schematic diagram of the structure of a transmitting device provided in an embodiment of this application;
[0090] Figure 32 is a schematic diagram of the structure of a receiving device provided in an embodiment of this application;
[0091] Figure 33 is a schematic diagram of the structure of a communication device provided in an embodiment of this application. Detailed Implementation
[0092] Before describing the embodiments of this application, the technical terms involved in the embodiments of this application will be described.
[0093] Polar codes: 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 third generation partnership project (3GPP) standard as the control channel coding scheme for the fifth generation (5G) enhanced mobile broadband (eMBB) scenario.
[0094] Figure 1 below shows a schematic diagram of an 8-bit Polar code encoding, also known as a factor graph. The Polar code encoding process can include several polarization kernel operations. The polarization kernel is used to combine two input bits with a matrix. Multiplying them yields two output bits. It can be seen that during the recursive construction of Polar codes, an 8-bit Polar code can be considered as a result of coupling two 4-bit Polar codes, and similarly, a 4-bit Polar code can be considered as a result of coupling two 2-bit Polar codes.
[0095] For example, when the input sequence (input from the left) is “00000011”, the output sequence (output from the right) can be “01010101”.
[0096] Similarly, a Polar code of length N can be seen as a result of coupling two Polar codes of length N / 2, and a Polar code of length N / 2 can be seen as a result of coupling two Polar codes of length N / 4.
[0097] Where N is a positive integer.
[0098] The construction process of Polar codes is used to determine the information bit positions and frozen bit positions. The reliability of each sub-channel can be ranked, and the K positions with the highest reliability are designated as information bit positions, while the remaining NK positions are designated as frozen bit positions. As shown in Figure 1, taking the construction of a Polar code with N=8 and K=4 as an example, assuming the zeroth position is the starting position, the third, fifth, sixth, and seventh positions have the highest reliability, and thus these positions can be designated as information bit positions, with the remaining positions as frozen bit positions; or assuming the first position is the starting position, the fourth, sixth, seventh, and eighth positions have the highest reliability, and thus these positions can be designated as information bit positions, with the remaining positions as frozen bit positions.
[0099] Where K is a positive integer.
[0100] In practice, Polar codes can be obtained offline through reliability sequences or online through methods such as Gaussian approximation; this application does not limit this to any particular method.
[0101] The receiving device can decode the encoded Polar code using a Successive Cancellation (SC) decoding algorithm. During SC decoding, the bit value of the information bit is determined by progressively calculating the log likelihood ratio (LLR) of the information bits. For example, if LLR > 0, the bit value of the information bit can be determined to be 0; if LLR < 0, the bit value of the information bit can be determined to be 1. Furthermore, for frozen bits, regardless of the LLR of the frozen bit, the frozen bit is set to 0.
[0102] For example, the SC decoding process can be illustrated in Figure 2, which includes eight computation nodes: four f nodes and four g nodes. The computation of an f node requires two LLR terms to be input to the right of the f node, and the computation of a g node requires two LLR terms to be input to the right of the g node and one "partial sum" term to be input above the g node. The output can only be calculated after all input terms have been calculated. The receiving device can receive the signal from the right side of Figure 2. The received signal passes through the eight computation nodes in sequence to obtain the polar code decoding, i.e., the decoding order is: ①→②→③→④.
[0103] The encoding matrix of a Polar code: The encoding matrix of a Polar code can be represented as follows (that is, F) NLet F2 be the nth power of the Kronecker product, where... n = log₂N).
[0104] in, This means that the element in the first row and first column of F2 is 1, the element in the first row and second column is 0, the element in the second row and first column is 1, and the element in the second row and second column is 1. That is, F2 contains 4 elements, each of which is either 0 or 1.
[0105] It is understood that all elements in the matrix in this application are either "0" or "1". For example, for an N-row N-column matrix, there will be N×N elements, and each element is either 0 or 1. For the sake of convenience, no spaces are left between columns without affecting the understanding of the scheme.
[0106] For example, taking an information bit sequence of length K as an example, the information bit sequence can be mapped to a first sequence of length N (such as u). The first sequence can be encoded using the encoding matrix of a Polar code, and the encoded information bit sequence can be represented as d = uF. N .
[0107] Understandably, when the number of rows in the encoding matrix determined by the above method is a power of 2, rate matching is required when N is not a power of 2. For example, with N = 7, an 8-row encoding matrix F8 can be determined. This can be achieved by punching holes in the first row and first column of the 8-row encoding matrix, or by shortening the last row and last column of the 8-row encoding matrix. However, encoding matrices determined in this way will lead to a decrease in SC performance.
[0108] Furthermore, when the value of N is determined, the determined encoding matrix is unique, which may not result in optimal decoding performance for information bit sequences of different lengths.
[0109] Polarized nucleus: F N It can also be described as an Arikan polarization nucleus of length N, F N It can be obtained by coupling two polarization kernels of length N / 2. Alternatively, an Arikan polarization kernel of length N can be used to implement SC decoding through Nlog2N fg operations.
[0110] For example, Figure 3 below illustrates the coupling process of a polarization nucleus of length N. In the portion corresponding to each polarization nucleus, the left side represents the matrix corresponding to the polarization nucleus, and the right side represents the factor graph corresponding to the polarization nucleus. As shown in Figure 3(a), taking N=4 as an example, there are two polarization nuclei F2 of length 2. The matrix corresponding to F2 is... The factor graph corresponding to F2 is shown in Figure 3(a). Two polarization nuclei of length 2 can be coupled before polarization (as shown in the dashed box in Figure 3(a)) to obtain a polarization nucleus of length 4 (i.e., F4). Alternatively, as shown in Figure 3(b), taking N as 2 as an example, there are two polarization nuclei F1 of length 1. The matrix corresponding to F1 is [1]. The factor graph corresponding to F1 can be shown in Figure 3(b). Two polarization nuclei of length 1 can be coupled before polarization (as shown in the dashed box in Figure 3(b)).
[0111] It is understandable that different types of polarization kernels can be constructed by changing the edges of the factor graph. For example, as shown in Figure 4 below, the matrix (as shown on the left) and factor graph (as shown on the right) corresponding to a polarization kernel of length 3 (also called a 3-length kernel) are shown.
[0112] Alternatively, instead of changing the edges of the factor graph, a polarization kernel with superior coset code spectrum properties to the Arikan kernel can be constructed using the coset code spectrum, such as a 6-length kernel. The 6x6 coding matrix corresponding to the 6-length kernel can be:
[0113] For an N x N coding matrix, each row can be denoted as g1,…,g N g i The coset code can be represented as
[0114] Where c is a codeword of length N, u j Let j be the j-th information bit, where j = 1, ..., K.
[0115] Among them, Co i The minimum code weight of a Chinese codeword can be denoted as d. i The code weight is d i The number of codewords is denoted as A. i .
[0116] For example, taking g4 as an example, the coset code sequences corresponding to the 4th row are as follows: The codewords corresponding to (0,0,0,1,1,0), (0,0,0,1,0,1), and (0,0,0,1,1,1) are (1,0,1,0,0,0), (0,1,1,1,1,0), (0,1,0,0,0,1), and (1,0,1,0,1,1) respectively. The minimum code weight in the coset code is d4 = 2, and the number of codewords with code weight d4 = 2 is A4 = 2.
[0117] Specifically, when the length of the information bit sequence is K and the set of information bit positions is {i1,…,i...} K When defining minimum code weight The number of codewords corresponding to the minimum codeweight in the coset code is For example, when K=4 and the information bit position set is {3,4,5,6}, we have d3=2, A3=4; d4=2, A4=2; d5=4, A5=2; d6=4, A6=1, therefore d min =min{d3,d4,d5,d6}=2,A min =∑ j=3,4 A j =6.
[0118] However, since the polarization kernels with better coset code spectrum properties than the Arikan kernel do not have corresponding factor graphs, they cannot be decoded using the SC algorithm.
[0119] Based on the problems described above, this application provides a communication method, which includes: a transmitting device performing polar coding on a first sequence of length N according to a first matrix to obtain a second sequence; and outputting one or more bits of the second sequence. The first matrix is an N x N matrix, determined by one or more of the following: a second matrix, a third matrix, a second set, a third set, or a first indicator sequence; the second matrix is a p x p matrix, the third matrix is a q x q matrix, the sum of p and q is N, and both p and q are greater than 0; the second set includes p positive integers less than or equal to N, the third set includes q positive integers less than or equal to N, and the intersection of the second and third sets is an empty set; the first indicator sequence includes q elements, the t-th element of the first indicator sequence is used to indicate the positional relationship between the t-th row of the third matrix and the x-th row of the second matrix, where x is determined by the t-th element of the third set in ascending order and the t-th element of the first indicator sequence, t = 1, 2, 3, ..., q.
[0120] In this embodiment, multiple first matrices can be constructed based on N. That is, during the construction of the first matrix, multiple second and third matrices can be determined while ensuring that the sum of the number of rows or columns of the second and third matrices is N. Correspondingly, multiple second sets can be determined while ensuring that the second set includes p positive integers less than or equal to N, and multiple third sets can be determined while ensuring that the third set includes q positive integers less than or equal to N. Different second matrices, third matrices, second sets, and third sets can construct different first matrices. Therefore, the corresponding first matrix can be determined according to different communication scenarios (such as N being the same, but K (K being the number of information bits in the first sequence) being different) to ensure that the error correction performance of the first matrix is better under different communication scenarios, thereby improving the decoding performance. In addition, compared to rate matching of encoding matrices with a row (or column) number that is an integer power of 2 to obtain first matrices with different row (or column) numbers, in this application, first matrices with different row (or column) numbers can be directly constructed according to the above method, which can improve the flexibility of constructing the first matrix and reduce the complexity of constructing the first matrix, thereby simplifying the implementation.
[0121] The embodiments of this application will now be described in detail with reference to the accompanying drawings.
[0122] The communication method provided in this application embodiment can be used in any communication system, such as a 3GPP communication system, for example, a long term evolution (LTE) system, or a 5G mobile communication system, a hybrid LTE and 5G network system, a new radio (NR) system, a vehicle-to-everything (V2X) system, a device-to-device (D2D) communication system, a machine-to-machine (M2M) communication system, an Internet of Things (IoT) system, a narrow band Internet of Things (NB-IoT) system, a global system for mobile communications (GSM), an enhanced data rate for GSM evolution (EDGE) system, a wideband code division multiple access (WCDMA) system, a code division multiple access (CDMA2000) system, or a time division-synchronization code division multiple access (TDMA) system. Access, TD-SCDMA, enhanced mobile broadband (eMBB), ultra-reliable and low-latency communication (URLLC), enhanced machine-type communication (eMTC), and various types of future communication systems are not restricted. Non-terrestrial network (NTN) systems (such as satellite communication systems) and non-3GPP communication systems are also included.
[0123] The communication method provided in this application can be applied to various communication scenarios. For example, it can be applied to one or more of the following communication scenarios: coding of control channels, coding of data channels, etc., without limitation.
[0124] The communication system provided in the embodiments of this application will be described below using Figure 5 as an example.
[0125] Figure 5 is a schematic diagram of a communication system provided in an embodiment of this application. As shown in Figure 5, the communication system may include at least one terminal device and at least one network device.
[0126] In Figure 5, the terminal device can be located within the beam / cell coverage area of the network device, and the network device can provide communication services to the terminal device. For example, the network device can use channel coding to encode downlink data and then transmit it to the terminal device via air interface after constellation modulation (i.e., the network device is the transmitting device, and the terminal device is the receiving device); the terminal device can also use channel coding to encode uplink data and then transmit it to the network device via air interface after constellation modulation (i.e., the terminal device is the transmitting device, and the network device is the receiving device). It is understood that when network devices communicate with each other, or when terminal devices communicate with each other, communication can also be based on channel coding; that is, the transmitting and receiving devices can both be network devices or both be terminal devices, without restriction.
[0127] The terminal device in Figure 5 can be a device with wireless transceiver capabilities or a chip or chip system that can be installed on the device. It allows users to access the network and is used to provide voice and / or data connectivity to users. The terminal device can also be called user equipment (UE), subscriber unit, terminal, mobile station (MS), or mobile terminal (MT), etc.
[0128] For example, the terminal device in Figure 5 can be a mobile phone, a tablet computer, or a computer with wireless transceiver capabilities. Terminal equipment can also be user stations, mobile stations, remote stations, remote terminal equipment, mobile terminal equipment, user terminal equipment, wireless communication equipment, user agents, user devices, cellular phones, cordless phones, session initiation protocol (SIP) phones, wireless local loop (WLL) stations, personal digital assistants (PDAs), handheld devices with wireless communication capabilities, computing devices, processing devices connected to wireless modems, in-vehicle equipment, wearable devices, terminal equipment in the Internet of Things (IoT), home appliances, virtual reality (VR) terminals, augmented reality (AR) terminals, wireless terminals in industrial control, wireless terminals in autonomous driving, wireless terminals in telemedicine, wireless terminals in smart grids, wireless terminals in smart cities, wireless terminals in smart homes, vehicles with vehicle-to-vehicle (V2V) communication capabilities, intelligent connected vehicles, and UAV-to-UAV communication. Unmanned aerial vehicles (UAVs) with U2U communication capabilities, terminal devices in future networks, or terminal devices in future evolved public land mobile networks (PLMNs) are not subject to restrictions.
[0129] In Figure 5, the network device can be any device deployed in the access network capable of wireless communication with terminal devices. It can also be a chip or chip system that can be configured within such a device, a logical node or module, or a function implemented in software. Its main responsibilities include air interface-side wireless physical control, resource scheduling, wireless resource management, quality of service management, data compression and encryption, wireless access control, and mobility management. Specifically, the network device can be either a wired access device or a wireless access device.
[0130] For example, a network device can consist of one or more access network (AN) / radio access network (RAN) nodes. AN / RAN nodes can be various types of base stations, such as: satellite base stations, evolved Node Bs (gNBs), transmission reception points (TRPs), evolved Node Bs (eNBs), radio network controllers (RNCs), Node Bs (NBs), base station controllers (BSCs), base transceiver stations (BTSs), home base stations (e.g., home evolved Node Bs, or home Node Bs (HNBs), macro base stations, micro base stations, pico base stations, small cells, relay stations, balloon stations, drone stations, wireless backhaul nodes, base band units (BBUs), or wireless fidelity (Wi-Fi) access points (APs), etc. It is understood that network devices can be terrestrial devices or non-terrestrial devices (such as satellites, drones, high-altitude communication equipment, etc.). Furthermore, in communication systems employing different wireless access technologies, the names of network devices with base station functions may differ, and this application does not impose any restrictions on this.
[0131] In another example, the network equipment may include a BBU and a remote radio unit (RRU). The BBU and RRU can be located in different places; for example, the RRU can be moved remotely to a high-traffic area, while the BBU is located in the central equipment room. The BBU and RRU can also be located in the same equipment room. The BBU and RRU can also be different components under the same rack.
[0132] In another example, the network device can be a device that includes centralized unit (CU) nodes, distributed unit (DU) nodes, or both CU and DU nodes. For instance, the network device can be logically divided into CUs and DUs, with some protocol layer functions centrally controlled by the CU, and the remaining partial or complete protocol layer functions distributed in the DU, which is centrally controlled by the CU. The CU and DU can be separate entities or included in the same network element, such as a BBU. Furthermore, the centralized unit (CU) can be further divided into a control plane (CU-CP) and a user plane (CU-UP).
[0133] In another example, the network device may also be a device that includes a radio unit (RU), or a device that includes a CU, a DU, and a RU. The RU may be included in a radio frequency device or radio frequency unit, such as an RRU, an active antenna unit (AAU), or a remote radio head (RRH).
[0134] It is understood that CU (or CU-CP and CU-UP), DU, or RU may have different names in different systems, but those skilled in the art will understand their meaning. For example, in an open radio access network (O-RAN) system, CU can also be called O-CU (open CU), DU can also be called O-DU, CU-CP can also be called O-CU-CP, CU-UP can also be called O-CU-UP, and RU can also be called O-RU. For ease of description, this application uses CU, CU-CP, CU-UP, DU, and RU as examples. Any of the units among CU (or CU-CP, CU-UP), DU, and RU in this application can be implemented through software modules, hardware modules, or a combination of software modules and hardware modules.
[0135] Based on the above description of the terminal device and network device, optionally, the communication method provided in the embodiments of this application can be implemented by the aforementioned terminal device or network device, or by components of the terminal device or network device, such as by application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or software (such as program code in memory) deployed in the terminal device or network device, without limitation.
[0136] Optionally, in this embodiment, the transmitting device (or source) and the receiving device (or sink) can encode and decode using the process shown in Figure 6 below. The transmitting device can be any terminal device or network device in the communication system shown in Figure 5, and the receiving device can also be any terminal device or network device in the communication system shown in Figure 5.
[0137] In this process, the transmitting device performs source coding on its generated bits to obtain a source bit stream. Then, it performs channel coding on the source bit stream, modulates it, and transmits the modulated symbols to the receiving device through a noisy channel. When the receiving device receives the modulated symbols through the noisy channel, it demodulates them, performs channel decoding to recover the source bit stream, and then performs source decoding to obtain the decoded result.
[0138] In specific implementation, as shown in Figure 5, each terminal device and network device can adopt the composition structure shown in Figure 7, or include the components shown in Figure 7. Figure 7 is a schematic diagram of the composition of a communication device 700 provided in an embodiment of this application. The communication device 700 can be a terminal device or a chip or system-on-a-chip in a terminal device; it can also be a network device or a chip or system-on-a-chip in a network device. As shown in Figure 7, the communication device 700 includes a processor 701, a transceiver 702, and a communication line 703.
[0139] Furthermore, the communication device 700 may also include a memory 704. The processor 701, memory 704, and transceiver 702 can be connected via a communication line 703.
[0140] The processor 701 can be a central processing unit (CPU), a network processor (NP), a digital signal processor (DSP), a microprocessor, a microcontroller, a programmable logic device (PLD), or any combination thereof. The processor 701 can also be other devices with processing capabilities, such as circuits, devices, or software modules, without limitation.
[0141] Transceiver 702 is used to communicate with other devices or other communication networks. These other communication networks can be Ethernet, radio access network (RAN), wireless local area network (WLAN), etc. Transceiver 702 can be a module, circuit, transceiver, or any device capable of enabling communication.
[0142] Communication line 703 is used to transmit information between the components included in communication device 700.
[0143] Memory 704 is used to store instructions. These instructions can be computer programs.
[0144] The memory 704 can be a read-only memory (ROM) or other type of static storage device that can store static information and / or instructions; it can also be a random access memory (RAM) or other type of dynamic storage device that can store information and / or instructions; it can also be an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, etc., without limitation.
[0145] It should be noted that the memory 704 can exist independently of the processor 701, or it can be integrated with the processor 701. The memory 704 can be used to store instructions, program code, or some data, etc. The memory 704 can be located inside or outside the communication device 700, without limitation. The processor 701 is used to execute the instructions stored in the memory 704 to implement the communication method provided in the following embodiments of this application.
[0146] In one example, processor 701 may include one or more CPUs, such as CPU0 and CPU1 in Figure 7.
[0147] As an optional implementation, the communication device 700 may include multiple processors, for example, in addition to the processor 701 in FIG7, it may also include a processor 707.
[0148] As an optional implementation, the communication device 700 also includes an output device 705 and an input device 706. For example, the input device 706 is a device such as a keyboard, mouse, microphone, or joystick, and the output device 705 is a device such as a display screen or speaker.
[0149] It should be noted that the communication device 700 can be a desktop computer, a portable computer, a web server, a mobile phone, a tablet computer, a wireless terminal, an embedded device, a chip system, or a device with a similar structure to that shown in Figure 7. Furthermore, the composition shown in Figure 7 does not constitute a limitation on the communication device. In addition to the components shown in Figure 7, the communication device may include more or fewer components than shown, or combine certain components, or have different component arrangements.
[0150] In this embodiment of the application, the chip system may be composed of chips or may include chips and other discrete devices.
[0151] Furthermore, the actions, terms, etc., involved in the various embodiments of this application can be referenced interchangeably without limitation. The message names or parameter names in the messages exchanged between the various devices in the embodiments of this application are merely examples, and other names may be used in specific implementations without limitation.
[0152] The communication method provided in the embodiments of this application will be described below with reference to the communication system shown in Figure 5 and Figure 8. The transmitting device can be any terminal device or network device in the communication system shown in Figure 5, and the receiving device can also be any terminal device or network device in the communication system shown in Figure 5. The transmitting or receiving device described in the following embodiments may include the components shown in Figure 7.
[0153] Figure 8 is an interaction diagram of a communication method provided in an embodiment of this application. As shown in Figure 8, the method may include:
[0154] Step 801: The transmitting device performs polar coding on the first sequence of length N according to the first matrix to obtain the second sequence.
[0155] The first matrix is an N-row N-column matrix, and is determined according to one or more of the following: a second matrix, a third matrix, a second set, a third set, or a first sequence.
[0156] The second matrix is a p-row, p-column matrix, and the third matrix is a q-row, q-column matrix. The sum of p and q is N, and both p and q are greater than 0.
[0157] It is understood that all matrices in this application are square matrices (i.e., the number of rows and columns of the matrix are the same).
[0158] Optional, p is greater than or equal to q.
[0159] For example, with N=5, p can be 4 and q can be 1, or p can be 3 and q can be 2.
[0160] The second set includes p positive integers less than or equal to N, the third set includes q positive integers less than or equal to N, and the intersection of the second set and the third set is an empty set.
[0161] For example, taking N as 5, assuming p is 4 and q is 1, then the second set can be {1,2,3,5} and the third set can be {4}, or the second set can be {1,2,4,5} and the third set can be {3}.
[0162] It is understandable that the number of elements in the second set is the same as the number of rows in the second matrix, and the number of elements in the third set is the same as the number of rows in the third matrix.
[0163] It is understandable that the union of the second and third sets is N positive integers less than or equal to N. For example, if N is 5, the union of the second and third sets could be {1, 2, 3, 4, 5}.
[0164] It is understood that the elements in the second and third sets can be positive integers arranged in ascending order, and any two elements in the second or third set are different; in addition, the initial element in any set can be the zeroth element or the first element. For ease of description, the initial element in any set in this application is the first element.
[0165] The first indicator sequence can be understood as a sequence of length q with values of "0" or "1". That is, the first indicator sequence includes q elements (each of the q elements has a value of "0" or "1"). The t-th element in the first indicator sequence is used to indicate the positional relationship between the t-th row of the third matrix and the x-th row of the second matrix, where t = 1, 2, 3, ..., q.
[0166] For example, when the t-th element in the first indicator sequence is 0, it can mean that the t-th row of the third matrix is above the x-th row of the second matrix; when the t-th element in the first indicator sequence is 1, it can mean that the t-th row of the third matrix is below the x-th row of the second matrix.
[0167] It is understood that the positional relationship between the t-th row of the third matrix and the x-th row of the second matrix can also be indicated by other numerical values, and this application does not limit this.
[0168] For ease of description, unless otherwise specified, in this application, if the t-th element of the first indicator sequence is 0, it is always represented as the t-th row of the third matrix above the x-th row of the second matrix; if the t-th element of the first indicator sequence is 1, it is always represented as the t-th row of the third matrix below the x-th row of the second matrix.
[0169] Here, x is determined based on the t-th element in the third set from smallest to largest and the t-th element in the first indicator sequence.
[0170] For example, x is the difference between the first difference and the t-th element in the first indicator sequence; the first difference is the difference between the t-th element in the third set from smallest to largest and (t-1).
[0171] Here, x can be understood as the absolute value of the difference between the first difference and the t-th element in the first indicator sequence, or x is the integer obtained by subtracting the t-th element in the first indicator sequence from the first difference. Correspondingly, the first difference can be understood as the absolute value of the difference between the t-th element in the third set from smallest to largest and (t-1), or the first difference can be understood as the integer obtained by subtracting (t-1) from the t-th element in the third set from smallest to largest.
[0172] For example, x corresponding to the q elements in the first indicator sequence (or the q elements in the third set) can be represented as:
[0173] in, Let t be the t-th element in the third set, in ascending order. It is the t-th element in the first indicator sequence.
[0174] Optionally, the first sequence may include K information bits, where K is a positive integer less than or equal to N.
[0175] The K information bits may include the information bit itself, or the K information bits may include the information bit itself and a cyclic redundancy check (CRC) bit, or the K information bits may include the information bit itself, a CRC bit, and a check bit; this application does not limit the specific information bits.
[0176] It is understandable that different second matrices, third matrices, second sets, third sets, or first indicator sequences can be determined based on the same N, thereby determining different first matrices. Therefore, when N is the same but K is different, the corresponding first matrices can be determined for different K, so that the error correction performance of the first matrices corresponding to different K is better.
[0177] Optionally, before performing polar coding, the transmitting device may obtain a first sequence of length N.
[0178] The first sequence may include one or more of the following: information bits, cyclic redundancy checksum (CRC) bits, check bits, or pre-frozen bits.
[0179] Specifically, the transmitting device can map the information bit sequence of length K' onto a sequence of length N based on the reliability sequence to obtain the first sequence of length N.
[0180] The information bit sequence may include information bits and CRC bits, meaning K' can be the sum of the number of information bits and the number of CRC bits in the information bit sequence. Alternatively, the information bit sequence may include the information bits themselves, meaning K' can be the number of information bits in the information bit sequence.
[0181] It is understood that K can be K', or K can be greater than K' (that is, K information bits include check bits in addition to information bits and CRC bits), and this application does not limit this.
[0182] The reliability sequence can be used to indicate the reliability of each bit position in the sequence. The higher the reliability value, the more reliable the position corresponding to that reliability.
[0183] Optionally, the reliability sequence can be predefined by the protocol. The sending device can select a reliability sequence of length N from one or more predefined reliability sequences.
[0184] Specifically, the position of the information bit in the sequence of length N can be determined based on the reliability sequence of length N. The information bit sequence can then be mapped onto the sequence of length N based on the position of the information bit to obtain the first sequence. Alternatively, the information bit sequence and the check bit can be mapped onto the sequence of length N to obtain the first sequence.
[0185] Step 802: The transmitting device outputs one or more bits of the second sequence; correspondingly, the receiving device receives the decoding information from the transmitting device.
[0186] The length of the first sequence corresponding to the information to be decoded is N.
[0187] In this process, one or more bits in the second sequence sent by the transmitting device to the receiving device may be affected by noise and other interference during transmission through the channel. The information to be decoded received by the receiving device is one or more bits in the encoded bit sequence affected by noise and other interference.
[0188] Step 803: The receiving device decodes the information to be decoded according to the first matrix.
[0189] The method by which the receiving device determines the first matrix can be the same as the method by which the sending device determines the first matrix in step 801 above, and will not be repeated here.
[0190] Based on the communication method shown in Figure 8, multiple first matrices can be constructed according to N. That is, during the construction of the first matrix, multiple second and third matrices can be determined while ensuring that the sum of the number of rows or columns of the second and third matrices is N. Correspondingly, multiple second sets can be determined while ensuring that the second set includes p positive integers less than or equal to N, and multiple third sets can be determined while ensuring that the third set includes q positive integers less than or equal to N. Different second matrices, third matrices, second sets, and third sets can construct different first matrices. Therefore, it is possible to... The first matrix is determined according to different communication scenarios (e.g., N is the same, but K (K is the number of information bits in the first sequence) is different) to ensure that the error correction performance of the first matrix is better under different communication scenarios, thereby improving the decoding performance. In addition, compared with rate matching of the encoding matrix with the number of rows (or columns) being an integer power of 2 to obtain the first matrix with different numbers of rows (or columns), in this application, the first matrix with different numbers of rows (or columns) can be directly constructed according to the above method, which can improve the flexibility of constructing the first matrix and reduce the complexity of constructing the first matrix, thereby simplifying the implementation.
[0191] Based on the above description of the second matrix, optionally, the second matrix can be a predefined matrix; or, the second matrix can be an eighth matrix; or, the second matrix can be a matrix determined according to the above method of determining the first matrix, that is, the second matrix can be determined according to one or more of the following: the fourth matrix, the fifth matrix, the seventh set, the eighth set, or the second indicator sequence. In this case, the fourth matrix can be regarded as the second matrix, the fifth matrix as the third matrix, the seventh set as the second set, the eighth set as the third set, and the second indicator sequence as the first indicator sequence.
[0192] The eighth matrix is 2. n Line 2 n A matrix of columns, where n is less than or equal to ( (For floor function), the eighth matrix can be a pair of matrices. The encoding matrix obtained by performing n Kronecker products.
[0193] For example, the fourth matrix can be an a-row a-column matrix, the fifth matrix can be a b-row b-column matrix, the sum of a and b is p, and both a and b are greater than 0; the seventh set can include a positive integers less than or equal to p, the eighth set can include b positive integers less than or equal to p, and the intersection of the seventh set and the eighth set is an empty set; the second indicator sequence can include b elements, and the m-th element in the third set is used to indicate the positional relationship between the m-th row of the fifth matrix and the y-th row of the fourth matrix, where y is determined based on the m-th element in the eighth set and the m-th element in the second indicator sequence, where m = 1, 2, 3, ..., b.
[0194] It is understood that the determination of the fourth and fifth matrices can refer to the determination of the second and third matrices, and this application does not limit this.
[0195] Based on the above description of the third matrix, optionally, the third matrix can be a predefined matrix; or, the second matrix can be the ninth matrix; or, the third matrix can be a matrix determined according to the above method of determining the first matrix, that is, the third matrix can be determined according to one or more of the following: the sixth matrix, the seventh matrix, the ninth set, the tenth set, or the third indicator sequence. In this case, the sixth matrix can be regarded as the second matrix, the seventh matrix can be regarded as the third matrix, the ninth set can be regarded as the second set, the tenth set can be regarded as the third set, and the third indicator sequence can be regarded as the first indicator sequence.
[0196] The ninth matrix is 2. n Line 2 n A matrix of columns, where n is less than or equal to ( (For floor function), the ninth matrix can be a pair of matrices. The encoding matrix obtained by performing n Kronecker products.
[0197] For example, the sixth matrix can be a c-row, c-column matrix, the seventh matrix can be a d-row, d-column matrix, the sum of c and d is q, and both c and d are greater than 0; the ninth set can include c positive integers less than or equal to q, the tenth set can include d positive integers less than or equal to q, and the intersection of the ninth and tenth sets is an empty set; the third indicator sequence can include d elements, and the nth element in the third indicator sequence is used to indicate the positional relationship between the nth row of the seventh matrix and the zth row of the sixth matrix, where z is determined based on the nth element in the tenth set and the nth element in the third indicator sequence, and n = 1, 2, 3, ..., d.
[0198] It is understood that the determination of the sixth and seventh matrices can refer to the determination method of the second and third matrices, and this application does not limit this.
[0199] Based on the above description of the first matrix, optionally, the first matrix can be determined based on the second matrix, the third matrix, the second set, and the third set; or, the first matrix can be determined based on the second matrix, the third matrix, the second set, the third set, and the first indicator sequence. This application proposes two possible designs:
[0200] In the first possible design, the first matrix can be determined based on the second matrix, the third matrix, the second set, and the third set.
[0201] In this case, each row of the third matrix can be below the coupled row of the second matrix (in which case the coupled row of the second matrix is determined by the elements in the fifth set; for example, when the fifth set is {3}, the coupled row of the second matrix is the 3rd row of the second matrix), or each row of the third matrix can be above the coupled row of the second matrix (in which case the coupled row of the second matrix is determined by the elements in the sixth set; for example, when the sixth set is {2}, the coupled row of the second matrix is the 2nd row of the second matrix).
[0202] The t-th element in the fifth set is determined based on the t-th element in the third set from smallest to largest.
[0203] For example, the t-th element in the fifth set is the difference between the t-th element in the third set (from smallest to largest) and t.
[0204] In this context, the t-th element in the fifth set can be understood as the absolute value of the difference between the t-th element in the third set (from smallest to largest) and t, or the t-th element in the fifth set can be understood as the integer obtained by subtracting t from the t-th element in the third set.
[0205] For example, the fifth set can be represented as: in, Let t be the t-th element in the third set from smallest to largest.
[0206] It is understandable that the elements in the fifth set are not necessarily arranged in ascending order.
[0207] The t-th element in the sixth set is determined based on the t-th element in the third set from smallest to largest.
[0208] For example, the t-th element in the sixth set is the sum of the t-th element in the third set from smallest to largest and 1.
[0209] For example, the sixth set can be represented as:
[0210] It is understandable that the elements in the sixth set are not necessarily arranged in ascending order.
[0211] Based on the first possible design, this application proposes two possible implementations for determining the first matrix:
[0212] In one possible implementation, each row of the third matrix can be below the coupled rows of the second matrix, and the first matrix can be determined according to one or more of the following rules:
[0213] Rule 11a: The elements in the first matrix that correspond to the second set in the row and column are the same as the elements in the second matrix.
[0214] In this matrix, some rows and some columns have the same elements as the elements in the second matrix. Some rows can be determined based on the second set. For example, when the second set is {1,3,5,6}, the first, third, fifth, and sixth rows of the first matrix can be determined. Some columns can also be determined based on the second set. For example, when the second set is {1,3,5,6}, the first, third, fifth, and sixth columns of the first matrix can be determined.
[0215] It is understandable that the elements in the second matrix can be sequentially placed into the rows and columns of the first matrix that correspond to the second set, in order to determine the elements in the rows and columns of the first matrix that correspond to the second set.
[0216] For example, taking N as 5 and the second set as {1,3,5,6}, the element in the first row and first column of the first matrix can be the element in the first row and first column of the second matrix; the element in the first row and third column of the first matrix can be the element in the first row and second column of the second matrix; the element in the first row and fifth column of the first matrix can be the element in the first row and third column of the second matrix; the element in the first row and sixth column of the first matrix can be the element in the first row and fourth column of the second matrix; the element in the third row and first column of the first matrix can be the element in the second row and first column of the second matrix; the element in the third row and third column of the first matrix can be the element in the second row and second column of the second matrix; the element in the third row and fifth column of the first matrix can be the element in the second row and third column of the second matrix; and the element in the third row and sixth column of the first matrix can be the element in the second row and third column of the second matrix. The element in the 2nd row and 4th column of the matrix can be the element in the 3rd row and 1st column of the second matrix. The element in the 5th row and 1st column of the first matrix can be the element in the 1st row and 2nd column of the second matrix. The element in the 5th row and 5th column of the first matrix can be the element in the 3rd row and 3rd column of the second matrix. The element in the 5th row and 6th column of the first matrix can be the element in the 3rd row and 4th column of the second matrix. The element in the 6th row and 1st column of the first matrix can be the element in the 4th row and 1st column of the second matrix. The element in the 6th row and 3rd column of the first matrix can be the element in the 4th row and 2nd column of the second matrix. The element in the 6th row and 5th column of the first matrix can be the element in the 4th row and 3rd column of the second matrix. The element in the 6th row and 6th column of the first matrix can be the element in the 4th row and 4th column of the second matrix.
[0217] Rule 12a: The elements in the first matrix that correspond to the third set in the same row and column are the same as the elements in the third matrix.
[0218] In this matrix, some rows and some columns have the same elements as the elements in the third matrix. Some rows can be determined based on the third set. For example, when the third set is {2,4}, the second and fourth rows of the first matrix can be determined. Some columns can also be determined based on the third set. For example, when the second set is {2,4}, the second and fourth columns of the first matrix can be determined.
[0219] It is understandable that the elements in the third matrix can be sequentially placed into the rows and columns of the first matrix that correspond to the third set in order to determine the elements in the rows and columns of the first matrix that correspond to the third set.
[0220] For example, taking the third set as {2,4}, the elements in the second row and second column of the first matrix can be the elements in the first row and first column of the third matrix, the elements in the second row and fourth column of the first matrix can be the elements in the first row and second column of the third matrix, the elements in the fourth row and second column of the first matrix can be the elements in the second row and first column of the third matrix, and the elements in the fourth row and fourth column of the first matrix can be the elements in the second row and second column of the third matrix.
[0221] Rule 13a: The elements in the first matrix corresponding to the second set and the elements in the third set are 0.
[0222] In the first matrix, some rows and some columns contain 0 elements. Some rows can be determined by the second set. For example, when the second set is {1,3,5,6}, the first, third, fifth, and sixth rows of the first matrix can be determined. Some columns can be determined by the third set. For example, when the second set is {2,4}, the second and fourth columns of the first matrix can be determined.
[0223] For example, taking the second set as {1,3,5,6} and the third set as {2,4}, the elements in the first matrix at the 1st row and 2nd column, the 3rd row and 2nd column, the 5th row and 2nd column, the 6th row and 2nd column, the 1st row and 4th column, the 3rd row and 4th column, the 5th row and 4th column, and the 6th row and 4th column are all 0.
[0224] Rule 14a: The elements in the first matrix corresponding to the third set and the elements in the columns corresponding to the second set are the same as the elements in the second matrix corresponding to the fifth set and the elements in columns 1 to p.
[0225] The fifth set can be referred to in the above description of the fifth set, and will not be repeated here.
[0226] In this matrix, some rows and columns of the first matrix have the same elements as some rows and columns 1 to p of the second matrix. Some rows of the first matrix can be determined by a third set. For example, when the second set is {2,4}, the second and fourth rows of the first matrix can be determined. Some columns of the first matrix can be determined by a second set. For example, when the second set is {1,3,5,6}, the first, third, fifth, and sixth columns of the first matrix can be determined. Some rows of the second matrix can be determined by a fifth set. For example, when the fifth set is {2,3}, the second and third rows of the second matrix can be determined.
[0227] For example, taking the second set as {1,3,5,6} and the third set as {2,4}, the fifth set is {2,3}. The element in the second row and first column of the first matrix can be the element in the second row and first column of the second matrix; the element in the second row and third column of the first matrix can be the element in the second row and second column of the second matrix; the element in the second row and fifth column of the first matrix can be the element in the second row and third column of the second matrix; the element in the second row and sixth column of the first matrix can be the element in the second row and fourth column of the second matrix; the element in the fourth row and first column of the first matrix can be the element in the third row and first column of the second matrix; the element in the fourth row and third column of the first matrix can be the element in the third row and second column of the second matrix; the element in the fourth row and fifth column of the first matrix can be the element in the third row and third column of the second matrix; and the element in the fourth row and sixth column of the first matrix can be the element in the third row and fourth column of the second matrix.
[0228] Based on the above possible implementations, this application proposes a possible embodiment, wherein the first matrix can be represented as follows: Where G is the first matrix, P is the second matrix, i2 is the second set, Q is the third matrix, i3 is the third set, and C... d (·) is the function that determines the first matrix (also known as the pre-polarization coupling function), C d The rules corresponding to (·) can include rule 11a, rule 12a, rule 13a, and rule 14a.
[0229] For example, with N = 6 and K = 3, the first matrix can be represented as: Where P = F4, i2 = {1, 3, 5, 6}, Q = F2, i3 = {2, 4}, then the first matrix can be:
[0230] In a second possible implementation, each row of the third matrix can be above the coupled rows of the second matrix, and the first matrix can be determined according to one or more of the following rules:
[0231] Rule 11b: Elements in the first matrix that correspond to the second set in the same row and column can be the same as elements in the second matrix.
[0232] Rule 12b: Elements in the first matrix that correspond to the third set in the same row and column can be the same as elements in the third matrix.
[0233] Rule 11b can be referred to as Rule 11a above, and Rule 12b can be referred to as Rule 12a above, and will not be repeated here.
[0234] Rule 13b: The elements in the first matrix corresponding to the third set and the elements in the columns corresponding to the second set can be 0.
[0235] In the first matrix, some rows and some columns have elements of 0. Some rows can be determined by the third set. For example, when the second set is {3,5}, the 3rd and 5th rows of the first matrix can be determined. Some columns can be determined by the second set. For example, when the second set is {1,2,4,6}, the 1st, 2nd, 4th and 6th columns of the first matrix can be determined.
[0236] For example, taking the second set as {1,2,4,6} and the third set as {3,5}, the elements in the 3rd row and 1st column, the 3rd row and 2nd column, the 3rd row and 4th column, the 3rd row and 6th column, the 5th row and 1st column, the 5th row and 2nd column, the 5th row and 4th column, and the 5th row and 6th column in the first matrix are all 0.
[0237] Rule 14b: Elements in the first matrix corresponding to the sixth set and in the columns corresponding to the third set can be the same as elements in the third matrix.
[0238] The sixth set can be referred to in the above description of the sixth set, and will not be repeated here.
[0239] In this matrix, some rows and some columns have the same elements as the elements in the third matrix. Some rows can be determined based on the sixth set. For example, when the sixth set is {4,6}, the fourth and sixth rows of the first matrix can be determined. Some columns can be determined based on the third set. For example, when the third set is {3,5}, the third and fifth columns of the first matrix can be determined.
[0240] For example, taking the third set as {3,5}, the sixth set is {4,6}. The element in the 4th row and 3rd column of the first matrix can be the element in the 1st row and 1st column of the third matrix. The element in the 4th row and 5th column of the first matrix can be the element in the 1st row and 2nd column of the third matrix. The element in the 6th row and 3rd column of the first matrix can be the element in the 2nd row and 1st column of the third matrix. The element in the 6th row and 5th column of the first matrix can be the element in the 2nd row and 2nd column of the third matrix.
[0241] Rule 15b: The elements in the first matrix corresponding to the positive integers in the second set (excluding the sixth set) and the elements in the columns corresponding to the third set can be 0.
[0242] In the first matrix, some rows and some columns contain 0 elements. Some rows can be determined based on the second and sixth sets. For example, when the second set is {1,2,4,6} and the sixth set is {4,6}, the positive integers other than those in the sixth set in the second set can be determined as 1 and 2, which in turn can determine the first and second rows in the first matrix. Some columns can be determined based on the third set. For example, when the third set is {3,5}, the third and fifth columns of the first matrix can be determined.
[0243] For example, if the second set is {1,2,4,6} and the third set is {3,5}, then the sixth set is {4,6}. The positive integers in the second set other than the sixth set are 1 and 2. Therefore, the elements in the first row and third column, the first row and fifth column, the second row and third column, and the second row and fifth column of the first matrix can be 0.
[0244] Based on the second possible implementation, this application proposes a possible embodiment, wherein the first matrix can be represented as follows: Among them, C u (·) is the function that determines the first matrix (also known as the pre-polarization coupling function), C u The rules corresponding to (·) can include rule 11b, rule 12b, rule 13b, rule 14b, and rule 15b.
[0245] For example, with N = 6 and K = 3, the first matrix can be represented as: Where P = F4, i2 = {1, 2, 4, 6}, Q = F2, i3 = {3, 5}, then the first matrix can be:
[0246] Based on the first possible design, rules 11a, 12a, 13a, and 14 above are rules in the first possible implementation; rules 11b, 12b, 13b, 14b, and 15b above are rules in the second possible implementation.
[0247] In a second possible design, the first matrix can be determined based on the second matrix, the third matrix, the second set, the third set, and the first indicator sequence. One or more of the following rules can be followed when determining the first matrix:
[0248] Rule 21: Elements in the first matrix that correspond to the second set in the same row and column can be the same as elements in the second matrix.
[0249] Rule 22: Elements in the first matrix that correspond to the third set in the same row and column can be the same as elements in the third matrix.
[0250] Rule 21 can be referred to as Rule 11a above, and Rule 22 can be referred to as Rule 12a above, which will not be elaborated here.
[0251] Rule 23: The elements in the first matrix corresponding to the positive integers in the second set (excluding the fourth set) and the elements in the columns corresponding to the third set are 0.
[0252] In this case, the t-th element in the fourth set is the difference between the first value and the first product.
[0253] In this context, the t-th element in the fourth set can be understood as the absolute value of the difference between the first value and the first product, or as the integer obtained by subtracting the first product from the first value.
[0254] Wherein, the first value is the sum of the t-th element in the third set from smallest to largest and 1; the first product is the product of the t-th element in the first indicator sequence and 2.
[0255] For example, the fourth set can be represented as: in, Let t be the t-th element in the third set, in ascending order. Let t be the t-th element in the first indicator sequence, in ascending order.
[0256] It is understandable that the elements in the fourth set are not necessarily arranged in ascending order.
[0257] In this matrix, some rows and some columns contain 0 elements. Some rows can be determined based on the second and fourth sets. For example, when the second set is {1,2,5,6}, the third set is {3,4}, and the first indicator sequence is {1,0}, the fourth set can be {2,5}. This allows us to determine that the positive integers in the second set other than the fourth set are 1 and 6, and thus the first and sixth rows in the first matrix can be determined. Some columns can be determined based on the third set. For example, when the third set is {3,4}, the third and fourth columns in the first matrix can be determined.
[0258] For example, if the second set is {1,2,5,6} and the third set is {3,4}, then the fourth set is {2,5}. The elements in the first matrix at the 1st row and 3rd column, the 1st row and 4th column, the 6th row and 3rd column, and the 6th row and 4th column can be 0.
[0259] Rule 24: When the t-th element in the first indicator sequence is 1, the elements in the (j-1)-th row of the first matrix and the column corresponding to the third set are 0; or, when the t-th element in the first indicator sequence is 0, the elements in the j-th row of the first matrix and the column corresponding to the second set are 0.
[0260] Where j is the t-th element in the third set from smallest to largest.
[0261] In one example, the t-th element (e.g., t is 1) in the first indicator sequence is 1. Taking the third set as {3,4} as an example, j is 3. The elements in the 2nd row and 3rd column and the 2nd row and 4th column of the first matrix can be 0.
[0262] In another example, for the t-th element (e.g., t is 1) in the first indicator sequence to be 0, taking the second set as {1,2,5,6} and the third set as {3,4} as an example, j is 3, and the elements in the 3rd row and 1st column, the 3rd row and 2nd column, the 3rd row and 5th column, and the 3rd row and 6th column of the first matrix can be 0.
[0263] Rule 25: When the t-th element in the first indicator sequence is 1, the elements in row j of the first matrix and the column corresponding to the second set are the same as the elements in row x of the second matrix and columns 1 to p of the second matrix; or, when the t-th element in the first indicator sequence is 0, the elements in row j+1 of the first matrix and the column corresponding to the third set are the same as the elements in row t of the third matrix and columns 1 to q of the third matrix.
[0264] Where x can be referred to the description of x in step 801, which will not be repeated here.
[0265] In one example, if the t-th element (e.g., t = 1) in the first indicator sequence is 1, taking the first indicator sequence as {1,2,5,6} and the third set as {3,4} as an example, j is 3 and x is {2}. Then, the element in the 3rd row and 1st column of the first matrix can be the element in the 2nd row and 1st column of the second matrix, the element in the 3rd row and 2nd column of the first matrix can be the element in the 2nd row and 2nd column of the second matrix, the element in the 4th row and 5th column of the first matrix can be the element in the 2nd row and 3rd column of the second matrix, and the element in the 4th row and 6th column of the first matrix can be the element in the 2nd row and 4th column of the second matrix.
[0266] In another example, if the t-th element (e.g., t is 1) in the first indicator sequence is 0, taking the third set as {3,4} as an example, j is 3, x is {3}, and q is 2. Then, the element in the 4th row and 3rd column of the first matrix can be the element in the 1st row and 1st column of the third matrix, and the element in the 4th row and 4th column of the first matrix can be the element in the 1st row and 2nd column of the third matrix.
[0267] Based on the second possible design, this application proposes a possible embodiment, wherein the first matrix can be represented as follows: Where i1 is the first indicator sequence, C o(·) is the function that determines the first matrix (also known as the pre-polarization coupling function), C o The rules corresponding to (·) can include rule 21, rule 22, rule 23, rule 24, and rule 25.
[0268] For example, with N = 6 and K = 3, the first matrix can be represented as: Where P = F4, i2 = {1, 2, 5, 6}, Q = F2, i3 = {3, 4}, i1 = {1, 0}, then the first matrix can be:
[0269] Based on the two possible designs mentioned above, when N and K are the same, the first matrix corresponding to the first possible design and the first matrix corresponding to the second possible design have different representations, but the error correction performance and decoding performance of the first matrix constructed based on different possible designs are the same. When constructing the first matrix based on the second possible design, different coupling rows can be located in different positions, making the constructed first matrix more flexible. However, when constructing the first matrix based on the first possible design, the positions of different coupling rows are fixed, making the function for constructing the first matrix simpler, thus simplifying the implementation.
[0270] In the first possible implementation of the first possible design, the function that determines the first matrix can be regarded as a special case where the first indicator sequence in the function that determines the first matrix in the second possible design all takes the value of 1. In the second possible implementation of the first possible design, the function that determines the first matrix can be regarded as a special case where the first indicator sequence in the function that determines the first matrix in the second possible design all takes the value of 0. That is, no matter what value the elements in the first indicator sequence take, the codewords of the information bits corresponding to the first matrix determined in the end are equivalent.
[0271] This application uses N=6 and K=3 as an example to specifically illustrate the codeword equivalence of the information bits corresponding to the first matrix constructed based on the above possible designs. The first matrix in the first possible implementation of the first possible design can be denoted as the first matrix 1 (i.e., the first matrix 1 can be: In the first possible design, the first matrix in the second possible implementation is denoted as the first matrix 2 (i.e., the first matrix 2 can be: In the second possible design, the first matrix is the first matrix 3 (i.e., the first matrix 3 can be: ).
[0272] Wherein, the information bit positions in the first indicator sequence can be 3, 5, and 6, then the generator matrix formed by the rows corresponding to the information bit positions in the first matrix 1 can be: The generator matrix formed by the rows corresponding to the information bit positions in the first matrix 2 can be: The generator matrix formed by the rows corresponding to the information bit positions in the first matrix 3 can be:
[0273] By comparing the first matrix 1 and the first matrix 3, we can see that... It can be exchanged Columns 4 and 5, and Adding the 5th row to the 4th row yields the result. Generally, if the t-th element in the first indicator sequence is flipped from 0 to 1, then the first matrix 1 can be obtained from the first matrix 3 by swapping the t-th element. and the Column, and the first matrix 3's Add to the first row The result is obtained. Among them, Let t be the t-th element in the third set.
[0274] Specifically, G d By swapping G o The 4th and 5th columns are obtained, therefore, the representation of the first matrix 1 and the first matrix 3 are different, but the codeword of the information bit corresponding to the first matrix 1 and the codeword of the information bit corresponding to the first matrix 3 are equivalent.
[0275] Generally, if the first The row is not the position of the information bit. The generator matrix corresponding to the first matrix 1 can be obtained by swapping the generator matrix corresponding to the first matrix 3. and the The column is obtained; if the first row and number The rows represent the positions of information bits, and the generator matrix corresponding to the first matrix 1 can simultaneously include... row and number Since row operations in the generator matrix do not change the codewords corresponding to the information bits, the codewords of the information bits corresponding to the first matrix 1 and the first matrix 3 can still be obtained by swapping the first row. and the Each bit is equivalent to the others.
[0276] Understandably, due to the first The reliability of the line is higher than that of the first. In the process of selecting the position of the information bits, the occurrence of the first... The row is the position of the information bits and the first row is the position of the information bits. The case where the row is not the position of the information bit.
[0277] In summary, if the elements in the first indicator sequence are flipped from 0 to 1, the codewords of the information bits corresponding to the first matrix 1 and the codewords of the information bits corresponding to the first matrix 3 can be obtained by swapping the first... and the Each bit is equivalent to the others.
[0278] Among them, by comparing the first matrix 2 and the first matrix 3, we can see It can be exchanged The 2nd and 3rd columns, and The third row is added to the second row to obtain the result. Generally, if the t-th element in the first indicator sequence is flipped from 1 to 0, the first matrix 2 can be obtained by swapping the first matrix 3. and the Column, and the first matrix 3's Add to the first row The result is obtained. Among them, Let t be the t-th element in the third set.
[0279] Specifically, G u By swapping G o The second and third columns are obtained, therefore, the representations of the first matrix 2 and the first matrix 3 are different, but the codewords of the information bits corresponding to the first matrix 2 and the codewords of the information bits corresponding to the first matrix 3 are equivalent.
[0280] Generally, if the first The row is not the position of the information bit. The generator matrix corresponding to the first matrix 2 can be obtained by swapping the generator matrix corresponding to the first matrix 3. and the The column is obtained; if the first row and number Each row represents the position of an information bit. The generator matrix corresponding to the first matrix 2 can simultaneously include the positions of the first and second information bits. row and number Since row operations in the generator matrix do not change the codeword of the information bits, the codeword of the information bits corresponding to the first matrix 2 and the codeword of the information bits corresponding to the first matrix 3 can still be obtained by swapping the first matrix 2 and the first matrix 3. and the Each bit is equivalent to the others.
[0281] Understandably, due to the first The reliability of the line is higher than that of the first. In selecting the position of information bits, we can try to avoid the occurrence of the first... The row is the position of the information bits and the first row is the position of the information bits. The case where the row is not the position of the information bit.
[0282] In summary, if an element in the first indicator sequence is flipped from 1 to 0, the codeword of the information bit corresponding to the first matrix 2 and the codeword of the information bit corresponding to the first matrix 3 can be obtained by swapping the first... and the Each bit is equivalent to the others.
[0283] Based on the two possible designs described above, this application proposes possible embodiments for determining the first matrix for different N and K:
[0284] In a first possible embodiment, taking N = 4 and K = 2 as an example, the first matrix can be represented as: G 4,2 =C d (P, i2, Q, i3), where P = G 3,1 (G 3,1 It can be represented as: G 3,1 =C d (F2,{1,2},F1,{3}) F1=[1]), i2=(1,2,4), Q=F1, i3={3}, then the first matrix can be:
[0285] Figure 9 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=4 and K=2. Curve 1 represents the first matrix in the first possible embodiment described above, and curve 2 represents the first matrix F4. The horizontal axis represents the signal-to-noise ratio (SNR) (in dB), and the vertical axis represents the block error rate (BLER). It can be seen that the decoding performance corresponding to the first matrix in the first possible embodiment is superior, and significantly better than the decoding performance corresponding to F4.
[0286] Among them, F4 can be obtained by modifying the matrix. The result is obtained by performing the Kronecker product twice.
[0287] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 1 below. According to Table 1, the minimum code weight corresponding to curve 1 is the same as that corresponding to curve 2, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0288] Table 1
[0289] In the second possible embodiment, taking N = 5 and K = 2 as an example, the first matrix can be represented as: G 5,2 =C dGiven a matrix (P, i2, Q, i3), where P = F4, i2 = {1, 2, 3, 5}, Q = F1, i3 = {4}, then the first matrix can be...
[0290] Figure 10 illustrates a performance comparison of simulation results for the first matrix determined in different ways when N=5 and K=2. Curve 1 represents the first matrix in the second possible embodiment described above; curve 2 represents the shortened matrix F8 (i.e., removing the last 3 rows and columns of F8); and curve 3 represents the punched matrix F8 (i.e., removing the first 3 rows and columns of F8). The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the second possible embodiment is superior, and significantly better than the decoding performance corresponding to the shortened matrix F8 or the punched matrix F8.
[0291] Among them, F8 can be obtained by modifying the matrix. The result is obtained by performing the Kronecker product three times.
[0292] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 2 below. According to Table 2, the minimum code weight corresponding to curve 1 is larger, and the decoding performance of curve 1 is better.
[0293] Table 2
[0294] In a third possible embodiment, taking N = 5 and K = 3 as an example, the first matrix can be represented as: G 5,3 =C d Given a matrix (P, i2, Q, i3), where P = F4, i2 = {1, 2, 4, 5}, Q = F1, i3 = {3}, then the first matrix can be:
[0295] Figure 11 illustrates a performance comparison of simulation results for the first matrix determined in different ways when N=5 and K=3. Curve 1 represents the first matrix in the third possible embodiment described above; curve 2 represents the shortened matrix F8 (i.e., removing the last 3 rows and columns of F8); and curve 3 represents the punched matrix F8 (i.e., removing the first 3 rows and columns of F8). The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the third possible embodiment is superior, and significantly better than the decoding performance corresponding to the shortened matrix F8 or the punched matrix F8.
[0296] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 3 below. According to Table 3, the minimum code weight corresponding to curve 1 is the same as the code weight corresponding to other curves, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0297] Table 3
[0298] In the fourth possible embodiment, taking N = 6 and K = 3 as an example, the first matrix can be represented as: G 6,3 =C d (P,i2,Q,i3), where P=G 5,2 (G 5,2 The determination of i2 can refer to the second possible embodiment above), i2 = {1, 2, 4, 5, 6}, Q = F1, i3 = {3}, then the first matrix can be:
[0299] Figure 12 illustrates a performance comparison of simulation results for the first matrix determined in different ways when N=6 and K=3. Curve 1 represents the first matrix in the fourth possible embodiment described above; curve 2 represents the shortened matrix F8 (i.e., removing the last two rows and columns of F8); and curve 3 represents the punched matrix F8 (i.e., removing the first two rows and columns of F8). The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the fourth possible embodiment is superior, and significantly better than the decoding performance corresponding to the shortened matrix F8 or the punched matrix F8.
[0300] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 4 below. According to Table 4, the minimum code weight corresponding to curve 1 is larger, and the decoding performance of curve 1 is better.
[0301] Table 4
[0302] In the fifth possible embodiment, taking N = 7 and K = 2 as an example, the first matrix can be represented as: G 7,2 =C d (P,i2,Q,i3), where P = F4, i2 = {1,3,5,7}, Q = G 3,1 (G 3,1 The determination of G can be made with reference to the first possible embodiment described above. 3,1 Given that i3 = {2, 4, 6}, the first matrix can be:
[0303] Figure 13 illustrates a performance comparison of simulation results for the first matrix determined in different ways when N=7 and K=2. Curve 1 represents the first matrix in the fifth possible embodiment described above; curve 2 represents the shortened matrix F8 (i.e., removing the last two rows and columns of F8); and curve 3 represents the punched matrix F8 (i.e., removing the first two rows and columns of F8). The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the fifth possible embodiment is superior, and significantly better than the decoding performance corresponding to the shortened matrix F8 or the punched matrix F8.
[0304] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 5 below. According to Table 5, the minimum code weight corresponding to curve 1 is larger, and the number of codewords corresponding to the minimum code weight of curve 1 is smaller, indicating that the decoding performance of curve 1 is better.
[0305] Table 5
[0306] In the sixth possible embodiment, taking N = 7 and K = 5 as an example, the first matrix can be represented as: G 7,5 =C d (P,i2,Q,i3), where P = F4, i2 = {1,2,4,6}, Q = G 3,2 (G 3,2 It can be represented as: G 3,2 =C d Given (F2,{1,3},F1,{2})) and i3={3,5,7}, then the first matrix can be:
[0307] Figure 14 illustrates a performance comparison of simulation results for the first matrix determined in different ways when N=7 and K=5. Curve 1 represents the first matrix in the sixth possible embodiment described above; curve 2 represents the shortened matrix F8 (i.e., removing the last two rows and columns of F8); and curve 3 represents the punched matrix F8 (i.e., removing the first two rows and columns of F8). The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the sixth possible embodiment is superior, and significantly better than the decoding performance corresponding to the shortened matrix F8 or the punched matrix F8.
[0308] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 6 below. According to Table 6, the minimum code weight corresponding to curve 1 is larger, and the decoding performance of curve 1 is better.
[0309] Table 6
[0310] In the seventh possible embodiment, taking N = 8 and K = 2 as an example, the first matrix can be represented as: G 8,2 =C d (P,i2,Q,i3), where P=G 7,2 (G 7,2 The determination of i2 can refer to the fifth possible embodiment above, i2 = {1,2,3,4,5,6,7}, Q = F1, i3 = {8}, then the first matrix can be:
[0311] Figure 15 illustrates a performance comparison of simulation results for the first matrix determined in different ways when N=8 and K=2. Curve 1 represents the first matrix in the seventh possible embodiment described above, and curve 2 represents matrix F8. The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the seventh possible embodiment is superior, and significantly better than the decoding performance corresponding to matrix F8.
[0312] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 7 below. According to Table 7, the minimum code weight corresponding to curve 1 is larger, and the decoding performance of curve 1 is better.
[0313] Table 7
[0314] In the eighth possible embodiment, taking N = 8 and K = 3 as an example, the first matrix can be represented as: G 8,3 =C d (P,i2,Q,i3), where P=G 7,3 (G 7,3 It can be represented as: G 7,3 =C d (G 3,2 ,{1,3,5,7},F4,{2,4,6}),G 3,2 The determination of G can be made by referring to the sixth embodiment described above. 3,2 Given the matrix i2 = {1, 2, 3, 4, 6, 7, 8}, Q = F1, and i3 = {5}, then the first matrix can be:
[0315] Figure 16 illustrates a performance comparison of simulation results for the first matrix determined in different ways when N=8 and K=3. Curve 1 represents the first matrix in the eighth possible embodiment described above, and curve 2 represents matrix F8. The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the eighth possible embodiment is superior, and significantly better than the decoding performance corresponding to matrix F8.
[0316] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 8 below. According to Table 8, the minimum code length corresponding to curve 1 is the same as the minimum code weight corresponding to curve 2, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0317] Table 8
[0318] In the ninth possible embodiment, taking N = 8 and K = 5 as an example, the first matrix can be represented as: G 8,5 =C d (P,i2,Q,i3), where P=G 7,5 (G 7,5 The determination of i2 can refer to the sixth possible embodiment above), i2 = {1,2,3,4,6,7,8}, Q = F1, i3 = {5}, then the first matrix can be:
[0319] Figure 17 illustrates a performance comparison of simulation results for the first matrix determined in different ways when N=8 and K=5. Curve 1 represents the first matrix in the ninth possible embodiment described above, and curve 2 represents matrix F8. The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the ninth possible embodiment is superior, and significantly better than the decoding performance corresponding to matrix F8.
[0320] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 9 below. According to Table 9, the minimum code weight corresponding to curve 1 is the same as that corresponding to curve 2, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0321] Table 9
[0322] In the tenth possible embodiment, taking N = 8 and K = 6 as an example, the first matrix can be represented as: G 8,6 =C d (P,i2,Q,i3), where P=G 6,2 (G 6,2 It can be represented as: G 6,2 =C d Given (F4,{1,2,4,6},F2,{3,5}), i2={1,2,4,5,7,8}, Q=F2, i3={3,6}, then the first matrix can be:
[0323] Figure 18 illustrates a performance comparison of simulation results for the first matrix determined in different ways when N=8 and K=6. Curve 1 represents the first matrix in the tenth possible embodiment, and curve 2 represents matrix F8. The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the tenth possible embodiment is superior, and significantly better than the decoding performance corresponding to matrix F8.
[0324] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 10 below. According to Table 10, the minimum code weight corresponding to curve 1 is the same as the minimum code weight corresponding to curve 2, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0325] Table 10
[0326] In the eleventh possible embodiment, taking N as 9 and K as 6 as an example, the first matrix can be represented as: G 9,6 =C d (P,i2,Q,i3), where P=G 5,2 (G 5,2 The determination of i2 can refer to the second possible embodiment above. i2 = {1, 2, 4, 6, 8}, Q = F4, i3 = {3, 5, 7, 9}, then the first matrix can be:
[0327] Figure 19 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=9 and K=6. Curve 1 corresponds to the first matrix in the eleventh possible embodiment described above, and curve 2 corresponds to the shortened matrix F. 16 (i.e., remove F) 16 The last 7 rows and last 7 columns), the first matrix corresponding to curve 3 is the matrix F after punching.16 (i.e., remove F) 16 The first 7 rows and first 7 columns of the matrix are used, with the horizontal axis representing SNR and the vertical axis representing BLER. It can be seen that the decoding performance corresponding to the first matrix in the eleventh possible embodiment is superior, and significantly better than the shortened matrix F. 16 Or the matrix F after punching holes 16 The corresponding decoding performance.
[0328] Among them, F 16 By analyzing the matrix The result is obtained by performing the Kronecker product four times.
[0329] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 11 below. According to Table 11, the minimum code weight corresponding to curve 1 is the same as the minimum code weight corresponding to other curves, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0330] Table 11
[0331] In the twelfth possible embodiment, taking N as 10 and K as 7 as an example, the first matrix can be represented as: G 10,7 =C d (P,i2,Q,i3), where P=G 6,1 (G 6,1 It can be represented as: G 6,1 =C d Given (F4,{1,2,3,5},F2,{4,6}), i2={1,2,4,6,8,10}, Q=F4, i3={3,5,7,9}, then the first matrix can be:
[0332] Figure 20 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=10 and K=7. Curve 1 corresponds to the first matrix in the twelfth possible embodiment described above, and curve 2 corresponds to the shortened matrix F. 16 (i.e., remove F) 16 The last 6 rows and last 6 columns), the first matrix corresponding to curve 3 is the matrix F after punching. 16 (i.e., remove F) 16 The first 6 rows and first 6 columns of the matrix are used, with the horizontal axis representing SNR and the vertical axis representing BLER. It can be seen that the decoding performance corresponding to the first matrix in the twelfth possible embodiment is better, and significantly superior to the shortened matrix F. 16 Or the matrix F after punching holes 16 The corresponding decoding performance.
[0333] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 12 below. According to Table 12, the minimum code weight corresponding to curve 1 is the same as the minimum code weight corresponding to other curves, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0334] Table 12
[0335] In the thirteenth possible embodiment, taking N=14 and K=7 as an example, the first matrix can be represented as: G 14,7 =C d (P,i2,Q,i3), where P = F8 (F8 can be obtained by coupling two F4s), i2 = {1,2,3,5,7,9,11,13}, Q = G 6,2 (where G) 6,2 The determination of i3 can refer to the tenth possible embodiment above. If i3 = {4, 6, 8, 10, 12, 14}, then the first matrix can be:
[0336] Figure 21 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=14 and K=7. Curve 1 corresponds to the first matrix in the thirteenth possible embodiment described above, and curve 2 corresponds to the shortened matrix F. 16 (i.e., remove F) 16 The last two rows and last two columns), the first matrix corresponding to curve 3 is the matrix F after punching. 16 (i.e., remove F) 16 The first two rows and first two columns of the matrix are used, with the horizontal axis representing SNR and the vertical axis representing BLER. It can be seen that the decoding performance corresponding to the first matrix in the thirteenth possible embodiment is superior, and significantly better than the shortened matrix F. 16 Or the matrix F after punching holes 16 The corresponding decoding performance.
[0337] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 13 below. According to Table 13, the minimum code weight corresponding to curve 1 is larger, and the number of codewords corresponding to the minimum code weight of curve 1 is smaller, indicating that the decoding performance of curve 1 is better.
[0338] Table 13
[0339] In the fourteenth possible embodiment, taking N=15 and K=6 as an example, the first matrix can be represented as: G 15,6 =Cd (P,i2,Q,i3), where P=G 14,12 (G 14,12 It can be represented as: G 14,12 =C d (F8,{1,2,4,6,8,10,12,14},G 6,5 ,{3,5,7,9,11,13}), G 6,5 It can be represented as: G 6,5 =C d (F4,{1,3,5,6},F2,{2,4})), i2={1,2,3,4,5,6,7,8,9,10,11,12,14,15}, Q=G 6,5 (G 6,5 It can be represented as: G 6,5 =C d Given (F4,{1,3,5,6},F2,{2,4})) and i3={13}, the first matrix can be:
[0340] Figure 22 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=15 and K=6. Curve 1 corresponds to the first matrix in the fourteenth possible embodiment described above, and curve 2 corresponds to the shortened matrix F. 16 (i.e., remove F) 16 The last row and last column), the first matrix corresponding to curve 3 is the matrix F after punching. 16 (i.e., remove F) 16 The first row and first column of the matrix are used, with the horizontal axis representing SNR and the vertical axis representing BLER. It can be seen that the decoding performance corresponding to the first matrix in the fourteenth possible embodiment is better, and significantly superior to the shortened matrix F. 16 Or the matrix F after punching holes 16 The corresponding decoding performance.
[0341] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 14 below. According to Table 14, the minimum code weight corresponding to curve 1 is larger, and the decoding performance of curve 1 is better.
[0342] Table 14
[0343] In the fifteenth possible embodiment, taking N = 16 and K = 2 as an example, the first matrix can be represented as: G 16,2 =C d (P,i2,Q,i3), where P=G 13,2 (G 13,2It can be represented as: G 13,2 =C d (F8,{1,2,3,5,7,9,11,13},G 5,1 ({4,6,8,10,12}), G 5,1 It can be represented as: G 5,1 =C d (F4,{1,2,3,4},F1,{5})), i2={1,2,3,4,5,6,7,8,9,10,12,13,15}, Q=G 3,2 (G 3,2 The determination of G can be made by referring to the sixth possible embodiment described above. 3,2 Given that i3 = {11, 14, 16}, the first matrix can be:
[0344] Figure 23 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=16 and K=2. Curve 1 corresponds to the first matrix in the fifteenth possible embodiment described above, and curve 2 corresponds to matrix F. 16 The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the fifteenth possible embodiment is superior, and significantly better than matrix F. 16 The corresponding decoding performance.
[0345] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 15 below. According to Table 15, the minimum code weight corresponding to curve 1 is larger, and the number of codewords corresponding to the minimum code weight of curve 1 is smaller, indicating that the decoding performance of curve 1 is better.
[0346] Table 15
[0347] In the sixteenth possible embodiment, taking N=16 and K=3 as an example, the first matrix can be represented as: G 16,3 =C d (P,i2,Q,i3), where P=G 15,3 (G 15,3 It can be represented as: G 15,3 =C d (F8,{1,3,5,7,9,11,13,15},G 7,2 ,{2,4,6,8,10,12,14}), G 7,2The determination of i2 can refer to the fifth possible embodiment above, i2 = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,16}, Q = F1, i3 = {15}, then the first matrix can be:
[0348] Figure 24 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=16 and K=3. Curve 1 corresponds to the first matrix in the sixteenth possible embodiment described above, and curve 2 corresponds to matrix F. 16 The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the sixteenth possible embodiment is superior, and significantly better than matrix F. 16 The corresponding decoding performance.
[0349] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 16 below. According to Table 16, the minimum code weight corresponding to curve 1 is the same as the minimum code weight corresponding to curve 2, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0350] Table 16
[0351] In the seventeenth possible embodiment, taking N as 16 and K as 6 as an example, the first matrix can be represented as: G 16,6 =C d (P,i2,Q,i3), where P=G 14,1 (G 14,1 It can be represented as: G 14,1 =C d (G7,1,{1,3,5,7,9,11,13},G 7,1 ,{2,4,6,8,10,12,14}), G 7,1 It can be represented as: G 7,1 =C u (F4,{1,3,5,7},G 3,1 ,{2,4,6}), G 3,1 It can be represented as: G 3,1 =C u Given (F2,{1,3},F1,{2})), i2={1,2,3,4,5,6,8,9,10,11,12,14,15,16}, Q=F2, i3={7,13}, then the first matrix can be:
[0352] Figure 25 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=16 and K=6. Curve 1 corresponds to the first matrix in the seventeenth possible embodiment described above, and curve 2 corresponds to matrix F. 16 The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the seventeenth possible embodiment is superior, and significantly better than matrix F. 16 The corresponding decoding performance.
[0353] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 17 below. According to Table 17, the minimum code weight corresponding to curve 1 is larger, and the number of codewords corresponding to the minimum code weight of curve 1 is smaller, indicating that the decoding performance of curve 1 is better.
[0354] Table 17
[0355] In the eighteenth possible embodiment, taking N as 16 and K as 7 as an example, the first matrix can be represented as: G 16,7 =C d (P,i2,Q,i3), where P=G 15,7 (G 15,7 It can be represented as: G 15,7 =C d (F8,{1,2,4,6,8,10,12,14},G 7,6 ,{3,5,7,9,11,13,15}), G 7,6 =C d (F4,{1,3,5,7},G 3,2 ,{2,4,6}), G 3,2 The determination of G can be made by referring to the sixth possible embodiment described above. 3,2 Given the matrix i2 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16}, Q = F1, and i3 = {13}, then the first matrix can be:
[0356] Figure 26 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=16 and K=7. Curve 1 corresponds to the first matrix in the eighteenth possible embodiment described above, and curve 2 corresponds to matrix F. 16 The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the eighteenth possible embodiment is superior, and significantly better than matrix F.16 The corresponding decoding performance.
[0357] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 18 below. According to Table 18, the minimum code weight corresponding to curve 1 is the same as the minimum code weight corresponding to curve 2, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0358] Table 18
[0359] In the nineteenth possible embodiment, taking N as 16 and K as 8 as an example, the first matrix can be represented as: G 16,8 =C d (P,i2,Q,i3), where P=G 12,2 (G 12,2 It can be represented as: G 12,2 =C d Given (F8,{1,2,3,4,6,8,10,12},F4,{5,7,9,11}), i2={1,2,3,4,5,7,8,10,12,13,15,16}, Q=F4, i3={6,9,11,14}, then the first matrix can be:
[0360] Figure 27 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=16 and K=8. Curve 1 corresponds to the first matrix in the nineteenth possible embodiment described above, and curve 2 corresponds to matrix F. 16 The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the nineteenth possible embodiment is superior, and significantly better than matrix F. 16 The corresponding decoding performance.
[0361] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 19 below. According to Table 19, the minimum code weight corresponding to curve 1 is the same as that corresponding to curve 2, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0362] Table 19
[0363] In the twentieth possible embodiment, taking N as 16 and K as 9 as an example, the first matrix can be represented as: G 16,9 =C d(P,i2,Q,i3), where P=G 10,9 (G 10,9 It can be represented as: G 10,9 =C d (G 6,3 ,{1,2,4,6,8,10},F4,{3,5,7,9}),G 6,3 The determination of i2 can refer to the fourth possible embodiment above), i2 = {1,3,5,7,9,10,12,14,15,16}, Q = G 6,3 If i3 = {2, 4, 6, 8, 11, 13}, then the first matrix can be:
[0364] Figure 28 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=16 and K=9. Curve 1 corresponds to the first matrix in the twentieth possible embodiment described above, and curve 2 corresponds to matrix F. 16 The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the twentieth possible embodiment is superior, and significantly better than matrix F. 16 The corresponding decoding performance.
[0365] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 20 below. According to Table 20, the minimum code weight corresponding to curve 1 is the same as the minimum code weight corresponding to curve 2, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0366] Table 20
[0367] In the twenty-first possible embodiment, taking N as 16 and K as 12 as an example, the first matrix can be represented as: G 16,12 =C d (P,i2,Q,i3), where P=G 15,1 (G 15,1 It can be represented as: G 15,1 =C u (F8,{1,3,5,7,9,11,13,15},G 7,1 ,{2,4,6,8,10,12,14}), G 7,1 The determination of i2 can refer to the seventeenth possible embodiment above, i2 = {1,2,3,4,5,6,7,8,10,11,12,13,14,15,16}, Q = F1, i3 = {9}, then the first matrix can be:
[0368] Figure 29 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=16 and K=12. Curve 1 corresponds to the first matrix in the twenty-first possible embodiment described above, and curve 2 corresponds to matrix F. 16 The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the twenty-first possible embodiment is superior, and significantly better than matrix F. 16 The corresponding decoding performance.
[0369] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 21 below. According to Table 21, the minimum code weight corresponding to curve 1 is the same as the minimum code weight corresponding to curve 2, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0370] Table 21
[0371] In the twenty-second possible embodiment, taking N as 16 and K as 13 as an example, the first matrix can be represented as: G 16,13 =C d (P,i2,Q,i3), where P=G 14,3 (G 14,3 It can be represented as: G 14,3 =C d (F8,{1,2,4,6,8,10,12,14},G 6,3 ,{3,5,7,9,11,13}), G 6,3 The determination of i2 can refer to the fourth possible embodiment above, i2 = {1,2,3,4,6,7,8,9,11,12,13,14,15,16}, Q = F2, i3 = {5,10}, then the first matrix can be:
[0372] Figure 30 illustrates a performance comparison of simulation results for different methods of determining the first matrix when N=16 and K=13. Curve 1 corresponds to the first matrix in the twenty-second possible embodiment described above, and curve 2 corresponds to matrix F. 16 The horizontal axis represents SNR, and the vertical axis represents BLER. It can be seen that the decoding performance corresponding to the first matrix in the twenty-second possible embodiment is superior, and significantly better than matrix F. 16 The corresponding decoding performance.
[0373] The minimum code weight of the first matrix corresponding to different curves and the number of codewords corresponding to the minimum code weight in the coset are shown in Table 22 below. According to Table 22, the minimum code weight corresponding to curve 1 is the same as the minimum code weight corresponding to curve 2, but the number of codewords corresponding to the minimum code weight of curve 1 is smaller, and the decoding performance of curve 1 is better.
[0374] Table 22
[0375] Based on the above twenty-two possible embodiments, for different N and K, when the corresponding first matrix is determined by the method proposed in this application, the minimum code weight corresponding to the first matrix is larger, or the number of codewords corresponding to the minimum code weight corresponding to the first matrix is smaller, which can make the error correction performance of the first matrix better, thereby improving the decoding performance of the first matrix.
[0376] It should be noted that the various embodiments of this application can be implemented independently or in combination, without limitation. Unless otherwise specified or in conflict, the terminology and / or descriptions between the different embodiments provided in this application are consistent and can be referenced mutually. Technical features in different embodiments can be combined to form new embodiments based on their inherent logical relationships.
[0377] It is understood that in the embodiments of this application, the executing entity may perform some or all of the steps in the embodiments of this application. These steps or operations are merely examples, and the embodiments of this application may also perform other operations or variations thereof. Furthermore, the various steps may be executed in different orders as presented in the embodiments of this application, and it is not necessarily necessary to execute all the operations in the embodiments of this application.
[0378] The foregoing primarily describes the solutions provided in this application from the perspective of device-to-device interaction. It is understood that each device, in order to achieve the aforementioned functions, includes corresponding hardware structures and / or software modules for executing each function. Those skilled in the art should readily recognize that, based on the algorithm steps of the examples described in conjunction with the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0379] This application embodiment can divide each device into functional modules according to the above method example. For example, each function can be divided into a separate functional module, or two or more functions can be integrated into one processing module. The integrated module can be implemented in hardware or as a software functional module. It should be noted that the module division in this application embodiment is illustrative and only represents one logical functional division. In actual implementation, there may be other division methods.
[0380] When each function is divided into functional modules, Figure 31 shows a transmitting device 310. The transmitting device 310 can perform the actions performed by the transmitting device in the method shown in Figure 8. All relevant content of each step involved in the above method embodiment can be referred to the functional description of the corresponding functional module. The technical effects that can be obtained can be referred to the above method embodiment, and will not be repeated here.
[0381] The transmitting device 310 may include a transceiver module 3101 and a processing module 3102. Exemplarily, the transmitting device 310 may be a communication device, or a chip or other combination device or component having the aforementioned transmitting device functions applied in a communication device. When the transmitting device 310 is a communication device, the transceiver module 3101 may be a transceiver, which may include an antenna and radio frequency circuits, etc.; the processing module 3102 may be a processor (or processing circuit), such as a baseband processor, which may include one or more CPUs. When the transmitting device 310 is a component having the aforementioned transmitting device functions, the transceiver module 3101 may be a radio frequency unit; the processing module 3102 may be a processor (or processing circuit), such as a baseband processor. When the transmitting device 310 is a chip system, the transceiver module 3101 may be an input / output interface of a chip (e.g., a baseband chip); the processing module 3102 may be a processor (or processing circuit) of the chip system, and may include one or more central processing units. It should be understood that the transceiver module 3101 in the embodiments of this application can be implemented by a transceiver or transceiver-related circuit components; the processing module 3102 can be implemented by a processor or processor-related circuit components (or, referred to as processing circuit).
[0382] For example, the transceiver module 3101 can be used to perform all the transceiver operations performed by the transmitting device in the embodiment shown in FIG8, and / or to support other processes of the technology described herein; the processing module 3102 can be used to perform all operations other than the transceiver operations performed by the transmitting device in the embodiment shown in FIG8, and / or to support other processes of the technology described herein.
[0383] Figure 32 shows a receiving device 320, which can perform the actions performed by the receiving device in the method shown in Figure 8 above. All relevant content of each step involved in the above method embodiment can be referred to the functional description of the corresponding functional module, and the technical effects that can be obtained can be referred to the above method embodiment, which will not be repeated here.
[0384] The receiving device 320 may include a transceiver module 3201 and a processing module 3202. Exemplarily, the receiving device 320 may be a communication device, or a chip or other combination device or component having the aforementioned receiving device functions applied in a communication device. When the receiving device 320 is a communication device, the transceiver module 3201 may be a transceiver, which may include an antenna and radio frequency circuits, etc.; the processing module 3202 may be a processor (or processing circuit), such as a baseband processor, which may include one or more CPUs. When the receiving device 320 is a component having the aforementioned receiving device functions, the transceiver module 3201 may be a radio frequency unit; the processing module 3202 may be a processor (or processing circuit), such as a baseband processor. When the receiving device 320 is a chip system, the transceiver module 3201 may be an input / output interface of a chip (e.g., a baseband chip); the processing module 3202 may be a processor (or processing circuit) of the chip system, and may include one or more central processing units. It should be understood that the transceiver module 3201 in the embodiments of this application can be implemented by a transceiver or transceiver-related circuit components; the processing module 3202 can be implemented by a processor or processor-related circuit components (or, referred to as processing circuit).
[0385] For example, the transceiver module 3201 can be used to perform all the transceiver operations performed by the receiving device in the embodiment shown in FIG8, and / or to support other processes of the technology described herein; the processing module 3202 can be used to perform all operations other than the transceiver operations performed by the receiving device in the embodiment shown in FIG8, and / or to support other processes of the technology described herein.
[0386] As another possible implementation, the transceiver module 3101 in Figure 31 can be replaced by a transceiver unit that integrates the functions of the transceiver module 3101; the processing module 3102 can be replaced by a processor that integrates the functions of the processing module 3102. Furthermore, the transmitting end device 310 shown in Figure 31 may also include a memory. Alternatively, the transceiver module 3201 in Figure 32 can be replaced by a transceiver unit that integrates the functions of the transceiver module 3201; the processing module 3202 can be replaced by a processor that integrates the functions of the processing module 3202. Furthermore, the receiving end device 320 shown in Figure 32 may also include a memory.
[0387] Alternatively, when the processing module 3102 is replaced by a processor and the transceiver module 3101 is replaced by a transceiver, the transmitting end device 310 involved in the embodiments of this application can also be the communication device 330 shown in FIG33. Or, when the processing module 3202 is replaced by a processor and the transceiver module 3201 is replaced by a transceiver, the receiving end device 320 involved in the embodiments of this application can also be the communication device 330 shown in FIG33.
[0388] The processor can be logic circuit 3301, and the transceiver can be interface circuit 3302. Furthermore, the communication device 330 shown in FIG33 may also include a memory 3303.
[0389] This application also provides a computer program product that, when executed by a computer, can implement the functions of any of the above method embodiments.
[0390] This application also provides a computer program that, when executed by a computer, can implement the functions of any of the above method embodiments.
[0391] This application also provides a computer-readable storage medium. All or part of the processes in the above method embodiments can be implemented by a computer program instructing related hardware. This program can be stored in the computer-readable storage medium, and when executed, it can include the processes of the above method embodiments. The computer-readable storage medium can be an internal storage unit of the terminal (including a data sending end and / or a data receiving end) of any of the foregoing embodiments, such as the terminal's hard disk or memory. The computer-readable storage medium can also be an external storage device of the terminal, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the terminal. Further, the computer-readable storage medium can include both the terminal's internal storage unit and external storage devices. The computer-readable storage medium is used to store the computer program and other programs and data required by the terminal. The computer-readable storage medium can also be used to temporarily store data that has been output or will be output.
[0392] It should be noted that the terms "first" and "second," etc., in the specification, claims, and drawings of this application are used to distinguish different objects, not to describe a specific order. "First" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Therefore, a feature defined with "first" and "second" may explicitly or implicitly include one or more of that feature. In the description of this embodiment, unless otherwise stated, "a plurality of" means two or more.
[0393] Furthermore, the terms “comprising” and “having”, and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the steps or units listed, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to such process, method, product, or apparatus.
[0394] It should be understood that in this application, "at least one (item)" means one or more. "More than one" means two or more. "At least two (items)" means two or three or more. "And / or" is used to describe the relationship between related objects, indicating that there can be three relationships. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist simultaneously, where A and B can be singular or plural. The character " / " generally indicates that the related objects before and after are in an "or" relationship. "At least one (item) of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one (item) of a, b, or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple. Both "...when" and "if" indicate that a corresponding action will be taken under certain objective circumstances. They are not time limits, nor do they require a judgment action to be taken when the action is taken, nor do they imply any other limitations.
[0395] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner to facilitate understanding.
[0396] In this application, "sending information to...(terminal device)" can be understood as the destination of the information being the terminal device. This can include sending information directly or indirectly to the terminal device. "Receiving information from...(terminal device)" can be understood as the source of the information being the terminal device, and can include receiving information directly or indirectly from the terminal device. Information may undergo necessary processing between the source and destination, such as format changes, but the destination can understand the valid information from the source.
[0397] Through the above description of the embodiments, those skilled in the art can clearly understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0398] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0399] The units described as separate components may or may not be physically separate. A component shown as a unit can be one or more physical units; that is, it can be located in one place or distributed in multiple different locations. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0400] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0401] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solution of this application embodiment, or all or part of the technical solution, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to cause a device (which may be a microcontroller, chip, etc.) or processor to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, ROM, RAM, magnetic disks, or optical disks.
Claims
A communication method, characterized in that, include: Based on the first matrix, a first sequence of length N is polar-coded to obtain a second sequence; wherein, the first matrix is an N-row N-column matrix, and the first matrix is determined according to one or more of the following: a second matrix, a third matrix, a second set, a third set, or a first indicator sequence; the second matrix is a p-row p-column matrix, the third matrix is a q-row q-column matrix, the sum of p and q is N, and both p and q are greater than 0; the second set includes p positive integers less than or equal to N, the third set includes q positive integers less than or equal to N, and the intersection of the second set and the third set is an empty set; the first indicator sequence includes q elements, and the t-th element in the first indicator sequence is used to indicate the positional relationship between the t-th row of the third matrix and the x-th row of the second matrix, where x is determined according to the t-th element in the third set from smallest to largest and the t-th element in the first indicator sequence, t = 1, 2, 3, ..., q; Output one or more bits of the second sequence. The method according to claim 1, characterized in that, Before performing polar coding on a first sequence of length N based on a first matrix to obtain a second sequence, the method further includes: Obtain the first sequence, which includes one or more of the following: information bits, CRC bits, check bits, or frozen bits. A communication method, characterized in that, include: Receive information to be decoded; wherein the length of the first sequence corresponding to the information to be decoded is N; The information to be decoded is decoded according to the first matrix; wherein, the first matrix is an N-row N-column matrix, and the first matrix is determined according to one or more of the following: a second matrix, a third matrix, a second set, a third set, or a first indicator sequence; the second matrix is a p-row p-column matrix, the third matrix is a q-row q-column matrix, the sum of p and q is N, and both p and q are greater than 0; the second set includes p positive integers less than or equal to N, the third set includes q positive integers less than or equal to N, and the intersection of the second set and the third set is an empty set; the first indicator sequence includes q elements, and the t-th element in the first indicator sequence is used to indicate the positional relationship between the t-th row of the third matrix and the x-th row of the second matrix, where x is determined according to the t-th element of the third set in ascending order and the t-th element in the first indicator sequence, t = 1, 2, 3, ..., q. The method according to any one of claims 1-3, characterized in that, x is the difference between the first difference and the t-th element in the first indicator sequence; wherein the first difference is the difference between the t-th element in the third set from smallest to largest and (t-1). The method according to any one of claims 1-4, characterized in that, The elements in the first matrix that correspond to the second set in the same row and column are the same as the elements in the second matrix. The method according to any one of claims 1-5, characterized in that, The elements in the first matrix that correspond to the third set in the row and column are the same as the elements in the third matrix. The method according to any one of claims 1-6, characterized in that, The elements in the first matrix corresponding to the second set and the elements in the columns corresponding to the third set are 0; or The elements in the first matrix corresponding to the third set and the elements in the columns corresponding to the second set are 0; or In the first matrix, the rows corresponding to positive integers in the second set (excluding the fourth set) and the columns corresponding to the third set are all 0; wherein, the t-th element in the fourth set is determined based on the t-th element in the third set (from smallest to largest) and the t-th element in the first indicator sequence. The method according to any one of claims 1-7, characterized in that, The elements in the first matrix corresponding to the third set and the elements in the columns corresponding to the second set are the same as the elements in the second matrix corresponding to the fifth set and the elements in the first to p columns; wherein, the t-th element in the fifth set is determined based on the t-th element in the third set in ascending order. The method according to claim 8, characterized in that, The t-th element in the fifth set is the difference between the t-th element in the third set (from smallest to largest) and t. The method according to any one of claims 1-7, characterized in that, The elements in the first matrix corresponding to the sixth set and the elements in the columns corresponding to the third set are the same as the elements in the third matrix; wherein, the t-th element in the sixth set is determined based on the t-th element in the third set in ascending order. The method according to claim 10, characterized in that, The t-th element in the sixth set is the sum of the t-th element in the third set (from smallest to largest) and 1. The method according to claim 10 or 11 is characterized in that, In the first matrix, the rows corresponding to positive integers in the second set (excluding the sixth set) and the columns corresponding to the third set are all 0. The method according to claim 7, characterized in that, The t-th element in the fourth set is the difference between the first value and the first product: where the first value is the sum of the t-th element in the third set from smallest to largest and 1; and the first product is the product of the t-th element in the first indicator sequence and 2. The method according to any one of claims 1-7, 13, is characterized in that, When the t-th element in the first indicator sequence is 1, the elements in the (j-1)-th row of the first matrix and the column corresponding to the third set are 0; or When the t-th element in the first indicator sequence is 0, the elements in row j of the first matrix and the column corresponding to the second set are 0; Where j is the t-th element in the third set from smallest to largest. The method according to any one of claims 1-7 and 13-14 is characterized in that, When the t-th element in the first indication sequence is 1, the elements in row j of the first matrix and the column corresponding to the second set are the same as the elements in row x of the second matrix and columns 1 to p of the second matrix; or When the t-th element in the first indication sequence is 0, the elements in row j+1 of the first matrix and the column corresponding to the third set are the same as the elements in row t and columns 1 to q of the third matrix; Where j is the t-th element in the third set. The method according to any one of claims 1-15, characterized in that, The second matrix is determined according to one or more of the following: a fourth matrix, a fifth matrix, a seventh set, an eighth set, or a second indicator sequence; the fourth matrix is an a-row a-column matrix, the fifth matrix is a b-row b-column matrix, the sum of a and b is p, and both a and b are greater than 0; the seventh set includes a positive integers less than or equal to p, the eighth set includes b positive integers less than or equal to p, and the intersection of the seventh set and the eighth set is an empty set; the second indicator sequence includes b elements, and the m-th element in the third set is used to indicate the positional relationship between the m-th row of the fifth matrix and the y-th row of the fourth matrix, where y is determined according to the m-th element of the eighth set and the m-th element of the second indicator sequence, m = 1, 2, 3, ..., b. The method according to any one of claims 1-16, characterized in that, The third matrix is determined according to one or more of the following: a sixth matrix, a seventh matrix, a ninth set, a tenth set, or a third indicator sequence; the sixth matrix is a c-row, c-column matrix, the seventh matrix is a d-row, d-column matrix, the sum of c and d is q, and both c and d are greater than 0; the ninth set includes c positive integers less than or equal to q, the tenth set includes d positive integers less than or equal to q, and the intersection of the ninth set and the tenth set is an empty set; the third indicator sequence includes d elements, the nth element of the third indicator sequence is used to indicate the positional relationship between the nth row of the seventh matrix and the zth row of the sixth matrix, z is determined according to the nth element of the tenth set and the nth element of the third indicator sequence, n = 1, 2, 3, ..., d. The method according to any one of claims 1-17, characterized in that, p is greater than or equal to q. The method according to any one of claims 1-18, characterized in that, With N=4 and K=2, the first matrix is: or With N=5 and K=2, the first matrix is: or Given N=5 and K=3, the first matrix is: or Given N=6 and K=3, the first matrix is: or With N=7 and K=2, the first matrix is: or With N=7 and K=5, the first matrix is: or Given N=8 and K=2, the first matrix is: or Given N=8 and K=3, the first matrix is: or Given N=8 and K=5, the first matrix is: or With N=8 and K=6, the first matrix is: or With N=9 and K=6, the first matrix is: or With N = 10 and K = 7, the first matrix is: or With N = 14 and K = 7, the first matrix is: or Given N = 15 and K = 6, the first matrix is: or Given N = 16 and K = 2, the first matrix is: or Given N = 16 and K = 3, the first matrix is: or With N = 16 and K = 6, the first matrix is: or With N = 16 and K = 7, the first matrix is: or With N = 16 and K = 8, the first matrix is: or Given N = 16 and K = 9, the first matrix is: or With N = 16 and K = 12, the first matrix is: or With N = 16 and K = 13, the first matrix is: Where K is the number of information bits in the first sequence. A communication device, characterized in that, The communication device includes a processor; the processor is configured to run a computer program or instructions that cause the communication method as described in any one of claims 1 or 3-19 to be executed, or cause the communication method as described in any one of claims 2-19 to be executed. A communication device, characterized in that, The communication device includes an interface circuit and a logic circuit; the interface circuit is used to input and / or output information; the logic circuit is used to execute the communication method as described in any one of claims 1 or 3-19, or to execute the communication method as described in any one of claims 2-19, and to process and / or generate the information based on the information. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions or programs that, when executed on a computer, cause the communication method as described in any one of claims 1 to be executed, or cause the communication method as described in any one of claims 2 to 19 to be executed. A computer program product, characterized in that, The computer program product includes computer instructions; when some or all of the computer instructions are executed on a computer, they cause the communication method as described in any one of claims 1 or 3-19 to be executed, or cause the communication method as described in any one of claims 2-19 to be executed. A communication device, characterized in that, The communication device includes one or more modules for performing the communication method as described in any one of claims 1 or 3-19. A communication device, characterized in that, The communication device includes one or more modules for performing the communication method as described in any one of claims 2-19.
Citation Information
Patent Citations
Apparatus for rate matching of multiplied positive codes
CN116508264A
Polar code encoding method, and device
WO2021103978A1