Information transport method and apparatus
By segmenting the transport block and using channel coding and rate matching with different code rates, the coding complexity and bit error rate of the transport block are reduced, the spectral efficiency is improved, and the problem of high TB coding complexity in wireless communication is solved.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2025-10-17
- Publication Date
- 2026-07-02
Smart Images

Figure CN2025128553_02072026_PF_FP_ABST
Abstract
Description
Information transmission method and device
[0001] This application claims priority to Chinese Patent Application No. 202411938094.7, filed with the State Intellectual Property Office of China on December 25, 2024, entitled "Information Transmission 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 information transmission methods and apparatus. Background Technology
[0003] A transport block (TB) is the basic unit of data transmission between the medium access control (MAC) layer and the physical (PHY) layer. For example, data sent from the MAC layer to the PHY layer can be organized in TB format. Data sent from the MAC layer to the physical layer can be one TB or multiple TBs.
[0004] In wireless communication, the transmitting device can segment the TB to obtain C code blocks; then, channel coding is performed on each of the C code blocks to obtain the corresponding coded sequences; further, rate matching is performed on each of the C coded sequences to obtain code blocks of length E corresponding to each of the C coded sequences. Here, E is equal to the length of the mother code, thereby ensuring the stability and reliability of data transmission.
[0005] However, rate matching increases the coding complexity of TB, so how to reduce the coding complexity of TB is an urgent problem to be solved. Summary of the Invention
[0006] This application provides an information transmission method and apparatus that can reduce the encoding complexity of TB.
[0007] Firstly, this application provides an information transmission method, which 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. Illustratively, in the field of wireless communication, the transmitting device can be either a user terminal device or a network device. The method includes: determining a first transmission block based on a first number of bits, where the first number of bits is the total number of channel bits corresponding to the transmission resource, and the first number of bits cannot be divided evenly by the length of the first mother code; the first transmission block contains C code blocks, where C is a positive integer greater than 1; channel coding the first C-1 code blocks of the C code blocks using a first code rate to obtain C-1 coded sequences, where the C-1 code blocks correspond one-to-one with the C-1 coded sequences, and the first code rate is the code rate of the first transmission block; channel coding the Cth code block of the C code blocks using a second code rate to obtain the Cth coded sequence, where the length of each of the C coded sequences is equal to the length of the first mother code, and the second code rate is less than the first code rate; rate matching the Cth coded sequence to obtain a rate-matched sequence; and outputting the C-1 coded sequences and the rate-matched sequence.
[0008] Based on the first aspect, regardless of whether the total number of channel bits corresponding to the transmission resource is divisible by the length of the first mother code, the first transmission block is segmented according to the length of the first mother code to obtain C code blocks. Therefore, if the total number of channel bits is not divisible by the length of the first mother code, rate matching can be performed only on one code block (such as the Cth code block), so that the length of the rate matching sequence after rate matching and the sum of the C-1 coding sequences are less than or equal to the total number of channel bits, thereby ensuring that the first transmission block can be output on the transmission resource. In other words, the transmitting device only needs to perform rate matching on the Cth code block. Compared with the scheme of performing rate matching on all C code blocks, the coding complexity of TB can be reduced.
[0009] It is understandable that the smaller the length of the mother code, the weaker the error correction performance of the codeword, and the fewer information bits can be effectively transmitted; that is, the smaller the length of the mother code, the smaller the code rate of its corresponding code block. Therefore, when channel coding the Cth code block, its code rate can be made smaller than the code rate of the first C-1 code blocks (that is, the first code rate is used to channel code the first C-1 code blocks respectively, and the second code rate is used to channel code the Cth code block, the second code rate is smaller than the first code rate). Compared with the scheme of using the first code rate for all C code blocks, the bit error rate of the Cth code block can be reduced, thereby reducing the bit error rate of TB and improving the spectral efficiency of TB.
[0010] Secondly, this application provides an information transmission method, which 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. Illustratively, in the field of wireless communication, the transmitting device can be either a network device or a user terminal device. The method includes: obtaining a sequence to be decoded, which contains C sub-sequences to be decoded, each of which corresponds one-to-one with a C code block. The lengths of the first C-1 sub-sequences to be decoded are all the length of the first mother code, while the length of the Cth sub-sequence to be decoded is not the length of the first mother code. The sequence to be decoded is carried on transmission resources, and the total number of channel bits corresponding to the transmission resources is the first number of bits, which cannot be divided evenly by the length of the first mother code. C is a positive integer greater than 1. The Cth sub-sequence to be decoded is de-rate matched to obtain a de-rate matched sequence. The de-rate matched sequence is decoded using a second code rate to obtain the Cth decoded sequence. The C-1 sub-sequences to be decoded are decoded using a first code rate to obtain C-1 decoded sequences, which correspond one-to-one with the C-1 sequence to be decoded. The second code rate is less than the first code rate.
[0011] Based on the second aspect, since the total number of channel bits corresponding to the transmission resources carried by the C undecoded sub-sequences obtained by the receiving device cannot be divided evenly by the length of the first mother code, and the lengths of the first C-1 undecoded sub-sequences are both the length of the first mother code, while the length of the Cth undecoded sub-sequence is not the length of the first mother code; that is, when the transmitting device performs channel coding, the first C-1 undecoded sub-sequences do not need rate matching during channel coding, while the Cth undecoded sub-sequence does. Therefore, the receiving device only needs to perform rate matching for the Cth undecoded sub-sequence corresponding to the Cth code block; compared to the scheme of performing rate matching for all code blocks, the decoding complexity of TB can be reduced.
[0012] It is understandable that the smaller the length of the mother code, the weaker the error correction performance of the codeword, and the fewer information bits can be effectively transmitted; that is, the smaller the length of the mother code, the smaller the code rate of its corresponding code block. Therefore, when channel coding the Cth code block, its code rate can be made smaller than the code rate of the first C-1 code blocks (that is, the first code rate is used to channel code the first C-1 code blocks respectively, and the second code rate is used to channel code the Cth code block, the second code rate is smaller than the first code rate). Compared with the scheme of using the first code rate for all C code blocks, the bit error rate of the Cth code block can be reduced, thereby reducing the bit error rate of TB and improving the spectral efficiency of TB.
[0013] Combining the first and second aspects, in one possible design, the size of the first transport block = the size of the second transport block - the number of third bits, where the number of third bits is the loss of the first transport block relative to the second transport block, and the size of the second transport block is determined based on the transport resources.
[0014] Based on this possible design, the first bit count is the number of bits in the coded sequence obtained after channel coding the second transport block (i.e., a transport block of size second TBS) using the first code rate; the second bit count is the number of bits in the coded sequence obtained after channel coding the first C-1 code blocks using the first code rate and the Cth code block using the second code rate. Since the second code rate is less than the first code rate, for a code block, a smaller code block can use a smaller code rate (such as the second code rate) to achieve the same coding effect as a larger code block using a larger code rate (such as the first code rate); that is, the first transport block and the second transport block can achieve the same coding effect, and the size of the first transport block is smaller than the size of the second transport block, thus improving the reliability of data transmission compared to outputting the second transport block, thereby improving the bit error rate performance of the TB.
[0015] Combining the first and second aspects, in one possible design, the third number of bits is determined based on the first number of bits, the second number of bits, the scaling factor, and the first code rate. The second number of bits is the largest number of bits that is less than the first number of bits and can be divided evenly by the length of the first mother code. The scaling factor is used to determine the second code rate.
[0016] Combining the first and second aspects, in one possible design, the third number of bits, the first number of bits, the second number of bits, the first code rate, and the scaling factor satisfy:
[0017] The third bit count = floor((first bit count - second bit count) * first bit rate * (1 - scaling factor)); where floor represents rounding.
[0018] Combining the first and second aspects, in one possible design, the size of the first transport block = (C-1) * length of the first mother code * first code rate + length of the rate matching sequence * second code rate.
[0019] Based on this possible design, the size of the first transmission block is the sum of C-1 code blocks encoded with the first code rate (i.e., (C-1) * length of the first mother code * first code rate) and one code block encoded with the second code rate (i.e., length of the Cth encoded sequence * second code rate), thereby realizing the output of the first transmission block.
[0020] Combining the first and second aspects, in one possible design, the second code rate is the product of the first code rate and a scaling factor, which is related to the magnitude of the first code rate.
[0021] Combining the first and second aspects, in one possible design, the rate matching method for the C-th encoded sequence is puncturing.
[0022] Thirdly, this application provides an information transmission method, which 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. Indicatively, in the field of wireless communication, the transmitting device can be either a network device or a user terminal device. The method includes: obtaining a first number of bits, where the first number of bits is the total number of channel bits used to transmit bits to be encoded, and the first number of bits is not divisible by a first mother code length; determining a second number of bits based on the first number of bits, where the second number of bits is divisible by the first mother code length; determining a first transmission block based on the second number of bits and a first code rate, where the first transmission block contains bits to be encoded, and the first code rate is the code rate of the bits to be encoded; and outputting the first transmission block.
[0023] Based on the third aspect, when the total number of channel bits used to transmit the bits to be encoded (i.e., the first number of bits) is not divisible by the length of the first mother code, it indicates that rate matching is performed on the encoded sequence obtained after channel coding. Therefore, the transmitting device can consider discarding the portion that is not divisible by the length of the first mother code to obtain the second number of bits, i.e., the second number of bits is divisible by the length of the first mother code. Then, the first transport block is determined based on this second number of bits, so that the total number of encoded bits obtained after channel coding of the first transport block is the second number of bits. Thus, rate matching is not required after channel coding, reducing the coding complexity of the TB.
[0024] In one possible design, outputting the first transmission block includes: segmenting the first transmission block to obtain C code blocks, where C is a positive integer; performing channel coding on the C code blocks to obtain C coding sequences, wherein the C code blocks and C coding sequences correspond one-to-one, and the length of each of the C coding sequences is an integer multiple of the length of the first mother code; and outputting the C coding sequences.
[0025] Based on this possible design, the transmitting device can segment the first transmission block based on the length of the first mother code, so that the length of the mother code of the C code blocks obtained by segmentation is an integer multiple of the length of the first mother code. Thus, the C code blocks do not need to be rate matched after channel coding, reducing the coding complexity of TB.
[0026] In one possible design, channel coding is performed on C code blocks to obtain C coded sequences, including: channel coding is performed on C code blocks using a first code rate to obtain C coded sequences.
[0027] Based on this possible design, all C code blocks are channel-coded using the same code rate, thereby reducing coding complexity and improving coding efficiency.
[0028] In one possible design, the second number of bits is the total length of C coded sequences, and the size of the first transport block = the second number of bits * the first code rate.
[0029] Based on this possible design, the second number of bits can be the total number of coded bits obtained after channel coding of the first transport block. Therefore, the first transport block does not need rate matching after channel coding, reducing the coding complexity of the TB.
[0030] In one possible design, channel coding is performed on C code blocks to obtain C coded sequences, including: channel coding the first C-1 code blocks of the C code blocks using a first code rate to obtain C-1 coded sequences, wherein the C-1 code blocks correspond one-to-one with the C-1 coded sequences, and the C coded sequences include the C-1 coded sequences; channel coding the Cth code block of the C code blocks using a second code rate to obtain the Cth coded sequence with a length equal to the length of the first mother code, wherein the length of the Cth coded sequence is less than the length of the C-1 coded sequences, the second code rate is less than the first code rate, and the C coded sequences include coded sequences with a length equal to the length of the first mother code.
[0031] Based on this possible design, since the smaller the length of the mother code, the weaker the error correction performance of the codeword, and the fewer information bits can be effectively transmitted; that is, the smaller the length of the mother code, the smaller the code rate of its corresponding code block. Therefore, when channel coding the Cth code block, its code rate can be made smaller than the code rate of the first C-1 code blocks (that is, the first code rate is used to channel code the first C-1 code blocks respectively, and the second code rate is used to channel code the Cth code block, the second code rate is smaller than the first code rate), thereby reducing the bit error rate of the Cth code block, further reducing the bit error rate of TB, and improving the spectral efficiency of TB.
[0032] In one possible design, the second number of bits is the total length of the C encoded sequences, and the first TBS is the sum of the product of the total length of the C-1 encoded sequences and the first code rate, and the product of the length of the C-th encoded sequence and the second code rate.
[0033] Based on this possible design, the first bit count is the number of bits in the coded sequence obtained after channel coding the second transport block (i.e., a transport block of size second TBS) using the first code rate; the second bit count is the number of bits in the coded sequence obtained after channel coding the first C-1 code blocks using the first code rate and channel coding the Cth code block using the second code rate (i.e., the sum of the product of the total length of the first TBS and the first code rate, and the product of the length of the Cth code block and the second code rate). Since the second code rate is less than the first code rate, for a code block, a smaller code block can use a smaller code rate (such as the second code rate) to achieve the same coding effect as a larger code block using a larger code rate (such as the first code rate); that is, the first transport block and the second transport block can achieve the same coding effect, which improves data transmission efficiency compared to outputting the second transport block.
[0034] Fourthly, this application provides an information transmission method, which 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. Indicatively, in the field of wireless communication, the transmitting device can be either a network device or a user terminal device. The method includes: acquiring a sequence to be decoded, the sequence to be decoded corresponding to a first transmission block, the first transmission block containing bits to be encoded; decoding the sequence to be decoded according to the first transmission block to obtain a decoding result; wherein the first transmission block is determined based on a second number of bits and a first code rate, the second number of bits is determined based on the first number of bits, the first number of bits is the total number of channel bits used to transmit the bits to be encoded, the first number of bits is not divisible by the length of a first mother code, the second number of bits is divisible by the length of the first mother code, and the first code rate is the code rate of the bits to be encoded.
[0035] Based on the fourth aspect, when the total number of channel bits used to transmit the bits to be encoded (i.e., the first number of bits) is not divisible by the length of the first mother code, it indicates that rate matching is performed on the encoded sequence obtained by channel coding. Therefore, the transmitting device can consider discarding the portion that is not divisible by the length of the first mother code to obtain the second number of bits, i.e., the second number of bits is divisible by the length of the first mother code. Then, the first transport block is determined based on this second number of bits, such that the total number of encoded bits obtained after channel coding of the first transport block is the second number of bits. Thus, rate matching is not required after channel coding; correspondingly, after the receiving device obtains the decoded sequence corresponding to the first transport block, it also does not need to perform rate matching and can directly perform channel decoding, reducing the decoding complexity of the TB.
[0036] In one possible design, decoding the sequence to be decoded according to the first transmission block to obtain a decoding result includes: segmenting the sequence to be decoded according to the first transmission block to obtain C sub-sequences to be decoded, the length of each of the C sub-sequences to be decoded being an integer multiple of the length of the first mother code; decoding each of the C sub-sequences to be decoded to obtain C decoded sequences, and the decoding result includes C decoded sequences.
[0037] In one possible design, the C sub-sequences to be decoded are decoded respectively to obtain C decoded sequences, including: decoding the C sub-sequences to be decoded respectively using a first code rate to obtain C decoded sequences.
[0038] In one possible design, the second number of bits is the total length of C coded sequences, and the size of the first transport block = the second number of bits * the first code rate.
[0039] In one possible design, C code segments are decoded to obtain C decoded sequences, including: decoding the first C-1 code segments of the C code blocks using a first code rate to obtain C-1 decoded sequences, with each C-1 decoded sequence corresponding to one of the C-1 code segments; and decoding the Cth code segment of the C code blocks using a second code rate, with the second code rate being less than the first code rate. The decoding result includes C decoded sequences.
[0040] The technical effects of any design in the fourth aspect can be referenced from the technical effects of the corresponding design in the third aspect above, and will not be elaborated further here.
[0041] Combining the third and fourth aspects, in one possible design, the size of the first transport block = the size of the second transport block - the third number of bits, where the third number of bits is the loss of the second transport block relative to the first transport block, and the size of the second transport block = the first number of bits * the first code rate.
[0042] Based on this possible design, the first bit count is the number of bits in the coded sequence obtained after channel coding the second transport block (i.e., a transport block of size second TBS) using the first code rate; the second bit count is the number of bits in the coded sequence obtained after channel coding the first C-1 code blocks using the first code rate and the Cth code block using the second code rate. Since the second code rate is less than the first code rate, for a code block, a smaller code block can use a smaller code rate (such as the second code rate) to achieve the same coding effect as a larger code block using a larger code rate (such as the first code rate); that is, the first transport block and the second transport block can achieve the same coding effect, while the size of the first transport block is smaller than the size of the second transport block, thus improving data transmission efficiency compared to outputting the second transport block.
[0043] Combining the third and fourth aspects, in one possible design, the third number of bits is determined based on the first number of bits, the second number of bits, and the first code rate.
[0044] Combining the third and fourth aspects, in one possible design, the number of third bits, the number of first bits, the number of second bits, and the first code rate satisfy: Number of third bits = floor(*first code rate*(number of first bits - number of second bits));
[0045] Here, floor represents rounding.
[0046] Combining the first to fourth aspects, in one possible design, the first number of bits is equal to the ratio of the second TBS to the first code rate, where the second TBS is the TBS corresponding to the transmission resources used to transmit the bits to be encoded.
[0047] Combining the first to fourth aspects, in one possible design, the number of first bits is determined based on the transmission format of the bits to be transmitted.
[0048] Fifthly, embodiments of this application provide a communication device that can be applied to the transmitting end device described in the first or third 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.
[0049] As an example, the processing module is used to determine a first transmission block based on a first number of bits, where the first number of bits is the total number of channel bits corresponding to the transmission resource, and the first number of bits cannot be divided evenly by the length of the first mother code. The first transmission block contains C code blocks, where C is a positive integer greater than 1. The processing module is also used to perform channel coding on the first C-1 code blocks of the C code blocks using a first code rate to obtain C-1 coded sequences. The C-1 code blocks correspond one-to-one with the C-1 coded sequences, and the first code rate is the code rate of the first transmission block. The processing module is also used to perform channel coding on the Cth code block of the C code blocks using a second code rate to obtain the Cth coded sequence. The length of the C coded sequences is the length of the first mother code, and the second code rate is less than the first code rate. The processing module is also used to perform rate matching on the Cth coded sequence to obtain a rate-matched sequence. The transceiver module is used to output the C-1 coded sequences and the rate-matched sequence on the transmission resource.
[0050] Optionally, the transceiver module and processing module of the communication device in the fifth 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.
[0051] As another example, the processing module is used to obtain a first number of bits, which is the total number of channel bits used to transmit the bits to be encoded, and the first number of bits cannot be divided by the length of the first mother code; the processing module is used to determine a second number of bits based on the first number of bits, and the second number of bits can be divided by the length of the first mother code; the processing module is used to determine a first transmission block based on the second number of bits and a first code rate, the first transmission block containing the bits to be encoded, and the first code rate being the code rate of the bits to be encoded; the transceiver module is used to output the first transmission block.
[0052] Optionally, the transceiver module and processing module of the communication device in the fifth aspect may also perform the corresponding functions in the third aspect or any possible design of the third aspect, as detailed in the method examples, and the beneficial effects that can be achieved can also be found in the foregoing related content.
[0053] Sixthly, embodiments of this application provide a communication device that can be applied to the receiving end device described in the second or fourth aspect to realize the functions performed by the receiving end device. The communication device can be the receiving end device itself, or it can be a chip, chip system, or system-on-a-chip of the receiving end device, etc. The communication device can execute the functions performed by the receiving 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.
[0054] As an example, the processing module is used to obtain the sequence to be decoded, which corresponds to C sub-sequences to be decoded. Each of the C sub-sequences corresponds one-to-one with a C code block, where C is a positive integer greater than 1. The length of the first C-1 sub-sequences is the length of the first mother code, while the length of the Cth sub-sequence is not the length of the first mother code. The sequence to be decoded is carried on transmission resources, and the total number of channel bits corresponding to the transmission resources is the first number of bits, which cannot be divided evenly by the length of the first mother code. The processing module is also used to segment the sequence to be decoded according to the first transmission block to obtain C sub-sequences to be decoded; the processing module is also used to perform rate matching on the C sub-sequence to be decoded to obtain a rate matching sequence; the rate matching sequence is decoded using a second code rate to obtain the C decoded sequence; the processing module is also used to decode the C-1 sub-sequences to be decoded using a first code rate to obtain C-1 decoded sequences, the C-1 decoded sequences correspond one-to-one with the C-1 sequence to be decoded, and the second code rate is less than the first code rate.
[0055] Optionally, the transceiver module and processing module of the communication device in the sixth 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.
[0056] As another example, the processing module is used to obtain the sequence to be decoded, which corresponds to a first transmission block, and the first transmission block contains bits to be encoded; the processing module is also used to decode the sequence to be decoded according to the first transmission block to obtain a decoding result; wherein, the first transmission block is determined according to a second number of bits and a first code rate, the second number of bits is determined based on the first number of bits, the first number of bits is the total number of channel bits used to transmit the bits to be encoded, the first number of bits cannot be divided by the length of the first mother code, the second number of bits can be divided by the length of the first mother code, and the first code rate is the code rate of the bits to be encoded.
[0057] Optionally, the transceiver module and processing module of the communication device in the sixth aspect may also perform the corresponding functions in the fourth aspect or any possible design of the fourth aspect, as detailed in the method examples, and the beneficial effects that can be achieved can also be found in the foregoing related content.
[0058] In a seventh aspect, embodiments of this application provide a communication device including one or more processors; the one or more processors are configured to execute the method described in any one of the first to fourth aspects by means of logic circuits and / or by running a computer program or instructions.
[0059] 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.
[0060] 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.
[0061] In one possible design, the communication device is a chip or chip system.
[0062] Eighthly, embodiments of this application provide a communication device, which 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 perform the method described in either the first or fourth aspect, processing and / or generating information based on the information.
[0063] In one possible design, the communication device is a chip or chip system.
[0064] Ninthly, embodiments of this application provide a computer-readable storage medium storing computer instructions or programs that, when executed on a computer, cause the methods described in either the first or fourth aspect to be performed.
[0065] In a tenth aspect, embodiments of this application provide a computer program product containing computer instructions that, when run on a computer, cause the methods described in either the first or fourth aspect to be executed.
[0066] In one aspect, embodiments of this application provide a computer program that, when run on a computer, causes the methods described in either the first or fourth aspect to be executed.
[0067] In a twelfth aspect, embodiments of this application provide a chip, including: a processor coupled to a memory for storing programs or instructions, wherein when the program or instructions are executed by the processor, the methods described in either the first or fourth aspect are executed.
[0068] The technical effects of any of the design methods in aspects five through twelfth are similar to those in aspects one and four above, and will not be elaborated upon further.
[0069] In a thirteenth aspect, embodiments of this application provide a communication system that may include communication means for performing as described in the first aspect or any possible design of the first aspect, communication means for performing as described in the second aspect or any possible design of the second aspect, communication means for performing as described in the third aspect or any possible design of the third aspect, and communication means for performing as described in the fourth aspect or any possible design of the fourth aspect. Attached Figure Description
[0070] Figure 1 is a schematic diagram of a bit interleaving process provided in an embodiment of this application;
[0071] Figure 2 is a schematic diagram of a process for determining the transport block size (TBS) according to an embodiment of this application;
[0072] Figure 3 is a schematic diagram of a communication system provided in an embodiment of this application;
[0073] Figure 4 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;
[0074] Figure 5 is a schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0075] Figure 6 is a flowchart illustrating an information transmission method provided in an embodiment of this application;
[0076] Figure 7 is a flowchart illustrating another information transmission method provided in an embodiment of this application;
[0077] Figure 7-1 is a schematic diagram showing the relationship between the first number of bits and the second number of bits provided in an embodiment of this application;
[0078] Figure 7-2 is a schematic diagram showing the relationship between the size of a first transport block and the size of a second transport block according to an embodiment of this application;
[0079] Figure 8 is a flowchart illustrating another information transmission method provided in an embodiment of this application;
[0080] Figure 9 is a flowchart illustrating another information transmission method provided in an embodiment of this application;
[0081] Figure 10 is a schematic diagram of the structure of a transmitting device provided in an embodiment of this application;
[0082] Figure 11 is a schematic diagram of the structure of a receiving device provided in an embodiment of this application;
[0083] Figure 12 is a schematic diagram of another communication device provided in an embodiment of this application;
[0084] Figure 13 is a schematic diagram of the structure of another communication device provided in an embodiment of this application. Detailed Implementation
[0085] Before describing the embodiments of this application, the technical terms involved in the embodiments of this application will be described.
[0086] A transport block (TB) is the basic unit of data transmission between the medium access control (MAC) layer and the physical (PHY) layer. For example, data sent from the MAC layer to the PHY layer can be organized in TB format. Data sent from the MAC layer to the physical layer can be one TB or multiple TBs.
[0087] Code block (CB): When a TB is large in length, it needs to be segmented into multiple code blocks to accommodate the maximum channel coding length supported by the channel codec. When the length of any one of these code blocks is the same as the mother code length, rate matching is not required during the coding process. This means that the length of the code block being the same as the mother code length refers to the length of the channel-coded codeword obtained after channel coding of the code block being the same as the mother code length.
[0088] However, in wireless communication, the allocated transmission resources may not be exactly equal to the maximum mother code length N. m Divisible by N. Therefore, some tail resources may remain with bits less than the maximum mother code length; in this case, a shorter mother code length N can be used. m / 2 n The remaining channel resources are divided to ensure that multiple code blocks have the same length as the mother code; among them, 2 n <N m Assume N m =1024, at this time, N m / 2 n It can be N m / 2、N m / 4、N m / 8 etc., that is, n=1,2,3.
[0089] Bit interleaving: For the TB received by the PHY layer from the MAC layer (i.e., the TB contains a bit sequence of length A), Right now As shown in Figure 1, cyclic redundancy check (CRC) encoding can be performed on TB (i.e., CRC encoding of TB is performed using the TB-CRC module in Figure 1) to obtain a bit sequence of length B. Right now Among them, bit sequence It is a bit sequence The result is obtained by concatenating with a bit CRC of length L (i.e., B = A + L), where, for example, L can be 16 or 24.
[0090] Then, for the bit sequence The bit sequence without CRC is segmented to obtain C code blocks (i.e., the bit sequence is segmented). bit sequence in The code is segmented to obtain C code blocks, and then each of the C code blocks is CRC encoded (i.e., the bit sequence is encoded using the CB segmentation and CB-CRC module shown in Figure 1). (Perform code block segmentation and CRC encoding) to obtain C CRC codeword bit streams of length K. In this system, there is a one-to-one correspondence between the C code blocks and the C CRC codeword bit streams (i.e., C CRC codeword bit streams of length K), where C > 1 and C is an integer. Specifically, the bit sequence can be adjusted based on the length of the master code. The code is segmented so that the length of each code block is the length of the mother code.
[0091] Next, the channel coding module is used to perform channel coding on the C CRC codeword bitstreams (i.e., encoding using the channel coding module in Figure 1), resulting in C channel-coded codewords. Each of the C channel-coded codewords corresponds one-to-one with a C CRC codeword bitstream, meaning each of the C channel-coded codewords corresponds one-to-one with a C code block. Furthermore, channel coding methods include, but are not limited to, low-density parity-check (LDPC) coding, polar coding, and other error-correcting codes. Specifically, when the bit sequence is calculated according to the mother code length... When segmenting, the length of each channel-coded codeword in the C channel-coded codewords is the length of the mother code of the corresponding code block, that is, the C channel-coded codewords are...
[0092] Then, the rate matching module is used to rate match the C channel-coded codewords respectively, resulting in C code blocks of length E. In this system, C code blocks, each of length E, correspond one-to-one with C channel-coded codewords. Rate matching can be achieved through at least one of the following methods: puncture, shortening, or repetition. In one implementation, when E equals N... m When this occurs, it indicates that the channel-coded codeword has not undergone any of the rate matching operations of puncturing, shortening, or repeating.
[0093] Next, the bit interleaving module is used to perform bit interleaving on the C code blocks, each of length E, to obtain the C interleaved code blocks. The C interleaved code blocks are then concatenated using the CB concatenation module to obtain a bit sequence of length G. Where G = E * C. Finally, the bit sequence is mapped using the modulation and resource element (RE) mapping module. The signals are modulated into quadrature amplitude modulation (QAM) symbols and then mapped onto time-frequency physical resources for transmission.
[0094] For a given channel block (TB), there is a corresponding modulation and coding scheme (MCS). Therefore, the code rate corresponding to the TB can be determined based on the MCS, and then the TB can be channel-coded using this code rate. Illustratively, the coding device can determine the code rate corresponding to the TB from the illustrative table 1 based on the index of the MCS.
[0095] Table 1
[0096] In the illustrative Table 1, the second column represents the modulation order. For example, 2, 4, and 6 represent quadrature phase shift keying (QPSK), 16QAM, and 64QAM, respectively. The third column, the target code rate, represents the product of the code rate (e.g., R) and 1024, where R < 1. For example, in the illustrative Table 1, the 120 in the third column of the first row represents the product of R and 1024, meaning the code rate R = 120 / 1024 = 0.1172.
[0097] As illustrated in Figure 1 above, channel coding of TB refers to channel coding of the C CRC codeword bitstreams obtained after segmenting TB and performing CB-CRC. That is, all C CRC codeword bitstreams are channel coded using the code rate corresponding to TB, meaning that the code rates of the C code blocks (or C CRC codeword bitstreams) are the same.
[0098] Determining the transmit block size (TBS): Currently, two main methods are used to determine the TBS:
[0099] In one implementation, the sending device can determine the TBS based on transmission resources. That is, the sending device determines the TBS corresponding to a pre-configured transmission resource. Specifically, the sending device can determine the TBS using the process illustrated in Figure 2 below:
[0100] S201. The transmitting device determines the number of resource elements (REs) corresponding to the transmission resources based on the bandwidth and the number of symbols.
[0101] The number of REs corresponding to the transmission resources can be understood as the number of REs included in the time-frequency resources used to transmit TB.
[0102] One RE can carry one modulation symbol.
[0103] For example, the number of REs corresponding to the transmission resources within a time slot can be N. RE =min(156,N′) RE )*n PRB N RE n represents the number of REs corresponding to the transmission resources. PRB N′ is the number of physical resource blocks (PRBs). RE N′ represents the number of REs within a PRB. RE The following formula can be satisfied:
[0104] in, The number of subcarriers contained in a PRB (e.g., 12 or 14). The number of orthogonal frequency division multiplexing (OFDM) symbols scheduled within a time slot. This represents the number of REs in a PRB (Physical Reference Block). This refers to the overhead of configuring or predefined high-level parameters.
[0105] S202. The transmitting device determines the pure payload size that an RE can carry based on the number of REs corresponding to the transmission resources.
[0106] The pure payload size that an RE can carry can also be understood as the number of information bits carried by the time-frequency resources used to transmit TB.
[0107] For example, the pure charge that an RE can carry can satisfy the following formula: N info =N RE *R*Q*v.
[0108] Where R represents the code rate, Q represents the order of the MCS (or the modulation order), and v represents the number of multi-input multi-output (MIMO) layers (or can be described as the number of allocated DMRS ports or transport streams).
[0109] S203. The transmitting device quantifies the pure payload size that the RE can carry to obtain intermediate variables, and determines the TBS based on the intermediate variables.
[0110] Optional, if N info If the value is less than or equal to 3824, then the intermediate variable can be... in, Therefore, based on the exemplary Table 2, we can find values greater than N′. info And closest to N′ info The value is used as TBS. For example, with N′ info For example, if the value is 550, TBS can be the value corresponding to index 41 in the example table 2, that is, TBS can be 552.
[0111] Table 2
[0112] In the example Table 2, the values of TBS are all in bytes, and the intervals are 8, 16, 32, 64, and 128.
[0113] In another implementation, the transmitting device can determine the TBS based on the bits to be encoded to be transmitted. That is, the transmitting device determines the size of the TB (i.e., TBS) that can contain the number of bits B of the bits to be encoded; in other words, the TBS is the number of bits B. In this method, it is usually also necessary to determine the transmission resources required to transmit the bits to be encoded. The size of the transmission resources is equal to the ratio of the number of bits B to the code rate, which is the code rate corresponding to the current MCS (e.g., determined from Table 1 based on the MCS).
[0114] Currently, when the total number of channel bits corresponding to the transmitted TBS (as shown in Figure 1) cannot be increased by the mother code length N, m During division, rate matching is required for the C channel-coded codewords so that the sum of the lengths of the C code blocks output by rate matching is equal to the total number of bits in the channel, thereby ensuring the stability and reliability of data transmission.
[0115] However, rate matching increases the coding complexity of TB; therefore, for schemes that determine TBS based on the bits to be encoded, it is possible to add padding bits after the bits to be encoded, and then determine TBS′ based on the bits to be encoded and the padding bits (i.e., TBS′ equals the number of bits B + padding bits); so that the total number of channel bits corresponding to TBS′ can be increased by N. m Integer division avoids rate matching. However, padding bits increase the bit error rate of TB, so it is necessary to rethink how to reduce the coding complexity of TB.
[0116] In view of this, this application provides an information transmission method in which, regardless of whether the total number of channel bits corresponding to the transmission resource is divisible by the length of the first mother code, the first transmission block is segmented according to the length of the first mother code to obtain C code blocks. Thus, when the total number of channel bits is not divisible by the length of the first mother code, rate matching can be performed only on one code block (such as the Cth code block), such that the length of the rate matching sequence after rate matching and the sum of the C-1 coding sequences are less than or equal to the total number of channel bits, thereby ensuring that the first transmission block can be output on the transmission resource. In other words, the transmitting device only needs to perform rate matching on the Cth code block. Compared with the scheme of performing rate matching on the channel coding results of all C code blocks, the coding complexity of TB can be reduced.
[0117] It is understandable that the smaller the length of the mother code, the weaker the error correction performance of the codeword, and the fewer information bits can be effectively transmitted; that is, the smaller the length of the mother code, the smaller the code rate of its corresponding code block. Therefore, when channel coding the Cth code block, its code rate can be made smaller than the code rate of the first C-1 code blocks (that is, the first code rate is used to channel code the first C-1 code blocks respectively, and the second code rate is used to channel code the Cth code block, the second code rate is smaller than the first code rate). Compared with the scheme of using the first code rate for all C code blocks, the bit error rate of the Cth code block can be reduced, thereby reducing the bit error rate of TB and improving the spectral efficiency of TB.
[0118] The embodiments of this application will now be described in detail with reference to the accompanying drawings.
[0119] The information transmission method provided in this application embodiment can be used in any communication system, such as a third-generation partnership project (3GPP) communication system, for example, a long-term evolution (LTE) system; a fifth-generation (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; enhanced mobile broadband (eMBB); ultra-reliable and low-latency communication (URLLC); enhanced machine-type communication (eMTC); and various types of future communication systems. It can also be used in non-terrestrial communication networks. Network (NTN) systems (such as satellite communication systems) and non-3GPP communication systems are not restricted.
[0120] The information transmission 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.
[0121] The communication system provided in the embodiments of this application will be described below with reference to Figure 3.
[0122] Figure 3 is a schematic diagram of a communication system provided in an embodiment of this application. As shown in Figure 3, the communication system may include at least one terminal device and at least one network device.
[0123] In Figure 3, 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).
[0124] It is understandable that when network devices communicate with each other, or when terminal devices communicate with each other, they can also communicate based on channel coding. That is, the sending end device and the receiving end device can both be network devices or both be terminal devices, without restriction.
[0125] The terminal device in Figure 3 can be a device with wireless transceiver capabilities or a chip or chip system that can be configured 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.
[0126] For example, the terminal device in Figure 3 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, customer-premises equipment (CPE), light user equipment (light UE), reduced capability user equipment (REDCAP UE), wireless terminals in industrial control, wireless terminals in autonomous driving, wireless terminals in telemedicine, wireless terminals in smart grids, wireless terminals in smart cities, and wireless terminals in smart homes. Wireless terminals in the home, vehicles with vehicle-to-everything (V2X) communication capabilities, intelligent connected vehicles, vehicle devices (such as vehicle devices, vehicle modules, vehicle chips, on-board units (OBUs) or telematics boxes (T-BOXs), etc.), drones with UAV-to-UAV (U2U) communication capabilities, terminal devices in future networks, or terminal devices in future evolved public land mobile networks (PLMNs) are not restricted.
[0127] In Figure 3, 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.
[0128] 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.
[0129] 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.
[0130] In another example, a network device can be a device that includes centralized unit (CU) nodes, distributed unit (DU) nodes, or a device that includes CU nodes and one or more DU nodes. For example, a network device can be logically divided into CUs and DUs, with some protocol layer functions centrally controlled by the CU, and the remaining part or all of the protocol layer functions distributed in the DU, which is centrally controlled by the CU. CUs and DUs can be set up separately, or they can be included in the same network element, such as in a BBU. Furthermore, a centralized unit (CU) can be further divided into a control plane (CU-CP) and a user plane (CU-UP).
[0131] 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).
[0132] 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.
[0133] Based on the above description of the terminal device and network device, optionally, the information transmission 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.
[0134] Optionally, in this embodiment of the application, the transmitting device (or source) and the receiving device (or sink) can use the process shown in Figure 4 below for encoding and decoding. The transmitting device can be any terminal device or network device in the communication system shown in Figure 3, and the receiving device can also be any terminal device or network device in the communication system shown in Figure 3.
[0135] 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.
[0136] In specific implementation, as shown in Figure 3, each terminal device and network device can adopt the composition structure shown in Figure 5, or include the components shown in Figure 5. Figure 5 is a structural schematic diagram of a communication device 500 provided in an embodiment of this application. The communication device 500 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 5, the communication device 500 includes a processor 501, a transceiver 502, and a communication line 503.
[0137] Furthermore, the communication device 500 may also include a memory 504. The processor 501, memory 504, and transceiver 502 can be connected via a communication line 503.
[0138] Wherein, processor 501 may be a central processing unit (CPU), a general-purpose network processor (NP), a digital signal processor (DSP), a programmable logic device (PLD), a microprocessor unit (MPU), a microcontroller unit (MCU), a graphics processing unit (GPU), a field-programmable gate array (FPGA), an artificial intelligence processor (AI processor), or a neural processing unit (NPU), or any combination thereof. Processor 501 may also be other devices with processing functions, such as circuits, devices, or software modules, without limitation.
[0139] Transceiver 502 is used to communicate with other communication devices or other communication networks. These other communication networks can be Ethernet, radio access network (RAN), wireless local area network (WLAN), etc. Transceiver 502 can be a communication module, interface circuit, input / output interface, chip pins, a transceiver, or any device capable of enabling communication.
[0140] Communication line 503 is used to transmit information between the components included in communication device 500.
[0141] Memory 504 is used to store instructions. These instructions can be computer programs.
[0142] The memory 504 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.
[0143] It is understood that the memory 504 can exist independently of the processor 501, or it can be integrated with the processor 501. The memory 504 can be used to store instructions, program code, or some data, etc. The memory 504 can be located inside or outside the communication device 500, without limitation. The processor 501 is used to execute the instructions stored in the memory 504 to implement the information transmission method provided in the following embodiments of this application.
[0144] In one example, processor 501 may include one or more CPUs, such as CPU0 and CPU1 in Figure 5.
[0145] As an optional implementation, the communication device 500 may include multiple processors, for example, in addition to the processor 501 in FIG. 5, it may also include a processor 507.
[0146] As an optional implementation, the communication device 500 also includes an output device 505 and an input device 506. For example, the input device 506 is a device such as a keyboard, mouse, microphone, or joystick, and the output device 505 is a device such as a display screen or speaker.
[0147] It is understood that the communication device 500 can be any of the aforementioned terminal devices, network devices, such as desktop computers, portable computers, network servers, mobile phones, tablet computers, wireless terminals, embedded devices, chip systems, or devices with a similar structure to that shown in Figure 5. Furthermore, the structural composition shown in Figure 5 does not constitute a limitation on the communication device. In addition to the components shown in Figure 5, the specific implementation of this communication device may include more or fewer components than shown, or combine certain components, or have different component arrangements. The embodiments of this application do not impose any limitations on this.
[0148] In this embodiment of the application, the chip system may be composed of chips or may include chips and other discrete devices.
[0149] 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.
[0150] The information transmission method provided in the embodiments of this application will be described below with reference to the communication system shown in Figure 3 and Figure 6. The transmitting device can be any terminal device or network device in the communication system shown in Figure 3, and the receiving device can also be any terminal device or network device in the communication system shown in Figure 3. The transmitting or receiving device described in the following embodiments may include the components shown in Figure 5.
[0151] Figure 6 is a flowchart illustrating an information transmission method provided in an embodiment of this application. As shown in Figure 6, the method may include the following steps:
[0152] S601. The transmitting device determines the first transmission block based on the first number of bits.
[0153] Wherein, the first bit number is the total number of channel bits corresponding to the transmission resource, the first bit number cannot be divided by the length of the first mother code, and the first transmission block contains C code blocks, where C is a positive integer greater than 1.
[0154] Optionally, when the number of first bits cannot be divided evenly by the length of the first mother code, the terminal device can determine the first transmission block based on the number of first bits, then segment the first transmission block to obtain C code blocks, and then perform channel coding on the C code blocks according to the following steps S602 to S603. Wherein, the length of the mother code for each of the C code blocks is the length of the first mother code, and C is a positive integer greater than 1.
[0155] For example, any one of the C code blocks can be a code block without CRC bits obtained by segmentation, or it can be a CRC codeword bit stream of length K obtained by segmentation and CRC encoding (i.e., CB segmentation and CB-CRC module).
[0156] For example, the length of the first master code is preset; for instance, it may be predefined by a protocol, or it may be pre-agreed upon by the sending device and the receiving device. Specifically, the length of the first master code includes, but is not limited to, any one of 1024, 512, 256, 128, 64, and 32.
[0157] For example, when the number of first bits cannot be divided evenly by the length of the first mother code, the transmitting device determines the first TBS based on the number of first bits, and then determines a transport block of size first TBS, i.e., the first transport block. Specifically, the implementation of the transmitting device determining the first transport block can be found in the relevant description in the following embodiments, and will not be repeated here.
[0158] Optionally, the first number of bits is determined based on the size of the second transport block corresponding to the transport resources (i.e., the size of the second transport block is determined based on the transport resources). In other words, the sending device can determine the size of the second transport block based on the transport resources, and then determine the size of the second transport block as the first number of bits.
[0159] For example, the transmitting device can determine the size of its corresponding second transport block TB (i.e., the second TBS) based on the transmission resources; that is, the transmitting device can determine the second TBS based on the process shown in Figure 2, and further determine the total number of channel bits corresponding to the second TBS (i.e., the first number of bits), that is, the first number of bits is equal to the second TBS / the first code rate. That is, the first number of bits can satisfy the following relationship (1): First number of bits = N RE *Q*v relation (1).
[0160] When transmission resources are used to transmit data information, N RE N represents the total number of transmission resources (i.e., frequency resources); when the transmission resources are used to transmit control information, N... RE This refers to the number of REs contained in the resource corresponding to the transmission format of this control information within the transmission resource (i.e., the time-frequency resource). Specifically, the transmission format of the control information includes, but is not limited to, the Physical Uplink Control Channel (PUCCH) format.
[0161] S602. The transmitting device uses the first code rate to perform channel coding on the first C-1 code blocks out of the C code blocks, resulting in C-1 coded sequences. Each of the C-1 code blocks corresponds one-to-one with a C-1 coded sequence, and the length of each of the C-1 coded sequences is the length of the first mother code. The first code rate is the code rate of the first transmission block.
[0162] It is understandable that each TB corresponds to one MCS, and this MCS corresponds to one bitrate; that is, each TB corresponds to one bitrate. Therefore, when configuring transmission resources, the second TBS corresponding to the transmission resource corresponds to a bitrate, and the first transmission block is determined based on the second TBS. Thus, the bitrate of the first transmission block is the bitrate of the second TBS, that is, the first bitrate is the bitrate of the second TBS, or in other words, the first bitrate is the bitrate corresponding to the MCS corresponding to the second TB.
[0163] S603. The transmitting device uses the second code rate to perform channel coding on the Cth code block out of the C code blocks, resulting in the Cth coded sequence. The length of the Cth coded sequence is equal to the length of the first mother code, and the second code rate is less than the first code rate.
[0164] It is understandable that the smaller the length of the mother code, the weaker the error correction performance of the codeword, and the fewer information bits can be effectively transmitted; that is, the smaller the length of the mother code, the smaller the code rate of its corresponding code block. Therefore, when channel coding the Cth code block, its code rate can be made smaller than the code rate of the first C-1 code blocks (that is, the first code rate is used to channel code the first C-1 code blocks respectively, and the second code rate is used to channel code the Cth code block, the second code rate is smaller than the first code rate), thereby reducing the bit error rate of the Cth code block, further reducing the bit error rate of TB, and improving the spectral efficiency of TB.
[0165] Optionally, the second code rate can be the product of the first code rate and a scaling factor, where the scaling factor is determined based on the magnitude of the first code rate, and the scaling factor is greater than 0 and the bit factor is less than 1.
[0166] For example, multiple candidate scaling factors can be predefined, allowing the determination of a scaling factor from among these candidates based on the magnitude of a first bitrate, thereby determining a second bitrate. For instance, when the first bitrate is greater than a first threshold, a larger candidate scaling factor can be selected as the scaling factor; when the first bitrate is less than or equal to the first threshold, a smaller candidate scaling factor can be selected as the scaling factor. Taking multiple candidate scaling factors including 1 / 2 and 3 / 4 as an example, when the first bitrate is greater than the first threshold, the scaling factor is 3 / 4; when the first bitrate is less than or equal to the first threshold, the scaling factor is 1 / 2.
[0167] For example, the first threshold could be 7 / 16.
[0168] It is understood that the sequence output by the channel coding module is referred to as the "coded sequence" in this application; in fact, the sequence output by the channel coding module can also be referred to as the coded bit sequence, the channel coded bit sequence, etc., and this application does not limit it.
[0169] S604. The transmitting device performs rate matching on the Cth encoded sequence to obtain a rate-matched sequence.
[0170] Optionally, the rate matching method is puncturing. That is, after inputting the C encoded sequences into the rate matching module, the first C-1 encoded sequences do not need to undergo any rate matching operation of puncturing, shortening, or repetition, while the C-th encoded sequence needs to be punctured.
[0171] It is understood that the sequence output by the rate matching module is referred to as the "rate matching sequence" in this application; in fact, the sequence output by the rate matching module can also be referred to as the rate-matched coded bit sequence, the rate-matched channel-coded bit sequence, etc., and this application does not limit it.
[0172] S605. The transmitting device outputs C-1 encoded sequences and a rate matching sequence on the transmission resources; correspondingly, the receiving device acquires the sequence to be decoded. The sequence to be decoded contains C sub-sequences to be decoded, and each of the C sub-sequences corresponds one-to-one with a C code block.
[0173] In this system, the length of the first C-1 subsequences to be decoded is the length of the first mother code. The length of the Cth subsequence to be decoded is not the length of the first mother code. The decoded sequence is carried on the transmission resource. The total number of channel bits corresponding to the transmission resource is the number of the first bit. The number of the first bit cannot be divided by the length of the first mother code.
[0174] Optionally, the transmitting device outputs a rate-matched sequence and C-1 coded sequences, including: the transmitting device performs bit interleaving on the C-1 coded sequences and the rate-matched sequence respectively to obtain C interleaved sequences. Then, the C interleaved sequences are concatenated into code blocks to obtain a concatenated sequence. The concatenated sequence is then modulated to obtain an output sequence, and this output sequence is mapped onto transmission resources for transmission. Correspondingly, the receiving device acquires the sequence to be decoded, including: the receiving device receives a symbol sequence from the transmitting device; and demodulates the symbol sequence to obtain the sequence to be decoded.
[0175] Among them, the first C-1 interleaved sequences of the C interleaved sequences correspond one-to-one with the C-1 coding sequences, and the Cth interleaved sequence of the C interleaved sequences corresponds to the rate matching sequence.
[0176] The output sequence sent by the transmitting device may be affected by noise and other interference during transmission through the channel. The symbol sequence received by the receiving device is the output sequence affected by noise and other interference. In this case, the symbol sequence corresponds to the first transport block, which can also be understood as: the symbol sequence corresponds to the output sequence generated based on the first transport block.
[0177] Optionally, when the transmitting device is a component in the transmitting device (e.g., a processor, chip, or chip system), the transmitting device maps the output sequence to transmission resources for transmission, including: the transmitting device sending the output sequence to a communication module in the transmitting device, and then the communication module outputting the signal corresponding to the output sequence so that the receiving device can receive the symbol sequence.
[0178] For example, the implementation of bit interleaving, code block concatenation, and modulation of the sequences corresponding to the C-1 coded sequences and the rate matching sequence is similar to the implementation of bit interleaving, code block concatenation, and modulation of the channel coded codewords in Figure 1 above. For details, please refer to the relevant description in Figure 1 above, which will not be repeated here.
[0179] Optionally, the C sequences of codes to be decoded can be obtained by segmenting the first transport block.
[0180] For example, the receiving device segments the sequence to be decoded according to the first transmission block. This can be understood as follows: the receiving device segments the sequence to be decoded according to the segmentation method of the first transmission block, such that the length of the first C-1 sub-sequences to be decoded after segmentation is the length of the first mother code, while the length of the Cth sub-sequence to be decoded is not the length of the first mother code. The first C-1 sub-sequences to be decoded correspond one-to-one with the C encoded sequences, and the Cth sub-sequence to be decoded corresponds to the rate-matching sequence.
[0181] S606. The receiving device performs rate matching on the Cth subsequence to be decoded to obtain the rate matching sequence.
[0182] For example, since the transmitting device needs to perform rate matching on the C-th encoded sequence, and the C-th sub-sequence to be decoded corresponds to the rate-matched sequence, the receiving device needs to perform the inverse operation of rate matching (i.e., de-rate-matching) on the C-th sub-sequence to be decoded, thereby obtaining the de-rate-matched sequence. At this time, the de-rate-matched sequence corresponds to the C-th encoded sequence.
[0183] S607. The receiving device uses the second code rate to decode the rate matching sequence to obtain the Cth decoding sequence.
[0184] For example, step S607 is the decoding step corresponding to step S603. Therefore, the Cth decoded sequence obtained in step S607 corresponds to the Cth code block. Specifically, the implementation of step S607 can be found in the relevant description of step S603, and will not be repeated here.
[0185] S608, The receiving device uses the first code rate to decode C-1 sub-sequences to be decoded respectively, to obtain C-1 decoded sequences.
[0186] Among them, C-1 decoding sequences correspond one-to-one with C-1 sequences to be decoded.
[0187] For example, step S608 is the decoding step corresponding to step S602. Therefore, the C-1 decoded sequences obtained in step S608 correspond one-to-one with the C-1 code blocks. Specifically, the implementation of step S608 can be found in the relevant description of step S602, and will not be repeated here.
[0188] It should be noted that steps S601-S608 described above are merely illustrative examples of the information transmission process. The execution order of steps S603 and S602 is not limited. For example, step S603 may be executed before step S602; or, step S603 may be executed after step S602; or, step S603 and step S602 may be executed simultaneously. Similarly, the execution order of steps S608 and S607 is not limited. For example, step S608 may be executed before step S607; or, step S608 may be executed after step S607; or, step S608 and step S607 may be executed simultaneously.
[0189] This application provides an information transmission method in which, regardless of whether the total number of channel bits corresponding to the transmission resource is divisible by the length of the first mother code, the first transmission block is segmented according to the length of the first mother code to obtain C code blocks. Thus, when the total number of channel bits is not divisible by the length of the first mother code, rate matching can be performed only on one code block (such as the Cth code block), such that the length of the rate matching sequence after rate matching and the sum of the C-1 coding sequences are less than or equal to the total number of channel bits, thereby ensuring that the first transmission block can be output on the transmission resource. In other words, the transmitting device only needs to perform rate matching on the Cth code block. Compared with the scheme of performing rate matching on the channel coding results of all C code blocks, the coding complexity of TB can be reduced.
[0190] It is understandable that the smaller the length of the mother code, the weaker the error correction performance of the codeword, and the fewer information bits can be effectively transmitted; that is, the smaller the length of the mother code, the smaller the code rate of its corresponding code block. Therefore, when channel coding the Cth code block, its code rate can be made smaller than the code rate of the first C-1 code blocks (that is, the first code rate is used to channel code the first C-1 code blocks respectively, and the second code rate is used to channel code the Cth code block, the second code rate is smaller than the first code rate). Compared with the scheme of using the first code rate for all C code blocks, the bit error rate of the Cth code block can be reduced, thereby reducing the bit error rate of TB and improving the spectral efficiency of TB.
[0191] The above is a general description of the information transmission method provided in this application. The "first transmission block" involved in step S601 above will be described in detail below. For example, the first transmission block is determined based on a first number of bits.
[0192] For example, based on the description of the first bit count in step S601 above, the first bit count is the number of bits in the encoded sequence obtained by the transmitting device assuming that the second transport block (i.e., the transport block of size second TBS) is channel-coded using the first code rate; however, in reality, the first transport block is channel-coded using the first code rate for the first C-1 code blocks and the second code rate for the Cth code block, resulting in the number of bits in the encoded sequence; since the second code rate is less than the first code rate, for a code block, a smaller code block can use a smaller code rate (such as the second code rate) to achieve the same encoding effect as a larger code block using a larger code rate (such as the first code rate); thus, the first transport block can be obtained by reducing the quantization of the second transport block.
[0193] In other words, the first transport block is determined based on the first number of bits. This can be understood as follows: when the first number of bits is not divisible by the length of the first mother code, the first transport block size (TBS) is determined based on the remainder obtained by dividing the first number of bits by the length of the first mother code (i.e., Rem = mod(first number of bits, first mother code length)). The first transport block size is then determined to be equal to the first TBS. Specifically, Rem is the difference between the first number of bits and the second number of bits, where the second number of bits is the largest number of bits less than the first number of bits that is divisible by the length of the first mother code. In other words, Rem is the length of the rate matching sequence.
[0194] Specifically, the first TBS and Rem can satisfy the following relationship (2): First TBS = First mother code length * (C-1) * First code rate + Rem * Second code rate (2).
[0195] It is understandable that the second TBS is equal to the first code rate * the first number of bits; and the first number of bits, the first mother code length, and the first code rate satisfy the following relationship (3): Second TBS = first mother code length * C-1 * first code rate - Rem * first code rate (3).
[0196] Therefore, combining relations (2) and (3), it can be seen that the difference between the first TBS and the second TBS is the loss of the first transport block relative to the second transport block; for ease of description, in the following embodiments, "the loss of the first transport block relative to the second transport block" will be simply referred to as "the third bit number" and will not be repeated here. Among them, the third bit number satisfies the following relation (4): Third bit number = floor(Rem*(first code rate - second code rate)) Relation (4).
[0197] In relation (4), floor represents rounding, and Rem is the difference between the first number of bits and the second number of bits. Furthermore, based on the aforementioned embodiments, the second bit rate can be determined based on a scaling factor. In this case, the third number of bits is determined based on the first number of bits, the second number of bits, the scaling factor, and the first bit rate. Therefore, relation (4) can be replaced by the following relation (5): Third number of bits = floor(Rem * first bit rate * (1 - scaling factor)) Relation (5).
[0198] Referring to Figure 7, which is a flowchart illustrating another information transmission method provided in an embodiment of this application, as shown in Figure 7, the method may include the following steps:
[0199] S701, The transmitting device obtains the first number of bits.
[0200] The first bit number is the total number of channel bits used to transmit the bits to be encoded, and the first bit number cannot be divided by the length of the first mother code.
[0201] For example, the total number of channel bits used to transmit the bits to be encoded can be understood as: the number of channel bits configured for this transmission of coded bits. Specifically, when transmission resources are pre-configured, the total number of channel bits is the total number of channel bits corresponding to the transmission resources, or in other words, the number of information bits that the transmission resources can carry. When the total number of channel bits is determined based on the number of bits to be encoded, the total number of channel bits is the ratio of the number of bits to be encoded to the first code rate. Here, the first code rate is the code rate of the bits to be encoded.
[0202] For example, when the total number of channel bits is determined based on transmission resources, the number of bits to be encoded is equal to the TBS corresponding to the transmission resources (hereinafter referred to as the second TBS). Specifically, the implementation of the TBS corresponding to the transmission resources (i.e., the second TBS) is the same as the implementation of the second TBS in step S601 above. For details, please refer to the relevant description in step S601 above, which will not be repeated here.
[0203] For example, the first code rate is the code rate corresponding to the MCS currently scheduled by the transmitting device; when the total number of channel bits is determined based on transmission resources, the first code rate is the code rate of the second TBS, or in other words, the first code rate is the code rate corresponding to the MCS corresponding to the second TB (i.e., a transport block of size second TBS). Specifically, the relationship between the first code rate and the code rate of the second TBS can be found in the relevant description in step S601 above, and will not be repeated here.
[0204] For example, the length of the first master code is preset; for instance, it may be predefined by a protocol, or it may be pre-agreed upon by the sending device and the receiving device. Specifically, the length of the first master code includes, but is not limited to, any one of 1024, 512, 256, 128, 64, and 32.
[0205] S702. The transmitting device determines the second number of bits based on the first number of bits. The second number of bits is divisible by the length of the first mother code.
[0206] For example, the implementation of the second number of bits can be found in the relevant description in the following embodiments, and will not be repeated here.
[0207] S703. The transmitting device determines the first transmission block based on the second number of bits and the first code rate. The first transmission block contains bits to be encoded.
[0208] Optionally, the transmitting device can determine the first TBS based on the second number of bits and the first code rate, and then determine a transport block (i.e., the first transport block) of size first TBS.
[0209] For example, based on different implementations of the second number of bits, the first TBS also corresponds to different implementations, as can be seen in the relevant descriptions in the following embodiments, which will not be repeated here.
[0210] S704. The transmitting device outputs the first transmission block; correspondingly, the receiving device acquires the sequence to be decoded. The sequence to be decoded corresponds to the first transmission block.
[0211] For example, different implementations of the second number of bits correspond to different encoding methods of the first transport block. Therefore, different encoding methods also correspond to different implementations of the output method. For details, please refer to the relevant descriptions in the following embodiments, which will not be repeated here.
[0212] S705. The receiving device decodes the sequence to be decoded according to the first transmission block to obtain the decoding result.
[0213] For example, the decoding in step S705 corresponds to the encoding in step S704. Therefore, when the encoding method is different, the corresponding decoding method is also different. For details, please refer to the relevant description in the following embodiments, which will not be repeated here.
[0214] This application provides an information transmission method. When the total number of channel bits used to transmit the bits to be encoded (i.e., the first number of bits) is not divisible by the length of the first mother code, it indicates that rate matching is performed on the encoded sequence obtained by channel coding. Therefore, the transmitting device can consider discarding the portion that is not divisible by the length of the first mother code (such as the information bits of the Cth code block) to obtain a second number of bits, i.e., the second number of bits is divisible by the length of the first mother code. Then, based on this second number of bits, a first transport block is determined, such that the total number of encoded bits obtained after channel coding of the first transport block is the second number of bits. Thus, rate matching is not required after channel coding, reducing the coding complexity of the first transport block (TB).
[0215] The above is a general description of the information transmission method provided in this application. The "second number of bits" involved in step S702 above will be described in detail below. For example, the second number of bits may include the following three possible implementations:
[0216] In the first possible implementation, the second number of bits is the largest number of bits that is less than the first number of bits and can be divided evenly by the length of the first mother code.
[0217] For example, taking the first mother code length as 64 as an example, as shown in Figure 7-1, if the number of the first bit is 64*Y+60, then the number of the second bit is equal to 64*Y, where Y is greater than 0.
[0218] As an example, the transmitting device can determine the second number of bits based on the remainder obtained by dividing the first number of bits by the length of the first mother code (i.e., Rem = mod(first number of bits, first mother code length)). In other words, the second number of bits is the difference between the first number of bits and Rem.
[0219] As another example, the number of the second bit, the number of the first bit, and the length of the first mother code can satisfy the following relationship (6): the number of the second bit = the length of the first mother code * floor(number of the first bit / length of the first mother code) relationship (6).
[0220] Combining the two examples above, optionally, in this possible implementation, the second number of bits, the first code rate, and the first TBS satisfy the following relationship (7): First TBS = Second number of bits * First code rate (7).
[0221] It is understandable that when the first number of bits is determined based on the transmission resources, the first number of bits is the product of the second TBS and the first code rate. According to the relationship (7), the difference between the first TBS and the second TBS is the loss of the second transmission block relative to the first transmission block. For ease of description, the "loss of the second transmission block relative to the first transmission block" will be referred to as the "third number of bits" in the following embodiments. It will be explained uniformly here and will not be repeated. That is, the size of the first transmission block, the size of the second transmission block, and the third number of bits satisfy the relationship shown in Figure 7-2. In other words, the third number of bits is determined based on the first number of bits, the second number of bits, and the first code rate. Specifically, the third number of bits, the first number of bits, the second number of bits, and the first code rate satisfy the following relationship (8): Third number of bits = floor(first code rate * (first number of bits - second number of bits)) Relationship (8).
[0222] Optionally, in this possible implementation, as shown in Figure 8, step S704 can be replaced by steps S704A to S704C. That is, the transmitting device transmitting the first transmission block may include steps S704A to S704C:
[0223] S704A: The transmitting device segments the first transmission block to obtain C code blocks.
[0224] For example, the transmitting device can segment the first transmission block according to the length of the first mother code to obtain C code blocks, such that the length of the mother code of each of the C code blocks is an integer multiple of the length of the first mother code.
[0225] For example, any one of the C code blocks can be a code block without CRC bits obtained by segmentation, or it can be a CRC codeword bit stream of length K obtained by segmentation and CRC encoding (i.e., CB segmentation and CB-CRC module).
[0226] The S704B transmitting device performs channel coding on C code blocks respectively to obtain C coded sequences.
[0227] In this system, there is a one-to-one correspondence between the C code blocks and the C coded sequences, and the length of each of the C coded sequences is an integer multiple of the length of the first mother code. That is, the length of each of the C coded sequences is the length of the mother code of the corresponding code block. Therefore, the second number of bits is the sum of the lengths of the C coded sequences, or in other words, the second number of bits is the total length of the C coded sequences.
[0228] Optionally, the transmitting device performs channel coding on the C code blocks respectively to obtain C coded sequences, including: the transmitting device performs channel coding on the C code blocks respectively using a first code rate to obtain C coded sequences. That is, all C code blocks are channel coded using the same code rate, thereby reducing coding complexity and improving coding efficiency.
[0229] The S704C transmitter outputs C encoded sequences. Correspondingly, the receiver acquires the sequence to be decoded.
[0230] Optionally, the transmitting device outputs C coded sequences, including: the transmitting device performs bit interleaving on the C coded sequences to obtain C interleaved sequences; then concatenates the C interleaved sequences into code blocks to obtain a concatenated sequence; then modulates the concatenated sequence to obtain an output sequence, and maps the output sequence onto transmission resources for transmission. Correspondingly, the receiving device obtains the sequence to be decoded, including: the receiving device receives a symbol sequence from the transmitting device; and demodulates the symbol sequence to obtain the sequence to be decoded. The C interleaved sequences correspond one-to-one with the C coded sequences.
[0231] The output sequence sent by the transmitting device may be affected by noise and other interference during transmission through the channel. The symbol sequence received by the receiving device is the output sequence affected by noise and other interference. In this case, the symbol sequence corresponds to the first transport block, which can also be understood as: the symbol sequence corresponds to the output sequence generated based on the first transport block.
[0232] Optionally, when the transmitting device is a component in the transmitting device (e.g., a processor, chip, or chip system), the transmitting device maps the output sequence to transmission resources for transmission, including: the transmitting device sending the output sequence to a communication module in the transmitting device, and then the communication module outputting the signal corresponding to the output sequence so that the receiving device can receive the symbol sequence.
[0233] For example, the implementation of bit interleaving, code block concatenation, and modulation of the C coded sequences is similar to the implementation of bit interleaving, code block concatenation, and modulation of the channel coded codewords in Figure 1 above. For details, please refer to the relevant description in Figure 1 above, which will not be repeated here.
[0234] Optionally, when the bits to be encoded are determined based on transmission resources, transmitting the first transmission block only occupies the second number of transmission resources, and the remaining third number of transmission resources can be used to retransmit a portion of the encoded bits in the C encoded sequences corresponding to the first transmission block.
[0235] For example, taking the first mother code length as 64, if the first number of bits = 64*Y + 60, then the second number of bits is equal to 64*Y; at this time, the total length of the C encoded sequences is 64*Y; the third number of bits is 60; in other words, the transmitting device outputs C encoded sequences and the encoded bits in the C encoded sequences with 60 bits output.
[0236] Accordingly, as shown in Figure 8, step S705 can be replaced by the following steps S705A to S705B. That is, the receiving device decodes the sequence to be decoded according to the first transmission block, which may include steps S705A to S705B:
[0237] S705A: The receiving device segments the sequence to be decoded according to the first transmission block to obtain C sub-sequences to be decoded.
[0238] The lengths of the C code subsequences to be decoded are all integer multiples of the length of the first mother code.
[0239] For example, the receiving device segments the sequence to be decoded according to the first transmission block. This can be understood as follows: the receiving device segments the sequence to be decoded according to the segmentation method of the first transmission block, such that the lengths of the C sub-sequences to be decoded obtained after segmentation are all integer multiples of the length of the first mother code. The C sub-sequences to be decoded correspond one-to-one with the C encoded sequences.
[0240] The S705B receiver decodes the C sub-sequences to be decoded, resulting in C decoded sequences. The decoding result includes C decoded sequences, with each of the C sub-sequences to be decoded corresponding one-to-one with the C decoded sequences.
[0241] Optionally, when the transmitting device performs channel coding on the C code blocks using the first code rate, the receiving device also performs channel decoding using the first code rate; that is, the receiving device decodes the C sub-sequences to be decoded to obtain C decoded sequences, including: the receiving device decodes the C sub-sequences to be decoded using the first code rate to obtain C decoded sequences.
[0242] For example, step S705B is the decoding step corresponding to step S704B. Therefore, the Cth decoded sequence obtained in step S705B corresponds to the Cth code block. Specifically, the implementation of step S705B can be found in the relevant description of step S704B, and will not be repeated here.
[0243] Based on this possible implementation, the transmitting device directly discards portions that are not divisible by the length of the first mother code (such as the information bits of the Cth code block), obtaining the second number of bits, which is divisible by the length of the first mother code. Then, the first transport block is determined based on this second number of bits, ensuring that the total number of coded bits obtained after channel coding of the first transport block is the second number of bits. This scheme is simple to implement and eliminates the need for rate matching after channel coding, thus reducing the coding complexity of TB.
[0244] In the second possible implementation, the second number of bits is the smallest number of bits that is greater than the first number of bits and can be divided evenly by the length of the first mother code.
[0245] For example, if the length of the first mother code is 64, and the number of the first bit is 64*Y+60, then the number of the second bit is 64*(Y+1).
[0246] Optionally, in this possible implementation, as shown in Figure 9, step S704 can be replaced by steps S704D to S704G. That is, the transmitting device transmitting the first transmission block may include steps S704D to S704G:
[0247] S704D: The transmitting device segments the first transmission block to obtain C code blocks.
[0248] For example, the transmitting device can segment the first transmission block according to the length of the first mother code to obtain C code blocks, such that the length of the mother code of each of the C code blocks is an integer multiple of the length of the first mother code. Specifically, the length of the mother code of the first C-1 code blocks is greater than the length of the first mother code, and the length of the mother code of the Cth code block is the length of the first mother code. That is to say, the length of the first mother code is the minimum length of the mother code among the lengths of the C code blocks.
[0249] The S704E transmitter uses a first code rate to perform channel coding on the first C-1 code blocks out of C code blocks, resulting in C-1 coded sequences. Each of the C-1 code blocks corresponds one-to-one with one of the C-1 coded sequences, and the length of each of the C-1 coded sequences is greater than the length of the first mother code. In other words, the length of each of the C-1 coded sequences is the same as the length of the mother code of the corresponding code block.
[0250] The S704F transmitter uses a second code rate to perform channel coding on the Cth code block out of C code blocks, resulting in the Cth coded sequence. The length of the Cth coded sequence is equal to the length of the first mother code, and the second code rate is less than the first code rate. In other words, the length of each code in the Cth coded sequence is equal to the length of the mother code of the Cth code block.
[0251] It is understandable that the smaller the mother code length, the weaker the error correction performance of the codeword, and the fewer information bits can be effectively transmitted; that is, the smaller the mother code length, the smaller the code rate of its corresponding code block. Therefore, when performing channel coding on the Cth code block, its code rate can be made smaller than the code rate of the first C-1 code blocks (i.e., using the first code rate to perform channel coding on the first C-1 code blocks respectively, and using the second code rate to perform channel coding on the Cth code block, the second code rate being smaller than the first code rate), thereby reducing the bit error rate of the Cth code block, that is, reducing the bit error rate of TB, and improving the spectral efficiency of TB. For example, the implementation of the second code rate is similar to the implementation of the second code rate in step S603 above, and the specific details can be found in the relevant description in step S603, which will not be repeated here.
[0252] It should be noted that there is no restriction on the execution order between steps S704E and S704F. For example, step S704E can be executed before step S704F; or step S704E can be executed after step S704F; or step S704E and step S704F can be executed simultaneously.
[0253] The S704G transmitter outputs C coded sequences. Correspondingly, the receiver acquires the sequence to be decoded. Between the transmitter's output of the C coded sequences and the receiver's acquisition of the sequence to be decoded, these coded sequences undergo transmission through the wireless communication channel, which may introduce noise or interference. Therefore, the sequence to be decoded refers to the coded sequence after the introduction of noise or interference.
[0254] For example, the implementation of step S704G is the same as that of step S704C. For details, please refer to the relevant description of step S704C above, which will not be repeated here.
[0255] Accordingly, as shown in Figure 9, step S705 can be replaced by steps S705C to S705E. That is, the receiving device decodes the sequence to be decoded according to the first transmission block, which may include steps S705C to S705E:
[0256] The S705C receiver divides the sequence to be decoded into C sub-sequences based on the first transmission block.
[0257] Among them, the lengths of the first C-1 code subsequences to be decoded are all integer multiples of the length of the first mother code, and the lengths of the first C-1 code subsequences to be decoded are all greater than the length of the first mother code; the length of the Cth code subsequence to be decoded is equal to the length of the first mother code.
[0258] For example, the receiving device segments the sequence to be decoded according to the first transmission block. This can be understood as follows: the receiving device segments the sequence to be decoded according to the segmentation method of the first transmission block, such that the lengths of the C sub-sequences to be decoded obtained after segmentation are all integer multiples of the length of the first mother code. Among them, the first C-1 sub-sequences to be decoded correspond one-to-one with the C-1 encoded sequences, and the Cth sub-sequence to be decoded corresponds to the Cth encoded sequence.
[0259] The S705D receiver uses the second code rate to decode the Cth subsequence to be decoded, obtaining the Cth decoded sequence. The decoding result includes the Cth decoded sequence.
[0260] For example, step S705D is the decoding step corresponding to step S704F. Therefore, the Cth decoded sequence obtained in step S705D corresponds to the Cth code block. Specifically, the implementation of step S705D can be found in the relevant description of step S704F, and will not be repeated here.
[0261] The S705E receiver uses a first code rate to decode C-1 sub-sequences to be decoded, resulting in C-1 decoded sequences. Each of the C-1 decoded sequences corresponds one-to-one with one of the C-1 sub-sequences to be decoded. The decoding result includes C-1 decoded sequences.
[0262] For example, step S705E is the decoding step corresponding to step S704E. Therefore, the C-1 decoded sequences obtained in step S705E correspond one-to-one with the C-1 code blocks. Specifically, the implementation of step S705E can be found in the relevant description of step S704E, and will not be repeated here.
[0263] It should be noted that there is no restriction on the execution order between steps S705D and S705E. For example, step S705D may be executed before step S705E; or step S705D may be executed after step S705E; or step S705D and step S705E may be executed simultaneously.
[0264] Optionally, the second number of bits is the total length of the C-1 encoded sequences. Based on the implementation of the C encoded sequences in steps S704D to S704E, in this possible implementation, the first TBS is determined based on the second number of bits and the first code rate, including: the first TBS is determined based on the second number of bits, the first code rate, and the second code rate. Specifically, the first TBS, the second number of bits, the first code rate, and the second code rate satisfy the following relationship (9): First TBS = Sum of the lengths of the C-1 encoded sequences * First code rate + Length of the Cth encoded sequence * Second code rate (9)
[0265] Based on this possible implementation, the transmitting device may consider adjusting the code rate (i.e., the second code rate) of the part that cannot be divided evenly by the length of the first mother code (such as the information bits of the Cth code block), so that the encoded sequence obtained by using this code rate for channel coding (i.e. the part that cannot be divided evenly by the length of the first mother code) can be equal to the length of the first mother code. Since the encoded sequences obtained by channel coding the portion divisible by the first mother code length (such as the first C-1 code blocks) using the original code rate (i.e., the first code rate) are all greater than the first mother code length, and the smaller the mother code length, the weaker the error correction performance of the codewords, and the fewer information bits can be effectively transmitted; that is, the smaller the mother code length, the smaller the code rate of its corresponding code block. Therefore, when channel coding the Cth code block, its code rate can be made smaller than the code rate of the first C-1 code blocks (i.e., channel coding of the first C-1 code blocks is performed using the first code rate, and channel coding of the Cth code block is performed using the second code rate, where the second code rate is smaller than the first code rate), thereby reducing the bit error rate of the Cth code block, and thus reducing the bit error rate of TB and improving the spectral efficiency of TB.
[0266] It is understood that the quantity parameters described in the embodiments of this application (such as the first number of bits, the second number of bits, the third number of bits, the first TBS, the second TBS, etc.) are all positive integers. Therefore, when a certain quantity parameter is determined based on calculation, it is necessary to round the settlement result to obtain the quantity parameter. For example, when determining the first TBS based on relation (9), the calculation result in relation (9) is rounded, and the rounded result is used as the second TBS. Specifically, this application does not limit the rounding method, such as rounding up or rounding down.
[0267] The various embodiments of this application can be implemented independently or in combination, without limitation. Unless otherwise specified or in conflict of logic, 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.
[0268] 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 examples, and the embodiments of this application may also perform other operations or variations of various operations. In addition, the steps may be performed in different orders as presented in the embodiments of this application, and it is not necessary to perform all the operations in the embodiments of this application.
[0269] 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.
[0270] 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. The module division in this application embodiment is illustrative and represents a logical functional division; in actual implementation, there may be other division methods.
[0271] With each function module divided according to its corresponding function, Figure 10 shows a transmitting device 100. The transmitting device 100 can perform the actions performed by the transmitting device in the methods shown in Figures 6, 7, 8 and 9. All relevant content of each step involved in the above method embodiments 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 embodiments, and will not be repeated here.
[0272] The transmitting device 100 may include a transceiver module 1001 and a processing module 1002. Exemplarily, the transmitting device 100 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 100 is a communication device, the transceiver module 1001 may be a transceiver, which may include an antenna and radio frequency circuits, etc.; the processing module 1002 may be a processor (or processing circuit), such as a baseband processor, which may include one or more CPUs. When the transmitting device 100 is a component having the aforementioned transmitting device functions, the transceiver module 1001 may be a radio frequency unit; the processing module 1002 may be a processor (or processing circuit), such as a baseband processor. When the transmitting device 100 is a chip system, the transceiver module 1001 may be an input / output interface of a chip (e.g., a baseband chip); the processing module 1002 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 1001 in the embodiments of this application can be implemented by a transceiver or transceiver-related circuit components; the processing module 1002 can be implemented by a processor or processor-related circuit components (or, referred to as processing circuit).
[0273] For example, the transceiver module 1001 can be used to execute all the transceiver operations performed by the sending device in the embodiments shown in Figures 6, 7, 8, and 9, and / or to support other processes of the technology described herein; the processing module 1002 can be used to execute all operations other than the transceiver operations performed by the sending device in the embodiments shown in Figures 6, 7, 8, and 9, and / or to support other processes of the technology described herein.
[0274] Figure 11 shows a receiving device 110, which can perform the actions performed by the receiving device in the methods shown in Figures 6, 7, 8 and 9 above. All relevant content of each step involved in the above method embodiments 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 embodiments, which will not be repeated here.
[0275] The receiving device 110 may include a transceiver module 1101 and a processing module 1102. For example, the receiving device 110 may be a communication device, or a chip or other combination device or component having the aforementioned receiving device functions. When the receiving device 110 is a communication device, the transceiver module 1101 may be a transceiver, which may include an antenna and radio frequency circuits; the processing module 1102 may be a processor (or processing circuit), such as a baseband processor, which may include one or more CPUs. When the receiving device 110 is a component having the aforementioned receiving device functions, the transceiver module 1101 may be a radio frequency unit; the processing module 1102 may be a processor (or processing circuit), such as a baseband processor. When the receiving device 110 is a chip system, the transceiver module 1101 may be an input / output interface of a chip (e.g., a baseband chip); the processing module 1102 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 1101 in the embodiments of this application can be implemented by a transceiver or transceiver-related circuit components; the processing module 1102 can be implemented by a processor or processor-related circuit components (or, referred to as processing circuit).
[0276] For example, the transceiver module 1101 can be used to execute all the transceiver operations performed by the receiving device in the embodiments shown in FIG6, FIG7, FIG8, and FIG9, and / or to support other processes of the technology described herein; the processing module 1102 can be used to execute all operations other than the transceiver operations performed by the receiving device in the embodiments shown in FIG6, FIG7, FIG8, and FIG9, and / or to support other processes of the technology described herein.
[0277] As another possible implementation, the transceiver module 1001 in Figure 10 can be replaced by a transceiver unit that integrates the functions of the transceiver module 1001; the processing module 1002 can be replaced by a processor that integrates the functions of the processing module 1002. Furthermore, the transmitting end device 100 shown in Figure 10 may also include a memory. Alternatively, the transceiver module 1101 in Figure 11 can be replaced by a transceiver unit that integrates the functions of the transceiver module 1101; the processing module 1102 can be replaced by a processor that integrates the functions of the processing module 1102. Furthermore, the receiving end device 110 shown in Figure 11 may also include a memory.
[0278] Alternatively, when the processing module 1002 is replaced by a processor and the transceiver module 1001 is replaced by a transceiver, the transmitting end device 100 involved in the embodiments of this application can also be the communication device 120 shown in FIG12. Or, when the processing module 1102 is replaced by a processor and the transceiver module 1101 is replaced by a transceiver, the receiving end device 110 involved in the embodiments of this application can also be the communication device 120 shown in FIG12.
[0279] The processor can be logic circuit 1201, and the transceiver can be interface circuit 1202. Furthermore, the communication device 120 shown in FIG12 may also include a memory 1203.
[0280] This application also provides a communication device, as shown in FIG13. This communication device can be applied to the methods shown in the embodiments of FIG6, 7, 8, and 9 above. As shown in FIG13, the communication device includes a processing module and a transceiver module. The processing module may be one or more processors, and the transceiver module may be a transceiver or a communication interface. This communication device can be used to implement the sending or receiving device involved in any of the above method embodiments, or to implement the functions of the device involved in any of the above method embodiments. The device or device function may be a network component in a hardware device, a software function running on dedicated hardware, or a virtualization function instantiated on a platform (e.g., a cloud platform). Optionally, the communication device may further include a storage module for storing the program code and data of the communication device.
[0281] In one example, the communication device functions as a transmitting device or is a chip applied within a transmitting device, and executes the steps performed by the transmitting device in the above method embodiments. The transceiver module is used to specifically execute the sending and / or receiving actions performed by the transmitting device in the embodiments shown in Figures 6, 7, 8, and 9, for example, supporting the transmitting device in performing other processes of the technology described herein. The processing module can be used to support the communication device in performing the processing actions in the above method embodiments, for example, supporting the transmitting device in performing other processes of the technology described herein.
[0282] To achieve the above functions, the chip of this application may include hardware structures and / or software modules corresponding to the execution of each function. Those skilled in the art will readily recognize that, based on the units and algorithm steps of the various 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.
[0283] In one possible implementation, when the transmitting or receiving device is a chip, the transceiver module can be a communication interface, pins, or circuits. The communication interface can be used to input data to be processed to the processor and can output the processor's processing results. Specifically, the communication interface can be a general purpose input / output (GPIO) interface, which can connect to multiple peripheral devices (such as LCD displays, cameras, radio frequency (RF) modules, antennas, etc.). The communication interface is connected to the processor via a bus.
[0284] The processing module can be a processor, which can execute computer execution instructions stored in the storage module to cause the chip to execute the methods involved in the embodiments shown in Figures 6, 7, 8, and 9. Further, the processor may include a controller, an arithmetic logic unit (ALU), and registers. For example, the controller is mainly responsible for instruction decoding and issuing control signals for the operations corresponding to the instructions. The ALU is mainly responsible for performing fixed-point or floating-point arithmetic operations, shift operations, and logical operations, and can also perform address operations and conversions. The registers are mainly responsible for storing register operands and intermediate operation results temporarily stored during instruction execution. In specific implementations, the processor's hardware architecture can be an ASIC architecture, a microprocessor without interlocked piped stages architecture (MIPS), an advanced reduced instruction set machine (RISC) machine (ARM) architecture, or a network processor (NP) architecture, etc. The processor can be single-core or multi-core. The storage module can be an in-chip storage module, such as registers or caches. Storage modules can also be external to the chip, such as ROM or other types of static storage devices that can store static information and instructions, RAM, etc.
[0285] It should be noted that the functions of the processor and interface can be implemented through hardware design, software design, or a combination of both; no restrictions are imposed here.
[0286] 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.
[0287] This application also provides a computer program that, when executed by a computer, can implement the functions of any of the above method embodiments.
[0288] 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.
[0289] The terms "first" and "second," etc., used 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 for descriptive purposes 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.
[0290] 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.
[0291] 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.
[0292] 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 terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner to facilitate understanding.
[0293] 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.
[0294] Through the above description of the implementation methods, those skilled in the art can clearly understand that, for the sake of convenience and brevity, the above-described division of functional modules is used as an example. In practical 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.
[0295] 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 illustrative. For instance, the division of modules or units is 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.
[0296] 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.
[0297] 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.
[0298] 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
1. A method of information transmission, characterized in that, The method comprises: determining a first transport block according to a first number of bits, the first number of bits being a total number of channel bits corresponding to a transmission resource, the first number of bits being unable to be divided by a first mother code length, the first transport block comprising C code blocks, C being a positive integer greater than 1; respectively performing channel coding on the first C-1 code blocks in the C code blocks by using a first code rate to obtain C-1 encoded sequences, the first C-1 code blocks and the C-1 encoded sequences corresponding to each other in a one-to-one manner, the first code rate being a code rate of the first transport block; performing channel coding on the Cth code block in the C code blocks by using a second code rate to obtain a Cth encoded sequence, the second code rate being less than the first code rate, a length of the Cth encoded sequence being equal to the first mother code length; performing rate matching on the Cth encoded sequence to obtain a rate matching sequence; outputting the C-1 encoded sequences and the rate matching sequence on the transmission resource.
2. A method of information transmission, characterized by The method comprises: obtaining a to-be-decoded sequence, the to-be-decoded sequence comprising C to-be-decoded sub-sequences, the C to-be-decoded sub-sequences corresponding to C code blocks in a one-to-one manner, lengths of the first C-1 to-be-decoded sub-sequences in the C to-be-decoded sub-sequences being a first mother code length, a length of the Cth to-be-decoded sub-sequence being a length other than the first mother code length, the to-be-decoded sequence being carried on a transmission resource, a total number of channel bits corresponding to the transmission resource being a first number of bits, the first number of bits being unable to be divided by the first mother code length, C being a positive integer greater than 1; performing de-rate matching on the Cth to-be-decoded sub-sequence to obtain a de-rate matching sequence; performing decoding on the de-rate matching sequence by using a second code rate to obtain a Cth decoded sequence; respectively performing decoding on the first C-1 to-be-decoded sub-sequences by using a first code rate to obtain C-1 decoded sequences, the C-1 decoded sequences and the first C-1 to-be-decoded sub-sequences corresponding to each other in a one-to-one manner, the second code rate being less than the first code rate, the first code rate being a code rate of a first transport block, the first transport block comprising the C code blocks.
3. The method according to claim 1 or 2, characterized in that, A size of the first transport block is equal to a difference between a size of a second transport block and a third number of bits, the third number of bits being a loss of the first transport block relative to the second transport block, the size of the second transport block being determined based on the transmission resource.
4. The method of claim 3, wherein, The third number of bits is determined based on the first number of bits, a second number of bits, a proportion factor, and the first code rate, the second number of bits being a maximum number of bits less than the first number of bits and able to be divided by the first mother code length, the proportion factor being used to determine the second code rate.
5. The method of claim 4, wherein, The third number of bits, the first number of bits, the second number of bits, the first code rate, and the proportion factor satisfy: third number of bits = floor((first number of bits-second number of bits)*first code rate*(1-proportion factor)); wherein floor represents rounding.
6. The method according to any one of claims 1 to 5, characterized in that, The size of the first transport block = (C-1)*first mother code length*first code rate+length of rate matching sequence*second code rate.
7. The method according to any one of claims 1 to 6, characterized in that, The rate matching manner is puncturing.
8. The method according to any one of claims 1 to 7, characterized in that, The second code rate is a product of the first code rate and a scale factor, and the scale factor is related to a size of the first code rate.
9. An information transmission method characterized by comprising: The method comprises: obtaining a first bit number, the first bit number being a total number of channel bits for transmitting to-be-encoded bits, the first bit number being unable to be divided by a first mother code length; determining a second bit number according to the first bit number, the second bit number being able to be divided by the first mother code length; determining a first transport block according to the second bit number and a first code rate, the first transport block containing the to-be-encoded bits, and the first code rate being a code rate of the to-be-encoded bits; outputting the first transport block.
10. The method of claim 9, wherein, The outputting the first transport block comprises: segmenting the first transport block to obtain C code blocks, C being a positive integer; respectively performing channel coding on the C code blocks to obtain C encoded sequences, the C code blocks and the C encoded sequences corresponding to each other, and lengths of the C encoded sequences all being integer multiples of the first mother code length; outputting the C encoded sequences.
11. The method of claim 10, wherein, The respectively performing channel coding on the C code blocks to obtain C encoded sequences comprises: respectively performing channel coding on the C code blocks by using the first code rate to obtain the C encoded sequences.
12. An information transmission method characterized by comprising: The method comprises: obtaining a to-be-decoded sequence, the to-be-decoded sequence corresponding to a first transport block, and the first transport block containing to-be-encoded bits; performing decoding on the to-be-decoded sequence according to the first transport block to obtain a decoding result; wherein the first transport block is determined according to a second bit number and a first code rate, the second bit number is determined based on a first bit number, the first bit number being a total number of channel bits for transmitting the to-be-encoded bits, the first bit number being unable to be divided by a first mother code 13. The method of claim 12, wherein, length, the second bit number being able to be divided by the first mother code length, and the first code rate being a code rate of the to-be-encoded bits. The performing decoding on the to-be-decoded sequence according to the first transport block to obtain a decoding result comprises: segmenting the to-be-decoded sequence according to the first transport block to obtain C to-be-decoded sub-sequences, lengths of the C to-be-decoded sub-sequences all being integer multiples of the first mother code length; 14. The method of claim 13, wherein, respectively performing decoding on the C to-be-decoded sub-sequences to obtain C decoded sequences, and the decoding result comprising the C decoded sequences. The respectively performing decoding on the C to-be-decoded sub-sequences to obtain C decoded sequences comprises:
15. The method according to any one of claims 9 to 14, characterized in that, respectively performing decoding on the C to-be-decoded sub-sequences by using the first code rate to obtain the C decoded sequences.
16. The method according to any one of claims 9-14, characterized in that, The second bit number is a total length of the C encoded sequences, and a size of the first transport block = the second bit number * the first code rate.
17. The method of claim 16, wherein, A size of the first transport block = a size of a second transport block - a third bit number, the third bit number being a loss of the second transport block relative to the first transport block, and the size of the second transport block = the first bit number * the first code rate.
18. The method of claim 17, wherein, The third bit number is determined based on the first bit number, the second bit number, and the first code rate. The third bit number, the first bit number, the second bit number, and the first code rate satisfy: Third number of bits = floor ( * first code rate * (first number of bits - second number of bits) ) ; Wherein, floor represents rounding.
19. A communications device, characterized by The communication device comprises a processor; the processor is configured to cause the information transmission method of any one of claims 1, 3-8 to be performed, or cause the information transmission method of any one of claims 2-8 to be performed, or cause the information transmission method of any one of claims 9-11, 15-18 to be performed, or cause the information transmission method of any one of claims 12-18 to be performed, by means of logic circuit and / or executing computer program or instructions.
20. A communications device, characterized by The communication device comprises interface circuit and logic circuit; the interface circuit is configured to input and / or output information; the logic circuit is configured to perform the information transmission method of any one of claims 1, 3-8, or perform the information transmission method of any one of claims 2-8, or perform the information transmission method of any one of claims 9-11, 15-18, or perform the information transmission method of any one of claims 12-18.
21. A communications device, characterized by The communication device comprises one or more of the following: a module for performing the information transmission method of any one of claims 1, 3-8, a module for performing the information transmission method of any one of claims 2-8, a module for performing the information transmission method of any one of claims 9-11, 15-18, or a module for performing the information transmission method of any one of claims 12-18.
22. A computer-readable storage medium, characterized in that, The computer readable storage medium stores computer instructions or programs, when the computer instructions or programs are run on a computer, causing the information transmission method of any one of claims 1, 3-8 to be performed, or causing the information transmission method of any one of claims 2-8 to be performed, or causing the information transmission method of any one of claims 9-11, 15-18 to be performed, or causing the information transmission method of any one of claims 12-18 to be performed.
23. A computer program product, characterised in that, The computer program product comprises computer instructions; when part or all of the computer instructions are run on a computer, causing the information transmission method of any one of claims 1, 3-8 to be performed, or causing the information transmission method of any one of claims 2-8 to be performed, or causing the information transmission method of any one of claims 9-11, 15-18 to be performed, or causing the information transmission method of any one of claims 12-18 to be performed.