Data processing method and device
By dividing the transport block into code block groups and decoding them at that granularity, the problem of high service latency in wireless communication systems is solved, achieving more efficient data processing and lower device power consumption, thus improving communication quality and system capacity.
Patent Information
- Application Number
- CN202410981668.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-19
- Publication Date
- 2026-01-20
AI Technical Summary
In wireless communication systems, the large service delay at the receiving end leads to a decrease in communication quality. This is because if even one code block fails the CRC check, the entire transmission block cannot be submitted to the MAC layer for processing and must wait for HARQ retransmission.
The transport block is divided into multiple code block groups, and decoding is performed at the code block group level. This allows each code block group to be decoded independently, reducing dependence on other code block groups and ensuring that even if a code block group fails to be received, successfully received code block groups can still be processed in a timely manner, thereby reducing service latency.
By reducing the number of code blocks that cannot be submitted to the MAC layer for processing, storage requirements and device power consumption are reduced, communication quality and system capacity are improved, and the needs of lower latency and higher speed services are met.
Smart Images

Figure CN121367565A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] Embodiments of the present application relate to the field of communication, and in particular, to a data processing method and apparatus. BACKGROUND
[0002] In a wireless communication system, after a transport block (TB) is acquired by a physical layer of a sending end, a TB cyclic redundancy check (CRC) can be added. If the TB (or the TB and the TB CRC) is large, the TB and the TB CRC are divided into a plurality of code blocks (CBs), and a CB CRC is added for each CB. For a receiving end, the physical layer checks the CB CRC and the TB CRC, and in the case that all the CB CRCs are checked successfully and the TB CRC is checked through, the physical layer delivers the entire TB to a MAC layer.
[0003] Based on the current data processing process, as long as there is one CB CRC that is not checked through at the receiving end, the entire TB cannot be delivered to the MAC layer for processing, and needs to wait for a hybrid automatic repeat request (HARQ) retransmission, thereby causing an increase in service latency and affecting the communication quality. SUMMARY
[0004] The present application provides a data processing method and apparatus, which can reduce service latency.
[0005] In a first aspect, a data processing method is provided. The method can be executed by a second communication apparatus, or by a component of the second communication apparatus, such as a processor, a chip, or a chip system of the second communication apparatus, or by a logic module or software that can realize all or part of the functions of the second communication apparatus. The second communication apparatus can be an access network device or a terminal. The method comprises: determining, according to a first value, N code block (CB) groups corresponding to a first transport block (TB), and respectively decoding part or all of the N CB groups. The first value is the number X of CBs contained in one CB group, or the number Y of CB groups corresponding to one TB; N, X, and Y are integers greater than or equal to 1. The N CB groups satisfy one of the following conditions: the number of CBs contained in each of the N CB groups is a second value; or the number of CBs contained in the first M CB groups of the N CB groups is the second value, and the number of CBs contained in the last N-M CB groups is a third value, M being a positive integer smaller than N; or the number of CBs contained in the first N-M CB groups of the N CB groups is the third value, and the number of CBs contained in the last M CB groups is the second value; or the number of CBs contained in each of the N CB groups is a fourth value.
[0006] Based on the scheme, the TB can be divided into multiple CB groups, and decoding is performed at the receiving end in CB group granularity. Since decoding can be performed in CB group granularity, i.e., each CB group can be decoded separately, decoding of a certain CB group does not need to depend on other CB groups, and therefore, when decoding a certain CB group, it does not need to depend on successful reception of previous CB groups, and in the case of failed reception of a certain CB group, the successfully received CB groups after the failed reception can still be submitted to the MAC layer for decoding, so that the receiving end can process the successfully received CB groups in time, thereby reducing service latency. In addition, timely submission of the successfully received CB groups after the failed reception to the MAC layer for processing can reduce the CBs that cannot be submitted to the MAC layer for processing, thereby reducing the storage requirement, i.e., reducing the increase of memory, saving cost, and also reducing the device power consumption caused by DDR erasing and writing.
[0007] In a possible design, decoding is performed on part or all of the N CB groups, including: performing decoding on a first CB group in the N CB groups, and there is a CB group with failed reception before the first CB group.
[0008] Based on the possible design, even if there is a CB group with failed reception before a certain CB group, the decoding of the certain CB group is not affected, thereby reducing the CBs that cannot be submitted to the MAC layer for processing, thereby saving the memory cost, and reducing the processing latency.
[0009] In a possible design, each CB group in the N CB groups contains a positive integer number of complete MAC subPDUs.
[0010] Based on the possible design, since each CB group contains a positive integer of complete MAC subPDUs, the boundary (or, start bit or end bit) of the data portion of each CB group is aligned with the boundary (or, start bit or end bit) of a MAC subPDU, or the boundary (or, start bit) of each CB group is aligned with the boundary (or, start bit) of a MAC subPDU, so that the receiving end can know the structure of the MAC subPDU in the current CB group based on the current CB group, without relying on successful reception of the previous CB group before it, and can continue to decode the current CB group even in the case of failed reception of the CB group before it, for example, without obtaining the MAC subheader of the MAC SDU (or MAC CE or padding or MAC subPDU) in the next CB group in the previous CB group, so that the receiving end can deliver the successfully received CB group / CB to the MAC layer for processing in time, thereby reducing the service delay, allowing data to arrive within the delay requirement of the service, and thus improving the communication quality of the service or improving the system capacity. In addition, timely delivery of the subsequently successfully received CB group / CB to the MAC layer for processing can reduce the CB that cannot be delivered to the MAC layer for processing, thereby reducing the storage requirement, i.e., reducing the increase in memory (e.g., without the need for a large on-chip memory), saving costs, or reducing the DDR bandwidth requirement (e.g., without the need for a large DDR bandwidth), while also reducing the device power consumption caused by DDR erasing. It is also conducive to addressing the challenges of future services with lower latency requirements and / or higher rate requirements.
[0011] In a possible design, decoding the part or all of the N CB groups includes: performing decoding on a first CB group in the N CB groups according to a header corresponding to the first CB group.
[0012] Based on the possible design, the header corresponding to the CB group can be designed, for example, carrying information indicating the structure of the MAC subPDU contained in the CB group in the header corresponding to the CB group, so as to achieve the structure of the MAC subPDU in the current CB group based on the current CB group, without relying on successful reception of the previous CB group before it, and still being able to continue to decode the current CB group in the case of failed reception of the CB group before it, thereby reducing the CB that cannot be delivered to the MAC layer for processing, thereby reducing the storage requirement, i.e., reducing the increase in memory, saving costs, and reducing the processing delay.
[0013] In a possible design, the method further includes: receiving or sending first indication information, the first indication information including information of a first value.
[0014] In a second aspect, a data processing method is provided. The method can be performed by a first communication device, or by a component of the first communication device, such as a processor, a chip, or a chip system of the first communication device, or by a logic module or software that can implement all or part of the functions of the first communication device. The first communication device can be a terminal or an access network device. The method comprises: determining N code block (CB) groups corresponding to a first transport block (TB) according to a first value, wherein the first value is a number X of CBs included in one CB group, or a number Y of CB groups corresponding to one TB; N, X, and Y are integers greater than or equal to 1; performing logical channel prioritization (LCP) based on a first CB group, wherein the first CB group is one of the N CB groups. The N CB groups satisfy one of the following conditions: the number of CBs included in each of the N CB groups is a second value; or, the number of CBs included in the first M CB groups of the N CB groups is the second value, and the number of CBs included in the last N-M CB groups is a third value, wherein M is a positive integer less than N; or, the number of CBs included in the first N-M CB groups of the N CB groups is the third value, and the number of CBs included in the last M CB groups is the second value; or, the number of CBs included in each of the N CB groups is a fourth value.
[0015] Based on the scheme, LCP can be performed at the sending end in CB group granularity, so that each CB group can contain a positive integer number of complete MAC subPDUs, thereby enabling the receiving end to decode in CB group granularity. Since each CB group contains a positive integer number of complete MAC subPDUs, the start boundary of the data part of the CB group is the start bit of the MAC subPDU, and the MAC subheader and MAC SDU (or MAC CE or padding) of a certain MAC subPDU are located in one CB group. The structure of the MAC subPDU in the current CB group can be obtained based on the current CB group, so that it is not necessary to rely on successful reception of the previous CB group, for example, it is not necessary to obtain the MAC subheader of the MAC SDU (or MAC CE or padding) in the next CB group in the previous CB group. Therefore, even if the previous CB group fails to be received, the CB group received successfully afterwards can be submitted to the MAC layer for processing, so that the receiving end can process the CB group received successfully in time, thereby reducing service latency. In addition, timely submission of the CB group received successfully afterwards to the MAC layer for processing can reduce the CBs that cannot be submitted to the MAC layer for processing, thereby reducing storage requirements, i.e., reducing the increase of memory, saving costs, and also reducing device power consumption caused by DDR erasing.
[0016] In a possible design, performing logical channel prioritization (LCP) based on the first CB group includes performing LCP based on a size of a data part of the first CB group, where the size of the data part of the first CB group is determined based on the first size of the first CB group and a size of a CB CRC corresponding to each CB in the first CB group.
[0017] In a possible design, the first CB group contains a positive integer number of complete medium access control sub-protocol data units (MAC subPDUs).
[0018] In a possible design, the method further includes: determining the first TB based on the first data set, and transmitting the first TB, where the first data set is determined based on performing LCP on the first CB group.
[0019] In a possible design, after performing LCP based on the first CB group, the method further includes: performing LCP based on a second CB group of the N CB groups, where the second CB group is located after the first CB group in the N CB groups.
[0020] In a possible design, the method further includes: determining the first TB based on the first data set and a second data set, and transmitting the first TB, where the first data set is determined based on performing LCP on the first CB group, and the second data set is determined based on performing LCP on the second CB group.
[0021] In a possible design, the method further includes: transmitting or receiving first indication information, where the first indication information includes information of the first number.
[0022] With reference to the first aspect or the second aspect, in a possible design, N = ceil (C / X), where C is the number of CBs corresponding to the first TB, C is an integer greater than or equal to 1, and ceil represents rounding up.
[0023] With reference to the first aspect or the second aspect, in a possible design, in a case where C / X is an integer, each CB group of the N CB groups contains CBs of the second number; in a case where C / X is not an integer, the first M CB groups of the N CB groups contain CBs of the second number, and the last N-M CB groups contain CBs of a third number; or, the first N-M CB groups of the N CB groups contain CBs of the third number, and the last M CB groups contain CBs of the second number. C is the number of CBs corresponding to the first TB, and C is an integer greater than or equal to 1.
[0024] With reference to the first aspect or the second aspect, in a possible design, in a case that C is less than X, each of the N CB groups contains a fourth number of CBs, and the fourth number is C, where C is the number of CBs corresponding to the first TB, and C is an integer greater than or equal to 1.
[0025] With reference to the first aspect or the second aspect, in a possible design, M = N-1, or M = floor(C / X), where floor denotes a floor operation.
[0026] With reference to the first aspect or the second aspect, in a possible design, the second number is X, and the third number is C-floor(C / X)X.
[0027] With reference to the first aspect or the second aspect, in a possible design, the second number is X, and the third number is X-1.
[0028] With reference to the first aspect or the second aspect, in a possible design, N = min(C, Y), or N = Y, where C is the number of CBs contained in the first TB, and C is an integer greater than or equal to 1.
[0029] With reference to the first aspect or the second aspect, in a possible design, in a case that C / N is an integer, each of the N CB groups contains a second number of CBs; in a case that C / N is not an integer, the first M CB groups contain a second number of CBs, and the last N-M CB groups contain a third number of CBs; or, the first N-M CB groups contain a third number of CBs, and the last M CB groups contain a second number of CBs.
[0030] With reference to the first aspect or the second aspect, in a possible design, M = mod(C, N), where mod denotes a modulo operation.
[0031] With reference to the first aspect or the second aspect, in a possible design, the second number is ceil(C / N), and the third number is floor(C / N).
[0032] With reference to the first aspect or the second aspect, in a possible design, X or Y is associated with one of the following: a terminal, a downlink control information (DCI), a TB, a semi-persistent scheduling (SPS), and a configured grant (CG).
[0033] With reference to the first aspect or the second aspect, in a possible design, the N CB groups include a first CB group, and the header corresponding to the first CB group includes the first information and / or the second information. The first information indicates whether the second information exists, or indicates whether the bits of the second information are valid, or indicates whether the first CB group includes the start portion of the MAC subPDU. The second information indicates a first start position in the first CB group, and the start position is the position of the start portion of the MAC subPDU.
[0034] Based on this possible design, the header corresponding to the CB group can carry information to indicate the position of the first “start portion of the MAC subPDU” in the CB group, so that the receiving end can determine the structure of the MAC subPDU corresponding to the CB group based on the indication of the header, for example, determine the position of the first “start portion of the MAC subPDU” in the CB group, thereby decoding the CB group without relying on the successful reception of the preceding CB group, for example, decoding the CB group from the position of the first “start portion of the MAC subPDU” in the CB group, thereby avoiding the problem that all CBs after the erroneous CB or the entire TB cannot be processed (or are stuck) due to an error of one CB, thereby reducing the service delay, and enabling data to arrive within the delay requirement of the service as much as possible, thereby facilitating improvement of the communication quality of the service or facilitating improvement of the system capacity. In addition, timely delivery of the successfully received CB group / CB to the MAC layer processing can reduce the CBs that cannot be delivered to the MAC layer processing, thereby reducing the storage requirement, i.e., reducing the increase of the memory (for example, no need for a large on-chip memory), saving the cost, or reducing the requirement of DDR bandwidth (for example, no need for a large DDR bandwidth), and at the same time, reducing the device power consumption caused by DDR erasing. This is also conducive to coping with the challenges of future services with lower latency requirements and / or higher rate requirements.
[0035] With reference to the first aspect or the second aspect, in a possible design, the first CB group is one of the last N-1 CB groups among the N CB groups.
[0036] Based on this possible design, since the start position of the data portion of the first CB group is usually the position of the start portion of the MAC subPDU, the header of the first CB group does not need to be carried, thereby saving the header overhead.
[0037] With reference to the first aspect or the second aspect, in a possible design, the N CB groups include a first CB group, the first CB group includes at least one complete MAC subPDU and at least one incomplete MAC subPDU, and the at least one complete MAC subPDU is located before the at least one incomplete MAC subPDU; and the header corresponding to the first CB group includes third information, where the third information indicates a location of the incomplete MAC subPDU in the first CB group.
[0038] Based on this possible design, the header corresponding to the CB group can carry information to indicate the location of the incomplete MAC subPDU in the CB group, so that the receiving end can determine the structure of the MAC subPDU corresponding to the CB group based on the indication of the header, for example, determine the start location of the incomplete MAC subPDU and / or the end location of the complete MAC subPDU in the CB group, thereby decoding the CB group without relying on the successful reception of the preceding CB group, for example, decoding the CB group from the location of the start of the data in the CB group to the end of the start location of the incomplete MAC subPDU, so that the receiving end can process the data in the CB group / CB that is successfully received in time, avoiding the problem that all CBs after the erroneous CB or the entire TB cannot be processed (or are stuck) due to an error in one CB, thereby reducing service latency, and enabling data to arrive within the latency requirement of the service as much as possible, thereby facilitating improvement of the communication quality of the service or facilitating improvement of the system capacity. In addition, timely delivery of the subsequently successfully received CB group / CB to the MAC layer for processing can reduce the CBs that cannot be delivered to the MAC layer for processing, thereby reducing the storage requirement, i.e., reducing the increase in memory (for example, no large on-chip memory is needed), saving costs, or reducing the requirement for DDR bandwidth (for example, no large DDR bandwidth is needed), and at the same time, reducing the device power consumption caused by DDR erasing. This is also conducive to coping with the challenges of future services with lower latency requirements and / or higher rate requirements.
[0039] With reference to the first aspect or the second aspect, in a possible design, the header corresponding to the first CB group further includes fourth information and / or fifth information. The fourth information indicates whether the incomplete MAC subPDU includes the start portion of the MAC subPDU, and the fifth information indicates the type of the first CB group, where the type of the first CB group is a first-type CB group, and the first-type CB group includes at least one complete MAC subPDU and at least one incomplete MAC subPDU.
[0040] Based on the possible design, the fourth information is carried in the header corresponding to the CB group, so that the receiving end can splice the incomplete MAC subPDUs in different CB groups based on the fourth information, thereby recovering the complete MAC subPDU, decoding the complete MAC subPDU, reducing the packet loss rate, and improving the data transmission performance. In addition, the fifth information is carried in the header corresponding to the CB group, so that the receiving end can know the type of the CB group, thereby decoding based on the type of the CB group, improving the success rate of decoding, and thereby improving the data transmission performance.
[0041] In a third aspect, a communication apparatus is provided, which can implement various methods. The communication apparatus includes modules, units, or means corresponding to the methods, and the modules, units, or means can be implemented in the form of hardware, software, or the combination of hardware and software. The hardware or software includes one or more modules or units corresponding to the functions.
[0042] In some possible designs, the communication apparatus can include a processing module and a transceiver module. The processing module can be used to implement the processing functions in any of the aspects and any of the possible implementations. The transceiver module can include a receiving module and a sending module, which are used to implement the receiving functions and the sending functions in any of the aspects and any of the possible implementations.
[0043] In some possible designs, the transceiver module can be composed of a transceiver circuit, a transceiver, a transceiver, or a communication interface.
[0044] In a fourth aspect, a communication apparatus is provided, which includes a processor and a memory. The memory is used to store computer instructions, and when the processor executes the instructions, the communication apparatus performs the methods in any of the aspects and any of the possible designs.
[0045] In a fifth aspect, a communication apparatus is provided, which includes a processor and a communication interface. The communication interface is used to communicate with modules outside the communication apparatus. The processor is used to execute computer programs or instructions, so that the communication apparatus performs the methods in any of the aspects and any of the possible designs.
[0046] In a sixth aspect, a communication apparatus is provided, which includes at least one processor. The processor is used to execute computer programs or instructions stored in a memory, so that the communication apparatus performs the methods in any of the aspects and any of the possible designs. The memory can be coupled with the processor, or can be independent of the processor.
[0047] In a seventh aspect, a communication apparatus (which can be a chip or a chip system) is provided, and the communication apparatus includes a processor configured to implement the functions of any of the above aspects and any of their possible designs.
[0048] In some possible designs, the communication apparatus includes a memory configured to store necessary program instructions and data.
[0049] In some possible designs, when the apparatus is a chip system, the apparatus can be composed of a chip or can include a chip and other discrete devices.
[0050] The communication apparatus of the third aspect to the seventh aspect can be the second communication apparatus of the first aspect or a device included in the second communication apparatus, such as a chip or a chip system; or the communication apparatus of the third aspect to the seventh aspect can be the first communication apparatus of the second aspect or a device included in the first communication apparatus, such as a chip or a chip system.
[0051] In an eighth aspect, a communication apparatus is provided, which can be the first communication apparatus, or a module or unit (such as a chip or a chip system or a circuit) that is one-to-one corresponding to the module or unit that performs the method / operation / step / action described in the second aspect in the first communication apparatus, or a module or unit that can be matched with the first communication apparatus; or the communication apparatus can be the second communication apparatus, or a module or unit (such as a chip or a chip system or a circuit) that is one-to-one corresponding to the module or unit that performs the method / operation / step / action described in the first aspect in the second communication apparatus, or a module or unit that can be matched with the second communication apparatus.
[0052] It can be understood that, when the communication apparatus of any of the third aspect to the eighth aspect is a chip, the sending action / function of the communication apparatus can be understood as outputting information, and the receiving action / function of the communication apparatus can be understood as inputting information.
[0053] In a ninth aspect, a computer-readable storage medium is provided, and the computer-readable storage medium stores a computer program or instructions, which, when executed on a communication apparatus, causes the communication apparatus to perform the method of any of the above aspects and any of their possible designs.
[0054] In a tenth aspect, a computer program product is provided, and the computer program product includes instructions, which, when executed on a communication apparatus, causes the communication apparatus to perform the method of any of the above aspects and any of their possible designs.
[0055] In an eleventh aspect, a communication system is provided, which includes a first communication device and a second communication device. The first communication device is configured to implement the method of the second aspect and any possible design of the second aspect, and the second communication device is configured to implement the method of the first aspect and any possible design of the first aspect.
[0056] The technical effects brought by any of the designs of the third aspect to the eleventh aspect can be referred to the technical effects brought by different designs of the first aspect or the second aspect, which will not be repeated here. BRIEF DESCRIPTION OF DRAWINGS
[0057] Figure 1 A structure diagram of a wireless protocol stack is provided in the present application;
[0058] Figure 2 A diagram of transmission of downlink data between protocol layers is provided in the present application;
[0059] Figure 3 A flow diagram of LCP is provided in the present application;
[0060] Figure 4 A flow diagram of resource allocation is provided in the present application;
[0061] Figure 5 A structure diagram of downlink MAC PDU is provided in the present application;
[0062] Figure 6 A structure diagram of uplink MAC PDU is provided in the present application;
[0063] Figures 7-9 A structure diagram of MAC subheader is provided in the present application;
[0064] Figure 10 A TB division diagram of physical layer is provided in the present application;
[0065] Figure 11 A CB receiving diagram is provided in the present application;
[0066] Figure 12 A structure diagram of a communication system is provided in the present application;
[0067] Figure 13 A CB and CB group division diagram is provided in the present application;
[0068] Figure 14 A flow diagram of a data processing method is provided in the present application;
[0069] Figure 15 A flow diagram of another resource allocation is provided in the present application;
[0070] Figures 16-17 A schematic diagram of the relationship between CB groups and MAC subPDUs provided in the present application is shown in FIG. 1;
[0071] Figure 18 A schematic diagram of the flow of a CB group-based LCP provided in the present application is shown in FIG. 2;
[0072] Figure 19 A schematic diagram of the flow of another data processing method provided in the present application is shown in FIG. 3;
[0073] Figure 20 A schematic diagram of the structure of a CB group provided in the present application is shown in FIG. 4;
[0074] Figures 21-22 A schematic diagram of the structure of a header corresponding to a CB group provided in the present application is shown in FIG. 5;
[0075] Figure 23 A schematic diagram of the structure of a CB provided in the present application is shown in FIG. 6;
[0076] Figure 24 A schematic diagram of the flow of another data processing method provided in the present application is shown in FIG. 7;
[0077] Figure 25 A schematic diagram of the structure of another CB group provided in the present application is shown in FIG. 8;
[0078] Figure 26 A schematic diagram of the structure of another header corresponding to a CB group provided in the present application is shown in FIG. 9;
[0079] Figure 27 A schematic diagram of the flow of a method for determining a TB provided in the present application is shown in FIG. 10;
[0080] Figure 28 A schematic diagram of the structure of another CB group provided in the present application is shown in FIG. 11;
[0081] Figure 29 A schematic diagram of the structure of another CB provided in the present application is shown in FIG. 12;
[0082] Figures 30-32 A schematic diagram of the structure of a communication device provided in the present application is shown in FIG. 13. DETAILED DESCRIPTION
[0083] In the description of the present application, unless otherwise specified, " / " represents that the objects before and after the " / " are in an "or" relationship, for example, A / B can represent A or B; "and / or" in the present application is only a description of the relationship between the associated objects, which means that there can be three relationships, for example, A and / or B, which can represent: A exists alone, A and B exist together, and B exists alone, where A and B can be singular or plural.
[0084] In the description of the present application, "a plurality" means two or more than two, unless otherwise specified. "At least one" means one or more. "At least two" means two or three or more than three. "At least one of the following" or the like means any combination of the items, including a single item or any combination of multiple items. For example, at least one of a, b, or c can mean a, b, c, a and b, a and c, b and c, or a and b and c, where a, b, c can be a single or multiple.
[0085] In addition, in order to facilitate the clear description of the technical solutions of the embodiments of the present application, in the embodiments of the present application, "first", "second" and the like are used to distinguish the same items or similar items with basically the same function and effect. The skilled in the art can understand that "first", "second" and the like are only used for the purpose of description, and cannot be understood as indicating or implying the relative importance or implicitly indicating the number of the indicated technical features, and do not limit the number and execution order, therefore, the features with "first", "second" can explicitly or implicitly include one or more of the features. And "first", "second" and the like do not necessarily mean different.
[0086] In the embodiments of the present application, the words "exemplary" or "for example" are used to mean serving as an example, instance, or illustration. Any embodiment or design presented as "exemplary" or "for example" in the embodiments of the present application should not be construed as being more preferred or advantageous than other embodiments or designs. Rather, the use of the words "exemplary" or "for example" is intended to present concepts in a concrete manner. The embodiments described as "exemplary" or "for example" in the embodiments of the present application are not necessarily to be construed as preferred or advantageous over other embodiments or designs.
[0087] It can be understood that the "embodiments" mentioned throughout the specification mean that the specific features, structures or characteristics related to the embodiments are included in at least one embodiment of the present application. Therefore, the various embodiments throughout the specification do not necessarily refer to the same embodiment. In addition, these specific features, structures or characteristics can be combined in any suitable manner in one or more embodiments. It can be understood that in various embodiments of the present application, the size of the sequence of each process does not mean the order of execution, the execution order of each process should be determined by its function and inherent logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0088] It can be understood that in the present application, "when" and "if" refer to the corresponding processing under certain objective circumstances, not limited to time, and do not require judgment actions when implementing, nor mean that there are other limitations.
[0089] It is understood that some optional features in the embodiments of this application can be implemented independently in certain scenarios without relying on other features, such as the current solution on which they are based, to solve the corresponding technical problems and achieve the corresponding effects. Alternatively, they can be combined with other features as needed in certain scenarios. Correspondingly, the apparatus given in the embodiments of this application can also implement these features or functions, which will not be elaborated here.
[0090] In this application, unless otherwise specified, the same or similar parts between the various embodiments can be referred to each other. In the various embodiments of this application, unless otherwise specified or there is a logical conflict, the terminology and / or descriptions between different embodiments are consistent and can be mutually referenced. Technical features in different embodiments can be combined to form new embodiments based on their inherent logical relationships. The following descriptions of the embodiments of this application do not constitute a limitation on the scope of protection of this application.
[0091] To facilitate understanding of the technical solutions of the embodiments of this application, a brief introduction to the relevant technologies of this application is given below.
[0092] 1. Protocol layer structure:
[0093] For example, currently, communication between terminals and network devices follows a certain protocol layer structure. It can be divided into user plane protocol stack and control plane protocol stack.
[0094] like Figure 1 As shown in (a), the user plane protocol stack may include a service data adaptation protocol (SDAP) layer, a packet data convergence protocol (PDCP) layer, a radio link control (RLC) layer, a media access control (MAC) layer, and a physical (PHY) layer.
[0095] like Figure 1 As shown in (b), for the access stratum (AS), the control plane protocol stack may include the radio resource control (RRC) layer, PDCP layer, RLC layer, MAC layer, and PHY layer. Furthermore, the control plane protocol stack may also include the non-access stratum (NAS).
[0096] For example, data processing at each protocol layer is implemented by the corresponding functional entity; for instance, the processing at the PDCP layer is implemented by the corresponding PDCP entity. Furthermore, above the AS layer, there may be an application (APP) layer. Other protocol layers may also exist between the AS layer and the APP layer, without restriction.
[0097] like Figure 2 The diagram illustrates the transmission of downlink data between various protocol layers between the terminal and access network equipment. Downward arrows represent transmission, and upward arrows represent reception. Furthermore, Figure 2 The protocol layer in the protocol layer can also be understood as the corresponding protocol layer entity. For example, the RRC layer can be understood as the RRC entity, and the PDCP layer can be understood as the PDCP entity.
[0098] In this process, after the RRC entity of the access network device generates downlink data (also known as signaling, such as an RRC message or RRC protocol data unit (PDU)), the data passes through one or more of the PDCP layer, RLC layer, MAC layer, and PHY layer in sequence, and is transmitted to the terminal via the air interface. After receiving the data at the air interface, the terminal parses the data in the reverse order of the access network device.
[0099] Furthermore, for the sending end, the data received by a certain layer from the upper layer is called a service data unit (SDU), and the data that the layer delivers to the lower layer is called a PDU. For this layer, the data received from the upper layer and the data delivered to the lower layer may be the same (e.g., transparent transmission) or different (e.g., the data received from the upper layer is encapsulated / processed by this layer to obtain the data delivered to the lower layer).
[0100] For the receiving end, the data received by a certain layer from the lower layer is called PDU, and the data that the layer passes to the upper layer is called SDU. For that layer, the data received from the lower layer and the data passed to the upper layer may be the same (e.g., transparent transmission) or different (e.g., the data received from the lower layer is processed by this layer to obtain the data passed to the upper layer).
[0101] For example, after the RRC entity of the access network device delivers the RRC PDU to the PDCP entity, the PDCP entity processes or does not process the data (i.e., PDCP SDU) received from the RRC entity to obtain a PDCP PDU, and delivers the PDCP PDU to the RLC entity. The RLC entity processes or does not process the data (i.e., RLC SDU) received from the PDCP entity to obtain an RLC PDU, and delivers the RLC PDU to the MAC entity, and so on. After certain processing at the PHY layer, air interface transmission is performed. For example, the data transmitted through the air interface can be referred to as a transport block (TB).
[0102] Correspondingly, after the PHY of the terminal receives the TB, the TB is delivered to the MAC entity (the TB can also be referred to as a MAC PDU at the MAC entity), the MAC entity processes or does not process the TB to obtain a MAC SDU, and delivers the MAC SDU to the RLC entity. The RLC entity processes or does not process the data (i.e., RLC PDU) received from the MAC entity to obtain an RLC SDU, and delivers the RLC SDU to the PDCP entity. In this way, after the data reaches the RRC entity, the RRC entity can perform RRC decoding or ASN.1 decoding to determine the meaning of the received data (such as a bit string).
[0103] In the embodiments of the present application, the upper layer and the lower layer are a relative concept. For example, taking the RLC layer as an example, for the RRC layer, the RLC layer can be the lower layer of the RRC layer, but for the MAC layer, the RLC layer can be the upper layer of the MAC layer. For another example, the lower layer of the RRC layer can include any one or more of the following: a PHY layer, a MAC layer, an RLC layer, and a PDCP layer.
[0104] 2. MAC packetization:
[0105] For example, MAC packetization can also be referred to as multiplexing and assembly. For example, MAC packetization can include two parts: logical channel prioritization (LCP), multiplexing of MAC control elements and MAC SDUs.
[0106] Wherein, the LCP is used to determine data, such as one or more MAC CEs and / or one or more MAC SDUs, transmitted on uplink (UL) new transmission resources. Multiplexing of the MAC CEs and the MAC SDUs is used to multiplex the MAC CEs and / or the MAC SDUs determined after the LCP procedure is performed into one MAC PDU.
[0107] 3. LCP procedure:
[0108] Currently, the LCP procedure is in the granularity of new transmission resources / MAC PDUs / TBs. For example, after the terminal obtains the uplink resources allocated by the access network device, the terminal can perform the LCP, that is, the terminal obtains one UL new transmission resource and performs the LCP once. For example, the MAC entity of the terminal can perform the LCP according to the TB size. For example, the MAC entity of the terminal can include / replace: the terminal.
[0109] It should be noted that in the embodiments of the present application, performing the LCP can also include / replace: performing the LCP procedure, which is uniformly described hereinafter and will not be described again in subsequent embodiments.
[0110] For example, the LCP can include B j maintenance, logical channel selection, and resource allocation related content. For example, Figure 3 As shown, in the LCP procedure, first, logical channel (LCH) selection is performed according to LCP restrictions (or LCH restrictions), and then resources are allocated according to the priorities of the selected logical channels (including two rounds of resource allocation). For example, the logical channel can be understood as a channel between the MAC layer and the RLC layer.
[0111] 3.1. B j Maintenance:
[0112] For example, one logical channel corresponds to one B j .
[0113] When the logical channel j is established, the MAC entity of the terminal initializes the B j corresponding to the logical channel j to zero. For each logical channel, the MAC entity increases the B j by PBR×T before each LCP procedure. If the B j is greater than the bucket size, the B j is set to the bucket size; if the B j is less than the bucket size, the B j is set to the calculated value.
[0114] Wherein, PBR is the prioritized bit rate (PBR). T is the time since the B jTime elapsed since the last / previous increment. The bucket size is PBR x BSD, where BSD is the bucket size duration (BSD). PBR and BSD are configured by the access network device to the terminal.
[0115] 3.2. Logical channel selection:
[0116] For example, when performing new transmission, the MAC entity of the terminal selects a logical channel that satisfies all of the following conditions:
[0117] The subcarrier spacing (SCS) index associated with the UL grant is included in the set of allowed SCS index values in allowSCS-List (if configured); and,
[0118] The physical uplink shared channel (PUSCH) transmission duration associated with the UL grant is greater than or equal to maxPUSCH-Duration (if configured); and,
[0119] In the case of UL grant being Configured Grant Type 1, configuredGrantType1Allowed (if configured) is set to TRUE; and,
[0120] The cell information associated with the UL grant is included in allowedServingCells (if configured); and,
[0121] The configured grant index associated with the UL grant is included in allowedCG-List (if configured); and,
[0122] The priority index associated with the dynamic UL grant is included in allowedPHY-PriorityIndex (if configured); and,
[0123] The uplink hybrid automatic repeat-request (HARQ) mode of the HARQ process associated with the UL grant is included in allowedHARQ-mode (if configured).
[0124] 3.3. Resource allocation:
[0125] When performing new transmission, the MAC entity of the terminal allocates resources for the selected logical channel in the following manner:
[0126] First round of resource allocation: For the selected logical channel in B jLogical channels with a value greater than 0 are allocated resources in decreasing order of logical channel priority.
[0127] For example, in the first round of resource allocation, the PBR requirement needs to be considered to ensure the fairness of resource allocation, i.e., the resources allocated to logical channel j in the first round of resource allocation are determined according to B j determined.
[0128] For example, if the PBR of a certain logical channel is configured as "infinity", the MAC entity of the terminal will allocate resources for all data available for transmission on the logical channel before satisfying the PBR of a lower priority logical channel.
[0129] For example, after the first round of resource allocation, B j The total size of the MAC SDU provided by the logical channel j is subtracted.
[0130] Second round of resource allocation: if there is remaining resource after the first round of resource allocation, for the selected logical channel, data is provided in strict decreasing priority order until one of the logical channel or UL grant data is exhausted.
[0131] It should be noted that the above resource allocation only involves data from LCH and does not involve MAC CE related content. When allocating resources for MAC CE and / or data from logical channels, MAC CE or data from logical channels should be prioritized in the following order (the following is listed in descending order of priority):
[0132] Cell Radio Network Temporary Identifier (C-RNTI) MAC CE or data from UL Common Control Channel (CCCH);
[0133] Configured Grant Confirmation MAC CE;
[0134] Buffer Status Report (BSR) MAC CE, except padding BSR;
[0135] Single Power Headroom Report (PHP) MAC CE or Multi-PHP MAC CE;
[0136] Data from any logical channel, except data from UL-CCCH;
[0137] Padding BSR MAC CE.
[0138] It can be understood that the above sequence is only an example, which is only used to illustrate the priority of allocating resources for MAC CEs and data (MAC SDUs) from logical channels, and does not cause any limitation to the present application.
[0139] For example, the new transmission resource configured / scheduled by the access network device for the terminal is uplink resource 1, the terminal will perform new transmission on the uplink resource 1, the logical channels selected by the terminal according to the LCP restriction are LCH1, LCH2 and LCH3, the priorities of which are priority 1, priority 2 and priority 3 respectively, and priority 1 is higher than priority 2, and priority 2 is higher than priority 3, as shown in Figure 4 , it is assumed that the B j of LCH1 and LCH3 is greater than 0, and the B j of LCH2 is less than 0, then the resources are allocated to LCH1 and LCH3 in the order of decreasing priority of LCH during the first round of resource allocation, wherein the resources allocated to LCH1 and LCH3 are in the order of decreasing B j of the corresponding LCH. Figure 4 The numbers 1, 2, 3 and 4 in
[0140] After the first round of resource allocation, if there is still remaining resource in the uplink resource 1, the resources will be allocated in the order of decreasing priority of LCH1, LCH2 and LCH3, that is, the resources are allocated to LCH1 first, then to LCH2 if there is remaining resource, and so on until the resources are exhausted.
[0141] Referring to Figure 4 , after the two rounds of resource allocation, the data of LCH1 are all allocated to resources, or in other words, the data of LCH1 can all be transmitted in this new transmission, and part of the data of LCH2 and LCH3 are not allocated to resources (as shown in the diagonal filled part of Figure 4 ), or in other words, the part of data cannot be transmitted in this new transmission.
[0142] It should be noted that Figure 4 the example shown in
[0143] 4, multiplexing of MAC CEs and MAC SDUs:
[0144] MAC CE and MAC SDU multiplexing is used to multiplex the MAC CE and / or MAC SDU determined after LCP execution into a single MAC PDU. A MAC PDU consists of one or more MAC subPDUs. For example, the composition of a MAC subPDU may fall into the following four categories:
[0145] Includes only one MAC header (including padding) or only one MAC header (excluding padding);
[0146] It consists of a MAC subheader and a MAC SDU;
[0147] It consists of a MAC subheader and a MAC CE;
[0148] It consists of a MAC header and padding.
[0149] The size of the MAC SDU is variable. Some MAC CEs have a fixed size, while others have a variable size. The padding size is variable and can be 0, meaning padding is optional. Furthermore, in the current MAC PDU, the MAC CEs are placed together.
[0150] For example, such as Figure 5 The diagram shows the structure of a downlink (DL) MAC PDU. The MAC subPDU containing the MAC CE is placed before the MAC subPDU containing the MAC SDU and the MAC subPDU containing padding. Figure 6 The diagram shows the structure of a UL MAC PDU. The MAC subPDU containing the MAC CE is placed after the MAC subPDU containing the MACSDU and before the MAC subPDU containing the padding.
[0151] Each MAC subPDU contains a MAC subheader and a MAC CE, MAC SDU, or padding; that is, one MAC subheader corresponds to one MAC CE, MAC SDU, or padding. For example, the MAC subheader, except for those corresponding to fixed-size MAC CEs, padding, and MAC SDUs containing CCCHs, consists of the header fields R / F / LCID / (eLCID) / L. For example, the MAC subheader corresponding to fixed-size MAC CEs and paddings consists of the header fields R / LCID / (eLCID). For example, the MAC subheader corresponding to MAC SDUs containing CCCHs consists of the header field R / LCID. Example:
[0152] LCID: logical channel identifier (LCID) field, used to indicate the logical channel of the MAC SDU corresponding to the MAC subheader, or to indicate the type of the MAC CE corresponding to the MAC subheader, or to indicate padding corresponding to the MAC subheader. The LCID field has a length of 6 bits. If the LCID field is set to 34, the MAC subheader further includes an eLCID field having a length of 8 bits; if the LCID subfield is set to 33, the MAC subheader further includes an eLCID field having a length of 16 bits, which is immediately followed by the LCID field.
[0153] eLCID: extended logical channel identifier field, used to indicate the logical channel of the MAC SDU corresponding to the MAC subheader, or to indicate the type of the MAC CE corresponding to the MAC subheader, and has a size of 8 bits or 16 bits. The eLCID field is an optional field.
[0154] L: length field, used to indicate the number of bytes of the MAC SDU corresponding to the MAC subheader, or to indicate the number of bytes of the MAC CE corresponding to the MAC subheader. The size of the L field is indicated by the F field.
[0155] F: format field, used to indicate the size of the length field L. The F field has a size of 1 bit, and a value of 0 indicates that the L field has a size of 8 bits, and a value of 1 indicates that the L field has a size of 16 bits.
[0156] R: reserved bit, set to 0.
[0157] Exemplarily, Figure 7 The structure of the MAC subheader containing the R / F / LCID / (eLCID) / L field when the size of the L field is 8 bits is shown in FIG. 8A, wherein the MAC subheader does not include the eLCID field, as shown in (a) of FIG. 8A, the MAC subheader includes the eLCID field, as shown in (b) of FIG. 8A, the size of the eLCID field is 8 bits, as shown in (c) of FIG. 8A, the MAC subheader includes the eLCID field, and the size of the eLCID field is 16 bits. Figure 7 Figure 7 Figure 7 Figure 8 The structure of the MAC subheader containing the R / F / LCID / (eLCID) / L field when the size of the L field is 16 bits is shown in FIG. 9, wherein the MAC subheader does not include the eLCID field, as shown in (a) of FIG. 9, the MAC subheader includes the eLCID field, as shown in (b) of FIG. 9, the size of the eLCID field is 8 bits, as shown in (c) of FIG. 9, the MAC subheader includes the eLCID field, and the size of the eLCID field is 16 bits. Figure 8 Figure 8 Figure 8 As shown in (c) of FIG. 1, the MAC subheader includes an eLCID field, and the size of the eLCID field is 16 bits. An example is shown in (c) of FIG. 1. Figure 9 The structure of the MAC subheader including the R / LCID / (eLCID) field is shown in (a) of FIG. 2. Figure 9 As shown in (a) of FIG. 1, the MAC subheader does not include an eLCID field, as shown in (a) of FIG. 2. Figure 9 As shown in (b) of FIG. 1, the MAC subheader includes an eLCID field, and the size of the eLCID field is 8 bits. The MAC subheader is octet (or byte) aligned.
[0158] An example is that the receiving end decodes in the granularity of the MAC subPDU. For a certain MAC subPDU, decoding needs to be performed based on the MAC subheader. For example, the MAC subheader is parsed to determine the structure of the MAC subPDU. For example, the structure of the MAC subheader is shown in (a) of FIG. 2. Figure 7 As an example, as shown in (a) of FIG. 2, the receiving end determines the size of the L field according to the F field of the MAC subheader, determines the type of the logical channel or the MAC CE corresponding to the MAC subheader according to the LCID field, and determines the number of bytes P of the MAC SDU or the MAC CE corresponding to the MAC subheader according to the L field. Thus, the P bytes after the MAC subheader are determined as a MAC SDU or a MAC CE, and decoding is performed thereon.
[0159] 5. Physical layer data processing flow:
[0160] The MAC layer of the sending end assembles a MAC PDU, and then delivers the MAC PDU to the PHY layer. An example is that the MAC PDU can also be referred to as a TB, and both represent the same data. For example, for a certain data, it can be referred to as a MAC PDU at the MAC layer, and can be referred to as a TB at the PHY layer. After the PHY layer obtains the TB, as shown in (a) of FIG. 3, a TB cyclic redundancy check (CRC) code is first added. Figure 10
[0161] An example is that the number C of CBs satisfies the following relationship: if B≤K cb , then C=1; if B>K cb , then The first size K' of the CB is K'=B' / C.
[0162] where C is the number of CBs corresponding to one TB. B = A + L1. A is the size of TB or payload size. L1 is the size of TB CRC. For example, L1 is 16 bits or 24 bits. K cb is the maximum value of CB. For example, K cb is 8448 bits or 3840 bits. For example, for low density parity check (LDPC) based Figure 1 , K cb is 8448 bits. For example, for LDPC based Figure 2 , K cb is 3840 bits. L is the size of CB CRC. For example, L is 24 bits. K' is the first size of each CB. B' = B + C·L.
[0163] It can be understood that, based on the above division principle, the first size of CB includes the size of the data part (or called payload part) of CB and the size of TB CRC, or includes the size of the data part of CB and the size of CB CRC, or includes the size of the data part of CB, the size of TB CRC and the size of CB CRC. The first size of CB does not include the size of padding (for example, NULL).
[0164] In addition to the first size of CB, there is a second size K of CB. The second size of CB includes the size of the data part of CB, the size of TB CRC and the size of padding, or includes the size of the data part of CB, the size of CB CRC and the size of padding, or includes the size of the data part of CB, the size of TB CRC, the size of CB CRC and the size of padding. The second size of CB can include the size of padding.
[0165] For example, the second size K of CB is determined based on the first size K' of CB. For example, the second size of CB is greater than or equal to the first size of CB.
[0166] For example, in the case that CB does not include padding or the padding is 0, the second size of CB does not include the size of padding, and the second size of CB is the same as the first size of CB.
[0167] Further, based on the above CB division, the CBs have no association with the structure of the MAC PDU, and the boundary (or, the starting bit) of each CB is not necessarily the starting bit of a MAC subPDU, or the boundary (or, the starting bit or the ending bit) of the data portion of each CB is not necessarily the boundary (or, the starting bit or the ending bit) of a MAC subPDU. For example, for one TB, the first size of each CB and / or the second size of each CB is the same, but the sizes of different MAC subPDUs are not necessarily the same, so the boundary (or, the starting bit) of each CB is not necessarily the starting bit of a MAC subPDU. For example, as shown in (b) of FIG. 1, the starting boundary of CB0 is the starting bit of MAC subPDU1, and the starting boundaries of CB1 and CB2 are not the starting bits of any MAC subPDU. Figure 10
[0168] It should be noted that, Figure 10 (b) of FIG. 1 only shows the data portion of the CB as an example, and there is also a CB CRC in the CB, and further, there can be padding (for example, NULL) in the CB, Figure 10 (b) of FIG. 1 does not show this.
[0169] For the receiving end, after the physical layer receives the CB or the TB, the CB CRC and the TB CRC are checked, and in the case that all CB CRCs are successfully checked and the TB CRC is passed, the physical layer delivers the TB to the MAC layer. For example, for the receiving end, after the physical layer receives the CB or the TB, the CB CRC is first checked, and in the case that all CB CRCs are successfully checked, the TB CRC is checked again, and if the TB CRC is passed, the physical layer delivers the TB to the MAC layer. However, as long as there is a CB CRC that is not passed, the entire TB cannot be delivered to the MAC layer for processing, and needs to wait for hybrid automatic repeat request (HARQ) retransmission (for example, TB or code block group (CBG) retransmission), thereby causing an increase in service delay and affecting communication quality. For example, it can cause data to not be able to reach within the delay requirement of the service, thereby affecting the communication quality of the service, or affecting the system capacity.
[0170] To solve this problem, one possible solution is that the PHY layer of the receiving end receives the CB (or, the TB), checks the CB CRC, and if the CB CRC is passed, the CB is delivered to the MAC layer for processing (or, the CB is subjected to subsequent data processing) without waiting for the checking result of the TB CRC, but only the CB can be delivered to the MAC layer for processing (or, the CB is subjected to subsequent data processing) in sequence.
[0171] Since the division of CBs is independent of the structure of MAC PDU, in the case that a certain CB CRC check fails, the receiving end cannot know the format of the MAC PDU corresponding to the subsequent CB (or cannot know the position of the start of the subsequent MAC subPDU in the CB, or cannot find the boundary of the next or subsequent MAC subPDU), so as to fail to decode the subsequent CB, resulting in that all subsequent CBs cannot be submitted to the MAC layer processing (or all subsequent CBs cannot be processed), and thus need to wait for HARQ retransmission (for example, TB or CBG retransmission), thereby causing the service delay to increase, affecting the communication quality, for example, it can cause data to fail to arrive within the delay requirement of the service, thereby affecting the communication quality of the service, or affecting the system capacity. For example, as shown in FIG. 2, since the CRC check of CB2 fails, CB2 is not successfully received, and all subsequent CBs, i.e., CB3, …, CBn, cannot be submitted to the MAC layer processing (or cannot be processed). Figure 11 C-2 C-1
[0172] In addition, the processing of data (for example, at least one of the PHY layer processing, the MAC layer processing, the RLC layer processing, and the PDCP layer processing) is currently processed on the on-chip memory, but the on-chip memory is very small and even cannot accommodate a large TB. After the terminal performs one processing of data (for example, the PHY layer processing or the CB CRC check processing of the PHY layer), if the next processing (for example, the MAC layer processing) cannot be continued, the data needs to be stored on a double data rate (DDR), and then read out from the DDR to the on-chip memory when the next processing can be performed, and then the subsequent data processing is performed on the on-chip memory. For example, the DDR can be referred to as a synchronous dynamic random access memory (SDRAM).
[0173] For the CBs that cannot be submitted to the MAC layer processing (or cannot be processed), if they are all buffered on the on-chip memory, the on-chip memory needs to be increased, thereby causing the on-chip memory overhead to increase and the chip cost to increase. If they are buffered on the DDR, the write / read of the DDR (for example, data is written from the on-chip memory to the DDR, and then data is read from the DDR to the on-chip memory) needs to be increased, and the bandwidth of the DDR needs to be increased (for example, the bandwidth of the DDR needs to be reserved according to the air interface), thereby causing the cost to increase. In addition, due to the erase and write of the DDR, the power consumption of the device is also increased.
[0174] That is, even if not waiting (or not considering) the check result of the TB CRC, in the case of passing the CB CRC check, the CB is delivered in sequence, and in the case of failing the CB CRC check, the service delay is also increased, especially for the challenge of future lower latency service. In addition, the device cost is increased, especially for the future higher rate service, the cost pressure is greater. If the CB that cannot be delivered to the MAC layer processing is adopted by the DDR storage, the device power consumption is also increased.
[0175] Based on this, the present application provides a data processing method, in which, at the sending end, LCP is performed in CB group granularity, so that the boundary (or, the starting bit or the ending bit) of the data part of each CB group and the boundary (or, the starting bit or the ending bit) of a MAC subPDU are aligned, or the boundary (or, the starting bit) of each CB group and the boundary (or, the starting bit) of a MAC subPDU are aligned, so that each CB group can contain a positive integer number of complete MAC subPDUs, so that the receiving end can decode in CB group granularity. Avoid the problem that due to an error of a CB, the entire TB or all CBs subsequent to the error CB cannot be processed (or are blocked).
[0176] Since each CB group contains a positive integer number of complete MAC subPDUs, the starting boundary of the data part of the CB group is the starting bit of the MAC subPDU, and the MAC subheader and the MAC SDU (or MAC CE or padding) of a certain MAC subPDU are located in one CB group, so that when decoding a certain CB group, it is not necessary to rely on the successful reception of the previous CB group / CB, for example, it is not necessary to obtain the MAC subheader of the MAC SDU (or MAC CE or padding or MAC subPDU) in the next CB group in the previous CB group, so that even if the previous CB group / CB fails to be received, the CB group / CB received successfully afterwards can be delivered to the MAC layer processing, so that the receiving end can process the CB group / CB received successfully in time, thereby reducing the service delay, and the data can be made to arrive within the delay requirement of the service, thereby being beneficial to improve the communication quality of the service, or being beneficial to improve the system capacity.
[0177] Alternatively, the present application provides a data processing method, in which part or all of the CB groups can correspond to the header, and the header corresponding to a certain CB group can carry information to indicate the position of the "start of the first MAC subPDU" in the CB group, or to indicate the position of the incomplete MAC subPDU in the CB group, so that the receiving end can determine the structure of the MAC subPDU corresponding to the CB group based on the indication of the header, for example, determine the position of the "start of the first MAC subPDU" in the CB group, or determine the start position of the incomplete MAC subPDU and / or the end position of the complete MAC subPDU in the CB group, so as to decode the CB group / CB without relying on the successful reception of the previous CB group / CB, for example, starting from the position of the "start of the first MAC subPDU" in the CB group, or starting from the start position of the data part of the CB group, to the end of the start position of the incomplete MAC subPDU, so that the receiving end can process the successfully received CB group / CB in time, avoiding the problem that all CBs after the error CB cannot be processed (or are stuck) due to an error in one CB, thereby reducing the service delay, so that data can arrive within the time delay requirement of the service, thereby improving the communication quality of the service, or facilitating the improvement of the system capacity.
[0178] In addition, based on the data processing method of the present application, timely submission of the subsequently received successfully received CB group / CB to the MAC layer processing can reduce the CBs that cannot be submitted to the MAC layer processing, thereby reducing the storage requirement, i.e., reducing the increase of the memory (e.g., no need for a large on-chip memory), saving costs, or reducing the DDR bandwidth requirement (e.g., no need for a large DDR bandwidth), while also reducing the device power consumption caused by DDR erasing. It is also conducive to coping with the challenges of future services with lower latency requirements and / or higher rate requirements.
[0179] The technical solutions of the embodiments of the present application can be applied to various communication systems, which can be a third generation partnership project (3GPP) communication system, for example, a fourth generation (4th generation, 4G) system such as a long term evolution (long term evolution, LTE) system, a fifth generation (5th generation, 5G) system such as new radio (new radio, NR), a system of mixed networking of LTE and 5G, a non-terrestrial network (non-terrestrial network, NTN), a device-to-device (device-to-device, D2D) communication system, a vehicle-to-everything (vehicle to everything, V2X) communication system, a machine type communication (machine type communication, MTC) system, an internet of things (internet of things, IOT) system, a wireless local area network, a universal mobile communication system or other future communication system. The communication system can also be a non-3GPP communication system, which is not limited.
[0180] Among them, the above-mentioned communication system applicable to the present application is only an example, and the communication system applicable to the present application is not limited thereto, and the communication system provided by the present application does not cause any limitation to the scheme of the present application. It is uniformly stated here that the following will not be described in detail.
[0181] Figure 12 A possible, non-limiting system schematic diagram is shown. As Figure 12 shown, the communication system 120 includes a radio access network (radio access network, RAN) 1200 and a core network (core network, CN) 1300. The RAN 1200 includes at least one access network device (such as 1210a and 1210b in Figure 12 , collectively referred to as 1210) and at least one terminal (such as 1220a-1220j in Figure 12 , collectively referred to as 1220). Other access network devices such as wireless relay devices and / or wireless backhaul devices (not shown in Figure 12 ) and the like can also be included in the RAN 1200. The terminal 1220 is connected to the access network device 1210 in a wireless manner. The access network device 1210 is connected to the core network 1300 in a wireless or wired manner. The core network device in the core network 1300 and the access network device 1210 in the RAN 1200 can be different physical devices respectively, or can be the same physical device integrated with the core network logic function and the wireless access network logic function.
[0182] The RAN 1200 can be a 3GPP related cellular system, e.g., a 4G, 5G mobile communication system, or a future evolution system. The RAN 1200 can also be an open RAN (O-RAN or ORAN), a cloud radio access network (CRAN), or a wireless fidelity (WiFi) system. The RAN 1200 can also be a communication system that combines two or more of the above systems.
[0183] A terminal can also be referred to as a terminal device, a UE, a mobile station, a mobile terminal, etc. The terminal can be widely applied to various scenarios, such as D2D, V2X communication, MTC, IoT, virtual reality (VR), augmented reality (AR), industrial control, autonomous driving, remote medical treatment, smart power grids, smart home, smart office, smart wear, smart transportation, smart city, smart home, transportation safety, etc. The terminal can be a mobile phone, a tablet computer, a computer with wireless transceiver function, a wearable device, a vehicle, a drone, a helicopter, an airplane, a ship, a robot, a mechanical arm, a smart home device, etc. Embodiments of the present application do not limit the device form of the terminal.
[0184] The access network device 1210, which can also be referred to as a RAN node, a RAN entity or an access node, etc., constitutes a part of the communication system, and helps the terminal to realize wireless access. The plurality of access network devices 1210 in the communication system 1200 can be nodes of the same type or nodes of different types. In some scenarios, the roles of the access network device 1210 and the terminal 1220 are relative, for example, Figure 12 The intermediate network element 1220i can be a helicopter or a drone, which can be configured as a mobile base station. For a terminal 1220j accessing the RAN 1200 through the network element 1220i, the network element 1220i is a base station; but for the base station 1210a, the network element 1220i is a terminal. The access network device 1210 and the terminal 1220 are sometimes collectively referred to as a communication apparatus, for example Figure 12 The access network devices 1210a and 1210b can be understood as communication apparatuses with base station functions, and the network elements 1220a-1220j can be understood as communication apparatuses with terminal functions.
[0185] In a possible scenario, the access network device can be a base station, an evolved NodeB (eNodeB), an access point (AP), a TRP, a next generation NodeB (gNB), a base station in a future mobile communication system, or an access node in a WiFi system, etc. The access network device can be a macro base station (such as Figure 12 1210a in FIG. 12), a micro base station or an indoor station (such as Figure 12 1210b in FIG. 12), a relay node or a donor node, or a wireless controller in a CRAN scenario. Alternatively, the access network device can also be a server, a wearable device, a vehicle or a vehicle-mounted device, etc. For example, the access network device in the V2X technology can be a road side unit (RSU). All or part of the functions of the access network device in this application can also be implemented by software functions running on hardware, or by virtualized functions instantiated on a platform (such as a cloud platform). The access network device in this application can also be a logical node, a logical module or software that can implement all or part of the functions of the access network device.
[0186] In another possible scenario, multiple RAN nodes cooperate to assist a terminal to implement wireless access, and different RAN nodes respectively implement part of the functions of a base station. For example, the RAN node can be a central unit (CU), a distributed unit (DU), a CU-control plane (CP), a CU-user plane (UP), or a radio unit (RU), etc. The CU and the DU can be separately arranged, or can 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 processing unit (AAU), or a remote radio head (RRH).
[0187] In different systems, the CU (or CU-CP and CU-UP), DU or RU can also have different names, but those skilled in the art can understand their meanings. For example, in the ORAN system, the CU can also be referred to as O-CU (open CU), the DU can also be referred to as O-DU, the CU-CP can also be referred to as O-CU-CP, the CU-UP can also be referred to as O-CU-UP, and the RU can also be referred to as O-RU. For the convenience of description, the CU, CU-CP, CU-UP, DU and RU are taken as examples for description in this application. Any one of the CU (or CU-CP, CU-UP), DU and RU in this application can be implemented by a software module, a hardware module, or a combination of a software module and a hardware module.
[0188] As a possible implementation, the CU and the DU respectively implement part of the protocol layer functions of the access network device, for example, part of the protocol layer functions are implemented in the CU, and the remaining part or all of the protocol layer functions are implemented in the DU, and the CU can control one or more DUs. For example, the CU can deploy the RRC layer, the SDAP layer and the PDCP layer, or in other words, the CU can be understood as a logical node carrying the RRC layer, the SDAP layer and the PDCP layer of the access network device. Therefore, the CU has the processing capability of the RRC, PDCP and SDAP layers, and of course, the CU can also implement or carry other control functions. The DU can deploy the RLC layer, the MAC layer and the PHY layer, or in other words, the DU can be understood as a logical node carrying the RLC layer, the MAC layer and the PHY layer, so that the DU has the processing capability of the RLC, MAC and PHY layers, and of course, the DU can also implement or carry other functions.
[0189] The above function division of the CU and the DU is only an example and does not constitute a limitation on the CU and the DU. In addition, the CU and the DU can also be configured to have the functions as needed. For example, the CU or the DU can be configured as a node having more protocol layer functions, or the CU or the DU can be configured as a node having part of the processing functions of the protocol layer.
[0190] In another possible scenario, the access network device can include a non-real-time RAN intelligent controller (Non-RT RIC or NRT RIC) and / or a near-real-time RAN intelligent controller (Near-RT RIC or nRT RIC).
[0191] The Non-RT RIC is used to implement non-real-time intelligent management of the RAN, can implement artificial intelligence (AI) / machine learning (ML) including model training and model updating, and guide applications / functions in the Near-RT RIC based on a policy. The Near-RT RIC is used to implement near-real-time intelligent management of the RAN, and implements near-real-time control and optimization of modules and resources of the O-RAN through data collection and related operations on the E2 interface. The E2 interface can be understood as an open interface between two nodes (or endpoints).
[0192] It should be noted that the communication system described in the embodiments of the present application is for more clearly illustrating the technical solutions of the embodiments of the present application, and does not constitute a limitation on the technical solutions provided by the embodiments of the present application. Those skilled in the art can know that, with the evolution of network architecture and the appearance of new business scenarios, the technical solutions provided by the embodiments of the present application are also applicable to similar technical problems.
[0193] The data processing method provided by the embodiments of the present application will be described below with reference to the system shown in Figure 12 It should be noted that in the following embodiments of the present application, the names of messages between devices, the names of parameters, or the names of information, etc. are only examples, and in other embodiments, they can also be other names. The method provided by the present application does not make specific limitations on this.
[0194] It can be understood that in the embodiments of the present application, each device can perform part or all of the steps in the embodiments of the present application. These steps or operations are only examples, and the embodiments of the present application can also perform other operations or variations of various operations. In addition, each step can be executed in a different order as presented in the embodiments of the present application, and it is possible that not all operations in the embodiments of the present application are executed.
[0195] It can be understood that the first communication device and the second communication device are taken as an example of the execution subject of the interaction in the present application, but the present application does not limit the execution subject of the interaction. For example, the method executed by the first communication device in the present application can also be executed by a module (such as a chip, a chip system, or a processor) applied to the first communication device, and can also be implemented by a logic node, a logic module or software that can implement all or part of the functions of the first communication device; the method executed by the second communication device can also be executed by a module (such as a chip, a chip system, or a processor) applied to the second communication device, and can also be implemented by a logic node, a logic module or software that can implement all or part of the functions of the second communication device.
[0196] In the data processing method provided in the application, the sending end and / or the receiving end (or, the first communication device and / or the second communication device) of the TB can determine the N CB groups corresponding to the first TB according to the first value.
[0197] For example, the sending end of the TB can be the first communication device, and the receiving end of the TB can be the second communication device.
[0198] For example, the TB can include / replace a MAC PDU, data, or a code word (CW), which are collectively described herein, and subsequent embodiments are not described again.
[0199] For example, the first TB can include / replace a first MAC PDU, first data, or a first CW, which are collectively described herein, and subsequent embodiments are not described again.
[0200] For example, the first communication device can be a terminal, and the second communication device can be an access network device accordingly; or the first communication device can be an access network device, and the second communication device can be a terminal accordingly; or the first communication device and the second communication device can be different terminals; or the first communication device and the second communication device can be two different other devices, and the application does not specifically limit the product form of the first communication device and the second communication device.
[0201] For example, in the embodiments of the application, the CB group can include / replace a CB set or other names, which are not limited. For example, in the embodiments of the application, the CB can include / replace a data unit, a data unit 1, or other names, which are not limited. For example, in the embodiments of the application, the MAC PDU can include / replace data or other names, which are not limited.
[0202] For example, the first value is the number X of CBs contained in a CB group, or the number Y of CB groups corresponding to a TB, or the size Z of a CB group. For example, the size Z of a CB group can include / replace the sum of the sizes of all CBs contained in a CB group.
[0203] For example, X, Y, and Z are integers greater than or equal to 1. For example, X is equal to 2, and X can also have other values such as 1, 3, 4, etc., which are not limited. For example, X can also be referred to as a self-decoding granularity or other names, which are not limited.
[0204] For example, N is an integer greater than or equal to 1.
[0205] For example, the size can include / replace any of the following: length, number of bits, or number of bytes.
[0206] Optionally, the N CB groups satisfy one of the following multiple conditions:
[0207] a) each of the N CB groups contains a second number of CBs;
[0208] b) the first M of the N CB groups contain a second number of CBs and the last N-M of the N CB groups contain a third number of CBs, M being a positive integer smaller than N;
[0209] c) the first N-M of the N CB groups contain a third number of CBs and the last M of the N CB groups contain a second number of CBs, M being a positive integer smaller than N; or,
[0210] d) each of the N CB groups contains a fourth number of CBs.
[0211] For example, the second number, the third number and the fourth number are positive integers. It can be understood that the above a) b) c) d) only illustrate four possible cases of the N CB groups, and do not constitute any other limitation, for example, the order and the possibility of the four cases are not limited.
[0212] In addition, in the case that the number of CBs contained in a certain CB group of the N CB groups is not the second number or the third number, the N CB groups can also not be arranged according to the case described in b) or c), but can be other arrangement modes, which are not limited. For example, the first CB group contains a second number of CBs, the second CB group contains a third number of CBs, the third CB group contains a second number of CBs, the fourth CB group contains a third number of CBs, and so on; or, the first CB group contains a third number of CBs, the second CB group contains a second number of CBs, the third CB group contains a third number of CBs, the fourth CB group contains a second number of CBs, and so on; or, the first and second CB groups contain a second number of CBs, the third and fourth CB groups contain a third number of CBs, the fifth and sixth CB groups contain a second number of CBs, the seventh and eighth CB groups contain a third number of CBs, and so on.
[0213] For example, “the first M of the N CB groups contain a second number of CBs and the last N-M of the N CB groups contain a third number of CBs” and / or “the first N-M of the N CB groups contain a third number of CBs and the last M of the N CB groups contain a second number of CBs” can include / replace: N-M of the N CB groups contain a third number of CBs and M of the N CB groups contain a second number of CBs.
[0214] Optionally, in embodiments of the present application, the number X of CBs included in a CB group can comprise / replace the maximum number X of CBs included in a CB group. Optionally, in embodiments of the present application, the number of CBs included in a CB group can comprise / replace the maximum number of CB groups corresponding to a TB. For example, a TB can include at most Y CB groups, and the actual number of CB groups included in a TB can be less than or equal to Y. This is uniformly described here, and subsequent embodiments will not be repeated.
[0215] Optionally, in embodiments of the present application, the number Y of CB groups corresponding to a TB can comprise / replace the maximum number Y of CB groups corresponding to a TB. Optionally, in embodiments of the present application, the number of CB groups corresponding to a TB can comprise / replace the maximum number of CB groups corresponding to a TB. For example, a TB can include at most Y CB groups, and the actual number of CB groups included in a TB can be less than or equal to Y. This is uniformly described here, and subsequent embodiments will not be repeated.
[0216] Optionally, in embodiments of the present application, the size Z of a CB group can comprise / replace the maximum size Z of a CB group. Optionally, in embodiments of the present application, the size of a CB group can comprise / replace the maximum size of a CB group. For example, the maximum size of a CB group is Z, and the actual size of a CB group can be less than or equal to Z. This is uniformly described here, and subsequent embodiments will not be repeated.
[0217] As a possible implementation, the first value can be predetermined by a protocol, or the first value can be obtained by the first communication device from the second communication device, or the first value can be obtained by the second communication device from the first communication device, or the first value can be configured by the access network device to the terminal.
[0218] For example, the second communication device can send the first indication information to the first communication device. Correspondingly, the first communication device receives the first indication information.
[0219] Alternatively, the first communication device can send the first indication information to the second communication device. Correspondingly, the second communication device receives the first indication information. For example, the first indication information includes information of the first value.
[0220] For example, in the case where the first communication device is a terminal and the second communication device is an access network device, the second communication device can send the first indication information to the first communication device. Correspondingly, the first communication device receives the first indication information. For example, the first communication device determines the first value according to the first indication information.
[0221] Exemplarily, in a case that the first communication device is an access network device and the second communication device is a terminal, the first communication device can send the first indication information to the second communication device. Correspondingly, the second communication device receives the first indication information. For example, the second communication device determines the first value according to the first indication information.
[0222] For example, the first indication information includes information of the first value.
[0223] Exemplarily, the first indication information can occupy at least one bit (such as 1 bit or 2 bits or others). For example, the value of the at least one bit can be the first value; or one value of the at least one bit corresponds to one value of the first value (for example, the correspondence can be protocol defined or configured by the access network device or others, which is not limited). For example, taking the case that the indication information occupies 1 bit as an example, when the value of the bit is "0", the first value is 2, when the value of the bit is "1", the first value is 3, and so on.
[0224] As a possible implementation, the first value (or the first indication information) is associated with one of the following items, or the first value (or the first indication information) is in the granularity of one of the following items: terminal, downlink control information (DCI), TB, semi-persistent scheduling (SPS), configuration grant (CG), LCH, radio bearer (RB). For example, the SPS and / or CG can be transmission resources indicated by the access network device through RRC (or RRC and DCI).
[0225] Exemplarily, the first value (or the first indication information) associated with the terminal can represent that different terminals can correspond to different first values. Exemplarily, the first value (or the first indication information) associated with the DCI can represent that different DCI scheduling / corresponding TBs can correspond to different first values. Exemplarily, the first value (or the first indication information) associated with the TB can represent that different TBs can correspond to different first values. Exemplarily, the first value (or the first indication information) associated with the SPS / CG can represent that different SPS / CGs can correspond to different first values. The first value (or the first indication information) associated with the RB can represent that different RBs can correspond to different first values, for example, different RBs corresponding TBs can correspond to different first values.
[0226] Optionally, in embodiments of the present application, the terminal can report to the access network device at least one of the following supported or suggested or desired by the terminal: the number of CBs included in one CB group, the number of CB groups corresponding to one TB, or the size of one CB group.
[0227] For example, before the access network device configures the terminal with the first value, the terminal can report to the access network device the value of the at least one of the above supported or suggested or desired by the terminal, and the access network device can determine the first value based on the value of the at least one of the above reported by the terminal. It should be noted that the present application does not limit whether the value of the at least one of the above reported by the terminal is the same as the first value.
[0228] For example, the terminal can report to the access network device the value of the at least one of the above supported or suggested or desired by the terminal with different granularity. For example, the terminal can report different numbers of CBs included in one CB group supported or suggested or desired by the terminal for different TBs, SPSs or CGs.
[0229] Optionally, the following describes the division manner of N CB groups when the first value is X, the division manner of N CB groups when the first value is Y, and the division manner of N CB groups when the first value is Z, respectively.
[0230] When the first value is X:
[0231] In one possible implementation, N = ceil(C / X).
[0232] For example, C is the number of CBs corresponding to the first TB. For example, C is an integer greater than or equal to 1. For example, ceil represents rounding up.
[0233] In one possible implementation, C can be greater than or equal to X, or C / X can be greater than or equal to 1; or C can be less than X, or C / X can be less than 1.
[0234] As one possible implementation, when C is greater than or equal to X, or C / X is greater than or equal to 1, N ≥ 1:
[0235] For example, when C / X is an integer, each CB group in the N CB groups includes the second value of CBs, that is, the number of CBs included in each CB group is the same. For example, the second value is X.
[0236] For example, in the case that C / X is not an integer, the first M CB groups of the N CB groups contain CBs in a second number, and the last N-M CB groups contain CBs in a third number; or, the first N-M CB groups of the N CB groups contain CBs in the third number, and the last M CB groups contain CBs in the second number.
[0237] In this possible implementation, in the case that C / X is not an integer, the second number, the third number, and the value of M exist in the following cases:
[0238] Case one, the second number is X, the third number is C-floor(C / X)X, and M=floor(C / X) or M=N-1, where floor represents rounding down.
[0239] For example, for case one, the number of CBs contained in each CB group is as much as possible X.
[0240] For example, the number of CBs contained in each of the first floor(C / X) or the first N-1 CB groups is the same, which is X; and the number of CBs contained in the last CB group is C-floor(C / X)X. For example, the number of CBs corresponding to the first TB is C=11 and X=2, N=ceil(C / X)=6, and M=floor(C / X)=5, then as shown in (c) of FIG. 6, the first 5 CB groups each contain 2 CBs, and the last CB group contains 1 CB. Figure 13 Figure 13 For example, the number of CBs corresponding to the first TB is C=10 and X=3, N=ceil(C / X)=4, and M=floor(C / X)=3, then as shown in (d) of FIG. 6, the first 3 CB groups each contain 3 CBs, and the last CB group contains 1 CB.
[0241] For example, the number of CBs contained in the first CB group is C-floor(C / X)X, and the number of CBs contained in each of the following floor(C / X) or the following N-1 CB groups is the same, which is X.
[0242] Case two, the second number is X, the third number is X-1, and M=mod(C,N), where mod represents a modulo operation.
[0243] For example, for case two, the CBs can be grouped as evenly as possible, and the difference between the number of CBs contained in different CB groups is either 0 or 1.
[0244] For example, the first M=mod(C,N) CB groups contain the same number of CBs, X, and the last N-M CB groups contain the same number of CBs, X-1. For example, if the number of CBs corresponding to the first TB is C=10 and X=3, then N=ceil(C / X)=4 and M=mod(C,N)=2, and as shown in (e) of FIG. 6B, the first two CB groups contain 3 CBs and the last two CB groups contain 2 CBs. Figure 13 For example, the first M=mod(C,N) CB groups contain the same number of CBs, X, and the last N-M CB groups contain the same number of CBs, X-1. For example, if the number of CBs corresponding to the first TB is C=10 and X=3, then N=ceil(C / X)=4 and M=mod(C,N)=2, and as shown in (e) of FIG. 6B, the first two CB groups contain 3 CBs and the last two CB groups contain 2 CBs.
[0245] For example, the first M=mod(C,N) CB groups contain the same number of CBs, X, and the last N-M CB groups contain the same number of CBs, X-1. For example, if the number of CBs corresponding to the first TB is C=10 and X=3, then N=ceil(C / X)=4 and M=mod(C,N)=2, and as shown in (e) of FIG. 6B, the first two CB groups contain 3 CBs and the last two CB groups contain 2 CBs.
[0246] Case three: the second value is ceil(C / N) and the third value is floor(C / N), M=mod(C,N), ceil represents rounding up, floor represents rounding down, and mod represents the modulo operation.
[0247] For example, for case three, the CBs can be grouped as evenly as possible, and the difference in the number of CBs in different CB groups is either 0 or 1.
[0248] For example, the first M=mod(C,N) CB groups contain the same number of CBs, X, and the last N-M CB groups contain the same number of CBs, X-1. For example, if the number of CBs corresponding to the first TB is C=10 and X=3, then N=ceil(C / X)=4 and M=mod(C,N)=2, and as shown in (e) of FIG. 6B, the first two CB groups contain 3 CBs and the last two CB groups contain 2 CBs. Figure 13 For example, the first M=mod(C,N) CB groups contain the same number of CBs, X, and the last N-M CB groups contain the same number of CBs, X-1. For example, if the number of CBs corresponding to the first TB is C=10 and X=3, then N=ceil(C / X)=4 and M=mod(C,N)=2, and as shown in (e) of FIG. 6B, the first two CB groups contain 3 CBs and the last two CB groups contain 2 CBs.
[0249] For example, the first M=mod(C,N) CB groups contain the same number of CBs, X, and the last N-M CB groups contain the same number of CBs, X-1. For example, if the number of CBs corresponding to the first TB is C=10 and X=3, then N=ceil(C / X)=4 and M=mod(C,N)=2, and as shown in (e) of FIG. 6B, the first two CB groups contain 3 CBs and the last two CB groups contain 2 CBs.
[0250] As another possible implementation, in a scenario in which C is less than X, or C / X is less than 1, N=1, and each of the N CB groups contains CBs in the number of a fourth value, which is the number of CBs C corresponding to the first TB.
[0251] For example, the C CBs corresponding to the first TB belong to one CB group.
[0252] In the case in which the first value is Y:
[0253] In a possible implementation, N = min(C, Y), or, N = Y.
[0254] For example, C is the number of CBs corresponding to the first TB.
[0255] For example, in the case that C / N is an integer, each of the N CB groups contains CBs in the second number. For example, the second number is C / N.
[0256] For example, in the case that C / N is not an integer, the first M CB groups of the N CB groups contain CBs in the second number, and the last N-M CB groups contain CBs in a third number; or, the first N-M CB groups of the N CB groups contain CBs in the third number, and the last M CB groups contain CBs in the second number.
[0257] For example, the second number is ceil(C / N). For example, the third number is floor(C / N). For example, M = mod(C, N). ceil represents rounding up, floor represents rounding down, and mod represents the modulo operation.
[0258] For example, each of the first M = mod(C, N) CB groups contains CBs in the same number, which is ceil(C / N), and each of the last N-M CB groups contains CBs in the same number, which is floor(C / N). For example, taking the number of CBs corresponding to the first TB as C = 11 and Y = 6, N = min(C, Y) = 6, M = mod(C, N) = 5, ceil(C / N) = 2, and floor(C / N) = 1, then as shown in (c) of FIG. 6, the first 5 CB groups each contain 2 CBs, and the last CB group contains 1 CB. Or, for example, taking the number of CBs corresponding to the first TB as C = 10 and Y = 4, N = min(C, Y) = 4, M = mod(C, N) = 2, ceil(C / N) = 3, and floor(C / N) = 2, then as shown in (e) of FIG. 6, the first 2 CB groups each contain 3 CBs, and the last 2 CB groups each contain 2 CBs. Figure 13 Figure 13
[0259] Or, for example, each of the first N-M CB groups contains CBs in the same number, which is floor(C / N), and each of the last M = mod(C, N) CB groups contains CBs in the same number, which is ceil(C / N).
[0260] In the case that the first number is Z:
[0261] For example, we can first determine the number of CBs X contained in a CB group based on Z, and then determine N CB groups based on X. After determining X, the implementation of determining N CB groups based on X can be referred to the relevant explanation when the first value is X, which will not be repeated here.
[0262] In one possible implementation, Z does not include the size of the padding. For example, Z is the first size of a CB group.
[0263] For example, For example,
[0264] For example, K1 is the first size of CB, or the first size of CB corresponding to the first TB, or the first size of each CB, or the first size of each CB corresponding to the first TB. The first size of CB will be described in detail in subsequent embodiments and will not be repeated here.
[0265] For example, K1 does not include the size of the padding.
[0266] For example, K0 is the size of the padding, or the size of the padding in CB, or the size of the padding in CB corresponding to the first TB, or the size of the padding in each CB, or the size of the padding in each CB corresponding to the first TB. For example, K0 may be 0, or, CB may contain no padding.
[0267] For example, K is the second size of the CB, or the second size of the CB corresponding to the first TB, or the second size of each CB, or the second size of each CB corresponding to the first TB. For example, K includes or may include the size of the padding (or K0). The second size of the CB will be described in detail in subsequent embodiments and will not be repeated here.
[0268] For example, K is greater than or equal to K1. For example, K0 is 0, or K equals K1 if there is no padding in CB.
[0269] For example, the first size of a CB group does not include the size of the padding.
[0270] For example, the first size of a CB group can be the sum of the first sizes of all CBs contained in that CB group.
[0271] For example, in the embodiments of this application, padding may include / be replaced with: NULL, or, filler bit, or, padding bit.
[0272] In another possible implementation, Z includes the size of the fill. For example, Z is the second size of a CB group.
[0273] For example,
[0274] For example, K = K1 + K0. Refer to the foregoing description of K, which is not repeated here.
[0275] For example, the second size of the CB group is the sum of the second sizes of all CBs contained in the CB group.
[0276] For example, the second size of the CB group includes or can include a padded size. For example, the padded size can be 0, and in the case where the padded size is 0, the first size of the CB group is equal to the second size of the CB group. For example, the padded size can include or be replaced by: a padded size corresponding to the first TB, or a padded size corresponding to a certain CB group, or a padded size corresponding to each CB in a certain CB group, or the sum of the padded sizes corresponding to each CB in the CB group, or a padded size in a CB, or a padded size in a CB corresponding to the first TB, or a padded size in each CB, or a padded size in each CB corresponding to the first TB.
[0277] Optionally, in the embodiments of the present application, the size of the CB group can include or be replaced by: the first size of the CB group, or the second size of the CB group. Optionally, the first size of the CB group is less than or equal to the second size of the CB group.
[0278] It should be noted that in the embodiments of the present application, the CB can or can not include padding, which is not limited. The padding part in the CB is not shown in the drawings of the present application, but it does not mean that the CB does not include padding.
[0279] Optionally, the CB group in the present application can or can not be a CBG. Optionally, the CB group in the present application can be the same as the CBG or different from the CBG. For example, the CBG is associated with HARQ feedback and / or HARQ retransmission. For example, the CBG is the granularity of HARQ feedback and / or HARQ retransmission.
[0280] Optionally, the CB group in the present application can or can not correspond to (or exist, or contain) a CB group CRC, which is not limited. Optionally, the size of the CB group (or the first size of the CB group, or the second size of the CB group) includes or does not include the size of the CB group CRC.
[0281] Optionally, for the number C of CBs corresponding to the first TB involved in the above embodiments, the value of C can be determined in the following two scenarios respectively:
[0282] Scenario one, there is a TB CRC:
[0283] For example, there is can include or be replaced by: adding. For example, the first communication device or the PHY layer adds.
[0284] For example, if B≤K cb Then C = 1, B1 = B. For example, B = A + L1. For example, A is the size of the first TB or the size of the payload. For example, L1 is the size of the TB CRC or the size of the TB CRC corresponding to the first TB. For example, B1 is the sum of the first sizes of all CBs corresponding to the first TB. For example, K cb For the maximum value of CB, refer to the aforementioned comparison of K. cb The relevant explanations will not be repeated here.
[0285] For example, if B>K cb ,but B1 = B + C × L2. For example, L2 is the size of the CB CRC.
[0286] For example, K1 = B1 / C. For example, K1 is the first size of CB or the first size of CB corresponding to the first TB or the first size of each CB or the first size of each CB corresponding to the first TB.
[0287] For example, the first size of the CB includes K2 and the size L1 of the TB CRC, or includes K2 and the size L2 of the CB CRC, or includes K2, the size L1 of the TB CRC, and the size L2 of the CB CRC. For example, K2 is the size of the data portion of the CB, or the size of the data portion of the CB corresponding to the first TB, or the size of the data portion of each CB, or the size of the data portion of each CB corresponding to the first TB. It should be noted that the size of the data portion of different CBs may be different or the same, and there is no limitation.
[0288] For example, the data section may include / be replaced by: the payload section, or the TB section, or the MAC PDU section.
[0289] For example, the data portion of the CB may include / be replaced by: the payload portion of the CB, or, the TB portion of the CB, or, the MAC PDU portion of the CB, or, the TB portion within the CB, or, the MAC PDU portion within the CB. For example, the data portion of the CB is used to carry / correspond to TB or MAC PDU or data from the MAC layer.
[0290] For example, if C = 1, then K2 = A; if C > 1, then for the first C-1 CBs, K2 = K1 - L2, and for the last CB, K2 = K1 - L1 - L2.
[0291] For example, such as Figure 13 As shown in (a) in the figure, B>K cb Under what circumstances, the magnitudes of the above parameters are related.
[0292] For example, the TB CRC is generated based on the TB. For instance, the TB CRC is located after the TB.
[0293] For example, the CB CRC is generated based on the data portion of the CB (or, the data portion of the CB and the TB CRC). For instance, the CB CRC is located after the data portion of the CB (or, the data portion of the CB and the TB CRC).
[0294] Scenario 2: No TB CRC:
[0295] For example, if it does not exist, it can be included / replaced with: not added. For example, the first communication device or PHY layer is not added.
[0296] For example, if B≤K cb If -L2, then C = 1, B1 = B + L2. For example, B = A. The remaining parameters can be found in the explanation in Scenario 1 above, and will not be repeated here.
[0297] For example, if B>K cb -L2, then B1 = B + C × L2.
[0298] For example, K1 = B1 / C.
[0299] For example, if C = 1, then K2 = A. For example, if C > 1, then K2 = K1 - L2.
[0300] For example, such as Figure 13 As shown in (b) in the figure, B>K cb Under what circumstances, the magnitudes of the above parameters are related.
[0301] For example, the CB CRC is generated based on the data portion of the CB. For instance, the CB CRC is located after the data portion of the CB.
[0302] It should be noted that, in the embodiments of this application, in addition to at least one of TB CRC, CB CRC, and padding, CB may also contain other components (e.g., CB header, CB group CRC, etc.), which are not limited in this application.
[0303] As one possible implementation, in both scenarios described above, A can be determined based on the first resource (e.g., information related to the first resource). For example, the first resource is the resource used to carry the first TB.
[0304] In the above two scenarios, the calculation manner of the size of the CB (e.g., the size of the data part of the CB, or the first size of the CB, or the second size of the CB) is given. In addition, the size of the CB can be predefined, or can be calculated according to other manners, which is not limited. At this time, the number of CBs corresponding to the first TB can be determined based on the size of the CB which is predefined or calculated according to other manners. The size of the CB and the calculation manner thereof are not limited in the present application.
[0305] The specific flow of the CB group-based data processing method provided by the embodiment of the present application will be described below. As shown in Figure 14 The data processing method can include the following steps:
[0306] S1401, the first communication device determines N CB groups corresponding to the first TB according to the first value.
[0307] For example, the determination can include / replaced by: calculation, or acquisition.
[0308] For example, N is an integer greater than or equal to 1.
[0309] For example, the first communication device is the sending end of the first TB. For example, the receiving end of the first TB is a second communication device.
[0310] For example, the implementation of determining N CB groups corresponding to the first TB according to the first value can refer to the related content described above, which will not be repeated here.
[0311] Optionally, determining N CB groups corresponding to the first TB according to the first value can include / replaced by at least one of the following: determining the number of CBs included in each CB group in the N CB groups corresponding to the first TB according to the first value; determining the number of CBs included in each CB group according to the first value; determining the size of each CB group in the N CB groups corresponding to the first TB according to the first value; determining the size of each CB group according to the first value; determining the size of the data part of each CB group in the N CB groups corresponding to the first TB according to the first value; or, determining the size of the data part of each CB group according to the first value.
[0312] For example, the data part of the CB group can include / replaced by: the payload part of the CB group, or the TB part of the CB group, or the MAC PDU part of the CB group, or the TB part in the CB group, or the MAC PDU part in the CB group. For example, the data part of the CB group is used to carry / correspond to the TB or MAC PDU or data from the MAC layer. The size of the data part of a certain CB group is the sum of the sizes of the data parts of all CBs included in the CB group. It should be noted that the sizes of the data parts of different CB groups can be different or the same, which is not limited.
[0313] Optionally, the size of the data portion of the CB group can be determined based on the number of CBs contained in the CB group.
[0314] Optionally, the size of the data portion of the CB group can be determined based on the first size of the CB group and the size of the TB CRC, or based on the first size of the CB group and the size of the CB CRC, or based on the first size of the CB group, the size of the TB CRC and the size of the CB CRC.
[0315] For example, in the above scenario one, i.e. the scenario of adding the TB CRC, the size K3 of the data portion of one CB group satisfies at least one of the following:
[0316] If N = 1, K3 = A; or,
[0317] If N > 1, for the first N-1 CB groups, K3 = C1 x (K1-L2) or K3 = C1 x K2, and for the last CB group, K3 = C1 x (K1-L2)-L1 or K3 = C1 x K2-L1.
[0318] For example, C1 is the number of CBs contained in one CB group. The descriptions of the remaining parameters can be referred to the descriptions of the corresponding parameters above, which will not be repeated here.
[0319] For example, in the above scenario two, i.e. the scenario of not adding the TB CRC, the size K3 of the data portion of one CB group satisfies at least one of the following:
[0320] If N = 1, K3 = A; or,
[0321] If N > 1, K3 = C1 x (K1-L2) or K3 = C1 x K2. The descriptions of the parameters can be referred to the descriptions of the corresponding parameters above, which will not be repeated here.
[0322] Optionally, the size of the data portion of the CB group can be determined based on the second size of the CB group, the size of the TB CRC and the size of the padding, or based on the second size of the CB group, the size of the CB CRC and the size of the padding, or based on the first size of the CB group, the size of the TB CRC, the size of the CB CRC and the size of the padding.
[0323] For example, in the above scenario one, i.e. the scenario of adding the TB CRC, the size K3 of the data portion of one CB group satisfies at least one of the following:
[0324] If N = 1, K3 = A; or,
[0325] If N>1, K3=C1×(K-K0-L2) for the first N-1 CB groups, and K3=C1×(K-K0-L2)-L1 for the last CB group. The description of each parameter can refer to the description of the corresponding parameter above, and will not be repeated here.
[0326] For example, in the second scenario above, i.e. the scenario without adding TB CRC, the size K3 of the data part of a CB group satisfies at least one of the following:
[0327] If N=1, K3=A; or,
[0328] If N>1, K3=C1×(K-K0-L2). The description of each parameter can refer to the description of the corresponding parameter above, and will not be repeated here.
[0329] For example, the size of the TB CRC can include / replace the size of the TB CRC corresponding to the first TB.
[0330] For example, the size of the CB CRC can include / replace the size of the CB CRC corresponding to the first TB, or the size of the CB CRC corresponding to the first CB group, or the size of the CB CRC corresponding to each CB in the first CB group, or the sum of the size of the CB CRC corresponding to each CB in the first CB group.
[0331] For example, the first communication device can determine the N CB groups corresponding to the first TB according to the first value by the PHY layer or the MAC layer of the first communication device.
[0332] Optionally, in the case where the PHY layer of the first communication device determines the N CB groups corresponding to the first TB according to the first value, the PHY layer of the first communication device can report the information of the N CB groups to the MAC layer (or upper layer, or high layer) of the first communication device.
[0333] For example, the information of the N CB groups can include information of at least one of the following: 1) N, 2) N-M, 3) M, 4) the second value, 5) the third value, 6) the fourth value, 7) the size of the N CB groups (or the size of each CB group in the N CB groups), 8) the size of the data part of the N CB groups (or the size of the data part of each CB group in the N CB groups), 9) the order of the size of the data part of the N CB groups (or the size of the data part of each CB group in the N CB groups).
[0334] Optionally, the PHY layer of the first communication device reports the information of the N CB groups to the MAC layer in sequence.
[0335] Optionally, the MAC layer of the first communication device determines the TB (or MAC PDU) according to the sequence of the N CB groups reported by the PHY layer. For example, when N is equal to 4, and the sizes of the data portions of the CB groups reported by the PHY layer are S1, S2, S3 and S4, the MAC layer will take S1 bits obtained by LCP based on S1 as the 0th to S1-1th bits of the TB (or MAC PDU), take S2 bits obtained by LCP based on S2 as the S1th to S1+S2-1th bits of the TB (or MAC PDU), take S3 bits obtained by LCP based on S3 as the S1+S2th to S1+S2+S3-1th bits of the TB (or MAC PDU), and take S4 bits obtained by LCP based on S4 as the S1+S2+S3th to S1+S2+S3+S4-1th bits of the TB (or MAC PDU).
[0336] Optionally, the PHY layer of the first communication device reports the information of the first CB group to the MAC layer (or, upper layer, or, higher layer) of the first communication device.
[0337] For example, the information of the first CB group can include at least one of the following: the size of the first CB group; the size of the data portion of the first CB group.
[0338] For example, the first CB group is one of the N CB groups.
[0339] Optionally, the size of the first CB group can include / replace the first size of the first CB group, or the second size of the first CB group. Optionally, the first size of the first CB group is less than or equal to the second size of the first CB group.
[0340] For example, the first size of the first CB group does not include the size of the padding.
[0341] For example, the second size of the first CB group includes or can include the size of the padding. For example, the size of the padding can be 0.
[0342] For example, the size of the data part of the first CB group is the sum of the sizes of the data parts of all CBs contained in the first CB group.
[0343] Optionally, the size of the data part of the first CB group can be determined based on the number of CBs contained in the first CB group.
[0344] Optionally, the size of the data part of the first CB group can be determined based on the first size of the first CB group and the size of the TB CRC, or based on the first size of the first CB group and the size of the CB CRC, or based on the first size of the first CB group, the size of the TB CRC and the size of the CB CRC. For details, refer to the foregoing description of determining the size K3 of the data part of the CB group based on the first size of the CB group.
[0345] Alternatively, optionally, the size of the data part of the first CB group can be determined based on the second size of the first CB group, the size of the TB CRC and the size of the padding, or based on the second size of the first CB group, the size of the CB CRC and the size of the padding, or based on the first size of the first CB group, the size of the TB CRC, the size of the CB CRC and the size of the padding. For details, refer to the foregoing description of determining the size K3 of the data part of the CB group based on the second size of the CB group.
[0346] Optionally, the PHY layer of the first communication device reports the information of the second CB group to the MAC layer (or, upper layer, or, high layer) of the first communication device.
[0347] For example, the information of the second CB group can refer to the information of the first CB group, for example, the first CB group can be replaced by the second CB group, and the details are not described herein.
[0348] For example, the second CB group is after the first CB group. For example, the bit stream corresponding to the second CB group is after the bit stream corresponding to the first CB group. For example, the bits corresponding to the first CB group are the a-th bit to the a+b-1-th bit, and the bits corresponding to the second CB group are the a+b-th bit to the a+2×b-1-th bit.
[0349] Optionally, before S1401, the embodiment of the application can further include: S1400A, the first communication device determines the first value (not shown in the figure). Figure 14
[0350] For example, the determination can include / replace: obtaining.
[0351] Optionally, the first communication device determining the first value can comprise / replace: the first communication device obtaining the first indication information, or the first communication device obtaining the first indication information from the second communication device, or the first communication device obtaining the first indication information from the access network device. For example, the obtaining can comprise / replace: receiving. For example, the first indication information comprises information of the first value. For details, refer to the foregoing description of the first indication information, which will not be repeated here.
[0352] Optionally, the present application can further comprise: S1400B, the first communication device obtaining the first resource or the related information of the first resource (not shown in the figure). Figure 14
[0353] Optionally, S1400B can be executed before at least one of steps S1400A, S1401, S1402, S1403, S1404.
[0354] For example, the first resource is used to carry / transmit the first TB. For example, the first resource is a new transmission resource.
[0355] For example, the related information of the first resource comprises at least one of: the time-frequency position of the first resource, the size of the first TB corresponding to the first resource, the code rate corresponding to the first resource, etc.
[0356] For example, the first resource can be determined by the first communication device itself, or can be configured by the second communication device to the first communication device, or can be configured by the access network device, for example, can be dynamically scheduled by the access network device through DCI, or can be scheduled by the access network device through semi-static configuration or configured grant, without limitation.
[0357] For example, the first resource can be an uplink resource. For example, in the case that the first communication device is a terminal and the second communication device is an access network device, the first resource is an uplink resource, and the first communication device receives the first resource or the related information of the first resource from the second communication device. Alternatively, for example, the first resource can be a downlink resource. For example, in the case that the first communication device is an access network device and the second communication device is a terminal, the first resource is a downlink resource, and the first communication device can send the first resource or the related information of the first resource to the second communication device.
[0358] As a possible implementation, as described above, the division mode of the N CB groups, in the process of determining the N CB groups corresponding to the first TB according to the first value, the size of the first TB needs to be determined according to the related information of the first resource, therefore, the first communication device can also obtain the related information of the first resource before step S1401.
[0359] S1402, the first communication device performs LCP based on the first CB group.
[0360] Optionally, the first communication device performing the LCP based on the first CB group can comprise / replace: the first communication device performing the LCP based on a size of a data portion of the first CB group, or the first communication device performing the LCP based on a size of the first CB group.
[0361] For example, the first communication device performing the LCP based on the first CB group can comprise / replace: the first communication device performing the LCP for the first CB group.
[0362] Optionally, for the first CB group can comprise / replace: for a size of a data portion of the first CB group, or for a size of the first CB group.
[0363] For example, the performing the LCP can comprise / replace: determining the first data set, or determining a data set.
[0364] For example, the LCP can comprise / replace: resource allocation, or allocating resources for the MAC CE and / or data from the logical channel.
[0365] As a possible implementation, the first communication device performs the LCP based on the first CB group to obtain the first data set. For example, the first data set is determined based on the performing the LCP based on the first CB group. The specific implementation of this step will be described in subsequent embodiments, and will not be repeated here.
[0366] As a possible implementation, the step S1402 can be implemented by a MAC layer entity of the first communication device. For example, the MAC layer of the first communication device performs the LCP based on the first CB group or the CB group (or, N CB groups, or each of the N CB groups).
[0367] For example, the size of the data portion of the first CB group is the same as the size of the first data set.
[0368] For example, the boundary (or, the starting bit or the ending bit) of the data portion of the first CB group is the boundary (or, the starting bit or the ending bit) of the MAC subPDU. For example, the boundary (or, the starting bit or the ending bit) of the data portion of the first CB group and the boundary (or, the starting bit or the ending bit) of the MAC subPDU are aligned. For example, the boundary (or, the starting bit) of the first CB group is the boundary (or, the starting bit) of the MAC subPDU. For example, the boundary (or, the starting bit) of the first CB group and the boundary (or, the starting bit) of the MAC subPDU are aligned.
[0369] For example, the boundary can include / replace at least one of: a start boundary, an end boundary, a start bit, an end bit, a start byte, or an end byte. For example, the start boundary can include / replace at least one of: a start bit, or a start byte. For example, the end boundary can include / replace at least one of: an end bit, or an end byte.
[0370] For example, in embodiments of the present application, the MAC subPDU can include / replace a data unit, or a data unit 2, or other names, which are not limited.
[0371] For example, the data part of the first CB group or the first CB group carries / corresponds to the first data set.
[0372] For example, the first data set includes one or more complete MAC subPDUs, or includes at least one of one or more MAC SDUs, one or more MAC CEs, or one or more paddings. For example, the first data set does not include an incomplete MAC subPDU. For example, the data part of the first CB group or the first CB group does not correspond to / carry an incomplete MAC subPDU.
[0373] For example, the first data set can include at least one of data from a logical channel, data generated by a MAC entity of the first communication device (such as a MAC CE), or padding. For example, the data from the logical channel can be encapsulated as one or more complete MAC subPDUs containing MAC SDUs. For example, the data generated by the MAC entity can be encapsulated as one or more complete MAC subPDUs containing MAC CEs.
[0374] Optionally, embodiments of the present application can also include: the first communication device performing LCP based on the second CB group.
[0375] For example, after the first communication device performs LCP based on the first CB group, the first communication device performs LCP based on the second CB group.
[0376] For example, the content related to "the first communication device performing LCP based on the second CB group" can refer to the content related to "the first communication device performing LCP based on the first CB group", for example, the first CB group can be replaced by the second CB group, and the first data set can be replaced by the second data set, which will not be repeated here.
[0377] As one possible implementation, after the first communication device performs LCP based on the second CB group, the second data set is obtained. For example, the second data set is determined based on the LCP performed on the second CB group. The specific implementation of this step will be described in subsequent embodiments, which will not be repeated here.
[0378] As a possible implementation, the MAC layer of the first communication device performs LCP based on the second CB group.
[0379] For example, the size of the data part of the second CB group is the same as the size of the second data set. For example, the second data set includes one or more complete MAC subPDU, or, includes one or more MAC SDU and / or one or more MAC CE and / or one or more padding. For example, the second data set does not include an incomplete MAC subPDU. For example, the data part of the second CB group or the second CB group does not correspond to / does not carry an incomplete MAC subPDU.
[0380] For example, the second data set can include data from a logical channel and / or data (such as a MAC CE) generated by the MAC entity of the first communication device.
[0381] For example, the content related to the "second data set" can refer to the content related to the "first data set", for example, the first CB group can be replaced by the second CB group, and the first data set can be replaced by the second data set for understanding, which will not be repeated here.
[0382] As a possible implementation, the step S1402 can also be replaced by: the first communication device performs LCP based on the CB group (or, N CB groups, or, each of the N CB groups).
[0383] Optionally, the first communication device performs LCP based on the CB group (or, N CB groups, or, each of the N CB groups) can include / replaced by: the first communication device performs LCP based on the size of the data part of the CB group (or, N CB groups, or, each of the N CB groups), or, the first communication device performs LCP based on the size of the CB group (or, N CB groups, or, each of the N CB groups).
[0384] For example, the first communication device performs LCP based on the CB group (or, N CB groups, or, each of the N CB groups) can include / replaced by: for the CB group (or, N CB groups, or, each of the N CB groups), the first communication device performs LCP.
[0385] Optionally, for the CB group (or, N CB groups, or, each of the N CB groups) can include / replaced by: for the size of the data part of the CB group (or, N CB groups, or, each of the N CB groups), or, for the size of the CB group (or, N CB groups, or, each of the N CB groups).
[0386] As a possible implementation, the first communication device obtains N data sets based on performing LCP on the CB group (or, N CB groups, or, each of the N CB groups). For example, the N data sets are determined based on performing LCP on the CB group (or, N CB groups, or, each of the N CB groups). The specific implementation of this step will be described in subsequent embodiments and will not be described here.
[0387] For example, the size of the data part of the nth CB group of the N CB groups is the same as the size of the nth data set of the N data sets, n = 1, 2, …, N. For example, one of the N data sets includes one or more complete MAC subPDUs, or includes at least one of one or more MAC SDUs, one or more MAC CEs, and one or more paddings. For example, each of the N data sets does not include an incomplete MAC subPDU. For example, the data part of each of the N CB groups or each of the N CB groups does not correspond to / carry an incomplete MAC subPDU. The description of the N data sets can refer to the above description of the first data set and will not be described here.
[0388] For example, the boundary (or, the start bit or the end bit) of the data part of each of the N CB groups is the boundary (or, the start bit or the end bit) of the MAC subPDU. For example, the boundary (or, the start bit or the end bit) of the data part of each of the N CB groups and the boundary (or, the start bit or the end bit) of the MAC subPDU are aligned. For example, the boundary (or, the start bit) of each of the N CB groups is the boundary (or, the start bit) of the MAC subPDU. For example, the boundary (or, the start bit) of each of the N CB groups and the boundary (or, the start bit) of the MAC subPDU are aligned.
[0389] For example, the data part of each of the N CB groups or each of the N CB groups carries / corresponds to a data set.
[0390] For example, the N data sets include the first data set, or include the first data set and the second data set.
[0391] For example, the first communication device performing LCP based on the CB group (or, N CB groups, or, each of the N CB groups) can include that the first communication device performs LCP N times. For example, the first communication device performs LCP N times for the first TB, or for the first resource.
[0392] For example, at least one of “the first communication device performs LCP based on the first CB group”, “the first communication device performs LCP based on the CB group (or, the N CB groups, or, each of the N CB groups)”, “the first communication device performs LCP based on the second CB group”, S1402 can include / replaced by / understood as: the first communication device performs LCP with CB group granularity.
[0393] Optionally, after S1402, the embodiments of the present application can further include S1403 and / or S1404.
[0394] It should be noted that S1402 can be an independent embodiment, and S1402 can also be combined with any one or more steps to form a new embodiment.
[0395] S1403, the first communication device determines the first TB (or the first MAC PDU) based on the first data set.
[0396] As a possible implementation, the actions of steps S1402 and S1403 can be combined and understood as: the first communication device determines the first TB based on the first CB group. For example, the first TB is obtained by performing LCP based on the first CB group.
[0397] For example, the first TB (or the first MAC PDU) includes the first data set.
[0398] For example, step S1403 can be implemented by a MAC layer entity of the first communication device.
[0399] For example, the first TB at the MAC layer can also be referred to as the first MAC PDU.
[0400] For example, the first data set includes one or more MAC subPDUs. At least one of the one or more MAC subPDUs (for example, the first MAC subPDU) can include a MAC CE. The size of at least one of the one or more MAC subPDUs (for example, the first MAC subPDU) is less than or equal to the third size. For example, the third size is associated with the minimum value of the CB or the maximum value of the CB. For example, the third size is determined based on the minimum value of the CB or the maximum value of the CB. For example, the third size is equal to or greater than the minimum value of the CB or the maximum value of the CB / 2.
[0401] For example, the first data set includes: the first MAC subPDU and the second MAC subPDU, the second MAC subPDU is located before the first MAC subPDU in the first data set, or the second MAC subPDU is located after the first MAC subPDU in the first data set. For example, the resource allocation order of the first MAC subPDU precedes the resource allocation order of the second MAC subPDU.
[0402] Optionally, the embodiments of the present application can further include that the first communication device determines the first TB (or the first MAC PDU) based on the first data set and the second data set.
[0403] For example, the first TB (or the first MAC PDU) includes the first data set and the second data set. For example, the second data set is located after the first data set in the first TB (or the first MAC PDU).
[0404] As a possible implementation, the step S1403 can also be replaced by: the first communication device determines the first TB (or the first MAC PDU) based on N data sets. For example, the N data sets are obtained by the first communication device performing LCP based on the CB group (or N CB groups, or each CB group in the N CB groups) in the step S1402 described above.
[0405] For example, the first TB (or the first MAC PDU) includes the N data sets. For example, the resource allocation (or LCP) order of different data sets is the order of different data sets in the first TB (or the first MAC PDU). For example, the order of different data sets in the first TB (or the first MAC PDU) cannot be changed at will. For example, if the sizes of the data portions of the CB groups corresponding to two data sets are the same, the order of the two data sets in the first TB (or the first MAC PDU) can be exchanged; otherwise, the order cannot be exchanged.
[0406] For example, within one data set, the order of different MAC subPDUs can be adjusted.
[0407] S1404, the first communication device transmits the first TB. Correspondingly, the second communication device receives the first TB.
[0408] As a possible implementation, the first communication device transmits the first TB on the first resource.
[0409] As a possible implementation, after the MAC layer of the first communication device generates the first MAC PDU, the first MAC PDU (or referred to as the first TB) can be submitted to the PHY layer of the first communication device, and the first MAC PDU is the first TB after being submitted to the PHY layer. The PHY layer of the first communication device can perform relevant processing on the first TB and then send the first TB.
[0410] For example, the processing performed by the PHY layer on the first TB can include at least one of the following: adding a TB CRC, dividing into multiple CBs, adding a CB CRC, and the like, and of course other processing can also be performed, which is not specifically limited in the present application.
[0411] For example, the second communication device receiving the first TB can include / replaced by: the second communication device receiving part or all of the N CB groups, or the second communication device receiving the first CB group, or the second communication device receiving the second CB group.
[0412] For example, the second communication device receiving the first TB can include / replaced by: the second communication device receiving part or all of the N CB groups, or the second communication device receiving the first CB group, or the second communication device receiving the second CB group.
[0413] For example, the second communication device receiving the first TB can include / replaced by: the second communication device receiving part or all of the N CB groups, or the second communication device receiving the first CB group, or the second communication device receiving the second CB group.
[0414] For example, the second communication device receiving the first TB can include / replaced by: the second communication device receiving part or all of the N CB groups, or the second communication device receiving the first CB group, or the second communication device receiving the second CB group.
[0415] For example, the second communication device receiving the first TB can include / replaced by: the second communication device receiving part or all of the N CB groups, or the second communication device receiving the first CB group, or the second communication device receiving the second CB group.
[0416] For example, the second communication device receiving the first TB can include / replaced by: the second communication device receiving part or all of the N CB groups, or the second communication device receiving the first CB group, or the second communication device receiving the second CB group.
[0417] For example, the second communication device unsuccessfully receiving the first TB can include / replaced by: the first communication device only successfully receiving part of CBs corresponding to the first TB, or the second communication device unsuccessfully receiving at least one CB corresponding to the first TB, or the second communication device unsuccessfully receiving all CBs corresponding to the first TB, or the first communication device only successfully receiving part of CB groups corresponding to the first TB, or the second communication device unsuccessfully receiving at least one CB group corresponding to the first TB, or the second communication device unsuccessfully receiving all CB groups corresponding to the first TB.
[0418] For example, the second communication device receiving the first CB group can be successful or not, i.e., the second communication device does not necessarily successfully receive the first CB group (or each CB in the first CB group). For example, the reception of the first CB group is successful, which can include: the CRC check of all CBs in the first CB group is passed. For example, the reception of the first CB group is not successful, which can include: the CRC check of at least one CB (or all CBs) in the first CB group is not passed.
[0419] For example, the second communication device receiving the first CB group can include / replaced by: the second communication device successfully receiving the first CB group, or the second communication device unsuccessfully receiving the first CB group.
[0420] For example, the second communication device successfully receiving the first CB group can include / replaced by: the first communication device successfully receiving all CBs in the first CB group.
[0421] For example, the second communication device unsuccessfully receiving the first CB group can include / replaced by: the first communication device only successfully receiving part of CBs in the first CB group, or the second communication device unsuccessfully receiving at least one CB in the first CB group, or the second communication device unsuccessfully receiving all CBs in the first CB group.
[0422] For example, the content related to “the second communication device receiving the second CB group” can refer to the content related to “the second communication device receiving the first CB group”, for example, the first CB group can be replaced by the second CB group for understanding, which will not be repeated here.
[0423] For example, the second communication device receiving part or all of the N CB groups can include / replaced by: the second communication device receiving part or all of the CBs in part or all of the N CB groups.
[0424] Optionally, before step S1404, the embodiments of the present application can further include: the second communication device can determine the N CB groups corresponding to the first TB according to the first value.
[0425] For example, the implementation of the second communication device determining the N CB groups corresponding to the first TB according to the first value can refer to the related description in the above step S1401, and details are not described herein. In addition, the second communication device determines the N CB groups and the first communication device determines the N CB groups in the above step S1401 without strict order, the first communication device can determine the N CB groups before the second communication device, or the first communication device can determine the N CB groups after the second communication device, or the first communication device and the second communication device can determine the N CB groups at the same time, without limitation.
[0426] Optionally, before the second communication device determines the N CB groups corresponding to the first TB according to the first value, the embodiment of the application can further include: the second communication device determines the first value.
[0427] For example, the determination can include / replace: obtaining.
[0428] Optionally, the second communication device determining the first value can include / replace: the second communication device obtaining the first indication information, or the second communication device obtaining the first indication information from the first communication device, or the second communication device obtaining the first indication information from the access network device. For example, the first indication information includes information of the first value. The above description of the first indication information can be referred to, and details are not described herein.
[0429] Optionally, before at least one of the steps S1404, S1405, the second communication device determining the first value, and the second communication device determining the N CB groups corresponding to the first TB according to the first value, the application can further include: the second communication device obtaining the first resource or the related information of the first resource. The above description of the first resource or the related information of the first resource can be referred to, and details are not described herein.
[0430] S1405, the second communication device decodes part or all of the N CB groups respectively.
[0431] For example, the second communication device decoding part or all of the N CB groups respectively can include / replace at least one of the following: the second communication device ignoring the TB CRC, or the second communication device determining that the first communication device does not add / disable the TB CRC, or the second communication device determining that the TB CRC does not exist, or the second communication device decoding the first CB group, or the second communication device decoding the second CB group, or the second communication device decoding the first CB group and the second CB group respectively.
[0432] For example, in the embodiment of the application, not adding can include / replace: not adding.
[0433] For example, in embodiments of the present application, the first communication device does not add / disable TB CRC, which can include / replace: the first communication device does not add / disable TB CRC for the first TB.
[0434] For example, in embodiments of the present application, the second communication device determines that the TB CRC does not exist, which can include / replace: the second communication device determines that the TB CRC does not exist for the first TB.
[0435] For example, the part or all of the N CB groups can include / replace: the first CB group, or, the second CB group, or, the first CB group and the second CB group.
[0436] For example, decoding or decoding or decoding separately can include / replace at least one of the following: self-decoding, independent decoding, data processing, coding, splitting, demultiplexing.
[0437] For example, data processing can include at least one of the following data processing: MAC layer, RLC layer, PDCP layer, SDAP layer, RRC layer, layer two (L2).
[0438] For example, “the second communication device separately decodes the part or all of the N CB groups” can include / replace at least one of the following: the second communication device (or, the PHY layer of the second communication device) submits the part or all of the N CB groups to the upper layer or L2 for data processing, or, the second communication device (or, the PHY layer of the second communication device) submits the part or all of the N CB groups to the upper layer or L2.
[0439] For example, the upper layer can include / replace the MAC layer, or, the MAC layer of the second communication device. For example, “the second communication device decodes the first CB group” can include / replace at least one of the following: the second communication device (or, the PHY layer of the second communication device) submits the first CB group to the upper layer or L2 for data processing, or, the second communication device (or, the PHY layer of the second communication device) submits the first CB group to the upper layer or L2.
[0440] For example, if the first CB group is successfully received, regardless of whether the CB or CB group before the first CB group is successfully received or not, the second communication device can decode the first CB group.
[0441] For example, if the first CB group is successfully received, and the CB or CB group before the first CB group is unsuccessfully received, the second communication device can decode the first CB group.
[0442] For example, if the second CB group is successfully received, and the first CB group is unsuccessfully received, the second communication device can decode the second CB group.
[0443] For example, if some CBs in the first CB group are successfully received, regardless of whether the CBs or CB groups preceding the first CB group were successfully received, the second communication device can decode the CBs that were successfully received in sequence in the first CB group. For example, the first CB group contains CB1, CB2, and CB3, with CB1 preceding CB2 and CB2 preceding CB3. If CB1 and CB3 are successfully received, but CB2 fails to be received, regardless of whether the CBs or CB groups preceding the first CB group were successfully received, the second communication device can decode the CBs that were successfully received in sequence in the first CB group (i.e., CB1).
[0444] For example, this method allows the decoding of a CB group to be independent of the reception or decoding results of CBs in previous CB groups or CBs. Even if a CB group or CB fails to be received (e.g., CRC check failure) or fails to be decoded, subsequent CB groups or CBs can still be decoded.
[0445] For example, at least one of the following: "the second communication device decodes some or all of the N CB groups respectively", "the second communication device decodes the first CB group", "the second communication device decodes the second CB group", "the second communication device decodes the first CB group and the second CB group respectively", and S1405, may include / be replaced with / understood as: the second communication device decodes at the CB group level.
[0446] It should be noted that S1405 can be a standalone embodiment, or it can be combined with any one or more other steps to form a new embodiment.
[0447] Optionally, embodiments of this application may further include: S1406A and / or S1407A, and / or, S1406B and / or S1407B ( Figure 14 (Not shown in the text).
[0448] Optionally, if the first communication device is an access network device and the second communication device is a terminal, or if the first communication device and the second communication device are two different terminals, the embodiments of this application may further include: S1406A and / or S1407A.
[0449] S1406A, The first communication device determines that the second communication device supports decoding at the granularity of CB or CB group. Figure 14 (Not shown in the image).
[0450] For example, support can be included / replaced with: able to, or, can.
[0451] For example, the second communication device supporting decoding in CB or CB group granularity can include / replaced by: the second communication device supporting decoding part or all of the N CB groups respectively, or the second communication device supporting performing step S1405.
[0452] For example, the first communication device determining the second communication device supporting decoding in CB or CB group granularity can include / replaced by: the first communication device determining that the first communication device can perform LCP in CB or CB group granularity.
[0453] For example, the first communication device determining the second communication device supporting decoding in CB or CB group granularity can include / replaced by: the first communication device obtaining the second indication information, or the first communication device obtaining the second indication information from the second communication device. For example, the second communication device sends the second indication information to the first communication device, and the first communication device receives the second indication information from the second communication device.
[0454] For example, the second indication information includes information indicating that the second communication device supports or does not support decoding in CB or CB group granularity, or information indicating that the first communication device can or cannot perform LCP in CB or CB group granularity. For example, supporting or not supporting can include / replaced by: whether supporting. For example, can or cannot can include / replaced by: whether can.
[0455] For example, the first communication device can determine whether the second communication device supports decoding in CB or CB group granularity in terminal granularity.
[0456] For example, the second communication device can send indication information to the first communication device in terminal granularity to indicate whether the second communication device supports "decoding in CB or CB group granularity".
[0457] Optionally, step S1406A can be before step S1401 and / or S1402. For example, if the first communication device determines that the second communication device supports decoding in CB or CB group granularity, the first communication device performs step S1401 and / or S1402.
[0458] S1407A, the second communication device determines that the second communication device can decode in CB or CB group granularity Figure 14 (not shown in the figure).
[0459] For example, the second communication device determining that the second communication device can decode in CB or CB group granularity can include / replaced by: the second communication device determining that the first communication device performs LCP in CB or CB group granularity.
[0460] For example, the second communication device can decode in CB or CB group granularity, which can include / replace: the second communication device is allowed to decode in CB or CB group granularity, or the second communication device is allowed to decode in CB or CB group granularity.
[0461] For example, the first communication device performs LCP in CB or CB group granularity, which can include / replace: the first communication device performs LCP based on the first CB group, or the first communication device performs S1402.
[0462] For example, the second communication device determines that the second communication device can decode in CB or CB group granularity, which can include / replace: the second communication device obtains third indication information, or the second communication device obtains third indication information from the first communication device. For example, the first communication device sends third indication information to the second communication device, and the second communication device receives third indication information from the first communication device.
[0463] For example, the third indication information includes information indicating that the second communication device can or cannot decode in CB or CB group granularity, or information indicating that the first communication device performs or does not perform LCP in CB or CB group granularity. For example, performs or does not perform can include / replace: whether to perform.
[0464] For example, the first communication device can send information to the second communication device in terminal, DCI, TB, CW, SPS, or CG granularity to indicate that the second communication device can or cannot decode in CB or CB group granularity, or to inform the first communication device to perform or not to perform LCP in CB or CB group granularity.
[0465] As one possible implementation, the third indication information is associated with or in the granularity of at least one of the following: terminal, DCI, TB, CW, SPS, CG, LCH, and RB.
[0466] For example, the third indication information associated with the terminal can mean that different terminals can correspond to different third indication information. For example, the third indication information associated with the DCI can mean that different DCI scheduling / corresponding TBs can correspond to different third indication information. For example, the third indication information associated with the TB can mean that different TBs can correspond to different third indication information. For example, the third indication information associated with the SPS / CG can mean that different SPS / CGs can correspond to different third indication information.
[0467] For example, the third indication information can be carried by at least one of the following: DCI format, DCI scrambling information, information in the DCI, time domain resource of the DCI, and frequency domain resource of the DCI.
[0468] Optionally, step S1407A can be before step S1405. For example, the second communication device performs step S1405 only if the second communication device determines that the second communication device can decode with CB or CB group granularity.
[0469] Optionally, in the case that the first communication device is a terminal, the second communication device is an access network device, or the first communication device and the second communication device are two different terminals, the embodiments of the present application can further comprise: S1406B and / or S1407B.
[0470] S1406B, the second communication device determines that the first communication device supports performing LCP with CB or CB group granularity. Figure 14 (not shown in the figure).
[0471] For example, the first communication device supporting performing LCP with CB or CB group granularity can include / replaced by: the first communication device supporting performing LCP based on the first CB group, or the first communication device supporting performing step S1402.
[0472] For example, the second communication device determining that the first communication device supports performing LCP with CB or CB group granularity can include / replaced by: the second communication device determining that the second communication device can decode with CB or CB group granularity.
[0473] For example, the second communication device determining that the first communication device supports performing LCP with CB or CB group granularity can include / replaced by: the second communication device obtaining fourth indication information, or the second communication device obtaining the fourth indication information from the first communication device. For example, the first communication device sends the fourth indication information to the second communication device, and the second communication device receives the fourth indication information from the first communication device.
[0474] For example, the fourth indication information includes information for indicating that the first communication device supports or does not support performing LCP with CB or CB group granularity, or information for indicating that the second communication device can or cannot decode with CB or CB group granularity.
[0475] For example, the first communication device can send information to the second communication device with terminal granularity to indicate that the first communication device supports or does not support performing LCP with CB or CB group granularity.
[0476] Optionally, step S1406B can be before step S1405. For example, the second communication device performs step S1405 only if the second communication device determines that the first communication device supports performing LCP with CB or CB group granularity.
[0477] S1407B, the first communication device determines that the first communication device can perform LCP with CB or CB group granularity.
[0478] For example, the first communication device can perform LCP in CB or CB group granularity, which can include / replace: the first communication device determines that the second communication device can (or supports) decode in CB or CB group granularity.
[0479] For example, the first communication device can perform LCP in CB or CB group granularity, which can include / replace: the first communication device is allowed to perform LCP in CB or CB group granularity, or the first communication device is allowed to perform LCP in CB or CB group granularity, or the first communication device is allowed to perform the above step S1402.
[0480] For example, the first communication device determines that the first communication device can perform LCP in CB or CB group granularity, which can include / replace: the first communication device obtains the fifth indication information, or the first communication device obtains the fifth indication information from the second communication device. For example, the second communication device sends the fifth indication information to the first communication device, and the first communication device receives the fifth indication information from the second communication device.
[0481] For example, the fifth indication information includes information for indicating that the first communication device can perform LCP in CB or CB group granularity, or information for indicating that the second communication device can (or supports) decode in CB or CB group granularity.
[0482] For example, the second communication device can send information to the first communication device in terminal, DCI, TB, CW, SPS, or CG granularity to indicate whether the first communication device can perform LCP in CB or CB group granularity, or to indicate whether the second communication device can (or supports) decode in CB or CB group granularity.
[0483] As one possible implementation, the fifth indication information is associated with or in the granularity of one of the following: terminal, DCI, TB, CW, SPS, CG, LCH, RB.
[0484] For example, the fifth indication information associated with the terminal can mean that different terminals can correspond to different fifth indication information. For example, the fifth indication information associated with the DCI can mean that different DCI scheduling / corresponding TBs can correspond to different fifth indication information. For example, the fifth indication information associated with the TB can mean that different TBs can correspond to different fifth indication information. For example, the fifth indication information associated with the SPS / CG can mean that different SPS / CGs can correspond to different fifth indication information.
[0485] For example, the fifth indication information can be carried by at least one of a DCI format, DCI scrambling information, information in the DCI, time domain resources of the DCI, and frequency domain resources of the DCI.
[0486] Optionally, step S1407B can be performed before step S1401 and / or S1402. For example, the first communication device performs step S1401 and / or S1402 only if the first communication device determines that the first communication device can perform LCP in CB or CB group granularity.
[0487] Optionally, the second indication information and the fourth indication information can be the same indication information, or can be different indication information, which is not limited. For example, the terminal sends the second indication information to the access network device, and the access network device receives the second indication information from the terminal. For example, the second indication information includes at least one of information indicating that the terminal supports or does not support decoding in CB or CB group granularity, information indicating that the access network device can or cannot perform LCP in CB or CB group granularity, information indicating that the terminal supports or does not support performing LCP in CB or CB group granularity, or information indicating that the access network device can or cannot decode in CB or CB group granularity.
[0488] Optionally, the third indication information and the fifth indication information can be the same indication information, or can be different indication information, which is not limited. For example, the access network device sends the third indication information to the terminal, and the terminal receives the third indication information from the access network device. For example, the third indication information includes at least one of information indicating that the terminal can or cannot decode in CB or CB group granularity, information indicating that the access network device performs or does not perform LCP in CB or CB group granularity, information indicating that the terminal can perform LCP in CB or CB group granularity, or information indicating that the access network device can (or supports) decode in CB or CB group granularity.
[0489] For example, the third indication information and / or the fifth indication information can (or, also can) comprise at least one of the following: information for indicating that the terminal (or, the first communication apparatus or the second communication apparatus) can or can not ignore the TB CRC, information for indicating that the access network device (or, the first communication apparatus or the second communication apparatus) adds or does not add (or, enables or disables) the TB CRC, or, information for indicating that the TB CRC exists or does not exist. For example, ignoring the TB CRC can comprise / replace: not performing the TB CRC check, or, not considering the check result of the TB CRC, or, performing the TB CRC check but not considering the check result of the TB CRC. For example, adding or not adding can comprise / replace: whether to add. For example, enabling or disabling can comprise / replace: whether to enable. For example, existing or not existing can comprise / replace: whether to exist.
[0490] The overall flow of the data processing method provided by the present application is described above. The specific implementation of the related steps is described in detail below.
[0491] In a possible implementation, for the step S1402, the first communication apparatus performing LCP based on the size of the data part of the first CB group can comprise: the first communication apparatus allocating resources for at least one MAC CE and / or data from at least one logical channel based on the size of the data part of the first CB group, to obtain a first data set.
[0492] For example, for the first resource, taking the at least one logical channel selected by the first communication apparatus as LCH1, LCH2 and LCH3 as an example, where there is no MAC CE to be transmitted, the first communication apparatus allocates resources for data from LCH1, LCH2 and LCH3 based on the size of the data part of the first CB group.
[0493] For example, taking the priority of LCH1, LCH2 and LCH3 as priority 1, priority 2 and priority 3 respectively, and priority 1 is higher than priority 2, and priority 2 is higher than priority 3 as an example, as shown in Figure 15 For example, assuming that the B j of LCH1 and LCH3 are greater than 0, and the B j of LCH2 is less than 0, the first communication apparatus allocates resources for LCH1 and LCH3, or determines the data amount corresponding to LCH1 and LCH3 in the order of decreasing LCH priority in the first round of resource allocation. For example, as shown in Figure 15 The data amount corresponding to LCH1 can be the size of data set A, and the data amount corresponding to LCH3 can be the size of data set B.
[0494] Assuming that the sum of the data amount corresponding to LCH1 and LCH3 is less than the size of the data part of the first CB group after the first round of resource allocation, i.e., there is still remaining resource, the resource is allocated in the order of decreasing priority of LCH1, LCH2 and LCH3, or the data amount corresponding to LCH1, LCH2 and LCH3 is determined again until the sum of the data amount determined in the two rounds of resource allocation process is equal to the size of the data part of the first CB group.
[0495] Based on Figure 15 In the example shown, after the resource allocation is completed, the obtained first data set includes data set A from LCH1, data set B from LCH3, data set C from LCH1 and data set D from LCH2.
[0496] As a possible implementation, in the process of allocating resources for data from at least one logical channel based on the size of the data part of the first CB group, after the first round of resource allocation, the first communication device needs to subtract the total size of the MAC SDU (or data amount) provided by the logical channel j from the B j The total size of the MAC SDU (or data amount) provided by the logical channel j is subtracted. For example, based on Figure 15 In the example shown, after the first round of resource allocation, the first communication device subtracts the data amount corresponding to LCH1 from the B j The data amount corresponding to LCH1 in the first round of resource allocation is subtracted, and the B j The data amount corresponding to LCH3 in the first round of resource allocation is subtracted.
[0497] Optionally, after the second round of resource allocation, the value of the B j may be updated or not updated, which is not limited. For example, based on Figure 15 In the example shown, after the second round of resource allocation, the value of the B j of LCH1, LCH2 and LCH3 may be updated or not updated.
[0498] As a possible implementation, in the step S1402, the first communication device performs LCP based on each CB group in the N CB groups respectively, i.e., performs LCP based on the size of the data part of the i-th CB group in the N CB groups to obtain the data set i, i = 1, 2, …, N. For example, after performing LCP based on the first CB group, the first communication device further performs LCP based on the second CB group in the N CB groups to obtain the second data set, and the second CB group is located after the first CB group in the N CB groups.
[0499] As one possible implementation, the first communication device follows a certain sequence when executing LCP based on each of the N CB groups. For example, after executing LCP based on the i-th CB group, LCP is then executed based on the (i+1)-th CB group. Figure 13 In the example shown in (c), the first communication device first performs LCP based on the size of the data portion of CB group 1 to obtain data set 1; then performs LCP based on the size of the data portion of CB group 2 to obtain data set 2; then performs LCP based on the size of the data portion of CB group 3 to obtain data set 3, and so on, until LCP is performed based on the size of the data portion of CB group 6 to obtain data set 6.
[0500] For example, in N CB groups, the bits of the data portion of the i-th CB group are placed before the bits of the data portion of the (i+1)-th CB group. For instance, based on... Figure 13 In the example shown in (c), the data portion of CB group 1 may include bits 0-99 of B bits (e.g., B = A + L1 or B = A, where A and L1 are described in the foregoing description and will not be repeated here), the data portion of CB group 2 may include bits 100-199 of the B bits, the data portion of CB group 3 may include bits 200-279 of the B bits, and so on.
[0501] As one possible implementation, the first communication device performs LCP based on each CB group in a similar manner, the difference being that: when performing LCP based on the first CB group, the first communication device performs logical channel selection according to LCP constraints, determines at least one logical channel, and allocates resources for this at least one logical channel based on the size of the data portion of the first CB group. When subsequently performing LCP based on the second to Nth CB groups, it is not necessary to perform logical channel selection again; resources are then allocated for the data of the at least one logical channel.
[0502] For example, based on Figure 15 In the example shown, after the first communication device completes the LCP based on the size of the data portion of the first CB group, during the process of performing the LCP based on the size of the data portion of the second CB group, resources are still allocated for data from LCH1, LCH2 and LCH3.
[0503] As one possible implementation, the first communication device needs to update the B corresponding to the logical channel when / after performing LCP based on the i-th CB group. j When performing LCP based on the (i+1)th CB group, the B is updated according to the LCP execution completion of the i-th CB group. j Allocate resources.
[0504] In one possible implementation, the first data set includes one or more MAC subPDUs, and may include / be replaced by: the first data set including data (such as MAC SDU and / or MAC CE) in the one or more MAC subPDUs. The first communication device may encapsulate the data in the first data set to obtain at least one MAC subPDU.
[0505] For example, based on Figure 13 (c) and Figure 15 The example shown uses CB group 1 as the first CB group, and the first dataset includes datasets A, B, C, and D. Figure 16 As shown, the first communication device can use dataset A as the MAC SDU of MAC subPDU1, and then add the subheader of MAC subPDU1 to obtain MAC subPDU1; use dataset B as the MACSDU of MAC subPDU2, and then add the subheader of MAC subPDU2 to obtain MAC subPDU2; use dataset B as the MACSDU of MAC subPDU3, and then add the subheader of MAC subPDU3 to obtain MAC subPDU3; use dataset D as the MACSDU of MAC subPDU4, and then add the subheader of MAC subPDU4 to obtain MAC subPDU4. That is, the MAC subPDUs contained in the first CB group are MAC subPDU1, MAC subPDU2, MAC subPDU3, and MAC subPDU4.
[0506] As one possible implementation, in step S1403 above, the first communication device determines the first TB based on the data set corresponding to each of the N CB groups. That is, after the first communication device performs the LCP corresponding to the i-th CB group based on the size of the data portion of the i-th CB group, it obtains the data set i corresponding to the i-th CB group, where i = 1, 2, ..., N. Further, the first communication device determines at least one complete MAC subPDU contained in / corresponding to the i-th CB group based on the data set i corresponding to the i-th CB group, and then determines the first TB based on the MAC subPDU contained in / corresponding to each CB group. For example, the MAC subPDU contained in / corresponding to each CB group is determined as the MAC subPDU in the first TB. Based on this implementation, each CB group in the N CB groups can contain / correspond to a positive integer number of complete MAC subPDUs.
[0507] For example, based on Figure 13 (c) and Figure 15 In the example shown, after steps S1402 and S1403, Figure 13Each of the six CB groups shown in (c) in FIG. 10 contains at least one complete MAC subPDU. For example, CB group 1 contains / corresponds to MAC subPDU 1, MAC subPDU 2, MAC subPDU 3, and MAC subPDU 4, CB group 2 contains / corresponds to MAC subPDU 5 and MAC subPDU 6, CB group 3 contains / corresponds to MAC subPDU 7 and MAC subPDU 8, and so on.
[0508] As one possible implementation, the order of the MAC subPDUs contained / corresponded by different CB groups cannot be arbitrarily adjusted, but the order of the MAC subPDUs contained / corresponded by the same CB group can be freely adjusted.
[0509] For example, based on the example shown in (c) and (d) in FIG. 10, if CB group 1 contains MAC subPDU 1, MAC subPDU 2, MAC subPDU 3, and MAC subPDU 4, and CB group 2 contains MAC subPDU 5 and MAC subPDU 6, then MAC subPDU 5 cannot be adjusted in position with MAC subPDU 1 to MAC subPDU 4, and MAC subPDU 6 cannot be adjusted in position with MAC subPDU 1 to MAC subPDU 4. However, MAC subPDU 1 to MAC subPDU 4 can be adjusted in position, and MAC subPDU 5 and MAC subPDU 6 can be adjusted in position. Figure 13 Figure 15 For example, based on the example shown in (c) and (d) in FIG. 10, if CB group 1 contains MAC subPDU 1, MAC subPDU 2, MAC subPDU 3, and MAC subPDU 4, and CB group 2 contains MAC subPDU 5 and MAC subPDU 6, then MAC subPDU 5 cannot be adjusted in position with MAC subPDU 1 to MAC subPDU 4, and MAC subPDU 6 cannot be adjusted in position with MAC subPDU 1 to MAC subPDU 4. However, MAC subPDU 1 to MAC subPDU 4 can be adjusted in position, and MAC subPDU 5 and MAC subPDU 6 can be adjusted in position.
[0510] For example, as shown in (a) in FIG. 10, the positions of MAC subPDU 1 to MAC subPDU 4 in the first TB from front to back can be: MAC subPDU 1, MAC subPDU 2, MAC subPDU 3, and MAC subPDU 4, and MAC subPDU 5 can be located before MAC subPDU 6; or as shown in (b) in FIG. 10, the positions of MAC subPDU 1 to MAC subPDU 4 in the first TB from front to back can be: MAC subPDU 4, MAC subPDU 2, MAC subPDU 1, and MAC subPDU 3, and MAC subPDU 5 can be located after MAC subPDU 6. Figure 17 Figure 17 For example, as shown in (a) in FIG. 10, the positions of MAC subPDU 1 to MAC subPDU 4 in the first TB from front to back can be: MAC subPDU 1, MAC subPDU 2, MAC subPDU 3, and MAC subPDU 4, and MAC subPDU 5 can be located before MAC subPDU 6; or as shown in (b) in FIG. 10, the positions of MAC subPDU 1 to MAC subPDU 4 in the first TB from front to back can be: MAC subPDU 4, MAC subPDU 2, MAC subPDU 1, and MAC subPDU 3, and MAC subPDU 5 can be located after MAC subPDU 6.
[0511] In a possible implementation, the MAC layer entity of the first communication device can deliver the first TB to a PHY layer entity of the first communication device, and the PHY layer entity transmits the first TB after processing the first TB. The processing of the first TB by the PHY layer entity is not limited in the present application.
[0512] In a possible implementation, in the step S1405, the second communication device decodes part of the N CB groups, and the part of the N CB groups are CB groups successfully received, or the CRCs of the CBs included in / corresponding to the part of the N CB groups are all verified.
[0513] In the step S1405, the decoding of a CB group does not depend on the receiving result or the decoding result of the CB group / CB before it. In the case that the previous CB group / CB is not successfully received or decoded, the decoding of the subsequent CB group / CB can still be performed. That is, even if there is a CB that is not successfully received in the CB group before the first CB group, the decoding of the first CB group can still be performed. The reason is that each of the N CB groups includes at least one complete MAC subPDU, and there is no case that part of a MAC subPDU is in one CB group and the remaining part is in another CB group. Therefore, in the case that the CRCs of the CBs in a CB group are all verified, the format of each MAC subPDU in the CB group can be obtained, and thus the decoding of the CB group can be successfully performed.
[0514] For example, based on the example shown in FIG. 7, the second communication device receives the CB group 1, and verifies the CRCs of CB0 and CB1. In the case that the CRCs of CB0 and CB1 are both verified, the decoding of the CB group 1 is performed. In the case that there is at least one CRC that is not verified among the CRCs of CB0 and CB1, if the CRCs of CB2 and CB3 in the CB group 2 are both verified, the decoding of the CB group 2 is performed. Figure 17
[0515] As a possible implementation, the decoding of the first CB group can include that the PHY layer entity of the first communication device delivers the data part of the first CB group to the MAC layer entity, and the MAC layer entity demultiplexes the data part of the first CB group to obtain at least one MAC subPDU included in the first CB group.
[0516] Based on the scheme, the LCP is performed at the sending end in CB group granularity, so that the boundary (or, the start bit or the end bit) of the data part of one / every CB group and the boundary (or, the start bit or the end bit) of one MAC subPDU are aligned, or, the boundary (or, the start bit) of one / every CB group and the boundary (or, the start bit) of one MAC subPDU are aligned, so that each CB group can contain an integer number of complete MAC subPDUs, thereby enabling the receiving end to decode in CB group granularity. The problem that the entire TB or all CBs subsequent to the erroneous CB cannot be processed (or, are stuck) due to one CB error is avoided.
[0517] On the one hand, since each CB group contains an integer number of complete MAC subPDUs, the start boundary of the data part of the CB group is the start bit of the MAC subPDU, and the MAC subheader and the MAC SDU (or MAC CE or padding) of a certain MAC subPDU are all located in one CB group, so that when decoding a certain CB group, there is no need to rely on the successful reception of the previous CB group / CB, for example, there is no need to obtain the MAC subheader of the MAC SDU (or MAC CE or padding or MAC subPDU) in the subsequent CB group in the previous CB group, so that even if the previous CB group / CB fails to be received, the CB group / CB that is successfully received later can be delivered to the MAC layer for processing, so that the receiving end can process the CB group / CB that is successfully received in time, thereby reducing the service delay, and the data can be delivered as much as possible within the delay requirement of the service, thereby facilitating the improvement of the communication quality of the service, or facilitating the improvement of the system capacity. In addition, timely delivery of the subsequently successfully received CB group / CB to the MAC layer for processing can reduce the CBs that cannot be delivered to the MAC layer for processing, thereby reducing the storage requirement, i.e., reducing the increase of the memory (e.g., no need for a large on-chip memory), which can save costs, or reduce the DDR bandwidth requirement (e.g., no need for a large DDR bandwidth), and at the same time, can also reduce the device power consumption caused by DDR erasing. It is also conducive to coping with the challenges of future services with lower latency requirements and / or higher rate requirements.
[0518] On the other hand, the scheme of performing LCP in CB group granularity provided by the present application can reduce resource overhead compared to the scheme of performing LCP in CB granularity. For example, assuming that the flowchart of the scheme of performing LCP in CB granularity is as follows Figure 18As shown, the first communication device determines the first size and quantity of the CBs corresponding to the first TB (or, determines the first size of the C CBs corresponding to the first TB), and performs LCP based on each CB respectively. Wherein, the determination manner of the first size and quantity of the CBs corresponding to the first TB (or, the first size of the C CBs corresponding to the first TB) can refer to the foregoing related description, and the implementation of performing LCP based on each CB is similar to the implementation of performing LCP based on the CB group, and the difference lies in that LCP is performed based on the size of the data part of the CB.
[0519] For example, since the first size of the CB is usually small, when performing LCP based on the CB, the size of the MAC subPDU containing / corresponding to the CB determined at the MAC layer is also small. However, the SDU of the RLC layer can be large, for example, the typical data size is 1500 bytes (Byte), and therefore, the SDU of the RLC layer needs to be segmented when being delivered to the MAC layer to match the size of the MAC subPDU, thereby increasing the overhead of RLC segmentation. For example, each RLC segment needs to occupy 1-5 bytes of RLC header and 2-5 bytes of MAC subheader.
[0520] When performing LCP based on the CB group as the granularity provided in the present application, since the size of the CB group is usually larger than the first size of the CB, compared with performing LCP based on the CB as the granularity, the number of RLC SDU segmentation can be reduced, thereby reducing the number of corresponding RLC header and MAC subheader, and reducing the overhead of RLC segmentation.
[0521] In the above data processing method, LCP is performed based on the CB group as the granularity, and the granularity of LCP is improved. In addition, the present application also provides a data processing method, in which a corresponding header can be added to the CB group, and the header carries the related information indicating the MAC subPDU to realize independent decoding of each CB group. For example, the header can include / replace other names, for example, information set, which is not limited.
[0522] As shown in the Figure 19 The data processing method can include the following steps:
[0523] S1901, the first communication device determines N CB groups corresponding to the first TB according to the first value.
[0524] For example, the implementation of determining N CB groups corresponding to the first TB according to the first value can refer to the foregoing related content, which is not repeated here. Other implementations of step S1901 can refer to the related description in the foregoing step S1401, which is not repeated here.
[0525] Optionally, before S1901, the embodiments of the present application can further include: S1900A, the first communication device determines the first value (Figure 19 The first communication device can determine the first TB according to the first resource.
[0526] For example, the implementation of step S1900A can refer to the related description in step S1400A described above, and details are not described herein again.
[0527] Optionally, before at least one of steps S1900A, S1901, S1902, S1903, the application can further include: S1900B, the first communication device acquires the first resource or the related information of the first resource. Figure 19 The first communication device can determine the first TB according to the first resource.
[0528] For example, the implementation of step S1900B can refer to the related description in step S1400B described above, and details are not described herein again.
[0529] S1902, the first communication device determines the first TB.
[0530] For example, the first communication device determining the first TB can include / replace: the first communication device determining the header corresponding to the CB group (or, N CB groups, or each of the N CB groups, or N-1 CB groups, or each of the N-1 CB groups in the N CB groups); or, the first communication device determining the header corresponding to the first CB group.
[0531] Optionally, the CB group (or, N CB groups, or each of the N CB groups, or N-1 CB groups, or each of the N-1 CB groups in the N CB groups) includes: the header corresponding to the CB group (or, N CB groups, or each of the N CB groups, or N-1 CB groups, or each of the N-1 CB groups in the N CB groups).
[0532] For example, the N-1 CB groups can include / replace: N-1 CB groups in the N CB groups except the first CB group, or the last N-1 CB groups in the N CB groups. For example, the first CB group can include / replace: the starting CB group.
[0533] Optionally, the first CB group includes the header corresponding to the first CB group. For example, the first CB group is one of the N CB groups, or one of the N-1 CB groups in the N CB groups except the first CB group.
[0534] Optionally, the first TB corresponds to: N CB groups and the headers corresponding to some or all of the N CB groups. As one possible implementation, the first communication device can perform LCP based on the size of the first TB, determine at least one of the following: at least one MAC CE to be transmitted, data from at least one logical channel, or at least one padding, and multiplex the at least one MAC CE, the data from at least one logical channel, or at least one padding to obtain the first TB. For a brief introduction to related technologies, please refer to the relevant descriptions of LCP and the multiplexing of MAC CEs and MAC SDUs; further details will not be repeated here.
[0535] As one possible implementation, one or more of the N CB groups may contain incomplete MACsubPDUs. For example, such as... Figure 20 As shown, CB group 1 includes complete MAC subPDU1 to MAC subPDU. I-2 and MACsubPDU I-1 The first part, CB group 2, includes MAC subPDU. I-1 The remainder, and the complete MAC subPDU I To MACsubPDU Y .
[0536] For example, the header corresponding to a CB group can carry information indicating the first start position within that CB group, which is the position of the beginning portion of the MAC subPDU, or the start position of the MAC subheader. In other words, this information indicates the position of the first "start portion of the MAC subPDU" in the CB group. For example, based on... Figure 20 In the example shown, for CB group 1, the first starting position is the position of the beginning part of MAC subPDU1. Figure 20 The position is marked as 'a'; for CB group 2, since CB group 2 does not include MAC subPDU I-1 The starting part, therefore, the first starting position is MAC subPDU I The position of the starting part, Figure 20 The header of CB group 1 can carry information indicating the location of position a, and the header of CB group 2 can carry information indicating the location of position b.
[0537] For example, the start portion may include / be replaced with: start bit, or start byte.
[0538] As a possible implementation, the first TB can not include / correspond to the header corresponding to the starting CB group in the N CB groups, or the starting CB group can not correspond to / exist the header, or the header corresponding to the starting CB group can not include the information for indicating the first starting position in the starting CB group; or, if a certain CB group includes at least one complete MAC subPDU and does not include an incomplete MAC subPDU, the first TB can also not include / correspond to the header corresponding to the CB group, or the CB group can not correspond to / exist the header, or the header corresponding to the CB group can not include the information for indicating the first starting position in the CB group. For example, for the starting CB group or the CB group including at least one complete MAC subPDU but not including an incomplete MAC subPDU, the first starting position therein can be defaulted as the starting position of the CB group (or, the data part of the CB group).
[0539] S1903, the first communication device transmits the first TB. Correspondingly, the second communication device receives the first TB.
[0540] As a possible implementation, the first communication device transmits the first TB on the first resource. At this time, before step S1903, the first communication device needs to obtain the related information of the first resource, such as the time-frequency position, size, etc. of the first resource.
[0541] As a possible implementation, the second communication device receives the first TB in the granularity of CB group.
[0542] For example, the implementation of step S1903 can refer to the related description in the above step S1404, which will not be repeated here.
[0543] Optionally, before step S1903, the embodiments of the present application can further include: the second communication device can determine the N CB groups corresponding to the first TB according to the first value.
[0544] For example, the implementation of the second communication device determining the N CB groups corresponding to the first TB according to the first value can refer to the related description in the above step S1401, which will not be repeated here. In addition, the determination of the N CB groups by the second communication device and the determination of the N CB groups by the first communication device in the above step S1901 do not have a strict order, the first communication device can determine the N CB groups before the second communication device, or the first communication device can determine the N CB groups after the second communication device, or the first communication device and the second communication device can determine the N CB groups at the same time, which is not limited.
[0545] S1904, the second communication device decodes part or all of the CB groups in the N CB groups respectively.
[0546] For example, the second communication device decoding part or all of the N CB groups respectively can comprise / replace at least one of: the second communication device ignoring the TB CRC, or the second communication device determining that the first communication device does not add / disable the TB CRC, or the second communication device determining that the TB CRC does not exist, or the second communication device decoding the first CB group, or the second communication device decoding the second CB group, or the second communication device decoding the first CB group and the second CB group respectively. Wherein, the second CB group is located after the first CB group, which can refer to the foregoing description of the first CB group and the second CB group, and will not be repeated here.
[0547] Optionally, the application can also include: the second communication device determining the header corresponding to the CB group (or the N CB groups, or each of the N CB groups, or the N-1 CB groups, or each of the N-1 CB groups in the N CB groups).
[0548] As a possible implementation, the second communication device decodes the CB group according to the header corresponding to the CB group. For example, the second communication device receives in CB group granularity, verifies the CRC of each CB in the CB group, and after the CRC of each CB is verified, decodes the CB group according to the header corresponding to the CB group.
[0549] For example, if the first CB group is received successfully, and the CB or CB group before the first CB group is received unsuccessfully, the second communication device can decode the first CB group.
[0550] For example, decoding the first CB group can include / replace: decoding the first CB group based on the header corresponding to the first CB group.
[0551] For example, if the second CB group is received successfully and the first CB group is received unsuccessfully, the second communication device can decode the second CB group.
[0552] For example, if part of the CBs in the first CB group are received successfully, regardless of whether the CB or CB group before the first CB group is received successfully, the second communication device can decode the first CB group. For example, the first CB group includes CB1, CB2 and CB3, CB1 is before CB2, and CB2 is before CB3. If CB1 and CB3 are received successfully, and CB2 is received unsuccessfully, the header corresponding to the first CB group indicates that the position of the first "start of MAC subPDU" in the first CB group is in CB3. Regardless of whether the CB or CB group before the first CB group is received successfully, the second communication device can decode CB3 in the first CB group.
[0553] For example, by the method, decoding of a certain CB group can be made independent of the receiving result or decoding result of the CB group before it or the CB in the CB group before it, and decoding of the subsequent CB group or CB can still be performed in the case of failure of the CB group or CB, such as CRC check failure or decoding failure.
[0554] As a possible implementation, in the case that the second communication device decodes part of the N CB groups, the part of the N CB groups are CB groups successfully received, or in other words, the CRC of the CBs contained in the part of the N CB groups are all verified.
[0555] Hereinafter, taking the case that the N CB groups include a first CB group as an example, the header format corresponding to the CB group is described. The header corresponding to the first CB group can include first information and / or second information.
[0556] For example, the first information can indicate whether the second information exists (i.e., whether the header corresponding to the first CB group includes the second information), or indicate whether the bits of the second information are valid, or indicate whether the first CB group includes the starting part of the MAC subPDU.
[0557] For example, the second information can indicate a first starting position in the first CB group, the starting position being the position of the starting part of the MAC subPDU in the first CB group.
[0558] For example, the first starting position in the first CB group can be indicated by the position of the first starting position in the CB group, or by the distance (or offset or interval of the number of bits / bytes) or interval between the first starting position and the starting boundary of the first CB group / the starting boundary of the data part of the first CB group / the end position (or end boundary) of the header corresponding to the first CB group / the start position (or start boundary) of the header corresponding to the first CB group / the end boundary of the first CB group / the end boundary of the data part of the first CB group, without limitation.
[0559] For example, the header corresponding to the CB group can be byte-aligned, i.e., the size of the header corresponding to the CB group is a positive integer number of bytes, such as 2 bytes. For example, the header of the first CB group can include a first field and / or a second field. For example, the first field is used to carry the first information. For example, the second field is used to carry the second information. Optionally, the header of the first CB group can also include a reserved bit.
[0560] For example, the size of the first field can be 1 bit. When the 1 bit is set to "1" (or "0"), it indicates that the second information exists, or that the bit of the second information is valid, or that the first CB group includes the start portion of the MAC subPDU; when the 1 bit is set to "0" (or "1"), it indicates that the second information does not exist, or that the bit of the second information is invalid, or that the first CB group does not include the start portion of the MAC subPDU.
[0561] For example, the size of the second field can be determined based on the size of the first CB group. For instance, if the size of the second field is x bits, the size of the first CB group can be 2. x For example, the header corresponding to the CB group includes a second field, such as... Figure 21 As shown in (a), the size of the second field can be 12 bits, or, as... Figure 21 As shown in (b), the size of the second field can be 10 bits. For example, R indicates reserved bits. It should be noted that... Figure 21 The second field is referred to as the location field, which can also be called the location field or location indicator field. Of course, the second field can also have other names without restriction.
[0562] For example, when the header corresponding to a CB group includes a first field and a second field, the first field can precede the second field. Taking a first field of 1 bit size as an example, the format of the header including the first field and the second field can be as follows: Figure 22 (a) or Figure 22 As shown in (b). For example, the first field is identified by C.
[0563] It should be noted that, Figure 21 and Figure 22 The example provided uses a second field size of 12 bits or 10 bits. Of course, the size of the second field can have other values, and this application does not restrict this. Figure 21 and Figure 22 This is merely an illustrative description of the header structure corresponding to CB group, and does not constitute any limitation on the scheme of this application. The header corresponding to CB group may also exist in other formats, and this application does not make any specific limitation on them.
[0564] As a first possible implementation, the header corresponding to the first CB group includes first information but excludes second information. The first information indicates that the second information is absent, or indicates that the first CB group does not include the beginning portion of a MAC subPDU. For example, the first CB group does not include the complete MAC subPDU, nor does it include the beginning position of a MAC subPDU. Alternatively, the first CB group may only include the latter half of a certain MAC subPDU.
[0565] As a second possible implementation, the header corresponding to the first CB group includes the first information and the second information, but the first information indicates that the bits of the second information are invalid. For example, the first CB group does not include a complete MAC subPDU, nor does it include the start position of the MAC subPDU. For example, the first CB group only includes the latter half of a certain MAC subPDU. Illustratively, all bits of the second field can be set to "0" or all set to "1" to indicate that the bits of the second information are invalid.
[0566] As a third possible implementation, the header corresponding to the first CB group includes the first information and the second information, the first information indicates that the second information exists, or indicates that the bits of the second information are valid, or indicates that the first CB group includes the start portion of the MAC subPDU, and the second information indicates the first start position in the first CB group. For example, the first CB group can not include a complete MAC subPDU, but includes the start portion of the incomplete MAC subPDU; or the first CB group can include at least one complete MAC subPDU and an incomplete MAC subPDU; or the first CB group includes at least one complete MAC subPDU and does not include an incomplete MAC subPDU.
[0567] As a fourth possible implementation, the header corresponding to the first CB group includes the second information, and the bits of the second information are valid, for indicating the first start position in the first CB group. For example, the first CB group can not include a complete MAC subPDU, but includes the start portion of the incomplete MAC subPDU; or the first CB group can include at least one complete MAC subPDU and an incomplete MAC subPDU; or the first CB group includes at least one complete MAC subPDU and does not include an incomplete MAC subPDU.
[0568] As a fifth possible implementation, the header corresponding to the first CB group includes the second information (or includes the second field), but the bits of the second information are invalid. For example, the first CB group does not include a complete MAC subPDU, nor does it include the start position of the MAC subPDU. For example, the first CB group only includes the latter half of a certain MAC subPDU. Illustratively, all bits of the second field can be set to "0" or all set to "1" to indicate that the bits of the second information are invalid.
[0569] For example, in the fourth and fifth possible implementation, the second information bit is invalid if the second field is set to all "0" or "1".
[0570] For example, based on the CB group header implementation, in the case that the header corresponding to the first CB group includes the first field and the second field, the second communication device can first parse the first field to obtain the first information, determine whether the header corresponding to the first CB includes the second field according to the first information, and parse the second field to obtain the second information in the case that the second field is included.
[0571] For example, in the first possible implementation, the first information indicates that the second information does not exist, or indicates that the first CB group does not include the position of the start of the MAC subPDU, the second communication device can determine that the header corresponding to the first CB group does not include the second field, or in other words, does not include the second information.
[0572] For example, in the second possible implementation, the first information indicates that the second information bit is invalid, the second communication device can determine that the header corresponding to the first CB group includes the second field, or in other words, includes the second information, but the second information bit is invalid. At this time, the second communication device can not parse the second field, or in other words, ignore the second information bit.
[0573] For example, in the third possible implementation, the first information indicates that the second information exists, or indicates that the second information bit is valid, or indicates that the first CB group includes the start of the MAC subPDU, the second communication device can determine that the header corresponding to the first CB group includes the second field, and the second field bit is valid. At this time, the second communication device can parse the second field to obtain the position indicated by the second information, and start decoding the first CB group from the position indicated by the second information.
[0574] For example, based on the CB group header implementation, in the case that the header corresponding to the first CB group includes the first field and the second field, the second communication device can first parse the first field to obtain the first information, determine whether the header corresponding to the first CB includes the second field according to the first information, and parse the second field to obtain the second information in the case that the second field is included. Figure 20 For example, based on the CB group header implementation, in the case that the header corresponding to the first CB group includes the first field and the second field, the second communication device can first parse the first field to obtain the first information, determine whether the header corresponding to the first CB includes the second field according to the first information, and parse the second field to obtain the second information in the case that the second field is included.
[0575] For example, based on the implementation of the CB group header described above, in the case that the header corresponding to the first CB group includes the second field and does not include the first field, in step S1904, the second communication device can first parse the second field to obtain the second information, and if the bits of the second information are valid, the first CB group is decoded starting from the position indicated by the second information; if the bits of the second information are invalid, it indicates that the first CB group does not include the starting position of the MAC subPDU. For example, the first CB group only includes the second half of a certain MAC subPDU, and the first CB group cannot be decoded.
[0576] For example, in the fourth or fifth possible implementation described above, the second communication device can determine whether the bits of the second information are valid according to the value of the second field. In the case that the bits of the second information are valid, the position indicated by the second information is obtained, and the first CB group is decoded starting from the position indicated by the second information; in the case that the bits of the second information are invalid, the second communication device ignores the bits of the second information and / or the second communication device does not decode the first CB group.
[0577] For example, based on the implementation of the CB group header described above, in the case that the header corresponding to the first CB group includes the second field and does not include the first field, in step S1904, the second communication device can first parse the second field to obtain the second information, and if the bits of the second information are valid, the first CB group is decoded starting from the position indicated by the second information; if the bits of the second information are invalid, it indicates that the first CB group does not include the starting position of the MAC subPDU. For example, the first CB group only includes the second half of a certain MAC subPDU, and the first CB group cannot be decoded. Figure 20 For example, based on the implementation of the CB group header described above, in the case that the header corresponding to the first CB group includes the second field and does not include the first field, in step S1904, the second communication device can first parse the second field to obtain the second information, and if the bits of the second information are valid, the first CB group is decoded starting from the position indicated by the second information; if the bits of the second information are invalid, it indicates that the first CB group does not include the starting position of the MAC subPDU. For example, the first CB group only includes the second half of a certain MAC subPDU, and the first CB group cannot be decoded.
[0578] As a possible implementation, the first CB group can be one of the last N-1 CB groups of the N CB groups. For example, the first TB can not include the header corresponding to the starting CB group of the N CB groups, or the header corresponding to the starting CB group can not include the first information and the second information. For example, the position of the first "starting part of the MAC subPDU" in the starting CB group can be the starting position of the CB group by default.
[0579] Based on the above scheme, part or all of the CB groups can correspond to the header, and the header corresponding to a certain CB group can carry information to indicate the position of the "start of the first MAC subPDU" in the CB group, so that the receiving end can determine the structure of the MAC subPDU corresponding to the CB group based on the indication of the header, for example, determine the position of the "start of the first MAC subPDU" in the CB group, so as to decode the CB group / CB without relying on the successful reception of the previous CB group / CB, for example, decode the CB group starting from the position of the "start of the first MAC subPDU" in the CB group, so that the receiving end can process the successfully received CB group / CB in time, avoiding the problem that all CBs after an error CB cannot be processed (or are stuck) due to an error of one CB, thereby reducing the service delay, so that data can arrive within the time delay requirement of the service, thereby facilitating to improve the communication quality of the service, or facilitating to improve the system capacity. In addition, timely delivery of the subsequently received successfully received CB group / CB to the MAC layer processing can reduce the CBs that cannot be delivered to the MAC layer processing, thereby reducing the storage requirement, i.e., reducing the increase of the memory (for example, not requiring a large on-chip memory), which can save costs, or reduce the DDR bandwidth requirement (for example, not requiring a large DDR bandwidth), and at the same time, can also reduce the device power consumption caused by DDR erasing. It is also conducive to coping with the challenges of future services with lower latency requirements and / or higher rate requirements.
[0580] In addition, the scheme provided by the present application that one of part or all of the N CB groups corresponds to a header to indicate the position of the "start of the first MAC subPDU" in the CB group can reduce the indication / resource overhead or header overhead compared with the scheme that each / one CB corresponds to a header to indicate the position of the "start of the first MAC subPDU" in the CB.
[0581] For example, in the case of each / one CB corresponding to a header, as shown in Figure 23 , the header corresponding to CB0 needs to carry information to indicate the position a of the start of MAC subPDU1, the header corresponding to CB1 needs to carry information to indicate the position c of the start of MAC subPDU I-1 , the header corresponding to CB2 needs to carry information to indicate the position b of the start of MAC subPDU I , and the header corresponding to CB3 needs to carry information to indicate the position d of the start of MAC subPDU I+1the start of the first "MAC subPDU" in the CB group. In addition, the present application also provides a data processing method, in which, for a CB group, the incomplete MAC subPDU is placed after all complete MAC subPDUs, so that the start position of a CB group is as close as possible to the start position of a MAC subPDU. Optionally, information indicating the position of the incomplete MAC subPDU can be carried in the header corresponding to the CB group. As shown in
[0582] the above Figure 19 In the method shown, the header corresponding to the CB group carries information indicating the position of the start of the first "MAC subPDU" in the CB group. In addition, the present application also provides a data processing method, in which, for a CB group, the incomplete MAC subPDU is placed after all complete MAC subPDUs, so that the start position of a CB group is as close as possible to the start position of a MAC subPDU. Optionally, information indicating the position of the incomplete MAC subPDU can be carried in the header corresponding to the CB group. As shown in Figure 24 The data processing method includes the following steps:
[0583] S2401, the first communication device determines N CB groups corresponding to the first TB according to the first value.
[0584] For example, the implementation of determining N CB groups corresponding to the first TB according to the first value can refer to the related content described above, and details are not described herein.
[0585] For example, the implementation of determining N CB groups corresponding to the first TB according to the first value can refer to the related content described above, and details are not described herein.
[0586] Optionally, before S2401, the embodiments of the present application can further include: S2400A, the first communication device determines the first value (not shown in Figure 24 ).
[0587] For example, the implementation of determining N CB groups corresponding to the first TB according to the first value can refer to the related content described above, and details are not described herein.
[0588] Optionally, before at least one of S2400A, S2401, S2402, S2403, the embodiments of the present application can further include: S2400B, the first communication device obtains the first resource or the related information of the first resource (not shown in Figure 24 ).
[0589] For example, the implementation of determining N CB groups corresponding to the first TB according to the first value can refer to the related content described above, and details are not described herein.
[0590] S2402, the first communication device determines the first TB.
[0591] For example, the implementation of step S2402 can be referred to the relevant description in step S1902 above, and will not be repeated here.
[0592] As one possible implementation, the first TB may not include / do not correspond to the header corresponding to the starting CB group among the N CB groups, or the starting CB group may not correspond to / do not have a header, or the header corresponding to the starting CB group may not include information used to indicate the location of the incomplete MAC subPDU.
[0593] Optionally, the N CB groups corresponding to the first TB include at least one first type CB group. For example, the first type CB group includes at least one complete MAC subPDU and at least one incomplete MAC subPDU. For example, at least one complete MAC subPDU is located before at least one incomplete MAC subPDU, or in other words, the incomplete MAC subPDU is located at the end of the first type CB group.
[0594] For example, such as Figure 25 As shown, at least one of the N CB groups may include CB group 1 and CB group 2. CB group 1 contains complete MAC subPDUs, namely MAC subPDU1 to MAC subPDU2. X-2 The incomplete MAC subPDU contained is the MAC subPDU. X-1 The first part (denoted as MAC subPDU) X-1,1 ), where MAC subPDU1 to MAC subPDU X-2 Located in MAC subPDU X-1,1 Previously, CB group 2 contained a complete MAC subPDU as the MAC subPDU. X To MAC subPDU Y The incomplete MAC subPDU contained is the MAC subPDU. X-1 The remaining part (denoted as MAC subPDU) X-1,2 ), where MACsubPDU X To MAC subPDU Y Located in MAC subPDU X-1,2 Previously, it should be noted that... Figure 25 Not all CBCRCs are shown; only the CRC of the last CB in a CB group is shown.
[0595] Optionally, the N CB groups corresponding to the first TB include at least one second type CB group and / or at least one third type CB group. For example, the second type CB group includes at least one complete MAC subPDU and does not include any incomplete MAC subPDU. For example, the third type CB group includes at least one incomplete MAC subPDU and does not include any complete MAC subPDU.
[0596] Optionally, the first TB / CB group includes / corresponds to / is associated with a header corresponding to the CB group. For example, the header corresponding to the CB group includes the third information.
[0597] In a possible implementation, the first TB includes / is associated with a header corresponding to the first type CB group. For example, the header corresponding to the first type CB group includes the third information. For example, the first type CB group can include the first CB group, or the first CB group is the first type CB group.
[0598] Optionally, the third information indicates a position of the incomplete MAC subPDU in the first type CB group or the CB group, or indicates a size of the incomplete MAC subPDU in the first type CB group or the CB group. For example, the position of the incomplete MAC subPDU can include / replace a start position and / or an end position of the incomplete MAC subPDU.
[0599] For example, the position of the incomplete MAC subPDU in the first type CB group or the CB group can be indicated by a position of the incomplete MAC subPDU in the CB group, or by a distance (or offset or interval of bit number / byte number) or interval between the incomplete MAC subPDU and a start boundary of the first type CB group or the CB group / a start boundary of a data part of the first type CB group or the CB group / an end position (or end boundary) of the header corresponding to the first type CB group or the CB group / a start position (or start boundary) of the header corresponding to the first type CB group or the CB group, without limitation.
[0600] For example, the size of the incomplete MAC subPDU in the first type CB group or the CB group can be indicated by a distance (or offset or interval of bit number / byte number) or interval between the incomplete MAC subPDU and an end boundary of the first type CB group or the CB group / an end boundary of a data part of the first type CB group or the CB group, without limitation. Figure 25 For example, the size of the incomplete MAC subPDU in the first type CB group or the CB group can be indicated by a distance (or offset or interval of bit number / byte number) or interval between the incomplete MAC subPDU and an end boundary of the first type CB group or the CB group / an end boundary of a data part of the first type CB group or the CB group, without limitation. X-1,1 For example, the size of the incomplete MAC subPDU in the first type CB group or the CB group can be indicated by a distance (or offset or interval of bit number / byte number) or interval between the incomplete MAC subPDU and an end boundary of the first type CB group or the CB group / an end boundary of a data part of the first type CB group or the CB group, without limitation. X-1,1 For example, the size of the incomplete MAC subPDU in the first type CB group or the CB group can be indicated by a distance (or offset or interval of bit number / byte number) or interval between the incomplete MAC subPDU and an end boundary of the first type CB group or the CB group / an end boundary of a data part of the first type CB group or the CB group, without limitation. X-1,2 X-1,2 Size.
[0601] For example, the location of an incomplete MAC subPDU in a first type CB group or CB group may include / be replaced with the location of a complete MAC subPDU in a first type CB group or CB group.
[0602] For example, a complete MAC subPDU in a CB group can include / replace: the last complete MAC subPDU in the CB group, or all complete MAC subPDUs in the CB group.
[0603] For example, the location of the complete MAC subPDU can include / replace with: the end position and / or the start position of the complete MAC subPDU.
[0604] For example, the size of the incomplete MAC subPDU in the first type CB group or CB group can include / be replaced with the size of the complete MAC subPDU in the first type CB group or CB group.
[0605] For example, based on Figure 25 In the example shown, position 'a' in group CB1 is also the end position of the complete MAC subPDU. Therefore, it can also be understood that the third information indicates the end position of the complete MAC subPDU in group CB, or indicates the size of the complete MAC subPDU, such as MAC subPDU1 to MAC subPDU2. X-2 Total number of bits / bytes.
[0606] As one possible implementation, the header of the first type CB group or the CB group corresponding to it may also include fourth and / or fifth information. For example, the fourth information may indicate whether the incomplete MAC subPDU in the first type CB group or CB group includes the start portion of the MAC subPDU.
[0607] For example, based on Figure 25 The example shown is an incomplete MAC subPDU (i.e., MACsubPDU) in group CB1. X-1,1 This includes the beginning portion of the MAC subPDU, and the incomplete MAC subPDU (i.e., MAC subPDU) in group CB2. X-1,2 The incomplete MAC subPDU in CB group 1 does not include the start portion of the MAC subPDU. Therefore, the header corresponding to CB group 1 may also include a fourth message to indicate that the incomplete MAC subPDU in CB group 1 includes the start portion of the MAC subPDU; the header corresponding to CB group 2 may also include a fourth message to indicate that the incomplete MAC subPDU in CB group 2 does not include the start portion of the MAC subPDU.
[0608] For example, the fifth information indicates a type of the CB group, or indicates that the header of the CB group includes (or does not include) the third information.
[0609] For example, the type of the CB group includes at least one of the following: the first type CB group, the second type CB group, or the third type CB group.
[0610] As a possible implementation, the header corresponding to each of the N CB groups or each of N-1 CB groups of the N CB groups can include the fifth information to indicate the type of the current CB group, or indicate that the current CB group is the first type CB group, the second type CB group, or the third type CB group. For example, in the case where the current CB group is the first type CB group, the header corresponding to the CB group can further include the third information. For example, in the case where the current CB group is the first type CB group, the header corresponding to the CB group can further include the fourth information.
[0611] For example, as shown in FIG. 6, Figure 26 the header corresponding to the CB group can include a first field (indicated by C in FIG. 6), which is used to carry the fifth information. For example, in the case where the fifth information indicates that the current CB group is the first type CB group, as shown in (a) of FIG. 6, the header corresponding to the CB group further includes a second field, which is used to carry the third information. Further, the header corresponding to the CB group can further include a third field used to carry the fourth information, and the third field is an optional field. Figure 26 Figure 26 For example, in the case where the fifth information carried by the first field indicates that the current CB group is the second type CB group or the third type CB group, as shown in (b) of FIG. 6, other bits in the header corresponding to the CB group can be reserved bits, i.e., do not include the second field used to carry the third information and the third field used to carry the fourth information.
[0612] It should be noted that Figure 26 the size of the first field, the second field, and the third field, and the position in the header in FIG. 6 are examples, and the first field, the second field, and the third field can also have other sizes, and the positions in the header can also be other positions. The size of each field and the position of each field in the header are not limited in the present application.
[0613] It should be noted that Figure 26 the size of the first field, the second field, and the third field, and the position in the header in FIG. 6 are examples, and the first field, the second field, and the third field can also have other sizes, and the positions in the header can also be other positions. The size of each field and the position of each field in the header are not limited in the present application.
[0614] S2403, the first communication device sends the first TB. Correspondingly, the second communication device receives the first TB.
[0615] As a possible implementation, the first communication device transmits the first TB on the first resource. At this time, before step S2403, the first communication device needs to acquire the related information of the first resource, such as the time-frequency location, size, etc. of the first resource.
[0616] As a possible implementation, the second communication device receives the first TB in the granularity of CB group.
[0617] For example, the implementation of step S2403 can refer to the related description in the above step S1404, which will not be repeated here.
[0618] Optionally, before step S2403, the embodiments of the present application can further include: the second communication device can determine the N CB groups corresponding to the first TB according to the first value.
[0619] For example, the implementation of the second communication device determining the N CB groups corresponding to the first TB according to the first value can refer to the related description in the above step S1401, which will not be repeated here. In addition, the second communication device determines the N CB groups and the first communication device determines the N CB groups in the above step S2401 do not have a strict order, the first communication device can determine the N CB groups before the second communication device, or the first communication device can determine the N CB groups after the second communication device, or the first communication device and the second communication device can determine the N CB groups at the same time, which is not limited.
[0620] S2404, the second communication device decodes part or all of the N CB groups respectively.
[0621] For example, the second communication device decodes part or all of the N CB groups respectively can include / replace at least one of the following: the second communication device ignores the TB CRC, or the second communication device determines that the first communication device does not add / disable the TB CRC, or the second communication device determines that the TB CRC does not exist, or the second communication device decodes the first CB group, or the second communication device decodes the second CB group, or the second communication device decodes the first CB group and the second CB group respectively. For example, the second CB group is located after the first CB group, which can refer to the related description of the first CB group and the second CB group, which will not be repeated here.
[0622] Optionally, the present application can further include: the second communication device determines the header corresponding to the CB group (or, the N CB groups, or, each of the N CB groups, or, the N-1 CB groups, or, each of the N-1 CB groups in the N CB groups); or, the first communication device determines the header corresponding to the first CB group.
[0623] As a possible implementation, the second communication device decodes the CB group according to the header corresponding to the CB group. Illustratively, the second communication device receives the CB group in granularity of CB group, verifies the CRC of each CB in the CB group, and decodes the CB group according to the header corresponding to the CB group after the CRC of each CB is verified.
[0624] For example, the second communication device can decode the first CB group if the first CB group is received successfully and the CB or CB group before the first CB group is received unsuccessfully.
[0625] For example, decoding the first CB group can include / replace: decoding the first CB group based on the header corresponding to the first CB group.
[0626] For example, the second communication device can decode the first CB group if the second CB group is received successfully and the first CB group is received unsuccessfully.
[0627] For example, by this method, the decoding of a certain CB group can be made independent of the receiving result or decoding result of the CB or CB group before it, and the decoding of the subsequent CB group or CB can still be performed in the case of failure of a CB group or CB (such as CRC verification failure) or decoding failure.
[0628] As a possible implementation, the second communication device decodes part of the N CB groups, and the part of the CB groups are CB groups received successfully or CBs included in the part of the CB groups all pass the CRC verification. In the case that the second communication device decodes all the N CB groups, it means that the N CB groups are all received successfully or the CBs included in the N CBs all pass the CRC verification.
[0629] As a possible implementation, for the first type CB group, the second communication device decodes the first type CB group according to the header corresponding to the first type CB group, including: the second communication device determines that the position before the third information indicated by the third information carried by the header corresponding to the first type CB group is a complete MAC subPDU, and thus decodes the bits before the position according to the format of the complete MAC subPDU and according to the MAC subheader. For the bits after the position, the second communication device determines that they are bits of an incomplete MAC subPDU, which can be decoded together with the incomplete MAC subPDU in the CB group after the current CB group and / or the incomplete MAC subPDU in the CB group before the current CB group, or can be decoded after being spliced in order from the incomplete MAC subPDU in different CB groups.
[0630] Illustratively, based on the fact that the CB group is received successfully, the second communication device decodes the CB group according to the header corresponding to the CB group. Figure 25In the illustrated example, the second communication device can decode the bits before the position a corresponding to the header of the CB group 1 based on the CB group 1, and decode the bits before the position b corresponding to the header of the CB group 2 based on the CB group 2. Based on the headers corresponding to the CB group 1 and the CB group 2, and combining the data bits after the position a in the CB group 1 and the data bits after the position b in the CB group 2, the complete MAC subPDU is obtained X- 1.
[0631] In an example, the second communication device decodes the second type of CB group according to the header corresponding to the second type of CB group, which can include: the second communication device determines, according to the fifth information carried by the header corresponding to the second type of CB group, that the current CB group includes a complete MAC subPDU and does not include an incomplete MAC subPDU, and thus can decode all bits in the current CB group in the format of the complete MAC subPDU according to the MAC subheader.
[0632] In an example, the second communication device decodes the third type of CB group according to the header corresponding to the third type of CB group, which can include: the second communication device determines, according to the fifth information carried by the header corresponding to the third type of CB group, that the current CB group does not include a complete MAC subPDU, and thus can decode the incomplete MAC subPDU in the CB group after the current CB group and / or the incomplete MAC subPDU in the CB group before the current CB group together, or can splice the incomplete MAC subPDU in different CB groups in order and then decode.
[0633] In a possible implementation, in the step S2403, the first communication device can perform MAC multiplexing (or, packetization) in a manner of placing complete MAC subPDUs as much as possible to obtain the first TB. For example, the first communication device can determine the first TB through the following two steps:
[0634] Step 1: The first communication device determines L MAC subPDUs.
[0635] For example, the first communication device determining the L MAC subPDUs can include / replace: the first communication device determining the L MAC subPDUs according to the size of the first TB, or the first communication device determining the L MAC subPDUs after performing LCP on the first TB / first resource.
[0636] For example, the L MAC subPDUs can include / replace: L MAC subPDUs arranged in a first order.
[0637] For example, L is a positive integer greater than 1.
[0638] As a possible implementation, the first communication apparatus can perform LCP according to the size of the first TB, determine at least one MAC CE and / or data from at least one logical channel to be transmitted, multiplex the at least one MAC CE and / or data from at least one logical channel to obtain L MAC subPDUs arranged in a first order. The related description of LCP and multiplexing of MAC CE and MAC SDU can be referred to the brief introduction of related art, which will not be repeated here.
[0639] For example, the sizes of different MAC subPDUs in the L MAC subPDUs are different, and there can also be multiple MAC subPDUs with the same size, which is not limited.
[0640] Step 2: The first communication apparatus reorders the L MAC subPDUs according to the sizes of the N CB groups to obtain the first TB.
[0641] As a possible implementation, part of the MAC subPDUs may need to be truncated in the process of reordering the L MAC subPDUs.
[0642] As a possible implementation, the first communication apparatus can implement this step 2 through the flow as shown in Figure 27 Referring to Figure 27 , the flow includes the following steps:
[0643] Optionally, S2701, determine whether there is a complete MAC subPDU in the L MAC subPDUs that does not belong to the first n-1 CB groups and the nth CB group, n=1, 2, …, N. Or, determine whether there is a complete MAC subPDU that is not divided into any CB group.
[0644] For example, in the case that there is at least one complete MAC subPDU that does not belong to the first n-1 CB groups and the nth CB group, the following step S2702 is performed; in the case that there is no complete MAC subPDU that is not divided into any CB group, the bits of the current incomplete MAC subPDU are determined as the bits in the nth CB group.
[0645] For example, when n=1, step S2701 can be replaced by: determining whether there is a complete MAC subPDU in the L MAC subPDUs that does not belong to the nth CB group. Or, when n=1, this step S2701 can not be performed, that is, it is defaulted that there is a complete MAC subPDU that is not divided into any CB group.
[0646] Optionally, S2702, determine the first MAC subPDU.
[0647] For example, the first MAC subPDU is the first or any one of the L MAC subPDUs that does not belong to the first n-1 CB groups and the nth CB group, where n = 1, 2, ..., N. That is, the current first MAC subPDU has not been assigned to any CB group.
[0648] For example, such as Figure 28 As shown, after step 1 above, the L MAC subPDUs determined by the first communication device are MAC subPDU1, MAC subPDU2, MAC subPDU3, MAC subPDU4, MAC subPDU5, MAC subPDU6, MAC subPDU7, ..., MAC subPDU L For example, when n=1, the first MAC subPDU can be MAC subPDU1. It should be noted that... Figure 28 Not all CB CRCs are shown; only the CRC of the last CB in a CB group is shown.
[0649] Optionally, S2703, determine whether the remaining size of the nth CB group is greater than or equal to the size of the first MAC subPDU.
[0650] For example, the remaining size of the nth CB group refers to the size of the remaining data portion of the nth CB group, that is, the amount of data that the nth CB group can still hold or contain.
[0651] As one possible implementation, if the remaining size of the nth CB group is greater than or equal to the size of the first MAC subPDU, step S2704a is executed; if the remaining size of the nth CB group is less than the size of the first MAC subPDU, step S2704b is executed.
[0652] Optionally, S2704a, the first MAC subPDU is determined as the MAC subPDU in the nth CB group.
[0653] For example, based on Figure 28 In the example shown, when n=1, the first MAC subPDU is MACsubPDU1. Assuming that the remaining size of the first CB group is greater than the size of MAC subPDU1, then MAC subPDU1 is determined as the MAC subPDU in the first CB group.
[0654] For example, after step S2704a, it can be returned to continue to execute step S2701 until all data bits in the nth CB group are determined.
[0655] S2704b, determining whether there is a second MAC subPDU.
[0656] For example, the second MAC subPDU is the first or any one complete MAC subPDU among the L MAC subPDUs, which does not belong to the first n-1 CB groups and the nth CB group, and the size of which is less than or equal to the remaining size of the nth CB group.
[0657] For example, in the case that the size of the certain complete MAC subPDU is greater than the remaining size of the nth CB group, the first communication device continues to traverse the MAC subPDU backward (or continues to traverse other MAC subPDUs) to determine whether there is another complete MAC subPDU whose size is less than or equal to the remaining size of the nth CB group.
[0658] As a possible implementation, in the case that there is the second MAC subPDU, step S2705a is executed; in the case that there is no second MAC subPDU, if there is a third MAC subPDU, step S2705b is executed; in the case that there is no second MAC subPDU, if there is no third MAC subPDU, step S2705c is executed.
[0659] S2705a, determining the second MAC subPDU as the MAC subPDU in the nth CB group.
[0660] For example, after step S2705a, it can be returned to continue to execute step S2701 or S2704b until all data bits in the nth CB group are determined.
[0661] S2705b, determining part or all bits of the third MAC subPDU as the bits in the nth CB group.
[0662] For example, the third MAC subPDU is an incomplete MAC subPDU (or the first or any one incomplete MAC subPDU) which does not belong to the first n-1 CB groups and the nth CB group.
[0663] For example, the third MAC subPDU is an incomplete MAC subPDU obtained by truncating a certain complete MAC subPDU among the L MAC subPDUs.
[0664] As a possible implementation, the size of the part or all bits of the third MAC subPDU is the remaining size of the nth CB group. That is, the part or all bits of the third MAC subPDU can fill up the data part of the nth CB group.
[0665] As a possible implementation, the size of all bits of the third MAC subPDU is less than the remaining size of the nth CB group. That is, all bits of the third MAC subPDU cannot fill up the data part of the nth CB group. Continue to perform S2705c.
[0666] S2705c, determine the part or all bits of the fourth MAC subPDU as the bits in the nth CB group (not shown in the figure). Figure 27
[0667] For example, the fourth MAC subPDU is a complete MAC subPDU (or the first or any complete MAC subPDU) that does not belong to the first n-1 CB groups and the nth CB group.
[0668] As a possible implementation, the size of the part or all bits of the fourth MAC subPDU is the remaining size of the nth CB group. That is, the part or all bits of the fourth MAC subPDU can fill up the data part of the nth CB group. For example, the part bits of the fourth MAC subPDU can be the part bits after truncating the fourth MAC subPDU.
[0669] The following explains the flow shown in Figure 28 , in conjunction with the example shown in Figure 27 . As shown in Figure 28 , the L MAC subPDUs determined by the first communication device are MAC subPDU1, MAC subPDU2, MAC subPDU3, MAC subPDU4, MAC subPDU5, MAC subPDU6, MAC subPDU7, …, MAC subPDU L .
[0670] In the case of n = 1:
[0671] First round of determination process:
[0672] Perform the above step S2701 to determine that there is a complete MAC subPDU that does not belong to the nth CB group.
[0673] Perform the above step S2702 to determine that the first MAC subPDU is MAC subPDU1.
[0674] Performing the above step S2703, since the size of the MAC subPDU1 is less than the remaining size of the 1st CB group, step S2704a is performed to determine the MAC subPDU1 as the MAC subPDU in the 1st CB group. Then return to continue to perform step S2701 to enter the second round of determination process.
[0675] Wherein, after the first round of determination process is performed, the remaining size of the 1st CB group is: the size of the data part of the 1st CB group - the size of the MAC subPDU1.
[0676] The second round of determination process:
[0677] Performing the above step S2701, it is determined that there is a complete MAC subPDU which does not belong to the first n-1 CB groups and the nth CB group.
[0678] Performing the above step S2702, it is determined that the first MAC subPDU is the MAC subPDU2.
[0679] Performing the above step S2703, since the size of the MAC subPDU2 is less than the remaining size of the 1st CB group, step S2704a is performed to determine the MAC subPDU2 as the MAC subPDU in the 1st CB group. Then return to continue to perform step S2701 to enter the third round of determination process.
[0680] Wherein, after the second round of determination process is performed, the remaining size of the 1st CB group is: the size of the data part of the 1st CB group - the size of the MAC subPDU1 - the size of the MAC subPDU2.
[0681] The third round of determination process:
[0682] Performing the above step S2701, it is determined that there is a complete MAC subPDU which does not belong to the first n-1 CB groups and the nth CB group.
[0683] Performing the above step S2702, it is determined that the first MAC subPDU is the MAC subPDU3.
[0684] Performing the above step S2703, since the size of the MAC subPDU3 is greater than the remaining size of the 1st CB group, step S2704b is performed to determine whether there is a second MAC subPDU.
[0685] In step S2704b, the first communication device traverses the other MAC subPDUs and determines that there is no second MAC subPDU and there is no third MAC subPDU, and thus executes step S2705c, determines that the MAC subPDU3 is the fourth MAC subPDU, and thus determines the first part of bits in the MAC subPDU3 as the bits in the first CB group. Since the size of the part of bits of the fourth MAC subPDU is equal to the remaining size of the first CB group, the part of bits of the fourth MAC subPDU can fill the data part of the first CB group.
[0686] In the fourth round of determination process, the remaining size of the first CB group is: the size of the data part of the first CB group - the size of the MAC subPDU1 - the size of the MAC subPDU2 - the size of the MAC subPDU4.
[0687] The fourth round of determination process is as follows:
[0688] The step S2701 is executed, and it is determined that there is a complete MAC subPDU that does not belong to the first n-1 CB groups and the nth CB group.
[0689] The step S2702 is executed, and it is determined that the first MAC subPDU is the MAC subPDU3.
[0690] The step S2703 is executed, and since the size of the MAC subPDU3 is greater than the remaining size of the first CB group, the step S2704b is executed to determine whether there is a second MAC subPDU.
[0691] In step S2704b, the first communication device traverses the other MAC subPDUs and determines that there is no second MAC subPDU and there is no third MAC subPDU, and thus executes step S2705c, determines that the MAC subPDU3 is the fourth MAC subPDU, and thus determines the first part of bits in the MAC subPDU3 as the bits in the first CB group. Since the size of the part of bits of the fourth MAC subPDU is equal to the remaining size of the first CB group, the part of bits of the fourth MAC subPDU can fill the data part of the first CB group.
[0692] In the fourth round of determination process, the remaining size of the first CB group is: the size of the data part of the first CB group - the size of the MAC subPDU1 - the size of the MAC subPDU2 - the size of the MAC subPDU4.
[0693] In the case of n=2:
[0694] The first round of determination process is as follows:
[0695] The step S2701 is executed, and it is determined that there is a complete MAC subPDU that does not belong to the first n-1 CB groups and the nth CB group.
[0696] The step S2702 is performed, and it is determined that the first MAC subPDU is the MAC subPDU 5.
[0697] The step S2703 is performed, and since the size of the MAC subPDU 5 is smaller than the remaining size of the second CB group, the step S2704a is performed to determine the MAC subPDU 5 as the MAC subPDU in the second CB group. Then, the step S2701 is continued to be performed, and the second round of determination is entered.
[0698] The remaining size of the second CB group after the first round of determination is performed is: the size of the data part of the second CB group - the size of the MAC subPDU 5.
[0699] The second round of determination is performed as follows:
[0700] The step S2701 is performed, and it is determined that there is a complete MAC subPDU that does not belong to the first n-1 CB groups and the nth CB group.
[0701] The step S2702 is performed, and it is determined that the first MAC subPDU is the MAC subPDU 6.
[0702] The step S2703 is performed, and since the size of the MAC subPDU 6 is smaller than the remaining size of the second CB group, the step S2704a is performed to determine the MAC subPDU 6 as the MAC subPDU in the second CB group. Then, the step S2701 is continued to be performed, and the third round of determination is entered.
[0703] The remaining size of the second CB group after the second round of determination is performed is: the size of the data part of the second CB group - the size of the MAC subPDU 5 - the size of the MAC subPDU 6.
[0704] The third round of determination is performed as follows:
[0705] The step S2701 is performed, and it is determined that there is a complete MAC subPDU that does not belong to the first n-1 CB groups and the nth CB group.
[0706] The step S2702 is performed, and it is determined that the first MAC subPDU is the MAC subPDU 7.
[0707] After step S2703 is performed, since the size of the MAC subPDU 7 is smaller than the remaining size of the second CB group, step S2704a is performed to determine the MAC subPDU 7 as the MAC subPDU in the second CB group. Then, the process returns to continue step S2701, and enters the fourth round of determination process.
[0708] After the third round of determination process is performed, the remaining size of the second CB group is: the size of the data part of the second CB group - the size of the MAC subPDU 5 - the size of the MAC subPDU 6 - the size of the MAC subPDU 7.
[0709] The fourth round of determination process is:
[0710] After step S2701 is performed, it is determined that there is a complete MAC subPDU which does not belong to the first n-1 CB groups and the nth CB group.
[0711] After step S2702 is performed, it is determined that the first MAC subPDU is the MAC subPDU 8.
[0712] After step S2703 is performed, since the size of the MAC subPDU 8 is larger than the remaining size of the second CB group, step S2704b is performed to determine whether there is a second MAC subPDU.
[0713] In step S2704b, the first communication device traverses other MAC subPDUs to determine that there is no second MAC subPDU, and thus step S2705b is performed to determine that the third MAC subPDU is the remaining part of the MAC subPDU 3, so that the remaining part of the MAC subPDU 3 is determined as the bit in the second CB group. Since the size of all bits of the third MAC subPDU is equal to the remaining size of the second CB group, all bits of the third MAC subPDU can fill the data part of the second CB group.
[0714] After the fourth round of determination process is performed, all data bits in the second CB group can be determined. Thus, the data bits of the third CB group when n=3 are determined. The determination process of the data bits in the subsequent CB groups is similar, and can refer to the determination process of the first CB group and the second CB group, which will not be described herein.
[0715] Based on the above scheme, the complete MAC subPDU in a CB group can be located before the incomplete MAC subPDU, and part or all of the CB groups in the N CB groups can correspond to the header. The header corresponding to a certain CB group can carry information to indicate the position of the incomplete MAC subPDU in the CB group, so that the receiving end can determine the structure of the MAC subPDU corresponding to the CB group based on the indication of the header, for example, determine the starting position of the incomplete MAC subPDU and / or the ending position of the complete MAC subPDU in the CB group, so as to decode the CB group / CB without relying on the successful reception of the previous CB group / CB, for example, decoding the CB group from the starting position of the data part of the CB group to the end of the starting position of the incomplete MAC subPDU, so that the receiving end can process the data in the CB group / CB received successfully in time, avoiding the problem that all the CBs after the error CB cannot be processed (or are blocked) due to an error in one CB, thereby reducing the service delay, so that the data can arrive within the time delay requirement of the service, thereby facilitating to improve the communication quality of the service, or facilitating to improve the system capacity. In addition, timely delivery of the subsequent CB group / CB received successfully to the MAC layer processing can reduce the CBs that cannot be delivered to the MAC layer processing, thereby reducing the storage requirement, that is, reducing the increase of the memory (for example, not needing a large on-chip memory), which can save costs, or reduce the DDR bandwidth requirement (for example, not needing a large DDR bandwidth), and at the same time, can also reduce the device power consumption caused by DDR erasing. It is also conducive to coping with the challenges of future services with lower latency requirements and / or higher rate requirements.
[0716] In addition, the scheme provided by the present application that one of the part or all of the CB groups in the N CB groups corresponds to a header to indicate the starting position of the incomplete MAC subPDU in the CB group can reduce the indication / resource overhead or header overhead compared with the scheme that one of the part or all of the CBs in the C CBs corresponds to a header to indicate the starting position of the incomplete MAC subPDU in the CB.
[0717] For example, in the case that one of the part or all of the CBs in the C CBs corresponds to a header, as shown in Figure 29 , the header corresponding to CB0 needs to carry information to indicate the starting position a of the previous part of the MAC subPDU X , the header corresponding to CB1 needs to carry information to indicate the starting position b of the subsequent part of the MAC subPDU X , the header corresponding to CB2 needs to carry information to indicate the starting position c of the previous step part of the MAC subPDU Z , and the header corresponding to CB3 needs to carry information to indicate the starting position d of the subsequent step part of the MAC subPDUZ The starting position d of the latter part. Based on the above scheme provided in the present application, only the starting position of the incomplete MAC subPDU in CB group 1 needs to be carried in the corresponding header of CB group 1, and the starting position of the incomplete MAC subPDU in CB group 2 needs to be carried in the corresponding header of CB group 2, so that the indication / resource overhead can be reduced.
[0718] In the embodiments of the present application, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but can optionally include steps or units not listed, or can optionally include other steps or units inherent to the process, method, product or device.
[0719] In the present application, "indication" can include: direct indication, or indirect indication, or explicit indication, or implicit indication.
[0720] In the present application, "including" can include: direct inclusion, or indirect inclusion, or explicit inclusion, or implicit inclusion.
[0721] It should be understood that the prior art can change as the technical solutions evolve, and the technical solutions provided in the present application are not limited to the provided prior art.
[0722] It should be noted that different embodiments or parts of steps (for example, any one or more steps) in different embodiments in the present application can be combined to form new embodiments. It should be noted that the part of steps or any one or more steps in different embodiments can include optional steps in a certain embodiment, or can include mandatory steps in a certain embodiment, or can include optional steps and mandatory steps in a certain embodiment, which is not limited by the present application.
[0723] It should be noted that the terms and / or descriptions of different embodiments are consistent and can be mutually referred to each other if there is no special description and logical conflict.
[0724] It should be noted that the present application does not limit the order of the steps in the embodiments of the present application.
[0725] It should be noted that the present application does not limit the order of the judgment of different conditions in the embodiments of the present application.
[0726] It should be noted that the "after" and "time" in the present application are not strictly limited to the time point.
[0727] It should be noted that the terms and names involved in the present application are only examples, and can also be other names. The present application is not limited.
[0728] In a possible implementation, for the above method embodiments, in a CU-DU architecture or an ORAN system, the functions of the access network device and the terminal interaction can be implemented by the DU or the O-DU. The information sent by the access network device to the terminal can be generated by the DU or the O-DU, or can be generated by the CU or the O-CU and sent to the DU or the O-DU. The processing function of the access network device can be implemented by the CU or the O-CU, or can be implemented by the DU or the O-DU, or can be jointly implemented by the CU and the DU (or the O-CU and the O-DU), and is not limited.
[0729] The above describes the method provided by the present application. In addition, the present application also provides a communication device for implementing the functions described in the above method embodiments.
[0730] It can be understood that, in order to implement the above functions, the communication device comprises a hardware structure and / or a software module for executing each function. Those skilled in the art should easily realize that, in combination with the units and algorithm steps of the examples described in the embodiments disclosed in the present application, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a certain function is implemented in hardware or computer software driven hardware depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods for each specific application to implement the described functions, but such implementation should not be considered beyond the scope of the present application.
[0731] The embodiments of the present application can divide the functions of the communication device according to the above method embodiments, for example, each function module can be divided according to each function, or two or more functions can be integrated into one processing module. The integrated module can be realized in the form of hardware or software function module. It should be noted that the division of modules in the embodiments of the present application is illustrative, and is only a logical function division. Actual implementation can have another division method.
[0732] Figure 30 A structural schematic diagram of a communication device 300 is shown. The communication device 300 includes a processing module 3001 and a transceiver module 3002. The communication device 300 can be used to implement the functions of the first communication device and the second communication device.
[0733] In some embodiments, the communication device 300 can also include a storage module (not shown in the figure) for storing program instructions and data. Figure 30
[0734] In some embodiments, the transceiver module 3002, which can also be referred to as a transceiver unit, is configured to implement transmit and / or receive functionality. The transceiver module 3002 can be constituted by a transceiver circuit, a transceiver, a transceiver, or a communication interface.
[0735] In some embodiments, the transceiver module 3002 can include a receiving module and a transmitting module for performing the receiving and transmitting steps of the method embodiments described above by the first communication device or the second communication device, and / or for supporting other processes related to the techniques described herein; and the processing module 3001 can be configured to perform the processing steps of the method embodiments described above by the first communication device or the second communication device, and / or for supporting other processes related to the techniques described herein.
[0736] When the communication device 300 is configured to implement the functions of the second communication device:
[0737] The processing module 3001 is configured to determine N groups of CBs corresponding to the first transport block TB according to a first value, wherein the first value is a number X of CBs included in one group of CBs, or a number Y of groups of CBs corresponding to one TB; N, X, and Y are integers greater than or equal to 1; and the processing module 3001 is further configured to decode part or all of the N groups of CBs respectively. The N groups of CBs satisfy one of the following conditions: each of the N groups of CBs includes a second number of CBs; or the first M groups of CBs among the N groups of CBs include the second number of CBs, and the last N-M groups of CBs include a third number of CBs, wherein M is a positive integer less than N; or the first N-M groups of CBs among the N groups of CBs include the third number of CBs, and the last M groups of CBs include the second number of CBs; or each of the N groups of CBs includes a fourth number of CBs.
[0738] Optionally, the transceiver module 3001 is configured to receive the N groups of CBs.
[0739] Optionally, the processing module 3001 is further configured to decode part or all of the N groups of CBs respectively, including: the processing module 3001 is further configured to decode a first group of CBs among the N groups of CBs, wherein there is a group of CBs that fails to be received among the groups of CBs before the first group of CBs.
[0740] Optionally, the processing module 3001 is further configured to decode part or all of the N groups of CBs respectively, including: the processing module 3001 is further configured to decode a first group of CBs among the N groups of CBs according to a header corresponding to the first group of CBs.
[0741] When the communication device 300 is configured to implement the functions of the first communication device:
[0742] The processing module 3001 is configured to determine N code block (CB) groups corresponding to a first transport block (TB) according to a first value, wherein the first value is a number X of CBs contained in one CB group or a number Y of CB groups corresponding to one TB; N, X, and Y are integers greater than or equal to 1; and the processing module 3001 is further configured to perform logical channel prioritization (LCP) based on a first CB group. The first CB group is one of the N CB groups. The N CB groups satisfy one of the following conditions: the number of CBs contained in each of the N CB groups is a second value; or the number of CBs contained in the first M CB groups of the N CB groups is the second value, the number of CBs contained in the last N-M CB groups of the N CB groups is a third value, and M is a positive integer less than N; or the number of CBs contained in the first N-M CB groups of the N CB groups is the third value, and the number of CBs contained in the last M CB groups of the N CB groups is the second value; or the number of CBs contained in each of the N CB groups is a fourth value.
[0743] Optionally, the processing module 3001 is further configured to perform LCP based on the first CB group, including: the processing module 3001 is further configured to perform LCP based on a size of a data part of the first CB group, and the size of the data part of the first CB group is determined based on a size of the first CB group and a size of a cyclic redundancy check (CRC) code corresponding to each CB in the first CB group.
[0744] Optionally, each of the N CB groups contains a positive integer number of complete medium access control sub-protocol data units (MAC subPDUs).
[0745] Optionally, the processing module 3001 is further configured to determine the first TB based on a first data set, wherein the first data set is determined based on the LCP performed on the first CB group; and the transceiver module 3002 is configured to transmit the first TB.
[0746] Optionally, after performing LCP based on the first CB group, the processing module 3001 is further configured to perform LCP based on a second CB group of the N CB groups, and the second CB group is located after the first CB group in the N CB groups.
[0747] Optionally, the processing module 3001 is further configured to determine the first TB based on a first data set and a second data set, wherein the first data set is determined based on the LCP performed on the first CB group, and the second data set is determined based on the LCP performed on the second CB group; and the transceiver module 3002 is configured to transmit the first TB.
[0748] All related content of each step involved in the method embodiments described above can be referred to the function description of the corresponding functional module, which will not be repeated here.
[0749] In this application, the communication apparatus 300 can be presented in the form of integrated division of various functional modules. The "module" here can refer to a specific application-specific integrated circuit (ASIC), a circuit, a processor and a memory executing one or more software or firmware programs, an integrated logic circuit, and / or other devices that can provide the above functions.
[0750] In some embodiments, when the communication apparatus 300 in the method is a chip or a chip system, the function / implementation process of the transceiver module 3002 can be implemented through the input / output interface (or communication interface) of the chip or chip system, and the function / implementation process of the processing module 3001 can be implemented through the processor (or processing circuit) of the chip or chip system. Figure 30
[0751] Since the communication apparatus 300 provided by the embodiment can execute the above method, the technical effects that can be obtained thereby can refer to the above method embodiments, which will not be described here again.
[0752] As a possible product form, the first communication apparatus or the second communication apparatus described in the embodiments of the present application can be implemented using one or more field programmable gate arrays (FPGAs), programmable logic devices (PLDs), controllers, state machines, gate logic, discrete hardware components, any other suitable circuits, or any combination of circuits capable of performing the various functions described throughout this application.
[0753] As another possible product form, the first communication apparatus or the second communication apparatus described in the embodiments of the present application can be implemented by a general bus architecture. For ease of illustration, see Figure 31 , Figure 31 FIG. 13 is a structural schematic diagram of a communication apparatus 3100 provided by the embodiments of the present application. The communication apparatus 3100 includes a processor 3101 and a transceiver 3102. The communication apparatus 3100 can be a first communication apparatus, or a chip or chip system or module therein; or the communication apparatus 3100 can be a second communication apparatus, or a chip or chip system or module therein. Figure 31 Only the main components of the communication apparatus 3100 are shown. In addition to the processor 3101 and the transceiver 3102, the communication apparatus can further include a memory 3103, and an input / output device (not shown in the figure).
[0754] Optionally, the processor 3101 is mainly used for processing communication protocols and communication data, and controlling the whole communication device, executing software programs, processing data of the software programs, so as to realize the methods provided in the above method embodiments. The memory 3103 is mainly used for storing software programs and data. The transceiver 3102 can include radio frequency circuit and antenna, and the radio frequency circuit is mainly used for conversion between baseband signal and radio frequency signal and processing of the radio frequency signal. The antenna is mainly used for receiving and transmitting radio frequency signals in the form of electromagnetic waves. The input and output device, such as touch screen, display screen, keyboard, etc., is mainly used for receiving user input data and outputting data to the user.
[0755] Optionally, the processor 3101, the transceiver 3102, and the memory 3103 can be connected through a communication bus.
[0756] When the communication device is powered on, the processor 3101 can read the software program in the memory 3103, execute the instructions of the software program, and process the data of the software program. When it is necessary to send data wirelessly, the processor 3101 performs baseband processing on the data to be sent, and outputs the baseband signal to the radio frequency circuit. The radio frequency circuit performs radio frequency processing on the baseband signal, and transmits the radio frequency signal in the form of electromagnetic wave through the antenna. When data is sent to the communication device, the radio frequency circuit receives the radio frequency signal through the antenna, converts the radio frequency signal into a baseband signal, and outputs the baseband signal to the processor 3101. The processor 3101 converts the baseband signal into data and processes the data.
[0757] In another implementation, the radio frequency circuit and the antenna can be arranged independently of the processor performing baseband processing, for example, in a distributed scenario, the radio frequency circuit and the antenna can be arranged remotely from the communication device.
[0758] In some embodiments, in the hardware implementation, those skilled in the art can conceive that the above-mentioned communication device 300 can adopt the form of the communication device 3100 shown in the figure. Figure 31
[0759] As an example, Figure 30 the functions / implementation processes of the processing module 3001 in the communication device 3100 shown in the figure can be realized by calling the computer execution instructions stored in the memory 3103 by the processor 3101 in the communication device 3100. Figure 31 the functions / implementation processes of the transceiver module 3002 in the communication device 3100 shown in the figure can be realized by the transceiver 3102 in the communication device 3100. Figure 30 Figure 31
[0760] As another possible product form, the first communication device or the second communication device in the present application can adopt the form of the communication device 3100 shown in the figure. Figure 32 The constituent structure shown, or includes Figure 32 The components shown. Figure 32 A constituent schematic diagram of a communication device 3200 is provided in the present application, which can be a first communication device, or a module or chip or system on chip in the first communication device; or, can be a second communication device, or a module or chip or system on chip in the second communication device.
[0761] As Figure 32 shown, the communication device 3200 includes at least one processor 3201, and at least one communication interface (3204). (In the figure, only one communication interface 3204 and one processor 3201 are exemplary to be included for illustration.) Figure 32 Optionally, the communication device 3200 can further include a communication bus 3202 and a memory 3203.
[0762] The processor 3201 can be a general central processing unit (CPU), a general processor, a network processor (NP), a digital signal processor (DSP), a microprocessor, a microcontroller, a PLD, or any combination thereof. The processor 3201 can also be other devices with processing functions, such as a circuit, a device, or a software module, without limitation.
[0763] The communication bus 3202 is used to connect different components in the communication device 3200, so that different components can communicate. The communication bus 3202 can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 32 In the figure, only one thick line is used to represent, but it does not mean that there is only one bus or one type of bus.
[0764] The communication interface 3204 is used to communicate with other devices or communication networks. Exemplarily, the communication interface 3204 can be a module, a circuit, a transceiver, or any device capable of realizing communication. Optionally, the communication interface 3204 can also be an input and output interface located in the processor 3201, used to realize the signal input and signal output of the processor.
[0765] The memory 3203 can be a device with storage function, used to store instructions and / or data. Among them, the instructions can be a computer program.
[0766] Exemplarily, the memory 3203 can be a read-only memory (ROM) or other type of static storage device that can store static information and / or instructions that are not to be changed; or can be a random access memory (RAM) or other type of dynamic storage device that can store information and / or instructions that are to be changed, or both. The memory 3203 can also be an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical storage, optical disc storage including compact disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, and the like, magnetic storage including magnetic tape, magnetic disk storage, and the like, or other non-transitory computer readable medium that stores instructions and / or data that are not to be changed. The memory 3203 is not limited in this regard.
[0767] It is to be noted that the memory 3203 can be independent of the processor 3201, or can be integrated with the processor 3201. The memory 3203 can be located within the communication apparatus 3200, or can be located outside the communication apparatus 3200. The processor 3201 can be configured to execute instructions stored in the memory 3203 to implement the methods provided in the embodiments described below.
[0768] Optionally, the processor 3201 and / or the memory 3203 can include an artificial intelligence (AI) module, which is configured to implement AI-related functions. The AI module can be implemented in software, hardware, or a combination of software and hardware. For example, the AI module can include a radio access network intelligent controller (RIC) module. The AI module can be a near-real-time RIC or a non-real-time RIC.
[0769] As an optional implementation manner, the communication apparatus 3200 can further include an output device 3205 and an input device 3206. The output device 3205 is in communication with the processor 3201, and can display information in various ways. For example, the output device 3205 can be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, a projector, or the like. The input device 3206 is in communication with the processor 3201, and can receive input of a user in various ways. For example, the input device 3206 can be a mouse, a keyboard, a touch screen device, a sensing device, or the like.
[0770] In some embodiments, on the hardware implementation, those skilled in the art can think of the above Figure 30 The communication apparatus 300 shown can take the form of Figure 32 The communication apparatus 3200 shown.
[0771] As an example, Figure 30 The function / implementation process of the processing module 3001 in the communication apparatus 300 shown can be realized by Figure 32 The transceiver module 3002 in the communication apparatus 300 shown can be realized by Figure 30 The function / implementation process of the processing module 3001 in the communication apparatus 300 shown can be realized by Figure 32 The transceiver module 3002 in the communication apparatus 300 shown can be realized by
[0772] It should be noted that Figure 32 The structure shown does not constitute a specific limitation of the first communication apparatus or the second communication apparatus. For example, in other embodiments of the application, the first communication apparatus or the second communication apparatus can include more or fewer components than shown, or combine certain components, or split certain components, or different component arrangements. The components shown can be implemented in hardware, software or a combination of software and hardware.
[0773] In some embodiments, the embodiments of the application also provide a communication apparatus, which includes a processor for implementing the method in any of the above method embodiments.
[0774] As a possible implementation, the communication apparatus further includes a memory. The memory is used to save necessary computer programs and data. The computer programs can include instructions, and the processor can invoke the instructions in the computer programs stored in the memory to instruct the communication apparatus to execute the method in any of the above method embodiments. Of course, the memory can also not be in the communication apparatus.
[0775] As another possible implementation, the communication apparatus further includes an interface circuit, which is a code / data read / write interface circuit, and the interface circuit is used to receive computer execution instructions (computer execution instructions are stored in the memory, which can be directly read from the memory or can pass through other devices) and transmit to the processor.
[0776] As yet another possible implementation, the communication apparatus further includes a communication interface, which is used to communicate with modules outside the communication apparatus.
[0777] It can be understood that the communication apparatus can be a chip or a chip system, and when the communication apparatus is a chip system, it can be composed of a chip or can include a chip and other discrete devices, and the embodiments of the application do not make specific limitations thereto.
[0778] The application further provides a computer readable storage medium, which stores a computer program or instructions, and the computer program or instructions realize the functions of any of the method embodiments when executed by a computer.
[0779] The application further provides a computer program product, which realizes the functions of any of the method embodiments when executed by a computer.
[0780] Those skilled in the art can understand that, for the convenience and brevity of description, the specific working processes of the system, device and unit described above can refer to the corresponding processes in the foregoing method embodiments, and will not be described here.
[0781] It can be understood that the system, device and method described in the application can also be implemented in other manners. For example, the device embodiments described above are only schematic; the division of the units is only a logical function division; there can be another division manner in actual implementation; for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections between the units can be indirect couplings or communication connections through some interfaces, devices or units, and can be electrical, mechanical or in other forms.
[0782] The units described as separate components can or can not be physically separate, that is, can be located in one place, or can be distributed on a plurality of network units. The components shown as units can or can not be physical units. Part or all of the units can be selected according to actual needs to achieve the purpose of the embodiment scheme.
[0783] In addition, each functional unit in each embodiment of the application can be integrated into one processing unit, or each unit can be a physically independent unit, or two or more units can be integrated into one unit.
[0784] In the embodiments described above, all or some of the embodiments can be implemented by software, hardware, firmware or any combination thereof. When implemented in software, all or some of the embodiments can be implemented in the form of a computer program product storing computer program instructions. The computer program instructions can be stored in a computer readable medium such as floppy disk, hard disk, optical storage medium, magnetic storage medium, memory device, etc. The computer program instructions can be loaded into and executed by a computer to produce the functions described in the embodiments of the present application. The computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer program instructions can be stored in a computer readable storage medium, or transmitted from one computer readable storage medium to another computer readable storage medium, such as from a website, a computer, a server or a data center to another website, computer, server or data center through a wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) manner. The computer readable storage medium can be any available medium or a set of one or more servers, data centers, etc. that can be integrated with a medium. The available medium can be a magnetic medium (such as floppy disk, hard disk, magnetic tape), an optical medium (such as DVD), or a semiconductor medium (such as solid state disk (SSD)), etc. In the embodiments of the present application, the computer can include the apparatus described above.
[0785] Although the present application is described in conjunction with the specific embodiments, it is obvious that other variations and modifications of the present application can be understood and implemented by those skilled in the art with the contents of the present application, the attached drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "one" does not exclude a plurality. A single processor or other unit can implement several functions listed in the claims. Some measures described in mutually different dependent claims can be combined and produce a good result.
[0786] Although the present application is described in conjunction with the specific features and embodiments thereof, it is obvious that various modifications and combinations can be made thereto without departing from the scope of the present application. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense, and all such modifications of the application as will clearly fall within the scope of the application are intended to be embraced therein. Obviously, various modifications and changes can be made thereto without departing from the scope of the present application. Accordingly, the present application intends to include all such modifications and changes as fall within the scope of the claims and their equivalents.
Claims
1. A data processing method, characterized by, The method comprises: determining, according to a first value, N code block (CB) groups corresponding to a first transport block (TB); the first value is a number X of CBs included in one CB group, or a number Y of CB groups corresponding to one TB; the N, the X, and the Y are integers greater than or equal to 1; respectively decoding part or all of the N CB groups; wherein the N CB groups satisfy one of the following conditions: a number of CBs included in each of the N CB groups is a second value; or a number of CBs included in the first M CB groups of the N CB groups is a second value, and a number of CBs included in the last N-M CB groups of the N CB groups is a third value, the M being a positive integer less than the N; or a number of CBs included in the first N-M CB groups of the N CB groups is a third value, and a number of CBs included in the last M CB groups of the N CB groups is a second value; or a number of CBs included in each of the N CB groups is a fourth value.
2. The method of claim 1, wherein, The method further comprises: receiving or sending first indication information, the first indication information comprising information of the first value.
3. The method according to claim 1 or 2, characterized in that, respectively decoding part or all of the N CB groups comprises: performing decoding on a first CB group of the N CB groups, there being a CB group that fails to be received in a CB group before the first CB group.
4. The method according to any one of claims 1 to 3, characterized in that, each of the N CB groups comprises a positive integer number of complete MAC subPDUs.
5. The method according to any one of claims 1 to 4, characterized in that, respectively decoding part or all of the N CB groups comprises: performing decoding on a first CB group of the N CB groups according to a header corresponding to the first CB group.
6. The method according to any one of claims 1, 2 or 5, characterized in that, the N CB groups comprise a first CB group, a header corresponding to the first CB group comprising first information and / or second information; wherein the first information indicates whether the second information exists, or indicates whether bits of the second information are valid, or indicates whether a start portion of a MAC subPDU is included in the first CB group; the second information indicates a first start position in the first CB group, the start position being a position of the start portion of the MAC subPDU.
7. The method according to claim 5 or 6, characterized in that, the first CB group is one of the last N-1 CB groups of the N CB groups.
8. The method of any one of claims 1, 2, or 5, wherein, the N CB groups comprise a first CB group, the first CB group comprising at least one complete MAC subPDU and at least one incomplete MAC subPDU, the at least one complete MAC subPDU being located before the at least one incomplete MAC subPDU; a header corresponding to the first CB group comprising third information, the third information indicating a position of the incomplete MAC subPDU in the first CB group.
9. The method of claim 8, wherein, the header corresponding to the first CB group further comprises fourth information and / or fifth information; The fourth information indicates whether the incomplete MAC subPDU includes a starting part of a MAC subPDU; and the fifth information indicates a type of the first CB group, the type of the first CB group being a first type CB group, and the first type CB group including at least one complete MAC subPDU and at least one incomplete MAC subPDU.
10. A data processing method, characterized by, The method comprises: determining, according to a first value, N CB groups corresponding to a first transport block (TB); the first value being a number X of CBs included in one CB group or a number Y of CB groups corresponding to one TB; the N, the X, and the Y being integers greater than or equal to 1; performing logical channel prioritization (LCP) based on a first CB group, the first CB group being one of the N CB groups; The N CB groups satisfy one of the following conditions: each of the N CB groups includes a second number of CBs; or the first M CB groups of the N CB groups include a second number of CBs, and the last N-M CB groups include a third number of CBs, the M being a positive integer less than the N; or the first N-M CB groups of the N CB groups include a third number of CBs, and the last M CB groups include a second number of CBs; or each of the N CB groups includes a fourth number of CBs.
11. The method of claim 10, wherein, performing logical channel prioritization (LCP) based on a first CB group, the first CB group being one of the N CB groups; performing LCP based on a size of a data part of the first CB group, the size of the data part of the first CB group being determined based on a first size of the first CB group and a size of a CB CRC corresponding to each CB in the first CB group.
12. The method according to claim 10 or 11, characterized in that, The first CB group includes a positive integer number of complete medium access control sub-protocol data units (MAC subPDUs).
13. The method according to any one of claims 10-12, characterized in that, The method further comprises: determining the first TB based on a first data set, wherein the first data set is determined based on performing LCP based on the first CB group; sending the first TB.
14. The method according to any one of claims 10-12, characterized in that, After performing LCP based on the first CB group, the method further comprises: performing LCP based on a second CB group of the N CB groups, the second CB group being located after the first CB group in the N CB groups.
15. The method of claim 14, wherein, The method further comprises: determining the first TB based on a first data set and a second data set, wherein the first data set is determined based on performing LCP based on the first CB group, and the second data set is determined based on performing LCP based on the second CB group; sending the first TB.
16. The method according to any one of claims 10-15, characterized in that, The method further comprises: sending or receiving first indication information, the first indication information including information of the first value.
17. The method according to any one of claims 1 to 16, characterized in that, The N = ceil(C / X), wherein the C is a number of CBs corresponding to the first TB, the C being an integer greater than or equal to 1, and the ceil representing rounding up.
18. The method of any one of claims 1-17, wherein, In a case that C / X is an integer, each of the N CB groups contains CBs in the second number of values; In a case that C / X is not an integer, the first M CB groups of the N CB groups contain CBs in the second number of values, and the last N-M CB groups contain CBs in the third number of values; or, the first N-M CB groups of the N CB groups contain CBs in the third number of values, and the last M CB groups contain CBs in the second number of values; Wherein, the C is the number of CBs corresponding to the first TB, and the C is an integer greater than or equal to 1.
19. The method of claim 18, wherein, The C is greater than or equal to the X.
20. The method of any of claims 1-17, wherein, In a case that C is less than X, each of the N CB groups contains CBs in the fourth number of values, and the fourth number of values is the C, the C is the number of CBs corresponding to the first TB, and the C is an integer greater than or equal to 1.
21. The method of any one of claims 1-20, wherein, The M=N-1, or the M=floor(C / X); wherein, floor represents rounding down.
22. The method of any of claims 1-21, wherein, The second number of values is the X; The third number of values is C-floor(C / X)×the second number of values.
23. The method of any of claims 1-20, wherein, The second number of values is the X; The third number of values is X-1.
24. The method of any one of claims 1-16, wherein, The N=min(C,Y), or N=Y; wherein, the C is the number of CBs corresponding to the first TB, and the C is an integer greater than or equal to 1.
25. The method of any of claims 1-16 or 24, wherein, In a case that C / X is an integer, each of the N CB groups contains CBs in the second number of values; In a case that C / X is not an integer, the first M CB groups of the N CB groups contain CBs in the second number of values, and the last N-M CB groups contain CBs in the third number of values; or, the first N-M CB groups of the N CB groups contain CBs in the third number of values, and the last M CB groups contain CBs in the second number of values.
26. The method of any one of claims 1-20, 23-25, wherein, The M=mod(C,N), wherein, mod represents a remainder operation.
27. The method of any of claims 1-20, 24-26, wherein, The second number of values is ceil(C / N), The third number of values is floor(C / N).
28. The method of any one of claims 1-27, wherein, The X or the Y is associated with one of the following items: a terminal, a downlink control information DCI, a TB, a semi-persistent scheduling SPS, and a configured grant CG.
29. A communications device, characterized by The communication device comprises a processor; the processor is configured to run a computer program or instructions, so that the communication device performs the method of any of claims 1-28. The communication device comprises a processor; the processor is configured to run a computer program or instructions, so that the communication device performs the method of any of claims 1-28.
30. A computer-readable storage medium, characterized in that, A computer readable storage medium stores computer instructions or program, which when run on a computer, cause the method of any of claims 1-28 to be performed.
31. A computer program product, characterised in that, The computer program product comprises computer instructions; when part or all of the computer instructions are run on a computer, cause the method of any of claims 1-28 to be performed.
Citation Information
Cited By
Communication method, apparatus, system, computer program product and readable storage medium
CN122340550A