Data processing method and apparatus
By acquiring the decoding capability information of the receiving device in the wireless communication system and performing segmented encoding processing on the data, the problem of low decoding performance in the prior art is solved, and more efficient data transmission is achieved.
Patent Information
- Application Number
- PCT/CN2023/120173
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-20
- Publication Date
- 2025-03-27
AI Technical Summary
The existing segmented encoding technology fails to effectively consider the decoding capability information and key performance indicators of the receiving device in wireless communication scenarios, resulting in low decoding performance.
A data processing method and device are proposed, by acquiring the decoding capability information of the receiving device, and performing segmented processing of the data to be encoded to ensure the decoding performance of the receiving device. The specific steps include obtaining the decoding capability information of the receiving device, performing segmented processing of the information bits, performing encoding processing, and outputting codeword bits.
Through dynamic segmentation processing, data encoding is optimized based on the decoding capability information of the receiving device, which significantly improves the decoding performance of the receiving device and improves the overall performance of the communication system.
Smart Images

Figure CN2023120173_27032025_PF_FP_ABST
Abstract
Description
Data processing method and device Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a data processing method and device. Background Art
[0002] Segmented coding technology refers to a coding technology that divides the entire data into several segments and encodes them separately. This technology is widely used in wireless communication scenarios. The current segmentation methods mainly include the segmentation method of polar code and the segmentation method of low-density parity check (LDPC). Among them, the segmentation method of polar code is to determine the number of segments based on the payload size, or to determine the number of segments based on the payload size and the physical resource size. The segmentation method of LDPC mainly determines the number of segments based on the code length and code rate. However, the current segmentation methods do not take into account the capability information (such as decoding capability) and key performance indicators (KPI) of the receiving device (such as terminal equipment), resulting in low decoding performance of the receiving device.
[0003] In view of the above problems, there is an urgent need to propose a data processing method that can segment the coded data according to the decoding capability information of the receiving device, so as to effectively ensure the decoding performance of the subsequent receiving device.
[0004] Summary of the Invention
[0005] The present application proposes a data processing method and device, which can segment the encoded information bits according to the decoding capability information of the receiving device to effectively ensure the decoding performance of the receiving device.
[0006] In a first aspect, the present application provides a data processing method that can be implemented by a first communication device. The first communication device can be, but is not limited to, a terminal device, a network device, a component in a terminal device, or a component in a network device. The components in the present application may, for example, include at least one of a chip, a chip system, a processor, a transceiver, a processing unit, or a transceiver unit. Taking the execution subject as the first communication device as an example, the steps of the method may include: obtaining decoding capability information of a second communication device; segmenting the first information bits according to the decoding capability information of the second communication device to obtain segmented information bits; then encoding the segmented information bits to obtain codeword bits; and outputting the codeword bits.
[0007] In the solution of the present application, the first communication device may segment the first information bits according to the decoding capability information of the second communication device to ensure the decoding performance of the second communication device after receiving the segmented codeword bits.
[0008] In the embodiment of the present application, the first communication device may obtain the decoding capability information of the second communication device through, but not limited to, the following methods:
[0009] Method 1: Acquire first information, where the first information is used to indicate decoding capability information of the second communication device.
[0010] Method 2: Acquire the capability information of the second communication device, where the first field in the capability information of the second communication device is used to indicate the decoding capability information of the second communication device.
[0011] Method three: obtaining the type information of the second communication device, where the type information of the second communication device includes the decoding capability information of the second communication device.
[0012] In a possible implementation, the above-mentioned first information or the capability information of the second communication device or the type information of the second communication device may come from the second communication device.
[0013] Through the above-mentioned methods, the first communication device can flexibly and effectively obtain the decoding capability information of the second communication device.
[0014] In a possible implementation manner, the decoding capability information of the second communication device is the maximum length N of the codeword supported for decoding by the second communication device. max .
[0015] Through this embodiment, the maximum length N of the codeword supported for decoding by the second communication device is set to max The decoding capability information of the second communication device is used in segment processing to effectively guarantee the subsequent decoding performance of the second communication device.
[0016] In another possible implementation, the decoding capability information of the second communication device is the minimum code rate R of the codeword supported for decoding by the second communication device. min ; R min =A / N max ; Where A is the number of bits of the first information bit, N max The maximum length of a codeword supported for decoding by the second communication device.
[0017] Through this embodiment, the first communication device can obtain the lowest code rate R of the codeword supported by the second communication device for decoding. min , and thus the maximum length N of the codeword supported by the second communication device for decoding can be effectively calculatedmax .
[0018] In one possible implementation, the first communication device segments the first information bit according to the decoding capability information of the second communication device to obtain the segmented information bits, which may include: determining the maximum length N of the codeword supported for decoding by the second communication device according to the code rate, the first information bit, and the maximum length N of the codeword supported for decoding by the second communication device. max Perform segmentation processing.
[0019] In the embodiment of the present application, the code rate refers to the code rate of the current encoding.
[0020] Through this implementation, the first communication device can segment the first information bits according to the current encoding rate and the maximum length of the codeword supported for decoding by the second communication device, so as to ensure the performance of subsequent decoding by the second communication device.
[0021] In one possible implementation, the first communication device determines the maximum length N of the codeword supported for decoding by the second communication device according to the code rate, the first information bit, and the maximum length N of the codeword supported for decoding by the second communication device. max Segment processing, including: according to the number of bits L of the cyclic redundancy check CRC of each segment cascade, the code rate, the N max , and the number of bits of the first information bit, determine the initial segment value C′; L is a preset integer greater than or equal to 0, and C′ is an integer greater than 1 or equal to 1; corresponding to the code rate being greater than or equal to the preset code rate, determine that the number of segments is equal to C′; corresponding to the code rate being less than the preset code rate, determine that the number of segments is equal to C1, and C1 is a positive integer less than or equal to C′.
[0022] In the embodiment of the present application, the initial segment value C′ may satisfy the following formula:
[0023] Among them, K cb is the maximum number of information bits in each segment after segmentation, R is the code rate; A is the number of bits of the first information bit, is the rounding symbol; y is an integer greater than or equal to 1.
[0024] Through this implementation, first according to the number of bits L, code rate, N of each cascaded CRC maxand the number of bits of the first information bit to calculate the initial segmentation value; if the current code rate is large (i.e., greater than or equal to the preset code rate), the number of segments is set to the initial segmentation value to ensure the decoding performance of the second communication device; if the current code rate is small (i.e., less than the preset code rate), the number of segments is set to be smaller than the initial segmentation value, so that the size of each information bit after segmentation is increased and the code rate can be improved to avoid the problem of low decoding performance at a low code rate.
[0025] In one possible implementation, the first communication device encodes the segmented information bits to obtain codeword bits, including: concatenating a CRC with a number of bits L at the end of each segmented information bit to obtain each concatenated information bit; and encoding each concatenated information bit to obtain each codeword bit.
[0026] Through this implementation, the first communication device can concatenate an L-bit CRC to the tail of each information bit segment and then perform encoding and other processes to ensure the correctness and integrity of the transmission of each information bit segment.
[0027] In one possible implementation, when the number of transmission resource units occupied by the C1 segment codeword bits is less than the total number of transmission resource units, the method further includes: the first communication device uses the remaining transmission resource units in the total transmission resource units to retransmit part of the codeword bits or all of the codeword bits in the C1 segment codeword bits.
[0028] Through this implementation, for the case where the number of segments is C1, if there are remaining transmission resource units after transmitting the C1 segment codeword bits, the remaining transmission resource units can be used to retransmit some or all of the codeword bits in the C1 segment codeword bits to ensure the integrity of the transmission of the C1 segment codeword bits to avoid loss.
[0029] In one possible implementation, the first communication device performs segmentation processing on the first information bit according to the decoding capability information of the second communication device to obtain the segmented information bits, which may include: according to the total number of transmission resource units and the modulation order, the first information bit and the maximum length N of the codeword supported for decoding by the second communication device. max Perform segmentation processing, N max The value is greater than 0.
[0030] Through this embodiment, the first communication device can be based on the total number of transmission resource units, the modulation order, the first information bit and the N max Effective segmentation processing is performed to ensure the performance of subsequent decoding performed by the second communication device.
[0031] In one possible implementation, the first communication device determines the maximum length N of the codeword supported for decoding by the first information bit and the modulation order according to the total number of transmission resource units, the modulation order, the first information bit, and the second communication device. max Performing segmentation processing, including: first, according to the total number of transmission resource units, the modulation order and the maximum length N of the codeword supported by the second communication device for decoding max , determine the initial segment value C3; C3 is a positive integer; then according to the total number of transmission resource units, the modulation order, the initial segment value C3, and the maximum length N of the codeword supported by the second communication device for decoding max , calculate the number of bits of the remaining transmission resources; if the number of bits of the remaining transmission resources is less than the preset value, determine that the number of segments is equal to C3; if the number of bits of the remaining transmission resources is not less than the preset value, determine that the number of segments is equal to C3+1.
[0032] In the embodiment of the present application, the initial segment value C3 may satisfy:
[0033] The number of bits of the remaining transmission resource can satisfy: B rest =E total ×Q m -C3×N max The number of segments C can satisfy the following formula:
[0034] B rest <z·N max When C=C3;
[0035] B rest ≥z·N max When C=C3+1;
[0036] Among them, Q m is the modulation order, E total is the total number of transmission resource units, B rest is the number of bits of the remaining transmission resource, z·N max is the preset value, z is a value greater than 0 and less than 1, is the floor symbol.
[0037] According to this embodiment, the first communication device first determines the maximum length N of the codeword supported by the second communication device according to the total number of transmission resource units, the modulation order and the maximum length N of the codeword supported by the second communication device for decoding. maxThe initial segmentation value is calculated, and then segmentation is performed based on the initial segmentation value. In combination with the current modulation order, the number of bits of the remaining transmission resources is calculated; if the calculated number of bits of the remaining transmission resources is small (i.e., less than the preset value), the actual number of segments is set to the initial segmentation value; if the calculated number of bits of the remaining transmission resources is large (i.e., not less than the preset value), the actual number of segments is increased by one over the initial segmentation value, thereby ensuring the decoding performance of the second communication device and effectively utilizing the transmission resources.
[0038] In one possible implementation, when the number of transmission resource units occupied by the C3 segment codeword bits is less than the total number of transmission resource units, the method further includes: the first communication device uses the remaining transmission resource units in the total transmission resource units to retransmit part of the codeword bits or all of the codeword bits in the C3 segment codeword bits.
[0039] Through this implementation, for the case where the number of segments is C3, if there are remaining transmission resource units after transmitting the C3 segment codeword bits, the remaining transmission resource units can be used to retransmit part of the codeword bits or all of the codeword bits in the C3 segment codeword bits to ensure the integrity of the transmission of the C3 segment codeword bits to avoid loss.
[0040] In one possible implementation, when the number of transmission resource units occupied by the first C3 segments of codeword bits in the C3+1 segment of codeword bits is less than the total number of transmission resource units, the method further includes: the first communication device uses the remaining transmission resource units in the total transmission resource units to transmit the last segment of codeword bits.
[0041] In the embodiment of the present application, the size of the first C3 codeword bits in the C3+1 segment is equal to the maximum length N of the codeword supported for decoding by the second communication device. max , and the code rate of each segment in the first C3 segments is the same; and the size of the code word bit in the last segment is larger than N max Therefore, compared with the bit rate of the first C3 segments, the bit rate of the last segment is larger.
[0042] Through this implementation, when the number of segments is C3+1, the transmission resources are first used to transmit the first C3 segments of codeword bits, and the remaining transmission resource units are used to transmit the last segment of codeword bits, thereby ensuring the decoding performance of the second communication device while also ensuring that the transmission resources are effectively utilized.
[0043] In a second aspect, the present application provides a data processing method, which can be implemented by a second communication device. The second communication device can be, but is not limited to, a network device, a terminal device, a component in a network device, or a component in a terminal device. The components in the present application may include, for example, at least one of a chip, a chip system, a processor, a transceiver, a processing unit, or a transceiver unit. Taking the execution subject as the second communication device as an example, the steps of the method may include: inputting codeword bits; the codeword bits are obtained by encoding the segmented information bits, and the segmented information bits are obtained by the first communication device segmenting the first information bits according to the decoding capability information of the second communication device; decoding the codeword bits to obtain the first information bits.
[0044] In the scheme of the present application, the first communication device segments the first information bits according to the decoding capability information of the second communication device, then encodes the segmented information bits to obtain codeword bits, and then outputs the codeword bits; the performance of the second communication device when performing decoding processing after obtaining the codeword bits will be higher.
[0045] In the embodiment of the present application, the second communication device further outputs the decoding capability information of the second communication device, which may include but is not limited to the following methods:
[0046] Method 1: outputting first information, where the first information is used to indicate decoding capability information of the second communication device.
[0047] Method 2: outputting the capability information of the second communication device, where the first field in the capability information of the second communication device is used to indicate the decoding capability information of the second communication device.
[0048] Method three: outputting the type information of the second communication device, where the type information of the second communication device includes the decoding capability information of the second communication device.
[0049] The second communication device can flexibly and effectively output the decoding capability information of the second communication device to the first communication device through the above-mentioned methods.
[0050] In one possible implementation, the maximum length N of the codeword supported for decoding by the second communication device is max As the decoding capability information of the second communication device, N max The value is greater than 0.
[0051] Through this embodiment, the maximum length N of the codeword supported for decoding by the second communication device is set to max The decoding capability information of the second communication device is used in segment processing to effectively guarantee the subsequent decoding performance of the second communication device.
[0052] In another possible implementation, the decoding capability information of the second communication device is the minimum code rate R of the codeword supported for decoding by the second communication device. min ; R min =A / N max ; Where A is the number of the first information bits, N max The maximum length of a codeword supported for decoding by the second communication device.
[0053] Through this embodiment, the first communication device can obtain the lowest code rate R of the codeword supported by the second communication device for decoding. min , and thus the maximum length N of the codeword supported by the second communication device for decoding can be effectively calculated max .
[0054] In one possible implementation, the second communication device receives C′ segment codeword bits from the first communication device, where C′ is an integer greater than or equal to 1; then the second communication device decodes the codeword bits to obtain the first information bit, which may include: first decoding the C′ segment codeword bits to obtain the information bits after cascading the C′ segment; and then removing the CRC code from the information bits after cascading the C′ segment to obtain the first information bit.
[0055] Through this implementation, the second communication device can effectively decode the C′ segment codeword bits and accurately obtain the first information bits.
[0056] In one possible implementation, the second communication device receives C1 segment codeword bits and part or all of the retransmitted C1 segment codeword bits from the first communication device; C1 is a positive integer less than or equal to C′; then the second communication device decodes the codeword bits to obtain the first information bit, which may include: first merging the soft bits corresponding to the C1 segment codeword bits and the soft bits corresponding to the retransmitted codeword bits and then decoding them to obtain concatenated information bits; then removing the CRC code from the concatenated information bits to obtain the first information bit.
[0057] Through this implementation, the second communication device can effectively and completely obtain the first information bits.
[0058] In one possible implementation, the second communication device receives C3 segment codeword bits and part or all of the retransmitted C3 segment codeword bits from the first communication device; C3 is a positive integer; then the second communication device decodes the codeword bits to obtain the first information bit, which may include: first merging the soft bits corresponding to the C3 segment codeword bits and the soft bits corresponding to the retransmitted codeword bits and then decoding them to obtain concatenated information bits; then removing the CRC code from the concatenated information bits to obtain the first information bit.
[0059] Through this implementation, the second communication device can effectively and completely obtain the first information bits.
[0060] In one possible implementation, the second communication device receives C3+1 segments of codeword bits from the first communication device; C3 is a positive integer; then the second communication device decodes the codeword bits to obtain the first information bit, including: first decoding the C3+1 segments of codeword bits to obtain C3+1 segments of cascaded information bits; then removing the CRC code from the C3+1 segments of cascaded information bits to obtain the first information bit.
[0061] Through this implementation, the second communication device can effectively obtain the first information bit.
[0062] In a third aspect, an embodiment of the present application also provides a data processing device, which can be used to execute the method of the first aspect. The device can be a first communication device, or the device can be a component in the first communication device (for example, a chip, or a chip system, or a circuit), or can be a device that can be used in combination with the first communication device.
[0063] In one possible implementation, the device may include a module or unit corresponding to each of the methods / operations / steps / actions described in the first aspect. The module or unit may be a hardware circuit, software, or a combination of a hardware circuit and software. In one possible implementation, the device may include a processing unit (also referred to as a processing module) and a communication unit (also referred to as a communication module), wherein the communication unit may be used to perform the functions of receiving and / or sending, and the processing unit may be used to perform the method described in the first aspect or any possible implementation of the first aspect.
[0064] In a fourth aspect, an embodiment of the present application also provides a data processing device, which can be used to execute the method of the second aspect. The device can be a second communication device, or the device can be a component in the second communication device (for example, a chip, or a chip system, or a circuit), or it can be a device that can be used in combination with the second communication device.
[0065] In one possible implementation, the device may include a module or unit corresponding to each of the methods / operations / steps / actions described in the second aspect. The module or unit may be a hardware circuit, software, or a combination of a hardware circuit and software. In one possible implementation, the device may include a processing unit (also referred to as a processing module) and a communication unit (also referred to as a communication module), wherein the communication unit may be used to perform the functions of receiving and / or sending, and the processing unit may be used to perform the method described in the second aspect or any possible implementation of the second aspect.
[0066] In a fifth aspect, an embodiment of the present application provides a data processing device, which includes: at least one processor and a communication interface; wherein the communication interface is used to communicate with other devices; the processor is used to run a set of programs so that the device can implement the method provided in the above-mentioned first aspect or any possible implementation method thereof.
[0067] In the sixth aspect, an embodiment of the present application provides a data processing device, which includes: at least one processor and a communication interface; wherein the communication interface is used to communicate with other devices; the processor is used to run a set of programs so that the device can implement the method provided in the above-mentioned second aspect or any possible implementation method thereof.
[0068] In the seventh aspect, an embodiment of the present application provides a communication system, which includes: a first communication device for executing the above-mentioned first aspect or any possible implementation method thereof, and a second communication device for executing the above-mentioned second aspect or any possible implementation method thereof.
[0069] In an eighth aspect, an embodiment of the present application further provides a computer storage medium storing a software program, which, when read and executed by one or more processors, can implement the method provided by the above-mentioned first aspect or any possible implementation method thereof, or implement the method provided by the above-mentioned second aspect or any possible implementation method thereof.
[0070] In the ninth aspect, an embodiment of the present application also provides a computer program product comprising instructions, which, when run on a computer, enables the execution of the method provided in the above-mentioned first aspect or any possible implementation method thereof, or enables the execution of the method provided in the above-mentioned second aspect or any possible implementation method thereof.
[0071] In the tenth aspect, an embodiment of the present application also provides a chip system, which includes a processor for supporting a first communication device to implement the functions involved in the above-mentioned first aspect; or for supporting a second communication device to implement the functions involved in the above-mentioned second aspect.
[0072] In one possible design, the chip system further includes a memory for storing necessary program instructions and data for execution by the loading device. The chip system can be composed of a chip or include a chip and other discrete devices.
[0073] It should be noted that the technical effects that can be achieved by any possible implementation method of the above-mentioned third to tenth aspects or the third to tenth aspects can be correspondingly described with reference to the technical effects that can be achieved by any possible implementation method of the above-mentioned first to second aspects or the first to second aspects; they will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0074] FIG1 is a schematic diagram of the architecture of a wireless communication system provided in an embodiment of the present application;
[0075] FIG2 is a schematic diagram of a wireless signal transmission process in a communication system;
[0076] FIG3 is a flow chart of a data processing method provided in an embodiment of the present application;
[0077] FIG4A is a schematic diagram of a method flow chart of a first embodiment provided in the embodiments of the present application;
[0078] FIG4B is a schematic diagram of a segmented processing method according to a first embodiment of the present application;
[0079] FIG4C is an example diagram of the segmentation processing of the first embodiment provided in the embodiments of the present application;
[0080] FIG5A is a schematic diagram of a segmented processing method according to a second embodiment of the present application;
[0081] FIG5B is an example diagram of segmentation processing according to a second embodiment provided in the embodiments of the present application;
[0082] FIG5C shows the decoding performance of the first and second embodiments of the present application at different bit rates corresponding to the number of segments;
[0083] FIG6A is a schematic diagram of obtaining capability information of a terminal device provided in an embodiment of the present application;
[0084] FIG6B is a schematic diagram of another embodiment of the present application for obtaining capability information of a terminal device;
[0085] FIG6C is a schematic diagram of another method for obtaining capability information of a terminal device provided in an embodiment of the present application;
[0086] FIG7 is a schematic structural diagram of a data processing device provided in an embodiment of the present application;
[0087] FIG8 is a schematic structural diagram of another data processing device provided in an embodiment of the present application;
[0088] FIG9 is a schematic structural diagram of a chip provided in an embodiment of the present application. DETAILED DESCRIPTION
[0089] The technical solutions in the embodiments of the present application will be described clearly and completely below in conjunction with the drawings in the embodiments of the present application. The terms used in the following embodiments are only for the purpose of describing specific embodiments and are not intended to be limiting of the present application. As used in the specification and appended claims of the present application, the singular expressions "one", "a kind of", "said", "above", "the" are intended to also include expressions such as "one or more", unless there is a clear contrary indication in the context. It should also be understood that in the embodiments of the present application, "one or more" refers to one, two or more; "and / or" describes the association relationship of associated objects, indicating that three relationships may exist; for example, A and / or B can represent: the existence of A alone, the existence of A and B at the same time, and the existence of B alone, 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.
[0090] References to "one embodiment" or "some embodiments" described in this specification mean that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. The terms "including", "comprising", "having" and their variations involved in this application all mean "including but not limited to", unless otherwise specifically emphasized. Words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions, and any embodiment or design described as "exemplary" or "for example" should not be interpreted as being more preferred or more advantageous than other embodiments or designs. The use of words such as "exemplary" or "for example" is intended to present related concepts in a concrete way for easy understanding.
[0091] The multiple involved in the embodiments of the present application refers to greater than or equal to two. It should be noted that in the description of the embodiments of the present application, words such as "first" and "second" are only used to distinguish the purpose of description, and cannot be understood as indicating or implying relative importance, nor can they be understood as indicating or implying order. In addition, the term "used for indication" mentioned in the description of the embodiments of the present application can include being used for direct indication and being used for indirect indication. When describing a certain indication information used to indicate A, it can include that the indication information directly indicates A or indirectly indicates A, and it does not mean that the indication information must carry A.
[0092] In order to better understand the embodiments of the present application, the following first introduces the application scenarios and existing problems of the embodiments of the present application. It should be noted that the application scenarios are intended to make the embodiments of the present application easier to understand and should not be regarded as limiting the scope of protection claimed by the present application.
[0093] Segmented coding technology refers to a coding technology that divides the entire data into several segments and encodes them separately. This technology is widely used in wireless communication scenarios. The current segmentation methods mainly include the segmentation method of polar code and the segmentation method of low-density parity check (LDPC). Among them, the segmentation method of polar code is to determine the number of segments based on the payload size, or to determine the number of segments based on the payload size and the physical resource size. The segmentation method of LDPC mainly determines the number of segments based on the code length and code rate. However, the current segmentation methods do not take into account the capability information (such as decoding capability) and key performance indicator (KPI) requirements of the receiving device (such as terminal equipment), resulting in low decoding performance of the receiving device.
[0094] In view of the above problems, there is an urgent need to propose a data processing method that can segment the coded data according to the decoding capability information of the receiving device, so as to effectively ensure the decoding performance of the subsequent receiving device.
[0095] The method provided in the embodiment of the present application can be applied to a fourth generation (4G) communication system, such as a long term evolution (LTE) communication system, or to a fifth generation (5G) communication system, such as a 5G new radio (NR) communication system, or to various future communication systems, such as a sixth generation (6G) communication system. The method provided in the embodiment of the present application can also be applied to narrowband Internet of Things (NB-IoT) systems, global system for mobile communications (GSM), enhanced data rate for GSM evolution (EDGE), wideband code division multiple access (WCDMA), code division multiple access 2000 (CDMA2000), time division-synchronization code division multiple access (TD-SCDMA), or the three major application scenarios of the next generation 5G mobile communication system: enhanced mobile broadband (eMBB), ultra-reliable low-latency communications (URLLC), and enhanced machine-type communication (eMTC). The method provided in the embodiment of the present application can also be applied to satellite communication systems, wherein the satellite communication system can be integrated with the above-mentioned communication systems. In addition, the method proposed in the embodiment of the present application may also affect the physical uplink control channel (PUCCH) enhancement scenario, and enhance the coverage of the PUCCH through maximum likelihood (ML) detection.
[0096] Figure 1 shows a possible, non-limiting communication system architecture applicable to embodiments of the present application. As shown in Figure 1, the communication system 1000 includes a radio access network (RAN) 100 and a core network (CN) 200. Optionally, the communication system 1000 may also include the Internet 300. The RAN 100 includes at least one network device (such as 110a and 110b in Figure 1, collectively referred to as 110) and at least one terminal device (such as 120a-120j in Figure 1, collectively referred to as 120). The RAN 100 may also include other RAN nodes, such as wireless relay devices and / or wireless backhaul devices (not shown in Figure 1). The terminal device 120 is connected to the network device 110 via wireless means. The network device 110 is connected to the core network 200 via wireless or wired means. The core network device in the core network 200 and the network device 110 in the RAN 100 can be different physical devices, or they can be the same physical device that integrates the core network logical functions and the radio access network logical functions.
[0097] The RAN 100 may be a cellular system related to the Third Generation Partnership Project (3GPP), such as a fourth generation (4G) or fifth generation (5G) mobile communication system, or an evolved system beyond 5G (such as a 6G mobile communication system). The RAN 100 may also be an open access network (O-RAN or ORAN), a cloud radio access network (CRAN), or a WiFi system. The RAN 100 may also be a communication system that integrates two or more of the above systems.
[0098] It will be understood that FIG1 only illustrates one possible communication system architecture that may be applied in an embodiment of the present application. In other possible scenarios, the communication system architecture may also include other devices.
[0099] The network device 110 is a node in the radio access network (RAN), which can also be called an access network device or a RAN node (or device). The network device 110 is used to help terminal devices achieve wireless access. The multiple network devices 110 in the communication system 1000 can be nodes of the same type or different types. In some scenarios, the roles of the network device 110 and the terminal device 120 are relative. For example, the network element 120i in Figure 1 can be a helicopter or a drone, which can be configured as a mobile base station. For terminal devices 120j that access the RAN 100 through the network element 120i, the network element 120i is a base station; but for the base station 110a, the network element 120i is a terminal device. The network device 110 and the terminal device 120 are sometimes referred to as communication devices. For example, the network elements 110a and 110b in Figure 1 can be understood as communication devices with base station functions, and the network elements 120a-120j can be understood as communication devices with terminal device functions.
[0100] In one possible scenario, a network device can be a base station, an evolved NodeB (eNodeB), a transmitting and receiving point (TRP), a transmitting point (TP), a next-generation NodeB (gNB), a next-generation base station in a sixth-generation (6G) mobile communication system, a base station in a future mobile communication system, a satellite, an access point (AP) in a WiFi system, an integrated access and backhaul (IAB) node, a mobile switching center, or a network device in a non-terrestrial network (NTN) communication system, i.e., it can be deployed on a high-altitude platform or satellite. The network device can be a macro base station (such as 110a in Figure 1), a micro base station or an indoor station (such as 110b in Figure 1), a relay node or a donor node, or a wireless controller in a CRAN scenario. The network device can also be a device that functions as a base station in device-to-device (D2D) communication, vehicle-to-vehicle communication, drone communication, or machine communication. Optionally, the network device may also be a server, a wearable device, a vehicle or an onboard device, etc. For example, the access network device in vehicle to everything (V2X) technology may be a road side unit (RSU).
[0101] In another possible scenario, multiple network devices collaborate to assist the terminal device in achieving wireless access, and different network devices respectively implement part of the functions of the base station. For example, the network device can be a centralized unit (CU), a distributed unit (DU), a CU-control plane (CP), a CU-user plane (UP), or a radio unit (RU). The CU and DU can be set separately, or they can also be included in the same network element, such as a baseband unit (BBU). The RU can be included in a radio frequency device or a radio frequency unit, such as a remote radio unit (RRU), an active antenna unit (AAU), or a remote radio head (RRH). It can be understood that the network device can be a CU node, a DU node, or a device including a CU node and a DU node. In addition, the CU can be divided into a network device in the access network RAN, or the CU can be divided into a network device in the core network CN, which is not limited here.
[0102] It should be noted that in different systems, CU (or CU-CP and CU-UP), or DU may have different names, but those skilled in the art can understand their meanings. For example, in an open radio access network (O-RAN) system, CU may also be referred to as O-CU (open CU), DU may also be referred to as O-DU, CU-CP may also be referred to as O-CU-CP, CU-UP may also be referred to as O-CU-UP, and RU may also be referred to as O-RU. For the sake of convenience of description, this application uses CU, CU-CP, CU-UP, DU and RU as examples for description. Any of the CU (or CU-CP and CU-UP), DU and RU in this application may be implemented by a software module, a hardware module, or a combination of a software module and a hardware module.
[0103] In the embodiments of the present application, the form of the network device is not limited. The device used to implement the function of the network device can be a network device; it can also be a device that can support the network device to implement the function, such as a chip system. The device can be installed in the network device or used in conjunction with the network device.
[0104] The terminal device 120, which may also be referred to as a terminal, user equipment (UE), mobile station (MS), mobile terminal (MT), etc., is a device used to provide voice or data connectivity to users, or an IoT device. For example, the terminal device includes a handheld device with wireless connection capabilities, an in-vehicle device, etc. Currently, terminal devices can include: mobile phones, tablet computers, laptop computers, PDAs, mobile internet devices (MIDs), wearable devices (such as smart watches, smart bracelets, pedometers, etc.), vehicle-mounted devices (such as cars, bicycles, electric vehicles, airplanes, ships, trains, high-speed trains, etc.), satellite terminals, virtual reality (VR) devices, augmented reality (AR) devices, smart point-of-sale (POS) machines, customer-premises equipment (CPE), wireless terminals in industrial control, smart home devices (such as refrigerators, televisions, air conditioners, electricity meters, etc.), intelligent robots, robotic arms, workshop equipment, wireless terminals in unmanned driving, wireless terminals in telemedicine, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, wireless terminals in smart homes, and flying devices (such as intelligent robots, hot air balloons, drones, airplanes). Terminal devices can also be other devices with terminal functions, for example, terminal devices can also be devices that function as terminals in D2D communication.
[0105] The embodiments of this application do not limit the device form factor of the terminal device. The device used to implement the functions of the terminal device can be the terminal device; it can also be a device that supports the terminal device to implement the functions, such as a chip system. The device can be installed in the terminal device or used in conjunction with the terminal device. In the embodiments of this application, the chip system can be composed of a chip or include a chip and other discrete components.
[0106] The method provided in the embodiment of the present application is described in detail below in conjunction with the communication system shown in FIG1 .
[0107] In order to better understand the solutions provided by the embodiments of this application, the following first explains the terms, concepts, and processes involved in the embodiments of this application. It should be noted that these explanations are intended to make the embodiments of this application easier to understand and should not be regarded as limiting the scope of protection claimed by this application.
[0108] (1) Channel coding.
[0109] As shown in Figure 2, the communication system transmission process involves channel coding, which lies between source coding and modulation. It is responsible for channel coding the information bits (or bit stream) generated by the source. After modulation, the modulated symbols are sent across a noisy channel to the receiver for demodulation. After demodulation, the receiver performs channel decoding. The channel decoding section, located between demodulation and source decoding, is responsible for recovering the source information bits.
[0110] In the embodiment of the present application, the core network elements involved are a channel coding unit and a channel decoding unit. In the present application, the length of the information bit may be referred to as the payload size.
[0111] (2) Cyclic redundancy check (CRC) coding.
[0112] CRC encoding is a form of channel coding. During CRC encoding, information bits from the source are CRC-encoded to produce a CRC codeword. For example, if the information bit length is K, the CRC codeword consists of K information bits and L check bits (also known as a checksum, CRC code, etc.) concatenated after the K information bits. This means the CRC codeword length is K+L bits. K and L are positive integers.
[0113] For a CRC codeword with a check bit length of L, there is a CRC polynomial gCRC with a highest power of L. This gCRC can be used to generate L check bits, so gCRC can be called the generator polynomial of this check bit. In this application, power can be replaced by exponent, and the highest power can be replaced by the highest exponent. The generator polynomial can be determined by negotiation between the sender and the receiver, or can be determined by protocol definition, preconfiguration or predefinition, so the length of the check bit can be determined based on the polynomial.
[0114] Here, we'll use an example to illustrate the CRC checksum generation process. Assume the message polynomial is M(D), where the message polynomial is determined by the binary information bits to be sent. For example, if the value of the Xth binary information bit is 1, the coefficient of the polynomial term with a power of X-1 is 1. If the value of the Yth binary bit is 0, the coefficient of the polynomial term with a power of Y-1 is 0. In other words, the polynomial does not include terms with a power of Y, where X and Y are positive integers. To obtain the check bits, shift M(D) left by L bits, raising each term to a power of L. The polynomial is expressed as M(D)*D^R, where * represents multiplication. The remainder obtained by dividing M(D)*D^R by the generating polynomial gCRC is the check bit.
[0115] For example, assuming the parity bit generator polynomial is gCRCLmax = gCRC4 = D^4 + D+1, its binary representation is 10011, a total of 5 bits, where Lmax = 4, i.e., L = 4. Assuming the binary bits of the data sequence to be sent by the transmitter are 101011, a total of 6 bits, the message polynomial is M(D) = D^5 + D^3 + D+1, where ^ represents exponential operation. Furthermore, we can obtain M(D)*D^5 = D^9 + D^7 + D^5 + D^4. Dividing the binary bits 1010110000 corresponding to M(D)*D^5 by the binary information bits corresponding to the polynomial gCRCLmax is 10011, that is, using the modulo-2 algorithm to obtain an L-bit remainder. In this example, the remainder bit sequence is 0100, which is the parity bit. Therefore, the resulting CRC codeword bit stream after CRC encoding is 1010110100, where the first six bits are the original data (i.e., information bits) and the last four bits are parity bits. The sender can then process the bit stream 1010110100 and send it back. If no errors occur during data transmission, the data containing the parity bits received by the receiver will be divisible by the binary bits of the parity bit generator polynomial, 10011. If an error occurs during transmission, the data containing the parity bits received by the receiver will not be divisible by 10011, allowing the receiver to identify the transmission error.
[0116] In the embodiments of the present application, the network device and the terminal device can serve as the transmitter and receiver, respectively. For example, in downlink communication, the network device is the transmitter and the terminal device is the receiver. In uplink communication, the terminal device is the transmitter and the network device is the receiver. The network device can be either a transmitter or a receiver. If the transmitter is a network device, the receiver is a terminal device, and this is downlink communication. If the transmitter is a terminal device, the receiver is a network device, and this is uplink communication. In addition, the present application does not exclude the possibility that both the transmitter and the receiver are terminal devices, in which case D2D communication is performed between the transmitter and the receiver.
[0117] (3) Code rate.
[0118] The code rate, also known as coding rate or coding efficiency, refers to the proportion of the useful (non-redundant) portion of a data stream. In other words, if the code rate is k / n, expressed in bits / symbol, then for every k bits of useful information, the encoder generates a total of n bits of data, of which n k bits are redundant. If R is the total bit rate or data signaling rate (including redundant error coding), the net bit rate (the useful bit rate excluding error correction) is ≤ R·k / n. This means that excluding error correction, the code rate is 1, and the total bit rate or data signaling rate is equal to the net bit rate or useful bit rate.
[0119] (4) Rate matching.
[0120] A data block before encoding is called a transport block (TB). Because a TB has a large number of bits, the transmitter typically splits a TB into multiple code blocks (CBs), each of which undergoes independent channel coding. Because the physical resources used to transmit a code block may not match the physical time-frequency resources of the code block to be transmitted, the code block to be transmitted must undergo bit retransmission or puncturing to match the capacity of the physical time-frequency resources. This process is called rate matching. Multiple channel-coded CBs undergo rate matching, interleaving, concatenation, and other processes before being transmitted as a single physical data block (codeword) to the receiver.
[0121] The technical solution of this application is introduced below in conjunction with specific embodiments.
[0122] An embodiment of the present application provides a data processing method, which is applicable to but not limited to the communication system shown in Figure 1. The method can be implemented by a first communication device and a second communication device, and the first communication device can serve as a data transmitter and / or receiver, and the second communication device can also serve as a data transmitter and / or receiver. That is to say, if the first communication device serves as a transmitter, then the second communication device is a receiver; or, if the first communication device serves as a receiver, then the second communication device is a transmitter. The method can be executed by the first communication device and the second communication device, or it can be executed by components (modules, chips, etc.) corresponding to the first communication device and the second communication device, or it can be executed by a device used in conjunction with the first communication device and the second communication device. The embodiment of the present application does not specifically limit the specific form and quantity corresponding to the first communication device and the second communication device. Please refer to Figure 3, the specific process of the method is as follows:
[0123] S301: A first communication device obtains first information bits and decoding capability information of a second communication device.
[0124] In the embodiment of the present application, the first communication device may be, but is not limited to, a network device or a terminal device.
[0125] In the embodiment of the present application, the information bit may refer to a bit that carries information; in the above, the first information bit may be referred to as a payload information bit to be transmitted or an original information bit.
[0126] In one embodiment, the first communication device may obtain the decoding capability information of the second communication device in the following ways, but not limited to:
[0127] Method 1: Receive first information from a second communication device, where the first information is used to indicate decoding capability information of the second communication device.
[0128] Method 2: receiving capability information of the second communication device from the second communication device, where the first field in the capability information of the second communication device is used to indicate decoding capability information of the second communication device.
[0129] Method 3: receiving type information of the second communication device from the second communication device, where the type information of the second communication device includes decoding capability information of the second communication device.
[0130] In the embodiment of the present application, the decoding capability information of the second communication device is the maximum length N of the codeword that the second communication device supports decoding. max , N max is a value greater than 0. Or the decoding capability information of the second communication device is the minimum code rate R of the codeword supported by the second communication device for decoding. min ; Then according to the formula N max =A / R min , the maximum length N of the codeword supported by the second communication device for decoding can be calculated max .
[0131] For example, the base station (encoding end / transmitting end) can set several levels (or several gears) according to the decoding capability of the UE. For example, the multiple decoding capabilities are N max(0) 、N max(1) 、N max(2) ,…,N max(J-1) , the corresponding level number j is: 0, 1, 2, ..., J-1. UE1 can report its own level number j to the base station as 1, then the base station can determine the maximum length of the codeword supported by UE1 for decoding as N based on the level number 1 of UE1. max(1) .
[0132] S302: The first communication device performs segmentation processing on the first information bits according to the decoding capability information of the second communication device to obtain segmented information bits.
[0133] In the embodiment of the present application, when the first communication performs step S302, the following implementations may be included but are not limited to:
[0134] Implementation method 1: The first communication device can determine the maximum length N of the codeword supported for decoding by the second communication device according to the code rate, the first information bit, and the maximum length N of the codeword supported for decoding by the second communication device. max Perform segmentation processing.
[0135] In a possible implementation, the first communication device may calculate the number of bits L of the cyclic redundancy check CRC of each cascade segment, the code rate, N max, and the number of bits of the first information bit, determine the initial segment value C'; wherein L is a preset integer greater than or equal to 0, and C' is an integer greater than or equal to 1;
[0136] If the bit rate is greater than or equal to the preset bit rate, the number of segments is determined to be equal to the initial segment value C′.
[0137] If the bit rate is less than the preset bit rate, the number of segments is determined to be equal to C1, where C1 is a positive integer less than or equal to C′.
[0138] In some embodiments, if the initial segment value C′ calculated above is 1, then when the bit rate is less than the preset bit rate, the number of segments C1 = C′ = 1.
[0139] For example, the initial segment value C′ may satisfy the following formula:
[0140] K cb is the maximum number of information bits in each segment after segmentation, R is the code rate; A is the number of bits of the first information bit, is the rounding symbol, and / is the division sign.
[0141] In the above description, the value of the preset bit rate is greater than 0 and less than 1. For example, the preset bit rate is equal to 1 / 4. y is an integer greater than or equal to 1. For example, y is equal to 2.
[0142] In the embodiment of the present application, the coding gain corresponding to a code rate lower than 1 / 4 is close to the energy gain of repeated transmission. Therefore, when the code rate is lower than 1 / 4, the previous codeword bits are directly repeated to reduce the coding operation while obtaining the energy gain of repeated transmission.
[0143] In the above formula (1), each information bit is concatenated with L bits of CRC, so K cb In the case of CRC without concatenated L bits, the above formula (1) can be changed to Among them, K cb is the rounded number.
[0144] Furthermore, when the number of segments is equal to C′, the number of updated first information bits can be calculated as A′=C′·K cb , the first communication device then divides A' into C' segments evenly. When the number of segments is equal to C1, the updated number of first information bits can be calculated as A' = C1·K cb , the first communication device then divides A′ evenly into C1 segments.
[0145] This embodiment can be applied when the first communication device needs to segment the first information bit, for example, the number of bits of the first information bit is greater than the calculated K cb (K cb is the maximum number of information bits per segment).
[0146] In another possible implementation, the first communication device determines that the segment component is equal to 1, that is, the first communication device directly encodes the first information bit and sends it to the second communication device.
[0147] Implementation method 2: The first communication device can determine the maximum length N of the codeword supported for decoding by the first information bit and the total number of transmission resource units, the modulation order, the first information bit, and the second communication device according to the number of the total number of transmission resource units, the modulation order, the first information bit, and the maximum length N of the codeword supported for decoding by the second communication device. max Perform segmentation processing, N max The value is greater than 0.
[0148] Specifically, it may include: first, according to the total number of transmission resource units, the modulation order and the maximum length N of the codeword supported by the second communication device for decoding max , determine the initial segment value C3; C3 is a positive integer; then according to the total number of transmission resource units, the modulation order, the initial segment value C3, and the maximum length N of the codeword supported by the second communication device for decoding max , calculate the number of bits of the remaining transmission resources;
[0149] If the number of bits of the remaining transmission resource is less than a preset value, it is determined that the number of segments is equal to C3. When the number of segments is equal to C3, the first communication device can evenly divide the first information bits into C3 segments.
[0150] If the number of bits of the remaining transmission resource is not less than the preset value, the number of segments is determined to be equal to C3 + 1. When the number of segments is equal to C3 + 1, the first communication device may evenly divide the first information bits into C3 + 1 segments.
[0151] For example, the initial segment value C3 may satisfy the following formula (2):
[0152] The number of bits of the remaining transmission resource can satisfy the following formula (3): rest =E total ×Q m -C3×N max Formula (3)
[0153] The number of segments C can satisfy the following formula (4):
[0154] B rest <z·N maxWhen C=C3;
[0155] B rest ≥z·N max When C=C3+1; Formula (4)
[0156] Among them, Q m is the modulation order, E total is the total number of transmission resource units, B rest is the number of bits of the remaining transmission resources, z·N max is the preset value, z is a value greater than 0 and less than 1, is the floor symbol, and / is the division sign.
[0157] In the embodiment of the present application, the number of the remaining transmission resource units E rest The number of bits of the remaining transmission resources B rest The conversion formula between them can be: E rest =B rest / Q m .
[0158] For example, z = 9 / 16, It can be seen that the number of bits of the remaining transmission resources is less than N max That is, the remaining transmission resource units are relatively small, so compared with the initial segment value C3, no more division is possible, and the remaining transmission resource units can be used for subsequent retransmissions.
[0159] when It can be seen that the number of bits of the remaining transmission resources is more than N max half, that is, the remaining transmission resource units are relatively large, then compared with the initial segmentation value C3, the number of segments can be one more (that is, one more segment can be divided), and the remaining transmission resource units can be used to transmit this more segmented codeword bits.
[0160] In the embodiment of the present application, z can be It can be ensured that the number of bits lost by rate matching (such as the number of bits lost by shortening or puncturing) is less than half of the mother code length.
[0161] S303: The first communication device encodes the segmented information bits to obtain codeword bits.
[0162] Based on the above-mentioned implementation method 1, when the first communication device executes step S303, it may include: concatenating a CRC with L bits at the end of each segmented information bit to obtain each segment of concatenated information bits; and then encoding each segment of concatenated information bits to obtain each segment of codeword bits.
[0163] Specifically, when the number of segments is equal to C′, the first communication device may concatenate L bits of CRC to the end of each information bit in the segmented C′ information bits, and then perform encoding processing on each concatenated information bit.
[0164] When the number of segments is equal to C1, concatenate L bits of CRC to each information bit in the C1 segment, and then perform encoding on each concatenated information bit.
[0165] In the case where the segment component is equal to 1, the first communication device can directly encode the first information bit without cascading CRC.
[0166] Based on the above implementation manner 2, when the first communication device executes step S303, it may include:
[0167] When the number of segments is equal to C3: the first communication device can concatenate L bits of CRC after each segment of the C3 information bits, and then encode each segment of the concatenated information bits. In this case, the size of each segment of the codeword bits in the C3 segment is equal to the maximum length N of the codeword supported for decoding. max , and the bit rate of each segment in the C3 segment is the same.
[0168] For the case where the number of segments is equal to C3+1: the first communication device can concatenate L bits of CRC behind each information bit in the segmented C3 information bits, and then encode each concatenated information bit.
[0169] For the case where the number of segments is C3+1, the first information bit is divided into one more segment than the initial segment value C3. Therefore, compared with the number of bits of each information bit segment divided according to the initial segment value, the number of bits of each information bit segment (i.e., the original information bit) in the first C3 segments is reduced, and the size of the codeword bits in the first C3 segments is equal to the maximum length N of the codeword supported for decoding by the second communication device. max , which makes the code rate of each segment in the first C3 segments slightly lower. Since the size of the code word bit of the last segment is larger than N max Therefore, the bit rate corresponding to the last segment will be larger.
[0170] S304: The first communication device outputs the codeword bits; correspondingly, the second communication device obtains the codeword bits.
[0171] In an embodiment of the present application, the first communication device may send the codeword bit to the second communication device through a component in the first communication device (such as a communication module, an antenna, etc.); or the first communication device may output the codeword bit through the communication interface of the first communication device, and accordingly, the communication interface of the second communication device obtains the codeword bit; or the first communication device may output the codeword bit through a component corresponding to the first communication device (such as a chip), and accordingly, the second communication device obtains the codeword bit through a component corresponding to the second communication device (such as a chip). Therefore, this application does not limit the specific implementation method of transmitting the codeword bit from the first communication device to the second communication device.
[0172] For example, the DU of the base station (equivalent to the first communication device) transmits codeword bits to the UE (equivalent to the second communication device).
[0173] Based on the above implementation mode 1, when the first communication device executes S304, it may include the following:
[0174] When the number of segments is C′, the first communication device may use the pre-allocated total transmission resource units to send the C′ segment codeword bits to the second communication device.
[0175] In the embodiment of the present application, the time domains in which the first communication device sends the C′ segment codeword bits may be the same or different, and there is no specific limitation on this.
[0176] For the case where the number of segments is C1: the first communication device can use the pre-allocated total transmission resource units to transmit the C1 segment codeword bits. If the number of transmission resource units occupied by sending the C1 segment codeword bits is less than the total number of transmission resource units, the first communication device can use the remaining transmission resource units in the total transmission resource units to retransmit part of the codeword bits or all of the codeword bits in the C1 segment codeword bits.
[0177] In some embodiments, in the above description, some of the codeword bits in the C1 segment retransmitted by the first communication device may be codeword bits of a partial complete segment, or may be codeword bits of a partial incomplete segment.
[0178] For example, the first communication device retransmits C2 segment codeword bits in the C1 segment codeword bits, where C2 is a positive integer value less than or equal to C1.
[0179] For another example, the first communication device retransmits C2 segment codeword bits in the C1 segment codeword bits, where C2 is a non-integer value greater than 0 and less than C1.
[0180] In the embodiment of the present application, the retransmitted codeword bits may also refer to the bits in the repeated codeword in order from the front to the back.
[0181] For example, the number of coded code segments C1 = 3 segments, and the bits to be sent repeatedly are bits 1, 2, 3, ..., N in segment 1. rep bits, N rep is the number of codeword bits sent repeatedly. rep When N is less than the length of the codeword, it is sent until the number of bits allowed by the remaining transmission resources is reached. rep When the length is greater than the length of the codeword segment, the codeword segment is sent from the head of the second codeword segment, and so on, until all remaining transmission resources are used up.
[0182] For example, the number of coded code segments C1 = 1, that is, 1 segment. If the retransmitted bits are the 1st, 2nd, 3rd, ..., Nth bits in this segment, rep bits, N rep Indicates the number of codeword bits sent repeatedly. rep If it is greater than the length of this codeword, the loop will continue to send from the beginning. rep If it is less than the length of this codeword, it is sent repeatedly until the remaining transmission resources allow the number of bits to be carried.
[0183] In other embodiments, if the first communication device uses the remaining transmission resource units to retransmit the codeword bits of the C1 segment, if there are still remaining transmission resource units in the remaining transmission resource units, they can continue to be used to retransmit some or all of the codeword bits in the C1 segment. Specific retransmission situations can refer to the above-mentioned retransmission situations and will not be described in detail here.
[0184] Based on the above implementation mode 2, when the first communication device executes S304, it may include the following:
[0185] When the number of segments is C3, the first communications device may use the pre-allocated total number of transmission resource units to transmit C3 segments of codeword bits. If the number of transmission resource units occupied by the C3 segments of codeword bits is less than the total number of transmission resource units, the remaining transmission resource units in the total number of transmission resource units may be used to retransmit some or all of the C3 segments of codeword bits. C3 is a positive integer.
[0186] In some embodiments, some of the codeword bits in the C3 segment retransmitted by the first communications device may be codeword bits of a portion of a complete segment, or may be codeword bits of a portion of an incomplete segment.
[0187] For example, the first communication device retransmits C4 segment codeword bits in the C3 segment codeword bits, where C4 is a positive integer value less than or equal to C3.
[0188] For another example, the first communication device retransmits C4 segment codeword bits in the C3 segment codeword bits, where C4 is a non-integer value greater than 0 and less than C3.
[0189] Specifically, you can refer to the retransmission method exemplified in the above implementation method 1, which will not be described in detail here.
[0190] When the number of segments is C3+1, the first communications device may use the pre-allocated total transmission resource units to transmit the first C3 segments of codeword bits among the C3+1 segments of codeword bits. If the number of transmission resource units occupied by the first C3 segments of codeword bits is less than the total number of transmission resource units, the remaining transmission resource units among the total number of transmission resource units may be used to transmit the last segment of codeword bits.
[0191] S305: The second communication device decodes the codeword bits to obtain first information bits.
[0192] Based on the above implementation method 1: the second communication device receives C' segments of codeword bits from the first communication device, where C' is an integer greater than or equal to 1. In this case, the first communication device may first decode the C' segments of codeword bits to obtain C' segments of concatenated information bits; then remove the CRC code from the C' segments of concatenated information bits to obtain the first information bits.
[0193] The second communication device receives codeword bits of segment C1 and some or all of the retransmitted codeword bits of segment C1 from the first communication device, where C1 is a positive integer less than or equal to C′. In this case, the second communication device may first combine and decode the soft bits corresponding to the codeword bits of segment C1 and the soft bits corresponding to the retransmitted codeword bits to obtain concatenated information bits; then, remove the concatenated CRC code from the concatenated information bits to obtain the first information bits.
[0194] In the embodiment of the present application, the soft bit may refer to the demodulated soft bit information LLR, also known as the log likelihood ratio (LLR).
[0195] For example, UE1 receives three codewords: codeword 1, codeword 2, codeword 3, and codeword 4. UE1 also receives retransmitted codewords 1, 2, and 3. UE1 combines (concatenates) the soft bits corresponding to codeword 1 with the soft bits corresponding to the retransmitted codeword 1, and then decodes them. It also combines (concatenates) the soft bits corresponding to codeword 2 with the soft bits corresponding to the retransmitted codeword 2, and then decodes them. It also combines (concatenates) the soft bits corresponding to codeword 3 with the soft bits corresponding to the retransmitted codeword 3, and then decodes them separately. The CRC bits are then removed from each decoded information bit segment.
[0196] In some embodiments, the second communication device receives the C1 segment codeword bits and the retransmitted C1 (C2=C1) segment codeword bits, and also receives part of the codeword bits or all of the codeword bits in the second retransmission of the C1 segment codeword bits. It can refer to the above method to perform combined decoding, which will not be described in detail here.
[0197] Based on the above-described second implementation method: the second communication device receives the C3 segment codeword bits and some or all of the retransmitted C3 segment codeword bits from the first communication device. In this case, the second communication device may first combine the soft bits corresponding to the C3 segment codeword bits with the soft bits corresponding to the retransmitted codeword bits, and then decode them to obtain concatenated information bits; then, remove the CRC code from the concatenated information bits to obtain the first information bits. A specific example of combining and decoding can be performed in the same manner as described above, and will not be given in detail here.
[0198] The second communication device receives C3+1 segments of codeword bits from the first communication device, where C3 is a positive integer. In this case, the second communication device may first decode the C3+1 segments of codeword bits to obtain C3+1 segments of concatenated information bits, and then remove the CRC code from the C3+1 segments of concatenated information bits to obtain the first information bits.
[0199] In the embodiment of the present application, the size of the first C3 codeword bits in C3+1 is equal to the maximum length N of the codeword supported for decoding by the second communication device. max , the code rate of the first C3 segments in C3+1 will be slightly reduced, but the length of the last codeword bit in C3+1 is less than N max , so the code rate is relatively large.
[0200] In an embodiment of the present application, when the number of segments is 1, that is, the first information bit is not segmented, the second communication device receives a code word bit, which is the data obtained by the second communication device directly encoding the first information bit. Therefore, the second communication device performs decoding processing on the code word bit to obtain the first information bit.
[0201] It should be noted that the scheme described in Figure 3 of the embodiment of the present application can be applied to the transmission process shown in Figure 2, and mainly introduces the channel coding and channel decoding processes therein in detail. The scheme described in Figure 3 of the embodiment of the present application also includes other processes in the transmission process (such as modulation). The specific implementation process can refer to the implementation process of the existing technology, and will not be described in detail here.
[0202] In summary, embodiments of the present application provide a data processing method and apparatus, comprising: a first communication device first obtaining decoding capability information of a second communication device; then, based on the decoding capability information of the second communication device, segmenting first information bits to obtain segmented information bits; then, encoding the segmented information bits to obtain codeword bits; and then outputting the codeword bits. In this method, the first communication device segmentally processes the first information bits based on the decoding capability information of the second communication device, then encodes the bits, and then outputs the codeword bits to the second communication device, thereby ensuring the decoding performance of the second communication device.
[0203] Based on the data processing method shown in FIG3 , several specific embodiments are further described below.
[0204] Example 1:
[0205] In the first embodiment, taking the first communication device as a base station and the second communication device as UE1 as an example, the first implementation method of the segment processing in step S302 of the solution described in FIG. 3 is described in detail.
[0206] First, the base station obtains the maximum code length that UE1 can support and determines the current code rate. Then, the base station evenly segments the number of bits of the target payload (equivalent to the first information bit in the scheme described in Figure 3 above) based on the maximum code length and current code rate that UE1 can support. Furthermore, the base station cascades an L-bit CRC code after each segment. The subsequent process can be executed with reference to the encoding processing process shown in Figure 2. For example, each data segment after the base station cascades the CRC code is then channel coded and modulated, and then sent to UE1 through the channel. The specific implementation method can refer to the existing technology and will not be described in detail here.
[0207] For example, FIG4A shows a flow chart of segmentation processing and CRC encoding based on the maximum code length and current code rate supported by UE1. Referring to FIG4A , the specific analysis of the process is as follows:
[0208] Step 1: According to the maximum code length N supported by UE1 max and the current code rate R, determine the maximum number of bits per message K cb ;
[0209] Among them, K cb Satisfy the following formula:
[0210] Step 2: According to K cb Determine the number of segments:
[0211] Case 1: If the number of bits in the target payload is not greater than the maximum number of bits per message segment (A≤K cb), then the number of CRC bits L=1, the number of code blocks (i.e., the number of segments) C=1, and the number of payload bits A′ to be segmented is equal to the number of bits A of the target payload.
[0212] Case 2: Otherwise, that is, the number of target payload bits is greater than the maximum number of bits per message segment, then the number of CRC bits L = 11, the number of code blocks (i.e., the number of segments) C and the number of payload bits to be segmented A' are calculated by the following formula: A′=C·K cb ;
[0213] Step 3: Divide the A′ input bits obtained in Step 2 into C segments evenly, and concatenate an L-bit CRC to each segment:
[0214] For the case where the number of segments is not 1, that is First, the number of bits A′ of the net payload is divided into C segments (ie, C code blocks), and then an L-bit CRC is concatenated at the end of each segment.
[0215] For example, r represents the serial number corresponding to the code block, and the value of r ranges from 0 to C-1, K r is the number of bits in the code block with sequence number r. The number of bits in code block r is K r The calculation is as follows: K′=A′ / C. The bits of code block r are represented as
[0216] See the bit sequence C shown in FIG4A rk By calculating the cyclic formula, we can see that for the code block with sequence number r, the corresponding bit sequence is as follows:
[0217] k=0,C r0 =a′0;
[0218] k=1,C r1 =a′1;
[0219] k=2,C r2 =a′2;
[0220] …
[0221] k=0,K′-L-1,C rK′-L-1 =a′ K′-L-1 .
[0222] Refer to the existing CRC encoding technology, according to The CRC bits are calculated as follows: r0 ,p r1 ,p r2 ,…,p r(L-1) .
[0223] 4A, the L bits of the CRC of the code block with sequence number r are represented as follows:rk =p r(k+L-K′) ;
[0224] The value of k ranges from K′-L to K′-1.
[0225] For the case where the number of segments is equal to 1, that is, C=1, the number of bits A' of the payload is determined as a code block, and the bits of the code block can be obtained by the bit sequence C in the above manner. rk To express.
[0226] For example, FIG4B shows the segmented transmission mode in the above embodiment 1, that is, the current code rate R is not lower than the preset threshold (eg ), the data is segmented according to the determined number of segments. The number of bits in each segment is A' / C, and the physical resource size occupied by each segment is equal to E / C. The code rate of each segment is equal to A / E. E represents the total physical resource amount allocated by the base station for transmission, in bits.
[0227] For example, the total payload size of the message is A = 128 bits, B = 1024 bits, and the maximum decoding length N supported by the decoder of UE1 is max =128, current bit rate Calculate K cb =16; further, according to K cb =16, calculate the number of segments A is then divided into 8 segments, each with 16 bits, and each segment occupies 128 bits of resources, as shown in Figure 4C.
[0228] Example 2:
[0229] In the second embodiment, based on the further introduction of the solution described in the first embodiment, the current code block is smaller than the preset value (for example ), the segmentation is performed according to half of the number of segments in the above step 1, and the remaining resources can be used for retransmission.
[0230] Step 1: Based on the maximum decoding code length N supported by UE1's decoder max and the current code rate R, determine the maximum number of bits per message K cb ;
[0231] This step Step 1 can be implemented with reference to the step Step 1 of the above embodiment 1, and will not be described in detail here.
[0232] Step 2: According to K cb Determine the number of segments C:
[0233] Current bitrate When, first refer to the method described in Step 2 of the above embodiment 1 to determine the number of initial code blocks (equivalent to the initial segment value in the solution described in FIG. 3 ) C′ as follows:
[0234] Next, determine the actual number of segments Furthermore, the number of payload bits to be segmented is determined to be A′=C·K cb .
[0235] Step 3: Divide the A′ input bits obtained in Step 2 into C segments evenly, and concatenate an L-bit CRC to each segment:
[0236] This step Step 3 is implemented with reference to the step Step 3 of the above embodiment 1 and will not be described in detail here.
[0237] In the second embodiment, if the current bit rate R is lower than the preset threshold (eg ), first determine the initial number of segments C′ according to the segmentation method in the above-mentioned embodiment 1, and then take half of the initial number of segments as the actual number of segments required, that is, C=C′ / 2; divide A into C segments evenly, the coding rate of each segment is 2R, the code length of each segment is E / C, and the remaining resources can be used to retransmit these C segments, as shown in Figure 5A.
[0238] For example, A = 128 bits, the total number of bits of transmission resources B = E × Q m =1024 bits, the maximum decoding length N supported by UE1's decoder max =128bit.
[0239] Current bitrate First, calculate C'=8 according to formula 1 in the above embodiment 1; that is, C=4; then, divide A into 4 segments, and encode each segment into a code rate of The payload size of each segment is A / C = 128 / 4 = 32 bits; the resource size occupied by each segment is 128 bits. rest =1024-128×4=512 bits, and the remaining resources are used to retransmit the encoded codeword, as shown in Figure 5B.
[0240] FIG5C shows the decoding performance of the first and second embodiments at different bit rates for the corresponding number of segments. The horizontal axis is the signal-to-noise ratio (EsN0) in dB, and the vertical axis is the bit error rate (BLER). Generally, the lower the curve, the better the performance. As can be seen from FIG5C, when the bit rate is lower than the preset threshold R th =1 / 4, the performance of the segmentation method of the second embodiment is better. When the bit rate is higher than the preset threshold R th=1 / 4, the performance of the segmented method of embodiment 1 is better.
[0241] Example 3:
[0242] In Example 3, taking the first communication device as a base station and the second communication device as UE1 as an example, the second implementation method of the segmentation processing in step S302 of the scheme described in Figure 3 above is introduced in detail. First, the base station obtains the maximum code length supported by UE1 for decoding, and determines the number of total transmission resource units allocated. Then, the base station evenly segments the number of bits of the target payload according to the maximum code length supported by UE1 for decoding and the number of total transmission resource units. Further, the base station cascades an L-bit CRC code after each segment. Referring to the encoding processing flow shown in Figure 2, each segment of data after the base station cascades the CRC code is subsequently channel coded and modulated, and then sent to UE1 through the channel. The specific implementation method can be achieved by referring to the existing technology, and will not be described in detail here.
[0243] The following is a diagram of the procedure for segmentation processing and CRC encoding based on the maximum code length and current code rate supported by UE1. The procedure is as follows:
[0244] Step 1: According to the maximum code length N supported by UE1 max and the current total amount of resources E total , determine the number of segments C.
[0245] Determine the current modulation order Q m ;
[0246] First, calculate the initial number of segments C3 (equivalent to C3 in the solution described in Figure 3 above) as follows:
[0247] in, To round down.
[0248] Then calculate the number of bits of the remaining resources B rest =E total ×Q m -C3×N max ;
[0249] if Then determine the number of segments C = C3;
[0250] Otherwise (i.e. ), determine the number of segments C = C3 + 1.
[0251] For example, the maximum mother code length supported by the UE1 decoder is 128 bits, and the modulation order Q m =1, B total =E total ×Q=260bit. Brest =B total -C3×N max =260-2×128=4;
[0252] visible Then C=C3=2.
[0253] Since the remaining resources do not reach the maximum mother code length supported by the UE1 decoder Therefore, one less segment is used and the remaining resources are used to retransmit the two segments of bit data.
[0254] For example, the maximum mother code length supported by UE1 decoder is 128 bits, and the modulation order Q m =1, B total =E total ×Q m =360bit. B rest =B total -C3×N max =360-2×128=104;
[0255] visible Then C=C3+1=3.
[0256] Since the remaining resources are greater than the maximum mother code length supported by the UE1 decoder Therefore, it can be divided into one more segment. Then, after transmitting segment C3, the remaining resources are used to transmit the last segment.
[0257] Step 2: Determine the number of bits per message
[0258] That is, through the above step 1, the number of segments C required is determined, and further, the target payload of A bits is evenly divided into C segments, and the number of bits in each segment is Next, the number of payload bits to be segmented is determined as A′=C·K′.
[0259] Step 3: Divide the A′ input bits obtained in Step 2 into C segments evenly, and concatenate an L-bit CRC to each segment:
[0260] This step Step 3 can be implemented with reference to step Step 3 of the above embodiment 1, and will not be described in detail here.
[0261] Example 4:
[0262] In the fourth embodiment, how the first communication device (i.e., the transmitting end or the encoding end) obtains the decoding capability of the second communication device (i.e., the receiving end or the decoding end) in the solution described in Figure 3 above is introduced. In this embodiment, taking the base station as the encoding end / transmitting end and the UE as the decoding end / receiving end as an example, the number of base stations and UEs is not specifically limited. For example, the number of UEs can be multiple. Based on the three protocols (38.306, 38.331, and 38.822) mainly involved in the current terminal equipment capabilities (UE Capability), as shown in Table 1, the base station can obtain the decoding capability of each UE in the following ways:
[0263] Method 1: Protocol 38.306 details the capabilities of each terminal, including whether UE capability is mandatory, etc. Based on the existing protocol content, the embodiment of the present application proposes adding a new field (Field) to indicate the decoding capability of the UE.
[0264] For example, as shown in Figure 6A, a new Field is added in Section 38.306 4.2.7.10 phy-parameters to indicate the decoding capability of the UE. The bolded portion in Figure 6A indicates the new content.
[0265] Method 2: Protocol 38.331 involves the UE capability query and reporting process, signaling structure, etc. Based on the existing protocol content, the embodiment of the present application proposes to add an IE to indicate the maximum code length and minimum code rate supported by the UE for decoding, and the maximum number of segments.
[0266] For example, as shown in Figure 6B, a new IE is added in section 38.331 6.3.3 UE Capability Information Elements to indicate the maximum code length, minimum code rate, and maximum number of segments supported for decoding by the UE. The bold text in Figure 6B indicates the new content.
[0267] Method 3: The protocol 38.822 involves the UE features (UE feature), and the UE capability further translates the UE features into the language required by the protocol. Based on the existing protocol content, the embodiment of the present application proposes a feature that can add UE decoding capabilities; for example, add content (Components) in NR_UE_pow_sav_enh, and indicate that it supports low-power decoding, limiting the maximum code length N max , minimum bit rate R min , minimum number of segments and other parameters.
[0268] For example, as shown in Figure 6C , a new UE decoding capability feature has been added to section 38.822 6.1 Layer-1 UE features; Components has been added to section 38.822 6.1.8 NR_UE_pow_sav_enh, indicating support for low-power decoding and limiting parameters such as maximum code length, minimum bit rate, and minimum number of segments. The bold text in Figure 6C indicates the new content.
[0269] Table 1
[0270] In the embodiments provided in the present application above, the methods provided in the embodiments of the present application are introduced from the perspective of interaction between various devices. In order to implement the various functions in the methods provided in the embodiments of the present application above, the first communication device or the second communication device may include a hardware structure and / or a software module to implement the above functions in the form of a hardware structure, a software module, or a hardware structure plus a software module. Whether a function of the above functions is executed in the form of a hardware structure, a software module, or a hardware structure plus a software module depends on the specific application and design constraints of the technical solution.
[0271] The division of modules in the embodiments of the present application is illustrative and is merely a logical functional division. In actual implementation, other division methods may be used. Furthermore, the functional modules in the various embodiments of the present application may be integrated into a single processor, or may exist physically separately, or two or more modules may be integrated into a single module. The aforementioned integrated modules may be implemented in the form of hardware or software functional modules.
[0272] Similar to the above concept, as shown in FIG7 , an embodiment of the present application further provides a data processing device 700 for implementing the functions of the first communication device or the second communication device in the above method. For example, the data processing device 700 may be a software module or a chip system. In the embodiment of the present application, the chip system may be composed of a chip, or may include a chip and other discrete devices. The data processing device 700 may include: a communication unit 701 and a processing unit 702.
[0273] In the embodiments of the present application, the communication unit 701 may also be referred to as a transceiver unit, and may include a transmitting unit and / or a receiving unit, respectively configured to execute the steps of transmitting and receiving by the first communication device or the second communication device in the above method embodiments. The processing unit 702 may be configured to read instructions and / or data from the storage module, so that the data processing device 700 implements the above method embodiments.
[0274] Optionally, the data processing device 700 may further include a storage unit 703 , which is equivalent to a storage module and may be used to store instructions and / or data.
[0275] The communication device provided in the embodiment of the present application is described in detail below with reference to Figures 7 and 8. It should be understood that the description of the device embodiment corresponds to the description of the method embodiment. Therefore, for matters not described in detail, reference can be made to the method embodiment described in Figure 3 above. For the sake of brevity, they will not be repeated here.
[0276] Communication unit 701 may also be referred to as a transceiver, transceiver, or transceiver device. A processing unit may also be referred to as a processor, processing board, processing module, or processing device. Alternatively, the device in communication unit 701 that implements the receiving function may be considered a receiving unit, and the device in communication unit 701 that implements the transmitting function may be considered a transmitting unit. That is, communication unit 701 includes both a receiving unit and a transmitting unit. A communication unit may also be referred to as a transceiver, transceiver, or transceiver circuit. A receiving unit may also be referred to as a receiver, receiver, or receiving circuit. A transmitting unit may also be referred to as a transmitter, transmitter, or transmitting circuit.
[0277] When the data processing device 700 executes the first communication means in the process shown in FIG. 3 in the above embodiment:
[0278] The communication unit 701 obtains decoding capability information of the second communication device;
[0279] The processing unit 702 is configured to segment the first information bits according to the decoding capability information of the second communication device to obtain segmented information bits; and encode the segmented information bits to obtain codeword bits;
[0280] The communication unit 701 is further configured to output the codeword bits.
[0281] When the data processing device 700 executes the second communication means in the process shown in FIG. 3 in the above embodiment:
[0282] The communication unit 701 is configured to obtain codeword bits, wherein the codeword bits are obtained by encoding the segmented information bits, and the segmented information bits are obtained by segmenting the first information bits according to the decoding capability information of the second communication device;
[0283] The processing unit 702 is configured to decode the codeword bits to obtain the first information bits.
[0284] The above is just an example. The processing unit 702 and the communication unit 701 can also perform other functions. For more detailed description, please refer to the relevant description in the method embodiment shown in Figure 3, which is not repeated here.
[0285] FIG8 shows a data processing device 800 provided in an embodiment of the present application. The communication device shown in FIG8 may be a hardware circuit implementation of the communication device shown in FIG7 . The data processing device 800 can be used in the flowcharts shown above to perform the functions of the first communication device or the second communication device in the above-described method embodiments. For ease of illustration, FIG8 only shows the main components of the communication device.
[0286] As shown in Figure 8, data processing device 800 includes a communication interface 801 and a processor 802. Communication interface 801 and processor 802 are coupled to each other. It will be appreciated that communication interface 801 may be a transceiver or input / output interface, or an interface circuit such as a transceiver circuit. Optionally, data processing device 800 may further include a memory 803 for storing instructions executed by processor 802, input data required by processor 802 to execute instructions, or data generated by processor 802 after executing instructions.
[0287] When the data processing device 800 is used to implement the method shown in FIG. 3 , the processor 802 is used to implement the functions of the processing unit 702 , and the communication interface 801 is used to implement the functions of the communication unit 701 .
[0288] The specific connection medium between the communication interface 801, processor 802, and memory 803 is not limited in the embodiments of the present application. In Figure 8, the embodiment of the present application shows that the memory 803, processor 802, and communication interface 801 are connected via a communication bus 804. The communication bus 804 is represented by a bold line in Figure 8. The connection methods between other components are only for schematic illustration and are not limiting. The communication bus 804 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one bold line is used in Figure 8, but this does not mean that there is only one bus or one type of bus.
[0289] When the communication device is a chip, FIG9 shows a simplified schematic diagram of the chip structure, wherein the chip 900 includes an interface circuit 901 and one or more processors 902. Optionally, the chip 900 may further include a bus.
[0290] The processor 902 may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above-mentioned data processing method can be completed by an integrated logic circuit of the hardware in the processor 902 or an instruction in the form of software. The above-mentioned processor 902 can be a general-purpose processor, a digital communicator (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component. The various methods and steps disclosed in the embodiments of the present application can be implemented or executed. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc.
[0291] The interface circuit 901 can be used to send or receive data, instructions or information. The processor 902 can use the data, instructions or other information received by the interface circuit 901 to process it, and can send the processing completion information through the interface circuit 901.
[0292] Optionally, the chip further includes a memory 903, which may include a read-only memory and a random access memory, and provides operating instructions and data to the processor. A portion of the memory 903 may also include a non-volatile random access memory (NVRAM).
[0293] Optionally, the memory stores an executable software module or a data structure, and the processor can perform corresponding operations by calling an operation instruction stored in the memory (the operation instruction may be stored in an operating system).
[0294] Optionally, the chip can be used in the first communication device or the second communication device involved in the embodiments of the present application. Optionally, the interface circuit 901 can be used to output the execution result of the processor 902. For the data processing method provided in one or more embodiments of the present application, reference can be made to the aforementioned embodiments and will not be repeated here.
[0295] It should be noted that the corresponding functions of the interface circuit 901 and the processor 902 can be implemented through hardware design, software design, or a combination of hardware and software, which is not limited here.
[0296] An embodiment of the present application further provides a computer-readable storage medium storing computer instructions for implementing the method executed by the first communication device or the second communication device in the above method embodiment.
[0297] For example, when the computer program is executed by a computer, the computer can implement the method performed by the first communication device or the second communication device in the above method embodiment.
[0298] An embodiment of the present application further provides a computer program product comprising instructions, which, when executed by a computer, enables the computer to implement the method performed by the first communication device or the second communication device in the above method embodiment.
[0299] An embodiment of the present application further provides a chip, including a processor, configured to call a computer program or computer instruction stored in the memory so that the processor executes the data processing method of the embodiment shown in FIG. 3 .
[0300] In a possible implementation, the input of the chip corresponds to the receiving operation in the embodiment shown in FIG. 3 , and the output of the chip corresponds to the sending operation in the embodiment shown in FIG. 3 .
[0301] Optionally, the processor is coupled to the memory via an interface.
[0302] Optionally, the chip further includes a memory in which computer programs or computer instructions are stored.
[0303] The processor mentioned in any of the above may be a general-purpose central processing unit, a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of a program of a data processing method according to the embodiments shown in Figures 3-4A-7. The memory mentioned in any of the above may be a read-only memory (ROM) or other type of static storage device capable of storing static information and instructions, a random access memory (RAM), etc.
[0304] It should be noted that, for the sake of convenience and brevity of description, the explanation and beneficial effects of the relevant contents in any of the communication devices provided above may refer to the corresponding data processing method embodiments provided above, and will not be repeated here.
[0305] In the present application, the communication devices may further include a hardware layer, an operating system layer running on top of the hardware layer, and an application layer running on the operating system layer. The hardware layer may include hardware such as a central processing unit (CPU), a memory management unit (MMU), and memory (also known as main memory). The operating system of the operating system layer may be any one or more computer operating systems that implement business processing through processes, such as the Linux operating system, Unix operating system, Android operating system, iOS operating system, or Windows operating system. The application layer may include applications such as browsers, address books, word processing software, and instant messaging software.
[0306] The division of modules in the embodiments of the present application is illustrative and is merely a logical functional division. In actual implementation, other division methods may be used. Furthermore, the functional modules in the various embodiments of the present application may be integrated into a single processor, or may exist physically separately, or two or more modules may be integrated into a single module. The aforementioned integrated modules may be implemented in the form of hardware or software functional modules.
[0307] Through the description of the above embodiments, it will be clear to those skilled in the art that the embodiments of the present application can be implemented in hardware, firmware, or a combination thereof. When software is used for implementation, the above functions can be stored in a computer-readable medium or transmitted as one or more instructions or codes on a computer-readable medium. Computer-readable media include computer storage media and communication media, wherein the communication media include any medium that facilitates the transmission of a computer program from one place to another. The storage medium can be any available medium that a computer can access. For example, but not limited to: a computer-readable medium may include RAM, ROM, electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store a desired program code in the form of an instruction or data structure and can be accessed by a computer. In addition, any connection can be appropriately a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of the medium. As used in the embodiments of the present application, disk and disc include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and Blu-ray disc, where disks typically reproduce data magnetically and discs use lasers to reproduce data optically. Combinations of the above should also be included within the scope of protection of computer-readable media.
Claims
1. A data processing method, characterized in that: The method is applied to a first communication device, comprising: Acquiring decoding capability information of the second communication device; Segmenting the first information bits according to the decoding capability information of the second communication device to obtain segmented information bits; Encoding the segmented information bits to obtain codeword bits; The codeword bits are output.
2. The method according to claim 1, characterized in that The obtaining the decoding capability information of the second communication device includes: acquiring first information, where the first information is used to indicate decoding capability information of the second communication device; or acquiring capability information of the second communication device, wherein a first field in the capability information of the second communication device is used to indicate decoding capability information of the second communication device; or The type information of the second communication device is acquired, where the type information of the second communication device includes decoding capability information of the second communication device.
3. The method according to claim 2, characterized in that The decoding capability information of the second communication device is the maximum length N of the codeword that the second communication device supports decoding. max .
4. The method according to claim 2, characterized in that: The decoding capability information of the second communication device is the minimum code rate R of the codeword supported by the second communication device for decoding. min ; R min =A / N max ; Where A is the number of the first information bits, N max The maximum length of a codeword supported for decoding by the second communication apparatus.
5. The method according to claim 3, characterized in that: The step of segmenting the first information bits according to the decoding capability information of the second communication device to obtain segmented information bits includes: According to the code rate, the first information bit and the maximum length N of the codeword supported for decoding by the second communication device max Perform segmentation processing.
6. The method according to claim 5, characterized in that The maximum length N of the codeword supported for decoding by the second communication device according to the code rate, the first information bit and max Perform segmentation processing, including: According to the number of bits L of the cyclic redundancy check CRC of each cascade segment, the code rate, the N max , and the number of bits of the first information bits, determine the initial segment value C′; L is a preset integer greater than or equal to 0, and C′ is an integer greater than or equal to 1; Corresponding to the bit rate being greater than or equal to the preset bit rate, determining the number of segments to be equal to C′; Corresponding to the bit rate being less than the preset bit rate, determining that the number of segments is equal to C1, C1 is less than or equal to C ′ A positive integer.
7. The method according to claim 6, characterized in that The encoding process is performed on the segmented information bits to obtain codeword bits, including: A CRC with L bits is concatenated at the tail of each segmented information bit to obtain each concatenated information bit; Each segment of the cascaded information bits is encoded to obtain each segment of codeword bits.
8. The method according to claim 7, characterized in that When the number of transmission resource units occupied by the codeword bits of the C1 segment is less than the total number of transmission resource units, the method further includes: Remaining transmission resource units in the total transmission resource units are used to retransmit part of or all of the codeword bits in the C1 segment codeword bits.
9. The method according to claim 6, characterized in that The initial segment value C′ satisfies the following formula: Among them, K cb is the maximum number of information bits in each segment after segmentation, R is the code rate; A is the number of the first information bits, The symbol for rounding up.
10. The method according to claim 6, characterized in that y is an integer greater than or equal to 1.
11. The method according to claim 3, characterized in that The step of segmenting the first information bits according to the decoding capability information of the second communication device to obtain segmented information bits includes: According to the total number of transmission resource units and the modulation order, the maximum length N of the first information bit and the codeword supported for decoding by the second communication device max Segment processing, N max The value is greater than 0.
12. The method according to claim 11, characterized in that The maximum length N of the codeword supported for decoding by the first information bit and the second communication device according to the total number of transmission resource units and the modulation order max Perform segmentation processing, including: According to the total number of transmission resource units, the modulation order and the maximum length N of the codeword supported for decoding by the second communication device max , determine the initial segment value C3; C3 is a positive integer; According to the total number of transmission resource units, the modulation order, the initial segment value C3, and the maximum length N of the codeword supported by the second communication device for decoding max , calculate the number of bits of the remaining transmission resources; If the number of bits of the remaining transmission resource is less than a preset value, determining that the number of segments is equal to C3; If the number of bits of the remaining transmission resources is not less than the preset value, it is determined that the number of segments is equal to C3+1.
13. The method according to claim 12, characterized in that The initial segment value C3 satisfies the following formula: The number of bits of the remaining transmission resources satisfies the following formula: B rest =E total ×Q m -C3×N max The number of segments C satisfies the following formula: B rest <z·N max When C=C3; B rest ≥ z·N max When C=C3+1; Among them, Q m is the modulation order, E total is the total number of transmission resource units, B rest is the number of bits of the remaining transmission resource, z·N max is the preset value, z is a value greater than 0 and less than 1, The floor symbol.
14. The method according to claim 12, characterized in that When the number of transmission resource units occupied by the codeword bits of the C3 segment is less than the total number of transmission resource units, the method further includes: Remaining transmission resource units in the total transmission resource units are used to retransmit part of or all of the codeword bits in the C3 segment codeword bits.
15. The method according to claim 12, characterized in that When the number of transmission resource units occupied by the first C3 segment codeword bits in the C3+1 segment codeword bits is less than the total number of transmission resource units, the method further includes: The remaining transmission resource units in the total transmission resource units are used to transmit the last segment of codeword bits.
16. A data processing method, characterized in that: The method is applied to a second communication device, comprising: Obtaining codeword bits; the codeword bits are obtained by encoding the segmented information bits, and the segmented information bits are obtained by the first communication device performing segmentation processing on the first information bits according to the decoding capability information of the second communication device; The codeword bits are decoded to obtain the first information bits.
17. The method according to claim 16, characterized in that The method further comprises: outputting first information, where the first information is used to indicate decoding capability information of the second communication device; or outputting capability information of the second communication device, wherein the first field in the capability information of the second communication device is used to indicate decoding capability information of the second communication device; or The type information of the second communication device is output, where the type information of the second communication device includes decoding capability information of the second communication device.
18. The method according to claim 17, characterized in that The decoding capability information of the second communication device is the maximum length N of the codeword that the second communication device supports decoding. max .
19. The method according to claim 17, characterized in that The decoding capability information of the second communication device is the minimum code rate R of the codeword supported by the second communication device for decoding. min ; R min =A / N max ; Where A is the number of the first information bits, N max The maximum length of a codeword supported for decoding by the second communication apparatus.
20. The method according to any one of claims 16 to 19, characterized in that When receiving C′ segments of codeword bits from the first communication device, C′ is an integer greater than or equal to 1; The decoding the codeword bits to obtain the first information bits includes: For the C ′ The segment codeword bits are decoded to obtain the information bits after the C′ segment concatenation; The CRC code is removed from the information bits after the C′ segment is cascaded to obtain the first information bits.
21. The method according to any one of claims 16 to 19, characterized in that When the C1 segment codeword bits and part of the retransmitted C1 segment codeword bits are received from the first communication device; C1 is less than or equal to C ′ A positive integer of ; The decoding the codeword bits to obtain the first information bits includes: The soft bits corresponding to the codeword bits of the C1 segment and the soft bits corresponding to the retransmitted codeword bits are combined and decoded to obtain the level The information bits after concatenation; The CRC code is removed from the cascaded information bits to obtain the first information bits.
22. The method according to any one of claims 16 to 17, characterized in that When receiving C3 segment codeword bits and part of the retransmitted C3 segment codeword bits from the first communication device; C3 is a positive integer; The decoding the codeword bits to obtain the first information bits includes: The soft bits corresponding to the codeword bits of the C3 segment and the soft bits corresponding to the retransmitted codeword bits are combined and decoded to obtain concatenated information bits; The CRC code is removed from the cascaded information bits to obtain the first information bits.
23. The method according to any one of claims 16 to 17, characterized in that When C3+1 codeword bits are received from the first communication device; C3 is a positive integer; The decoding of the codeword bits to obtain the first information bits includes: decoding the C3+1 segment codeword bits to obtain the C3+1 segment cascaded information bits; removing the CRC code from the C3+1 segment cascaded information bits to obtain the first information bits.
24. A data processing device, characterized in that: The method comprises a module or a unit for executing the method according to any one of claims 1 to 15, or comprises a module or a unit for executing the method according to any one of claims 16 to 23.
25. A data processing device, characterized in that: The device comprises a processor and an interface circuit, wherein the interface circuit is used to receive signals from other devices outside the device and transmit them to the processor or send signals from the processor to other communication devices outside the device, and the processor implements the method as claimed in any one of claims 1 to 15 or the method as claimed in any one of claims 16 to 23 through a logic circuit or by executing code instructions.
26. A computer-readable storage medium, characterized in that: The storage medium stores a computer program or an instruction. When the computer program or the instruction is executed by the communication device, the method according to any one of claims 1 to 23 is implemented.
27. A computer program product, characterized in that The computer program product stores computer-readable instructions, and when the computer-readable instructions are executed, the method according to any one of claims 1 to 23 is executed.
Citation Information
Patent Citations
Polar code encoding method and device
CN108574561A
Polar coding method and coding device, and decoding method and decoding device
CN108631930A
Coding method and device, electronic equipment and storage medium
CN109842458A
Uplink control information segmentation for polar codes
CN111357204A
Methods and apparatus for determining transport block size in wireless communication
US20190158221A1
Cited By
Segmentation method and communication apparatus
WO2026007748A1