Data processing method, and device and medium
By building a subtransport block including data fields and data subheaders, the inefficiency problem of the existing multi-layer protocol stack under high transmission rate and low latency requirements is solved, and more efficient data processing is achieved, reducing memory consumption and delay.
Patent Information
- Application Number
- PCT/CN2024/120855
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-12-05
- Filing Date
- 2024-09-24
- Publication Date
- 2025-06-12
AI Technical Summary
In scenarios where there are higher transmission rates and lower transmission delay requirements, the data processing methods of the existing multi-layer protocol stack are less efficient, resulting in increased memory consumption and data processing delay.
By building a subtransport block including data fields and data subheaders, the increase of protocol headers is directly reduced during the data processing, and the number of data copies is reduced, thereby increasing the data processing rate and reducing delay.
In scenarios with high transmission rate and low latency requirements, the data processing rate is improved, the data processing delay is reduced, and thus the data processing performance is improved.
Smart Images

Figure CN2024120855_12062025_PF_FP_ABST
Abstract
Description
Data processing method, device and medium
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application is based on the Chinese patent application with application number 202311665358.1 and application date December 5, 2023, and claims the priority of the Chinese patent application. The entire content of the Chinese patent application is hereby introduced into this application as a reference. Technical Field
[0003] The embodiments of the present application relate to the field of communication technologies, and in particular to a data processing method, device, and medium. Background Art
[0004] Currently, 5G-based wireless communication systems typically transmit session-based user data, such as voice call data, video call data, and internet data. Since the 5G user-plane protocol stack typically includes four protocol layers: Service Data Adaptation Protocol (SDAP), Packet Data Convergence Protocol (PDCP), Radio Link Control (RLC), and Medium Access Control (MAC), transmitted data must be processed sequentially by the SDAP, PDCP, RLC, and MAC layers of the user-plane protocol stack. However, as data is processed at each layer of the protocol stack, protocol headers are added, increasing memory consumption and data processing latency. Furthermore, data must be copied when transmitted between protocol layers, which also increases memory consumption and data processing latency. Therefore, related technologies employ a multi-layer protocol stack data processing approach, which results in low data processing efficiency and overall performance in scenarios requiring high transmission rates and low transmission latency.
[0005] Summary of the Invention
[0006] The embodiments of the present application provide a data processing method, device, and medium that can increase the data processing rate and reduce the data processing delay in scenarios with higher transmission rate and lower transmission delay requirements, thereby effectively improving data processing performance.
[0007] In a first aspect, an embodiment of the present application provides a data processing method, the method comprising:
[0008] Get the data to be transmitted;
[0009] A transmission block is constructed based on the data, wherein the transmission block includes multiple sub-transmission blocks, the multiple sub-transmission blocks include at least one type of sub-transmission blocks, each of the sub-transmission blocks includes a data field and a data sub-header located before the data field, the data field carries the data, the data sub-header carries at least a logical channel ID field, and the type of the sub-transmission block is related to the value of the logical channel ID field.
[0010] In a second aspect, an embodiment of the present application provides an electronic device, including:
[0011] one or more processors;
[0012] A memory having one or more programs stored thereon, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the data processing method as described in the first aspect above.
[0013] In a third aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the data processing method described in the first aspect above.
[0014] In an embodiment of the present application, data to be transmitted is obtained, and a transmission block is constructed based on the data. The transmission block includes multiple sub-transmission blocks, each of which includes at least one type of sub-transmission block. Each sub-transmission block includes a data field and a data sub-header preceding the data field. The data field carries data, and the data sub-header carries at least a logical channel ID field. The type of the sub-transmission block is related to the value of the logical channel ID field. The present application constructs sub-transmission blocks directly based on the data, and each sub-transmission block includes a data sub-header. Compared to existing methods that require adding protocol headers when processing each layer of the protocol stack, this method can effectively reduce memory consumption and data processing latency. Furthermore, the sub-transmission blocks constructed based on the data, including the data field and the data sub-header preceding the data field, can reduce the number of data copies, thereby effectively reducing memory consumption and data processing latency. Therefore, compared with related technologies, the embodiments of the present application can increase data processing rate and reduce data processing latency in scenarios with high transmission rate and low transmission latency requirements, thereby effectively improving data processing performance. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] The accompanying drawings are used to provide a further understanding of the technical solution of the present application and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the technical solution of the present application and do not constitute a limitation on the technical solution of the present application.
[0016] FIG1 is a schematic diagram of data processing based on a multi-layer protocol stack in the related art;
[0017] FIG2 is a flow chart of a data processing method according to an embodiment of the present application;
[0018] 3 is a schematic diagram of a structure for determining a transport block based on a sub-transport block including a data field and a data sub-header according to an embodiment of the present application;
[0019] FIG4 is a schematic diagram of a first structure of a data sub-header in which the value of the logical channel ID field is a first value, provided by an embodiment of the present application;
[0020] FIG5 is a schematic diagram of a second structure of a data sub-header in which the value of the logical channel ID field is the first value provided by an embodiment of the present application;
[0021] FIG6 is a schematic diagram of a third structure of a data sub-header in which the value of the logical channel ID field is the first value provided by an embodiment of the present application;
[0022] FIG7 is a schematic diagram of a fourth structure of a data sub-header in which the value of the logical channel ID field is the first value provided by an embodiment of the present application;
[0023] FIG8 is a schematic diagram of a first structure of a data sub-header in which the value of the logical channel ID field is a second value, provided by an embodiment of the present application;
[0024] FIG9 is a schematic diagram of a second structure of a data sub-header in which the value of the logical channel ID field is a second value according to an embodiment of the present application;
[0025] FIG10 is a schematic diagram of a third structure of a data sub-header in which the value of the logical channel ID field is the second value provided by an embodiment of the present application;
[0026] FIG11 is a schematic diagram of a fourth structure of a data sub-header in which the value of the logical channel ID field is the second value provided by an embodiment of the present application;
[0027] FIG12 is a schematic diagram of the structure of a data sub-header in which the value of the logical channel ID field is a third value, provided by an embodiment of the present application;
[0028] FIG13 is a schematic diagram of the device structure of the electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0029] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.
[0030] It should be understood that in the description of the embodiments of the present application, if there is a description of "first", "second", etc., it is only for the purpose of distinguishing technical features, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features or implicitly indicating the order of the indicated technical features. "At least one" means one or more, and "more" means two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent the existence of A alone, the existence of A and B at the same time, and the existence of B alone. Among them, A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following" and similar expressions refer to any group of these items, including any group of single or plural items. For example, at least one of a, b and c can represent: a, b, c, a and b, a and c, b and c, or a, b and c, where a, b, c can be single or multiple.
[0031] In addition, the technical features involved in each embodiment of the present application described below can be combined with each other as long as they do not conflict with each other.
[0032] In order to facilitate understanding of the solutions of the embodiments of the present application and to provide a clear and concise description of the following embodiments, a brief introduction to the relevant technologies is first given.
[0033] MAC: This refers to the entity responsible for processing and managing the Media Access Control (MAC) protocol in wireless access technologies in wireless communication systems such as Long Term Evolution (LTE) and 5G. MAC controls and manages physical layer resources to achieve efficient transmission and scheduling of user data while ensuring network performance and efficiency. A MAC Control Element (MAC-CE) typically refers to control information sent by a base station or user equipment (UE) in a wireless communication system.
[0034] Air interface transmission refers to the wireless interface, or radio channel, in wireless communication systems. Air interface transmission is the physical transmission medium used to transmit wireless signals in mobile communications. In mobile communication systems, air interface transmission is used for bidirectional wireless signal transmission between mobile devices (such as mobile phones) and base stations. Air interface transmission is the most critical and fundamental component of mobile communication systems, carrying voice, data, and various other services.
[0035] A Protocol Data Unit (PDU) is a unit of data passed from one protocol layer to another in a communications network. In the 5G user plane model, each protocol layer adds specific header information during data processing to form a PDU for transmission. At the receiving end, this header information is removed, resulting in the original service data.
[0036] Currently, 5G-based wireless communication systems typically transmit session-based user data, such as voice call data, video call data, and internet data. Since the 5G user plane protocol stack typically includes four protocol layers: Service Data Adaptation Protocol (SDAP), Packet Data Convergence Protocol (PDCP), Radio Link Control (RLC), and Medium Access Control (MAC), the transmitted data must be processed sequentially by the SDAP, PDCP, RLC, and MAC layers of the user plane protocol stack. However, as data is processed at each layer of the protocol stack, a protocol header is added. As shown in Figure 1, for Internet Protocol (IP)-based data (such as IP packet n, IP packet n+1, etc.), when a multi-layer protocol stack is used for data processing, protocol headers (i.e., the protocol header H added at each layer) are added to the SDAP, PDCP, RLC, and MAC layers, and PDU data packets are output. On the sending end, data flows from top to bottom, ultimately being processed by the MAC layer, which then outputs the MAC PDU to the physical layer (PHY) before transmitting it over the air interface. Therefore, related technologies tend to increase memory consumption and data processing latency by adding protocol headers to each layer of the protocol stack.
[0037] Existing wireless communication systems (such as 5G) have an air interface transmission latency of 1 millisecond and a peak transmission rate of 10 Gbit / s (10 Gbit / s, meaning 10 Gbits of data are transmitted per second). Future wireless communication systems (such as 6G) will support new services such as AI, perception, and computing, and will also support highly reliable and low-latency services. This requires air interface transmission latency to be reduced to 0.1 milliseconds and a peak transmission rate to be increased to 100 Gbit / s. This means that 6G will require a performance improvement of more than 10 times compared to 5G. However, related technologies tend to increase memory consumption and data processing latency by adding protocol headers to each layer of the protocol stack. Furthermore, data needs to be copied when it is transmitted between protocol layers, which also increases memory consumption and data processing latency. Therefore, as future wireless communication systems support new services such as AI, perception, and computing, and their application scenarios expand to various vertical industries, they will require higher data transmission rates and lower data processing latency. However, the related art method of processing data with multiple layers of protocol stacks and adding headers separately can no longer meet future data processing performance requirements in scenarios with higher transmission rates and lower transmission delays.
[0038] In order to solve the above problems, an embodiment of the present application provides a data processing method, which constructs a sub-transmission block based on the acquired data to be transmitted, wherein the sub-transmission block includes a data field and a data sub-header located before the data field, the data field carries data, and the data sub-header carries a logical channel ID field. It can improve the data processing rate and reduce the data processing delay in scenarios with higher transmission rate and lower transmission delay requirements, thereby effectively improving the data processing performance.
[0039] The embodiments described herein may be implemented in a communication system, such as at least one of the following systems: Global System for Mobile Communications (GSM) or any other second generation cellular communication system, Universal Mobile Telecommunications System (UMTA, 3G) based on basic Wideband Code Division Multiple Access (W-CDMA), High-Speed Packet Access (HSPA), Long Term Evolution (LTE), Advanced LTE, systems based on IEEE 802.11 specifications, systems based on IEEE 802.15 specifications, and / or fifth generation (5G) mobile or cellular communication systems; and future mobile communication systems (such as 6G). However, the embodiments are not limited to the systems given by the above examples, but those skilled in the art may apply the solutions to other communication systems having the necessary properties.
[0040] In the data processing method of an embodiment of the present application, as shown in Figure 2, the implementation process of a data processing method provided in an embodiment of the present application may include but is not limited to the following steps S210 to S220, and each step is introduced in turn below.
[0041] Step S210: Acquire data to be transmitted.
[0042] It should be noted that the data to be transmitted generally refers to the data sent and received by users in network communications.
[0043] It should be noted that the data to be transmitted described in the embodiments of the present application may include the following types of data: data packets, data blocks, variable-length MAC-CEs, or fixed-length MAC-CEs.
[0044] The data packets described in the embodiments of the present application are data sent by the sending end in packets (Packets). The data packets have corresponding SNs. The receiving end can receive the data packets in sequence according to the SNs and inform the sending end through the SNs that the data has been correctly received. The data packets can specifically be IP data packets, high-layer signaling, and data packets generated within Layer 2 (i.e., the data link layer). The data blocks described in the embodiments of the present application can specifically be artificial intelligence (AI) related data, perception data, or computing service data in a wireless communication system, or other data generated within Layer 2.
[0045] The variable-length MAC-CE described in the embodiments of this application means that the length of the MAC-CE is not fixed and data can be dynamically increased or decreased as needed. The use of a variable-length MAC-CE can flexibly transmit control information of different lengths while ensuring transmission efficiency.
[0046] The fixed-length MAC-CE described in the embodiments of this application means that the length of the MAC-CE is fixed and the data cannot be dynamically increased or decreased. The fixed-length MAC-CE can make the transmission process simpler and more reliable, but may waste certain transmission resources.
[0047] It should be noted that the embodiments of the present application do not specifically limit the specific protocol used for the data to be transmitted.
[0048] Step S220: Construct a transport block based on the data, where the transport block includes multiple sub-transport blocks, the multiple sub-transport blocks include at least one type of sub-transport block, each sub-transport block includes a data field and a data sub-header located before the data field, the data field carries data, the data sub-header carries at least a logical channel ID field, and the type of the sub-transport block is related to the value of the logical channel ID field.
[0049] It is understood that the data in this case is the data to be transmitted described in the above embodiments and will not be further described here. A sub-transmission block refers to a structure encapsulated based on data and a corresponding data sub-header and used for transmitting data. The Logical Channel ID (LCID) field is a field used to identify the value of the logical channel corresponding to the sub-transmission block. The data field is a field used to store the acquired data to be transmitted.
[0050] It should be noted that the type of sub-transport block is related to the value of the logical channel ID field, that is, the type of the sub-transport block can be determined by the value of the logical channel ID field. The value of the logical channel ID field refers to the numerical value used to mark the logical channel (Logical CHannel, LCH) into which the data is divided. For example, there are three types of sub-transport blocks, and each type of sub-transport block can correspond to multiple logical channels. Each type of sub-transport block corresponds to a data sub-header format. The logical channel ID fields corresponding to the three types of data sub-headers can be set to three different values, such as 0, 1, and 2, which are not specifically limited here.
[0051] It should be noted that a transport block (TB) can include multiple sub-transport blocks, allowing for simultaneous transmission of multiple data items. Combining multiple sub-transport blocks into a single TB effectively improves data processing efficiency. Furthermore, the length of a TB can be dynamically scheduled and pre-configured, allowing the receiving end to know the length of the received TB through authorization.
[0052] It should be noted that the original data refers to the complete data to be transmitted. When the original data is large, the data to be transmitted can also be a segment of the original data. Therefore, the data processing method of the present application can support the segmented transmission of data.
[0053] It should be noted that a sub-transmission block includes a data field and a data sub-header located before the data field. As shown in Figure 3, a transmission block includes multiple sub-transmission blocks (subTBs). After obtaining multiple data to be transmitted (such as variable-length data Data1, variable-length data Data2, and fixed-length data Data3), the data to be transmitted is placed in the data field. The logical channel ID field corresponding to each data is determined based on the logical channel corresponding to the data to be transmitted. The data sub-header is also determined based on the logical channel ID field. The sub-transmission block corresponding to the data is constructed based on the data field and the data sub-header located before the data field. For example, based on the variable-length data Data1 and the corresponding data sub-header Header1, sub-transmission block subTB1 is constructed; based on the variable-length data Data2 and the corresponding data sub-header Header2, sub-transmission block subTB2 is constructed; based on the fixed-length data Data3 and the corresponding data sub-header Header3, sub-transmission block subTB3 is constructed.
[0054] It should be noted that a transmission block contains at least one sub-transmission block of one type; a transmission block may contain 0, 1 or more sub-transmission blocks of the three types, and when it contains multiple sub-transmission blocks, the order in which the multiple sub-transmission blocks appear in a transmission block is not specifically limited.
[0055] It should be noted that variable-length data refers to data fields with variable lengths. In this case, a length field is required in the data sub-header, unless the sub-transmission block is at the end of the entire transmission block. Fixed-length data refers to data fields with fixed lengths. In this case, a length field is not required in the data sub-header.
[0056] In one possible embodiment of the present application, the last sub-transport block in a transport block may contain variable-length data without a length field. Because the corresponding field lengths have already been determined for the previous sub-transport blocks, given a fixed transport block length, the length of the data field carried in the last sub-transport block is the result of subtracting the lengths of all previous sub-transport blocks from the transport block length.
[0057] It should be noted that within a transport block, the last sub-transport block is not limited to carrying a fixed-length data field. Sub-transport blocks carrying fixed-length data fields may also exist in the middle of the transport block to meet different service requirements. For example, a fixed-length MAC-CE carries a sub-transport block carrying a fixed-length data field.
[0058] It is understood that since transport blocks have a fixed length, this application may add a padding field after the last sub-transport block to ensure that the transport block meets the length requirements. A padding field refers to additional data added to meet specific length or format requirements. This padding is usually meaningless data that is only used to fill the length or format of the data packet to meet the protocol requirements.
[0059] The advantage of the above embodiment is that, in order to avoid the problem that the existing multi-layer protocol stack needs to add a protocol header when processing each layer of the protocol stack, thereby increasing memory consumption and data processing delay, the present application simplifies the existing SDAP, PDCP, RLC, and MAC four-layer protocol processing process into a method of constructing a data header, and unifies the data buffers of the existing protocols SDAP, PDCP, RLC, and MAC into one data buffer. At the same time, the data status of each data is recorded. Based on this, each functional component can directly read the unified data area without copying the data multiple times, which greatly improves the data processing efficiency and can effectively guarantee the extremely high transmission rate and extremely low transmission delay requirements of future wireless communication systems.
[0060] In one embodiment, the value of the logical channel ID field is the first value; the data field carries data of variable length, such as a data packet; and the data sub-header carries the following fields:
[0061] LCID field: The LCID field is used to indicate the logical channel ID corresponding to the data. It is a mandatory field.
[0062] SN field: The SN field is used to indicate the number corresponding to the data and is a required field;
[0063] SI field: The SI field is used to indicate the segmentation information of the data and is a required field;
[0064] SO field: The SO field is used to indicate the position of the current data segment in the original data, that is, the position of the first byte of the data segment in the original data buffer. It is an optional field.
[0065] The F field is used to indicate whether the data sub-header has an L field, and if so, the length of the L field. It is a mandatory field.
[0066] L field, L field is used to indicate the length of the data field, optional field;
[0067] The R field, a reserved bit, is set to 0.
[0068] It should be noted that the first value is used to mark the data as a data type carrying an SN. The first value can be any numerical value and is not specifically limited here. It is understood that in this application, when the value of the Logical Channel ID field is the first value, the corresponding data subheader can be represented as an LCID / SN / SI / SO / F / L subheader.
[0069] It should be noted that the length of the Logical Channel ID (LCID) field can be 6 bits or 8 bits. The present application may also define an eLCID field after the Logical Channel ID field, and the eLCID field can be 16 bits. For example, when the Logical Channel ID field takes a certain value, it indicates that the eLCID field is immediately following the LCID. When the eLCID field is present, the data subheader can be represented as an LCID / eLCID / SN / SI / SO / F / L subheader.
[0070] It should be noted that the length of the Sequence Number (SN) field can be configured through Radio Resource Control (RRC) signaling and is a Radio Bearer-level parameter. The length of the SN field can be 6 bits, 12 bits, or 18 bits, etc., and is not specifically limited here.
[0071] It should be noted that the Segmentation Information (SI) field can be 2 bits long. The SI field is used to indicate the segmentation information corresponding to the data packet. In other words, the SI field can indicate whether the data is original data or segmented data within the original data. Therefore, the possible values of the SI field and the corresponding value description are shown in Table 1 below.
[0072] Table 1
[0073] It can be understood that the data domain here refers to the data carried by the data field in the sub-transmission block where the SI field is located. The SI field value is 00, indicating that the original data is not segmented, and the data at this time is the complete original data. The SI field value is 01, indicating that the data field in the sub-transmission block where the SI field is located carries the first data segment of the original data. The SI field value is 10, indicating that the data field in the sub-transmission block where the SI field is located carries the last data segment of the original data. The SI field value is 11, indicating that the data field in the sub-transmission block where the SI field is located carries a data segment in the middle of the original data.
[0074] It should be noted that the length of the Segment Offset (SO) field can be 16 bits. The data sub-header only carries the SO field when the value of the SI field indicates that the data is the middle segment or the last segment of the original data. The SO field is used to indicate the position of the data segment in the original data, that is, the position of the first byte of the data segment in the original data buffer. In the first byte of the original data buffer, the SO value is 0, that is, the numbering starts from 0. Combined with Table 1, it can be seen that when the SI field value is 00, it means that the data is not segmented data, so there is no SO field in the sub-transmission block; when the SI field value is 01, that is, the data is the first data segment of the original data, and there is no SO field in the sub-transmission block; when the SI field value is 10 or 11, it means that the data is the middle segment or the last segment of the original data, and there is an SO field.
[0075] It should be noted that the length of the F field can be 2 bits. The F field is used to indicate whether there is an L field in the data sub-header, and if there is an L field, to indicate the length of the L field. The value of the F field can be any one of 00, 01, 10, and 11. An F field value of 00 indicates that the L field occupies 0 bits, that is, there is no L field. In this case, all the contents following a transport block belong to the sub-transport block, and there is no need to limit the length of the data field; an F field value of 01 indicates that the L field occupies 8 bits; an F field value of 10 indicates that the L field occupies 16 bits; an F field value of 11 indicates that the L field occupies 24 bits.
[0076] It should be noted that the length of the L field can be any one of 0 bits, 8 bits, 16 bits or 24 bits, etc., which is determined by the F field. The L field is used to indicate the length of the data field.
[0077] It should be noted that the data sub-header of this application may also include an R field, which is a reserved field. The R field is primarily used to align the data sub-header to 8 bits. Reserved fields are fields that are reserved in the communication protocol but are not currently used. These fields are typically reserved for future use or temporarily retained to maintain compatibility with older versions. Therefore, the receiving end should ignore these fields when parsing the data and not rely on their content.
[0078] Example 1: In one embodiment, the value of the logical channel ID field in the data subheader of a sub-transport block is the first value, that is, the format type of the data subheader is an LCID / SN / SI / SO / F / L subheader. If the length of the logical channel ID field LCID is defined as 8 bits, the SN field is configured as 12 bits, and the data subheader also carries the SI field, SO field, F field, and L field (occupying 8 bits). The format of the data subheader in this case is shown in Figure 4. The data subheader is 6 bytes, Oct1 represents the first 8 bits (or the first byte), Oct2 represents the second 8 bits (or the second byte), and so on, and will not be repeated here.
[0079] Example 2: In one embodiment, the value of the logical channel ID field in the data subheader of a sub-transmission block is the first value, and there is no L field, that is, the format type of the data subheader is LCID / SN / SI / SO / F subheader. If the length of the logical channel ID field LCID is defined as 8 bits, the SN field is configured as 12 bits, and the data subheader also carries the SI field, SO field, and F field, but no L field. The format of the data subheader in this case is shown in Figure 5. The data subheader is 5 bytes, Oct1 represents the first 8 bits (or the first byte), Oct2 represents the second 8 bits (or the second byte), and so on, and will not be repeated here.
[0080] Example 3: In one embodiment, the value of the logical channel ID field in the data subheader of a sub-transmission block is the first value, and there is no SO field, that is, the format type of the data subheader of the data is LCID / SN / SI / F / L subheader. If the length of the logical channel ID field LCID is defined as 8 bits, the SN field is configured as 12 bits, and the data subheader also carries the SI field, F field, and L field (occupying 8 bits), there is no SO field. The format of the data subheader at this time is shown in Figure 6. The data subheader is 4 bytes, Oct1 represents the first 8 bits (or the first byte), Oct2 represents the second 8 bits (or the second byte), and so on, which will not be repeated here.
[0081] Example 4: In one embodiment, the value of the logical channel ID field in the data subheader of a sub-transmission block is the first value, and there is no SO field and L field, that is, the format type of the data subheader is LCID / SN / SI / F subheader. If the length of the logical channel ID field LCID is defined as 8 bits, the SN field is configured as 12 bits, and the data subheader also carries the SI field and F field, but no SO field and L field. The format of the data subheader at this time is shown in Figure 7. The data subheader is 3 bytes, Oct1 represents the first 8 bits (or the first byte), Oct2 represents the second 8 bits (or the second byte), and so on, and will not be repeated here.
[0082] As can be seen from the above examples, this application can enable data subheaders to have multiple lengths and formats based on whether the SO field, L field, etc., and the length of the LCID, SN field, and L field. For example, depending on whether the SO field and L field exist, there are the following four subheaders: LCID / SN / SI / SO / F / L subheader, LCID / SN / SI / SO / F subheader, LCID / SN / SI / F / L subheader, and LCID / SN / SI / F subheader.
[0083] In one embodiment, the value of the logical channel ID field is the second value; the data field carries variable-length data, such as a data block or a variable-length MAC-CE; and the data subheader carries the following fields:
[0084] LCID field: The LCID field is used to indicate the logical channel ID corresponding to the data. It is a mandatory field.
[0085] SI field: The SI field is used to indicate the segmentation information of the data and is a required field;
[0086] SO field: The SO field is used to indicate the position of the current data segment in the original data, that is, the position of the first byte of the data segment in the original data buffer. It is an optional field.
[0087] The F field is used to indicate whether the data sub-header has an L field, and if so, the length of the L field. It is a mandatory field.
[0088] L field, L field is used to indicate the length of the data field, optional field;
[0089] The R field, a reserved bit, is set to 0.
[0090] It should be noted that the second value is used to mark the data as a data type that does not carry an SN. The second value can be a numerical value in any form and is not specifically limited here.
[0091] It can be understood that, in this application, when the value of the logical channel ID field is the second value, the corresponding data subheader can be expressed as an LCID / SI / SO / F / L subheader, and there is no SN field in the data subheader at this time.
[0092] It should be noted that the length of the LCID field can be 6 bits or 8 bits. This application may also define an eLCID field after the logical channel ID field. The eLCID field can be 16 bits. For example, when the logical channel ID field takes a certain value, it indicates that the eLCID field follows the LCID. When the eLCID field is present, the data subheader can be represented as LCID / eLCID / SI / SO / F / L subheader.
[0093] It should be noted that when the value of the logical channel ID field is the second value, the bit length and meaning of the SI field, SO field, F field and L field carried in the data sub-header are the same as the bit length and meaning of the corresponding fields when the value of the logical channel ID field is the first value. This has been explained in detail in the above embodiments and will not be repeated here.
[0094] It should be noted that for variable-length MAC-CE, in the existing New Radio (NR) protocol, MAC-CE cannot be sent in segments, but the new transport block structure proposed in this application constructs the corresponding sub-transport block based on the type of variable-length MAC-CE, so that the variable-length MAC-CE can also be sent in segments.
[0095] Example 5: In one embodiment, the value of the logical channel ID field in the data subheader of a sub-transport block is the second value, that is, the format type of the data subheader is an LCID / SI / SO / F / L subheader. If the length of the logical channel ID field LCID is defined as 8 bits, the data subheader also carries the SI field, SO field, F field, and L field (occupying 8 bits). The format of the data subheader in this case is shown in Figure 8. The data subheader is 5 bytes, with Oct1 representing the first 8 bits (or the first byte), Oct2 representing the second 8 bits (or the second byte), and so on, and will not be further described.
[0096] Example 6: In one embodiment, the value of the logical channel ID field in the data subheader of a sub-transport block is the second value, and there is no L field. That is, the format type of the data subheader is LCID / SI / SO / F subheader. If the length of the logical channel ID field LCID is defined as 8 bits, the data subheader also carries the SI field, SO field, and F field, but no L field. The format of the data subheader in this case is shown in Figure 9. The data subheader is 4 bytes, with Oct1 representing the first 8 bits (or the first byte), Oct2 representing the second 8 bits (or the second byte), and so on. No further explanation is given.
[0097] Example 7: In one embodiment, the value of the logical channel ID field in the data subheader of a sub-transmission block is the second value, and there is no SO field, that is, the format type of the data subheader is LCID / SI / F / L subheader. If the length of the logical channel ID field LCID is defined as 8 bits, the data subheader also carries the SI field, F field, and L field (occupying 8 bits), and there is no SO field. The format of the data subheader in this case is shown in Figure 10. The data subheader is 3 bytes, Oct1 represents the first 8 bits (or the first byte), Oct2 represents the second 8 bits (or the second byte), and so on, and will not be repeated here.
[0098] Example 8: In one embodiment, the value of the Logical Channel ID field in the data subheader of a sub-transport block is the second value, and the SO field and L field are absent. That is, the format type of the data subheader is an LCID / SI / F subheader. If the length of the Logical Channel ID field LCID is defined as 8 bits, the data subheader also carries the SI field and F field, but does not have the SO field and L field. The format of the data subheader in this case is shown in Figure 11. The data subheader is 2 bytes, where Oct1 represents the first 8 bits (or the first byte), and Oct2 represents the second 8 bits (or the second byte).
[0099] As can be seen from the above examples, this application can allow data subheaders to have multiple lengths and formats depending on whether the SO field, L field, etc., and the length of the LCID and L fields. For example, depending on whether the SO field and L field are present, there are four subheaders: LCID / SI / SO / F / L subheader, LCID / SI / SO / F subheader, LCID / SI / F / L subheader, and LCID / SI / F subheader.
[0100] In one embodiment, the value of the logical channel ID field is the third value; the data field carries fixed-length data, such as a fixed-length MAC-CE; and the data subheader carries only the following fields:
[0101] LCID field: The LCID field is used to indicate the logical channel ID corresponding to the data. It is a required field.
[0102] It should be noted that the third value is used to mark the data as a fixed-length data type. The third value can be any numerical value and is not specifically limited here.
[0103] It is understandable that, in this application, when the value of the logical channel ID field is the third value, the corresponding data subheader can be represented as an LCID subheader. In this case, the data subheader does not carry other fields, and the data field carries data of a fixed length.
[0104] It should be noted that the length of the LCID field can be 6 bits or 8 bits. This application may also define an eLCID field after the logical channel ID field. The eLCID field can be 16 bits. For example, when the logical channel ID field takes a certain value, it indicates that the eLCID field is immediately following the LCID. When the eLCID field is present, the data subheader can be represented as an LCID / eLCID subheader.
[0105] Example 9: In one embodiment, the value of the Logical Channel ID field in the data subheader of a sub-transport block is the third value, that is, the format type of the data subheader is an LCID subheader. If the length of the Logical Channel ID field LCID is defined as 8 bits, the format of the data subheader is shown in Figure 12. The data subheader is 1 byte, and Oct1 represents this 1 byte.
[0106] According to the above example content, this application will determine the type of data sub-header based on the value of LCID.
[0107] It should be noted that, as shown in Figure 3, the data sub-header Header1 corresponding to the variable-length data Data1 can be LCID / SN / SI / SO / F / L, the data sub-header Header2 corresponding to the variable-length data Data2 can be LCID / SI / SO / F / L, and the data sub-header Header3 corresponding to the fixed-length data Data3 can be an LCID sub-header. Afterwards, a transmission block is constructed based on the constructed sub-transmission block subTB1, sub-transmission block subTB2 and sub-transmission block subTB3.
[0108] It should be noted that after constructing a transmission block based on multiple sub-transmission blocks, this application places the constructed transmission block into a data buffer area, encodes the data in the buffer area and outputs it to the physical layer PHY, and then sends it out through the air interface, which can effectively improve data processing efficiency.
[0109] The embodiment of the present application defines a new format of a transmission block, where each sub-transmission block contains only one data sub-header. Compared with the existing method that requires adding a protocol header when processing each layer of the protocol stack, the present application can effectively reduce memory consumption and data processing delay. In addition, constructing a transmission block based on a unified data buffer area can reduce the number of data copies, thereby effectively reducing memory consumption and data processing delay. The present application defines three sub-header formats (i.e., LCID / SN / SI / SO / F / L, LCID / SI / SO / F / L, and LCID sub-header). There are also multiple variants of each sub-header format, and the format of the data sub-header corresponding to the data can be determined based on the value of the LCID field. Among them, according to the above example, the data sub-header is byte-aligned. If alignment is not possible, the R field can be used for padding. For MAC-CE, the format of the transmission block newly defined in the present application can support segmented transmission of MAC-CE. In addition, the format of the newly defined transmission block can support the format of the data sub-header without the L field, thereby reducing the number of bits occupied by the sub-header. Therefore, compared with related technologies, the embodiments of the present application can increase the data processing rate, reduce the data processing delay, and effectively improve the data processing performance, thereby better guaranteeing the extremely high transmission rate and extremely low transmission delay requirements of future wireless communication systems.
[0110] It should be noted that although operations are described in a specific order in the drawings in the embodiments of the present application, this should not be construed as requiring that these operations be performed in the specific order shown or in a serial order, or that all of the operations shown be performed to obtain the desired result. In certain circumstances, multitasking and parallel processing may be advantageous.
[0111] In addition, in the embodiments of the present application, the description of each embodiment has its own focus. For parts that are not detailed or recorded in a certain embodiment, please refer to the relevant description of other embodiments.
[0112] The embodiment of the present application further provides an electronic device, as shown in FIG13 , wherein the electronic device 1300 includes:
[0113] one or more processors 1310;
[0114] The memory 1320 stores one or more programs. When the one or more programs are executed by the one or more processors 1310, the one or more processors 1310 implement:
[0115] Such as the data processing method applied to the above embodiment.
[0116] The memory 1320 is a non-transient network system that can be used to store non-transient software programs and non-transient computer executable programs. In addition, the memory 1320 may include a high-speed random access memory and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some embodiments, the memory 1320 may optionally include a memory 1320 remotely located relative to the processor 1310, and these remote memories 1320 may be connected to the processor 1310 via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0117] The memory 1320 can be implemented in the form of a read-only memory (ROM), a static storage device, a dynamic storage device, or a random access memory (RAM). The memory 1320 can store an operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented through software or firmware, the relevant program code is stored in the memory 1320 and is called by the processor 1310 to execute the methods of the embodiments of this application.
[0118] The processor 1310 can be implemented using a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of the present application.
[0119] In some embodiments, as shown in FIG13 , the electronic device further includes:
[0120] Input / output interface, used to realize information input and output;
[0121] Communication interface, used to realize communication interaction between this device and other devices, which can be achieved through wired means (such as USB, network cable, etc.) or wireless means (such as mobile network, Wi-Fi, Bluetooth, etc.);
[0122] A bus that transmits information between various components of the device (e.g., processor 1310, memory 1320, input / output interfaces, and communication interfaces);
[0123] The processor 1310 , the memory 1320 , the input / output interface, and the communication interface can be communicatively connected to each other within the device via a bus.
[0124] An embodiment of the present application further provides a computer-readable storage medium storing computer-executable instructions for executing:
[0125] Such as the data processing method applied to the above embodiment.
[0126] An embodiment of the present application further provides a computer program product, including a computer program or computer instructions, wherein the computer program or computer instructions are stored in a computer-readable storage medium. A processor of a computer device reads the computer program or computer instructions from the computer-readable storage medium, and the processor executes the computer program or computer instructions, so that the computer device performs the following operations:
[0127] Such as the data processing method applied to the above embodiment.
[0128] The system architecture and application scenarios described in the embodiments of the present application are intended to more clearly illustrate the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided in the embodiments of the present application. Those skilled in the art will appreciate that with the evolution of the system architecture and the emergence of new application scenarios, the technical solutions provided in the embodiments of the present application are equally applicable to similar technical problems.
[0129] Those skilled in the art will appreciate that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
[0130] Those skilled in the art will appreciate that all or some of the steps and systems in the method disclosed above can be implemented as software, firmware, hardware, and appropriate combinations thereof. Some physical components or all physical components can be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or implemented as hardware, or implemented as an integrated circuit, such as an application-specific integrated circuit. Such software can be distributed on a computer-readable medium, and the computer-readable medium can include computer storage media (or non-transitory media) and communication media (or temporary media). As known to those skilled in the art, the term computer storage media is included in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data) and is volatile and non-volatile, removable, and non-removable. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory, or other memory technology, CD-ROM, digital versatile disks (DVD), or other optical disk storage, magnetic cassettes, magnetic tapes, disk storage, or other magnetic storage devices, or any other medium that can be used to store desired information and can be accessed by a computer. Furthermore, as is well known to those skilled in the art, communication media typically embodies computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media.
[0131] The above description of some embodiments of the present application with reference to the accompanying drawings does not limit the scope of the present application. Any modifications, equivalent substitutions, and improvements made by those skilled in the art without departing from the scope and essence of the present application shall be within the scope of the present application.
Claims
1. A data processing method, comprising: Get the data to be transmitted; A transmission block is constructed according to the data, wherein the transmission block includes multiple sub-transmission blocks, the multiple sub-transmission blocks include at least one type of sub-transmission blocks, each of the sub-transmission blocks includes a data field and a data sub-header located before the data field, the data field carries the data, the data sub-header carries at least a logical channel ID field, and the type of the sub-transmission block is related to the value of the logical channel ID field.
2. The method according to claim 1, wherein: The value of the logical channel ID field is the first value; the data subheader also carries the following fields: An SN field, where the SN field is used to indicate a serial number corresponding to the data; An SI field, where the SI field is used to indicate segment information of the data; The F field is used to indicate whether the data subheader has an L field, and if the L field exists, to indicate the length of the L field.
3. The method according to claim 2, wherein: When the value of the SI field indicates that the data is a middle segment or the last segment of the original data, the data subheader also carries the following fields: The SO field is used to indicate the position of the data segment in the original data.
4. The method according to claim 2, wherein: The data subheader also carries the following fields: L field, the L field is used to indicate the length of the data field.
5. The method according to claim 1, wherein: The value of the logical channel ID field is the second value; the data subheader also carries the following fields: An SI field, where the SI field is used to indicate segment information of the data; The F field is used to indicate whether the data subheader has an L field, and if the L field exists, to indicate the length of the L field.
6. The method according to claim 5, wherein: In the case where the value of the SI field indicates that the data is a middle segment or the last segment of the original data, the data subheader further includes: The SO field is used to indicate the position of the data segment in the original data.
7. The method according to claim 5, wherein: The data sub-header also includes: L field, the L field is used to indicate the length of the data field.
8. The method according to any one of claims 1 to 7, wherein: The data sub-header also includes an R field, which is a reserved bit.
9. The method according to claim 1, wherein: The value of the logical channel ID field is a third value; the data subheader does not carry other fields; and the data field carries data of a fixed length.
10. An electronic device comprising: one or more processors; A memory having one or more programs stored thereon, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement: A data processing method as claimed in any one of claims 1 to 9.
11. A computer-readable storage medium having a computer program stored thereon, wherein: When the program is executed by the processor, it realizes: A data processing method as claimed in any one of claims 1 to 9.
Citation Information
Patent Citations
Methods, apparatus and systems for data segmentation and reassembly in a wireless communication
CN113330790A
method and device for improving data transmission efficiency of 5G NR system
CN113660189A
Data packet processing method and device
CN116939704A
Data processing method, receiving device, sending device and storage medium
CN117098187A