Method and system for parallel processing data

CN115606237BActive Publication Date: 2026-08-28SAMSUNG ELECTRONICS CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202180034010.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-05-08
Filing Date
2021-04-29
Publication Date
2026-08-28
Estimated Expiration
2041-04-29

AI Technical Summary

Technical Problem

例如,单个RLC流的数据分解在管理公共RLC窗口和处理RLC过程方面造成了大量的开销

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115606237B_ABST
    Figure CN115606237B_ABST
Patent Text Reader

Abstract

The present disclosure discloses a system and method for managing operation of one or more applications on an electronic device. The method includes monitoring device parameters associated with the electronic device and user parameters associated with usage of a plurality of applications in the electronic device at a predetermined time. Using a predetermined technique, a usage pattern of the applications is identified based on the device parameters and the user parameters. Further, using a real-time learning model stored in the electronic device, the one or more applications are clustered into one or more groups. The learning model is dynamically trained based on the usage pattern of the applications for clustering. Thereafter, based on the one or more clustered groups, the operation of the one or more applications is managed on the electronic device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to wireless communication, and more specifically to a method and system for parallel data processing in a wireless network. Background Technology

[0002] Existing 5G New Radio (5NR) wireless communication systems can support peak data rates (i.e., throughput) of approximately 50 gigabits per second (Gbps), with a peak data rate of 4 Gbps per user. With the development of radio access technologies and further exploration of higher bandwidths exceeding 100 gigahertz (GHz), the peak data rate requirements of future wireless communication systems may easily exceed 100 Gbps. A typical NR User Equipment (UE) uses a quad-core system that supports 4 Gbps Transmission Control Protocol (TCP) applications on a modem protocol stack. This stack includes data plane processing layers such as the Packet Data Convergence Protocol (PDCP) layer, Radio Link Control (RLC) layer, and Media Access Control (MAC) layer. Existing processor utilization analyses indicate that the current design of the modem protocol stack is often a bottleneck for further increasing throughput.

[0003] To improve throughput at the UE, functional decomposition and data decomposition are proposed for existing 5G NR wireless communication systems. In functional decomposition, functions in data communication can be executed in parallel to increase throughput. However, it is not a feasible technique for each function to depend on other functions to perform functional decomposition. For example, functional decomposition within the RLC layer cannot evenly distribute different tasks across multiple processor cores to ensure truly equal parallelism within the RLC layer without critical sections such as window management and segmented reloading. In data decomposition, data is divided into multiple segments, and these segments are executed in parallel to improve throughput. However, in some cases, the processing of one segment of data depends on another segment of processed data. For example, data decomposition of a single RLC stream incurs significant overhead in managing a common RLC window and processing RLC procedures. Therefore, it is desirable to provide a useful alternative to significantly improve the throughput of 5G NR wireless communication systems. Summary of the Invention

[0004] Technical issues

[0005] The primary objective of this embodiment is to provide a method and system for significantly improving throughput in wireless communication. The system partitions the data link layer and / or physical layer of the network entity and the UE based on the amount of parallel data processing supported by the UE. Furthermore, data is processed in parallel and independently through the partitioned sets of data link layer and / or physical layer data to significantly improve the throughput of both the UE and the network entity.

[0006] Another objective of this embodiment is to batch process data and package the processed data using MAC sub-headers to achieve optimal parallelization and high data rates.

[0007] Another objective of this embodiment is to dynamically increase or decrease the division of the data link layer and / or physical layer based on the UE's capability information. By dynamically increasing or decreasing the division of the data link layer and / or physical layer, system resources such as memory, power, bandwidth, and processor cores can be effectively utilized.

[0008] Solution to the problem

[0009] Therefore, embodiments of this document provide a method for performing data processing in a wireless network. The method includes receiving capability information of a UE from a UE by a network entity of the wireless network. The method includes determining, based on the UE capability information, the number of parallel data processing operations supported by the UE by the network entity. The method includes partitioning the network entity's data link layer and / or physical layer for data processing based on the number of parallel data processing operations supported by the UE.

[0010] In one embodiment, the method includes a network entity sending configuration parameters to the UE, including the number of parallel data processing operations supported by the UE. The method also includes the UE partitioning its data link layer and / or physical layer based on the number of parallel data processing operations supported by the UE.

[0011] In one embodiment, the method includes receiving a plurality of Packet Data Units (PDUs) by a UE. The method includes allocating the plurality of PDUs to a partitioned data link layer and / or a partitioned physical layer of the UE for parallel processing of the plurality of PDUs. The method includes transmitting the processed PDUs to a network entity by the UE. The method includes receiving the processed PDUs by a network entity. The method includes aggregating the processed PDUs in parallel using the network entity's data link layer and physical layer to generate a plurality of PDUs.

[0012] In one embodiment, the method includes receiving a plurality of packet data units (PDUs) by a network entity. The method includes allocating the plurality of PDUs to partitions of the network entity's data link layer and physical layer to process the plurality of PDUs in parallel. The method includes transmitting the processed PDUs to a UE by the network entity. The method includes receiving the processed PDUs by the UE. The method includes the UE aggregating the processed PDUs in parallel using the UE's data link layer and physical layer to generate a plurality of PDUs.

[0013] In one embodiment, the UE's capability information includes, but is not limited to, at least one of the following: the number of cores available for data processing in the UE's processor, the processor frequency, the UE's maximum throughput, and the throughput requirements of the UE's applications.

[0014] In one embodiment, the data link layer includes a PDCP layer, an RLC layer, and a MAC layer.

[0015] In one embodiment, the method includes dynamically updating the number of data link partitions by the UE and network entities based on throughput or performance requirements by maintaining at least one active data stream.

[0016] Therefore, embodiments of this document provide a method for performing data processing in a UE. The method includes the UE sending capability information of the UE to a network entity of a wireless network. The method includes the UE receiving configuration parameters from the network entity, including the number of parallel data processing operations supported by the UE. The method includes the UE partitioning its data link layer and / or physical layer based on the number of parallel data processing operations supported by the UE.

[0017] Therefore, embodiments of this document provide a system for performing data processing. The system includes a network entity of a wireless network and a UE. The network entity is configured to receive capability information of the UE from the UE. The network entity is configured to determine the number of parallel data processing operations supported by the UE based on the UE's capability information. The network entity is configured to partition the data link layer and / or physical layer of the network entity for data processing based on the number of parallel data processing operations supported by the UE.

[0018] Therefore, embodiments of this document provide a system for data processing. The system includes a network entity of a wireless network and a UE. The UE is configured to send UE capability information to the network entity. The UE is configured to receive configuration parameters from the network entity, including the number of parallel data processing operations supported by the UE. The UE is configured to partition the UE's data link layer and / or physical layer based on the number of parallel data processing operations supported by the UE.

[0019] These and other aspects of the embodiments herein will be better understood and appreciated when considered in conjunction with the following description and accompanying drawings. However, it should be understood that while the following description points out preferred embodiments and many specific details thereof, it is given by way of illustration and not limitation. Many changes and modifications may be made within the scope of the embodiments herein without departing from their spirit, and the embodiments herein include all such modifications. Attached Figure Description

[0020] This disclosure is illustrated in the accompanying drawings, throughout which similar reference numerals denote corresponding parts in the figures. The embodiments herein can be better understood from the following description with reference to the accompanying drawings, in which:

[0021] Figure 1 This is a block diagram of a system for data processing in a wireless network according to embodiments disclosed herein;

[0022] Figure 2 This is a flowchart illustrating a method for data processing in a UE according to embodiments disclosed herein;

[0023] Figure 3 This is a flowchart illustrating a method for data processing in a network entity according to embodiments disclosed herein;

[0024] Figure 4A This describes data processing performed in a transmitting apparatus by dividing the RLC layer according to embodiments disclosed herein;

[0025] Figure 4B This document describes data processing performed in a receiving device by dividing an RLC layer according to embodiments disclosed herein;

[0026] Figure 5A This document describes data processing performed in a transmitting device by dividing the RLC layer and MAC layer according to embodiments disclosed herein;

[0027] Figure 5B This document describes data processing performed in a receiving device by dividing the RLC layer and MAC layer according to embodiments disclosed herein;

[0028] Figure 6A This document describes data processing performed in a transmitting apparatus by dividing the RLC layer and PDCP layer according to embodiments disclosed herein;

[0029] Figure 6B This document describes the data processing performed in the receiving device by dividing the RLC layer and PDCP layer according to the embodiments disclosed herein;

[0030] Figure 7A This document describes data processing performed in a transmitting apparatus by dividing the RLC layer and PDCP layer according to embodiments disclosed herein;

[0031] Figure 7B This document describes the data processing performed in the receiving device by dividing the RLC layer and PDCP layer according to the embodiments disclosed herein;

[0032] Figure 8A This document describes data processing performed in a transmitting apparatus by dividing the physical layer according to embodiments disclosed herein;

[0033] Figure 8BThis document describes data processing performed in a receiving device by dividing the physical layer according to embodiments disclosed herein;

[0034] Figure 9A This document describes data processing performed in a transmitting apparatus by dividing the MAC layer and the physical layer according to embodiments disclosed herein;

[0035] Figure 9B This describes the data processing performed in the receiving device by dividing the MAC layer and the physical layer according to the embodiments disclosed herein;

[0036] Figure 10 The frame format of the MAC subtransmission block according to the embodiments disclosed herein is described;

[0037] Figure 11 The frame format of the MAC LCID sub-header with sub-stream identifier according to the embodiments disclosed herein is described;

[0038] Figure 12 The frame format of a 16-bit RLC header with a serial number according to the embodiments disclosed herein is described. Detailed Implementation

[0039] The embodiments described herein, along with their various features and advantageous details, will be explained more fully with reference to the non-limiting embodiments illustrated in the accompanying drawings and detailed in the following description. Descriptions of well-known components and processing techniques have been omitted to avoid unnecessarily obscuring the embodiments herein. Furthermore, the various embodiments described herein are not necessarily mutually exclusive, as some embodiments may be combined with one or more other embodiments to form new embodiments. Unless otherwise stated, the term "or" as used herein means non-exclusive or. The examples used herein are merely to facilitate understanding of how the embodiments described herein can be implemented and to further enable those skilled in the art to implement the embodiments described herein. Therefore, these examples should not be construed as limiting the scope of the embodiments described herein.

[0040] As is customary in the art, embodiments can be described and illustrated using blocks that perform the functions described herein. These blocks, referred to herein as managers, units, modules, hardware components, etc., are physically implemented by analog and / or digital circuitry, such as logic gates, integrated circuits, microprocessors, microcontrollers, memory circuits, passive electronic components, active electronic components, optical components, hardwired circuitry, etc., and may optionally be driven by firmware. For example, these circuits may be embodied in one or more semiconductor chips, or on a substrate such as a printed circuit board. The circuitry constituting a block may be implemented by dedicated hardware, or by a processor (e.g., one or more programmed microprocessors and associated circuitry), or a combination of dedicated hardware performing some functions of the block and a processor performing other functions of the block. Each block of this embodiment may be physically separated into two or more interacting, discontinuous blocks without departing from the scope of this disclosure. Similarly, the blocks of this embodiment may be physically combined into more complex blocks without departing from the scope of this disclosure.

[0041] Therefore, embodiments of this document provide a method for data processing in a wireless network. The method includes receiving capability information of a UE from a UE by a network entity of the wireless network. The method includes determining, based on the UE capability information, the number of parallel data processing operations supported by the UE. The method includes partitioning the network entity's data link layer and / or physical layer based on the number of parallel data processing operations supported by the UE for data processing.

[0042] Therefore, embodiments of this document provide a method for data processing in a UE. The method includes the UE sending capability information of the UE to a network entity of a wireless network. The method includes the UE receiving configuration parameters from the network entity, including the number of parallel data processing operations supported by the UE. The method includes the UE partitioning its data link layer and / or physical layer based on the number of parallel data processing operations supported by the UE.

[0043] Therefore, embodiments of this document provide a system for performing data processing. The system includes a network entity of a wireless network and a UE. The network entity is configured to receive capability information of the UE from the UE. The network entity is configured to determine the number of parallel data processing operations supported by the UE based on the UE's capability information. The network entity is configured to partition the data link layer and / or physical layer of the network entity for data processing based on the number of parallel data processing operations supported by the UE.

[0044] Therefore, embodiments of this document provide a system for performing data processing. The system includes a network entity of a wireless network and a UE. The UE is configured to send UE capability information to the network entity. The UE is configured to receive configuration parameters from the network entity, including the number of parallel data processing operations supported by the UE. The UE is configured to partition the UE's data link layer and / or physical layer based on the number of parallel data processing operations supported by the UE.

[0045] Unlike existing methods and systems, network entities and UEs can partition the data link layer and / or physical layer based on the amount of parallel data processing supported by the UE. Furthermore, data is processed in parallel and independently through the partitioned set of data link layers and / or physical layers, significantly improving data rates between network entities and UEs because there are no critical sections. Parallelization is further enhanced by introducing the concept of substreams, which divides a single Internet Protocol (IP) stream into multiple streams at the Radio Access Network (RAN) layer.

[0046] Unlike existing methods and systems, network entities and UEs batch process data and package the processed data using MAC sub-headers to achieve optimal parallelization and high data rates.

[0047] Unlike existing methods and systems, network entities and UEs can dynamically increase or decrease the division of the data link layer and / or physical layer based on the UE's capability information. By dynamically increasing or decreasing the division of the data link layer and / or physical layer, the resources of network entities and UEs, such as memory, power, bandwidth, and processor cores, can be effectively utilized.

[0048] Now refer to the attached diagram, especially the reference... Figures 1 to 12 A preferred embodiment is shown.

[0049] Figure 1 This is a block diagram of a system (1000) for data processing in a wireless network according to embodiments disclosed herein. Examples of wireless networks include, but are not limited to, cellular networks such as fourth-generation (4G) mobile communication networks, fifth-generation (5G) mobile communication networks, sixth-generation (6G) mobile communication networks, etc. In one embodiment, the system (1000) includes a network entity (200) and a UE (100) of the wireless network, wherein the UE (100) is connected to the network entity (200).

[0050] Examples of the UE (100) include, but are not limited to, smartphones, tablets, personal digital assistants (PDAs), desktop computers, Internet of Things (IoT) devices, wearable devices, etc. In one embodiment, the UE (100) includes a layer controller (110), a memory (120), a processor (130), and a communicator (140), wherein the layer controller (110) is connected to the memory (120) and the processor (130). The layer controller (110) is implemented by processing circuitry, such as logic gates, integrated circuits, microprocessors, microcontrollers, memory circuitry, passive electronic components, active electronic components, optical components, hardwired circuitry, etc., and may optionally be driven by firmware. For example, this circuitry may be embodied in one or more semiconductor chips or on a substrate such as a printed circuit board.

[0051] The memory (120) stores the PDU (410). The memory (120) may include a non-volatile storage element. Examples of such a non-volatile storage element may include a magnetic disk, optical disk, floppy disk, flash memory, or electrically programmable memory (EPROM) or electrically erasable and programmable memory (EEPROM). Furthermore, in some examples, the memory (120) may be considered a non-transitory storage medium. The term "non-transitory" may mean that the storage medium is not embodied in a carrier wave or a propagating signal. However, the term "non-transitory" should not be interpreted as the memory (120) being non-removable. In some examples, the memory (120) may be configured to store a larger amount of information than the memory (120) itself. In some examples, the non-transitory storage medium may store data that changes over time (e.g., in random access memory (RAM) or a cache).

[0052] The processor (130) is configured to execute instructions stored in memory (120). The processor (130) may be a general-purpose processor, such as a central processing unit (CPU), application processor (AP), etc., or a graphics processing unit only, such as a graphics processing unit (GPU), visual processing unit (VPU), etc. The processor (130) may include multiple cores to execute instructions. The communicator (140) is configured to facilitate internal communication between the hardware components of the UE (100). In addition, the communicator (140) is configured to facilitate communication between the UE (100) and the network entity (200). The communicator (140) includes circuitry specific to standards capable of wired or wireless communication.

[0053] Examples of network entities (200) include, but are not limited to, base stations. In one embodiment, a network entity (200) includes a layer controller (210), a memory (220), a processor (230), and a communicator (240), wherein the layer controller (210) is connected to the memory (220) and the processor (230). The layer controller (210) is implemented by processing circuitry, such as logic gates, integrated circuits, microprocessors, microcontrollers, memory circuitry, passive electronic components, active electronic components, optical components, hardwired circuitry, etc., and may optionally be driven by firmware. For example, such circuitry may be embodied in one or more semiconductor chips or on a substrate such as a printed circuit board.

[0054] The memory (220) stores the PDU (410). The memory (220) stores displacement thresholds and magnetic field thresholds. The memory (220) may include a non-volatile storage element. Examples of such a non-volatile storage element may include a magnetic disk, optical disk, floppy disk, flash memory, or electrically programmable memory (EPROM) or electrically erasable and programmable memory (EEPROM). Furthermore, in some examples, the memory (220) may be considered a non-transitory storage medium. The term "non-transitory" may mean that the storage medium is not embodied in a carrier wave or a propagating signal. However, the term "non-transitory" should not be interpreted as the memory (220) being immovable. In some examples, the memory (220) may be configured to store a larger amount of information than the memory (220) itself. In some examples, the non-transitory storage medium may store data that may change over time (e.g., in random access memory (RAM) or a cache).

[0055] The processor (230) is configured to execute instructions stored in memory (220). The processor (230) may be a general-purpose processor, such as a central processing unit (CPU), application processor (AP), etc., or a graphics processing unit only, such as a graphics processing unit (GPU), visual processing unit (VPU), etc. The processor (230) may include multiple cores to execute instructions. The communicator (240) is configured to facilitate internal communication between the hardware components of the network entity (200). Furthermore, the communicator (240) is configured to facilitate communication between the network entity (200) and the UE (100) and other devices. The communicator (240) includes circuitry specific to standards capable of wired or wireless communication.

[0056] The UE (100) is configured to send capability information of the UE (100) to the network entity (200). In one embodiment, the capability information of the UE (100) includes, but is not limited to, at least one of the following: the number of cores of the processor (130) of the UE (100) available for data processing, the processor frequency, the maximum throughput of the UE (100), and the throughput requirements of the application of the UE (100). In one embodiment, the layer controller (110) sends the capability information of the UE (100) to the network entity (200).

[0057] A network entity (200) is configured to receive capability information of a UE (100) from a UE (100). In one embodiment, a layer controller (210) receives the capability information of the UE (100). The network entity (200) is configured to determine the number of parallel data processing operations supported by the UE (100) based on the capability information of the UE (100). In one embodiment, the layer controller (210) determines the number of parallel data processing operations supported by the UE (100) based on the capability information of the UE (100). The network entity (200) is configured to partition its data link layer and / or physical layer based on the number of parallel data processing operations supported by the UE (100) for data processing. In one embodiment, the data link layer includes a PDCP layer (420, 540), an RLC layer (430, 530), and a MAC layer (440, 520). The terms 'PDCP layer' and 'PDCP' are used interchangeably in this disclosure. The terms 'RLC layer' and 'RLC' are used interchangeably in this disclosure. The terms 'MAC layer' and 'MAC' are used interchangeably in this disclosure. The terms 'physical layer' and 'PHY' are used interchangeably in this disclosure.

[0058] In one embodiment, the layer controller (210) partitions the data link layer and / or physical layer of the network entity (200) for data processing based on the number of parallel data processing supported by the UE (100).

[0059] A network entity (200) is configured to send configuration parameters to a UE (100) including the number of parallel data processing operations supported by the UE (100). In one embodiment, a layer controller (210) sends configuration parameters to the UE (100) including the number of parallel data processing operations supported by the UE (100). The UE (100) is configured to receive configuration parameters from the network entity (200). In one embodiment, a layer controller (110) receives configuration parameters from the network entity (200). In response to receiving the configuration parameters, the UE (100) is configured to partition its data link layer and / or physical layer based on the number of parallel data processing operations supported by the UE (100). In one embodiment, in response to receiving the configuration parameters, the layer controller (110) partitions the UE (100)'s data link layer and / or physical layer based on the number of parallel data processing operations supported by the UE (100).

[0060] In one embodiment, the layer controller (110) determines whether to enable / disable data link layer and / or physical layer segmentation of the UE (100) based on configuration parameters. In another embodiment, the layer controller (210) determines whether to enable / disable data link layer and / or physical layer segmentation of the network entity (200) based on configuration parameters. In one embodiment, the configuration parameter is a static configuration parameter when the number of data link layer and / or physical layer segments is a constant. The layer controller (210) allows the radio resource control (RRC) of the network entity (200) to send the static configuration parameter to the UE (100). In another embodiment, the configuration parameter is a dynamic configuration parameter when the number of data link layer and / or physical layer segments varies based on radio channel conditions and the capability information of the UE (100). The layer controller (210) allows the MAC layer (520) of the network entity (200) to send the dynamic configuration parameter to the UE (100).

[0061] In one embodiment, the UE (100) is configured to receive PDUs (410) and operate as a transmitting device. In one embodiment, the layer controller (110) receives PDUs (410) from the UE (100)'s memory (120) or an application. The UE (100) is configured to allocate PDUs (410) to partitioned data link layers and / or partitioned physical layers of the UE (100) for parallel processing of PDUs (410). In one embodiment, the layer controller (110) allocates PDUs (410) to partitioned data link layers and / or partitioned physical layers of the UE (100). The UE (100) is configured to transmit processed PDUs (i.e., Service Data Units (SDUs)) to a network entity (200). In one embodiment, the layer controller (110) transmits processed PDUs to the network entity (200). The network entity (200) is configured to receive processed PDUs and operate as a receiving device. In one embodiment, the layer controller (210) receives processed PDUs. The network entity (200) is configured to aggregate processed PDUs in parallel using the data link layer and / or physical layer of the network entity (200) to generate PDU (410). In one embodiment, the layer controller (210) aggregates processed PDUs in parallel using the data link layer and / or physical layer of the network entity (200) to generate PDU (410).

[0062] In another embodiment, the network entity (200) is configured to receive PDUs (410) and operate as a transmitting device. In one embodiment, a layer controller (210) receives PDUs (410) from the network entity's (200) memory (220) or an application. The network entity (200) is configured to allocate PDUs (410) to partitioned data link layers and / or partitioned physical layers of the network entity (200) for parallel processing of PDUs (410). In one embodiment, the layer controller (210) allocates PDUs (410) to partitioned data link layers and / or partitioned physical layers of the UE (100). The network entity (200) is configured to transmit processed PDUs to the UE (100). In one embodiment, the layer controller (210) transmits processed PDUs to the UE (100). The UE (100) is configured to receive processed PDUs and operate as a receiving device. In one embodiment, the layer controller (110) receives processed PDUs. The UE (100) is configured to use the data link layer and / or physical layer of the UE (100) to aggregate processed PDUs in parallel to generate PDU (410). In one embodiment, the layer controller (110) uses the data link layer and / or physical layer of the UE (100) to aggregate processed PDUs in parallel to generate PDU (410).

[0063] In one embodiment, a network entity (200) is configured to dynamically increase or decrease the layer (i.e., data link layer and / or physical layer) partitioning based on the capability information of the UE (100). For example, if the network entity (200) detects that the UE (100) has high throughput requirements, the network entity (200) is configured to dynamically increase the layer partitioning. When the network entity (200) detects that the UE (100) has low throughput requirements, the network entity (200) is configured to dynamically decrease the layer partitioning and keep at least one data flow active until the UE (100) remains active. In one embodiment, the network entity (200) provides instructions to the layer controller (210) and the layer controller (110) to increase or decrease the layer partitioning via the RRC and / or MAC layers.

[0064] although Figure 1 The hardware components of the system (1000) are shown, but it is to be understood that other embodiments are not limited thereto. In other embodiments, the system (1000) may include fewer or more components. Furthermore, the labels or names of the components are for illustrative purposes only and do not limit the scope of this disclosure. One or more components may be combined together to perform the same or substantially similar data processing functions.

[0065] Figure 2 This is a flowchart S200 illustrating a method for performing data processing in a UE according to embodiments disclosed herein. In step S201, the method includes sending capability information of the UE (100) to a network entity (200). In step S202, the method includes receiving configuration parameters from the network entity (200) including the number of parallel data processing operations supported by the UE (100). In step S203, the method includes partitioning the UE's data link layer or physical layer based on the number of parallel data processing operations supported by the UE (100). In one embodiment, the method allows a layer controller (110) to perform steps S201-S203.

[0066] The various actions, behaviors, blocks, steps, etc. in flowchart S200 can be executed in the proposed order, different orders, or simultaneously. Furthermore, in some embodiments, some actions, behaviors, blocks, steps, etc., can be omitted, added, modified, skipped, etc., without departing from the scope of this disclosure.

[0067] Figure 3This is a flowchart S300 illustrating a method for performing data processing in a network entity (200) according to embodiments disclosed herein. In step S301, the method includes receiving capability information of a UE (100) from a UE (100). In step S302, the method includes determining the number of parallel data processing operations supported by the UE (100) based on the capability information of the UE (100). In step S303, the method includes partitioning the data link layer or physical layer of the network entity (200) for data processing based on the number of parallel data processing operations supported by the UE (100). In step S304, the method includes sending configuration parameters to the UE (100) including the number of parallel data processing operations supported by the UE (100). In step S305, the method includes partitioning the data link layer or physical layer of the UE (100) based on the number of parallel data processing operations supported by the UE (100). In one embodiment, the method allows a layer controller (210) to perform steps S301-S305.

[0068] The various actions, behaviors, blocks, steps, etc. in flowchart S300 can be executed in the proposed order, different orders, or simultaneously. Furthermore, in some embodiments, some actions, behaviors, blocks, steps, etc., can be omitted, added, modified, skipped, etc., without departing from the scope of this disclosure.

[0069] Figure 4A This document describes the data processing performed in a transmitting device by partitioning the RLC layer (430) according to embodiments disclosed herein. An example scenario is considered where a UE (100) needs to send a PDU (410) to a network entity (200). In this example scenario, the UE (100) is the transmitting device, and the network entity (200) is the receiving device. The transmitting device includes a PDCP layer (420), an RLC layer (430), a MAC layer (440), and a physical layer (450). The layer controller (110) partitions the RLC layer (430) into multiple RLC layers, namely the first RLC (431) to the nth RLC (433), where n = 2, 3, etc. The layer controller (110) provides the PDU (410) to the PDCP layer (420) of the transmitting device by mapping a transport layer stream to a radio stream in the PDCP layer (420).

[0070] In response to the processing of PDUs (410) at the PDCP layer (420), the layer controller (110) distributes (420A) the PDUs (410) from the PDCP layer (420) to multiple RLC layers (431-433) to process the PDUs (410) in parallel and independently at the multiple RLC layers (431-433). In one embodiment, the PDUs (410) are distributed based on at least one of the following: a sequence (e.g., round-robin scheduling), a random method, a batch / block method, the load of each RLC layer (431-433) (e.g., buffer occupancy), the processing capacity of each RLC layer (431-433) (e.g., maximum idle time), and a heuristic method. In the random method, the PDCP layer (420) sends the PDUs (410) to each RLC layer (431-433) in a random order. In the batch / block approach, the PDCP layer (420) sends batch / block sequenced PDUs to each RLC layer (431-433), which means that a group of consecutive packets will be batch manipulated and processed in the substream.

[0071] In the batch / block method, consecutive PDUs (410) from the PDCP layer (420) are processed by the RLC layer (431-433) to ensure that when the processed PDUs are transmitted from the RLC layer (531-533) of the receiving device to the PDCP layer (540) of the receiving device, they will be in the same order as those from each RLC layer (431-433).

[0072] In one embodiment, sequential PDUs of batches / blocks are assigned to multiple RLC layers (431-433) based on the conditions given below.

[0073] If P PDUs (410) are received instantaneously within a time interval exceeding T, and the RLC layer (430) is divided into N RLC layers (431-433), then each RLC layer (431-433) can receive P divided by N consecutive PDUs. For example, for a 100Gbps IP stream with a packet size of 1500 bytes, the PDCP layer (540) receives a total of ~8300 packets every 1ms. If 25 RLC layers (431-433) are configured on the transmitting device, then each RLC layer (431-433) receives a batch of ~332 consecutive PDUs every 1ms for processing.

[0074] A batch of consecutive PDUs should be equal to the available buffer for each RLC layer (431-433).

[0075] The batch size limit for consecutive PDUs should be a configurable parameter based on the service type and RLC substream processing capabilities.

[0076] In the heuristic-based approach, the PDCP layer (420) sends the PDU (410) to each RLC layer (431-433) based on additional information, such as the number of retransmissions required for successful transmission of the PDU (410). In response to the processing of the PDU (410), the multiple RLC layers send the processed PDU to the MAC layer (440) of the transmitting device. The processed PDU from each RLC layer (431-433) includes a header indicating from which RLC layer (431-433) the PDU (410) was processed. The MAC layer (440) multiplexes (440A) the processed PDU into a single transport block (TB). Furthermore, the MAC layer (440) sends the single TB to the receiving device via the physical layer (450) of the transmitting device.

[0077] In one embodiment, the transmitting device receives processed PDUs from each RLC layer (431-433) and concatenates the processed PDUs into a TB based on a license received from the physical layer (450).

[0078] In one embodiment, the MAC layer (440) assigns a substream ID in the MAC subheader for processed PDUs from multiple RLC layers (431-433).

[0079] In one embodiment, the MAC layer (440) performs splicing (i.e. multiplexing) sequentially by selecting processed PDUs one after another from a plurality of RLC layers (431-433).

[0080] In one embodiment, the MAC layer (440) randomly performs splicing (i.e. multiplexing) by selecting processed PDUs from a plurality of RLC layers (431-433) that can be packaged into the TB of the MAC layer (440).

[0081] In one embodiment, the MAC layer (440) performs splicing (i.e. multiplexing) in a batch manner to ensure that processed PDUs from multiple RLC layers (431-433) from the same substream are continuously spliced ​​to the TB of the MAC layer (440).

[0082] In one embodiment, the MAC layer (440) performs splicing (i.e. multiplexing) to pack into a TB based on the throughput from multiple RLC layers (431-433) and the priority of a processed PDU relative to another processed PDU.

[0083] In one embodiment, for a single carrier, each logical channel of the MAC layer (440) can have the same logical channel priority (LCP) or different LCPs for each RLC layer (431-433), where a single MAC layer (440) can also support single / multi-carrier operation. A logical channel is an abstraction for classifying or grouping various types of data transmitted over a wireless channel. The MAC layer (440) can pack processed PDUs into a TB in parallel across multiple carriers.

[0084] In one embodiment, MAC TB packaging is beneficial if the processed PDUs from multiple RLC layers (431-433) are contiguous and when the segmentation is minimal. When the RLC PDUs within a single MAC TB are contiguous, there is a simple way to package them for fast processing. Furthermore, when the receiving device receives the MAC TB, since all the RLC PDUs are contiguous, the received packets do not need to be reordered and can be quickly transmitted to the upper layer.

[0085] When the network entity (200) needs to send the PDU (410) to the UE (100), then the UE (100) will be the receiving device and the network entity (200) will be the sending device.

[0086] Figure 4B This document describes the data processing performed in a receiving device by dividing the RLC layer (530) according to embodiments disclosed herein. An example scenario is considered where the UE (100) is a transmitting device and the network entity (200) is a receiving device. The receiving device includes a PDCP layer (540), an RLC layer (530), a MAC layer (520), and a physical layer (510). The layer controller (210) divides the RLC layer (530) into multiple RLC layers, namely the first RLC (531) to the nth RLC (533), where n = 2, 3, etc.

[0087] The MAC layer (520) receives the TB from the transmitting device through the physical layer (510) of the receiving device. Furthermore, the MAC layer (520) demultiplexes (520A) the TB to the processed PDU according to the MAC sub-header in each processed PDU. In response to receiving the processed PDU, the layer controller (210) allocates the processed PDU from the MAC layer (520) to the corresponding RLC layer (531-533) by parsing the MAC sub-header of each processed PDU. When the TB is received at the receiving device via multiple carriers, the MAC layer (520) parses the TB from the multiple carriers in parallel.

[0088] Each RLC layer (531-533) independently processes the PDUs received from the MAC layer (520) and transmits the packets to the PDCP layer (540). In response to receiving a processed PDU at the PDCP layer (540), the layer controller (210) aggregates (540A) the processed PDUs in parallel to generate a PDU (410). The layer controller (210) aggregates (540A) the processed PDUs in parallel in the same order as the PDUs (410) were processed at the PDCP layer (420) of the transmitting device.

[0089] In one embodiment, the PDCP layer (420) distributes processed PDUs to the RLC layer (431-433) in batches to minimize the impact on aggregation at the PDCP layer (540). Therefore, the RLC layer (531-533) can further set constraints to transmit processed PDUs to the PDCP layer (540) only sequentially. The layer controller (210) reorders the processed PDUs at the PDCP layer (540) only in batches. Since packets received within a batch are ordered in the same way they were packaged in the transmitting device, the PDCP layer does not need to worry about the PDCP PDUs within that batch when it receives them. The RLC layer (531-533) includes configurable parameters for transmitting processed PDUs from the RLC layer (531-533) to the PDCP layer (540) sequentially or out of order. The layer controller (210) parses the PDCP header from the processed PDU received from the RLC layer (531-533), where the PDCP header is a redundant part. Parsing can be performed in parallel at the core of the receiver's processor to speed up the aggregation operation.

[0090] Figure 5A This document describes the data processing performed in the transmitting device by dividing the RLC layer (431) and MAC layer (440) according to the embodiments disclosed herein. Consider an example scenario where the UE (100) needs to send a PDU (410) to the network entity (200). In this example scenario, the UE (100) is the transmitting device, and the network entity (200) is the receiving device. The layer controller (110) divides the RLC layer (430) into multiple RLC layers, namely the first RLC (431) to the nth RLC (433), where n = 2, 3, etc. Furthermore, the layer controller (110) divides the MAC layer (440) into multiple MAC layers, namely the first MAC (441) to the nth RLC (433), where n = 2, 3, etc.

[0091] In response to receiving and processing a PDU (410) at the PDCP layer (420), the layer controller (110) distributes the PDU (410) from the PDCP layer (420) to multiple RLC layers (431-433) so that the PDU (410) can be processed in parallel and independently at multiple RLC layers (431-433). In one embodiment, the PDU (410) is distributed based on at least one of the following: sequence (e.g., round-robin scheduling), random method, batch / block method, load (e.g., buffer occupancy) of each RLC layer (431-433), processing capacity (e.g., maximum idle time) of each RLC layer (431-433), and heuristic method.

[0092] In response to the processing of PDU (410), each RLC layer (431-433) sends the processed PDU to the MAC layer (441-433) of the transmitting device. In one embodiment, different RLC layers (431-433) may be mapped to different MAC layers (441-433). In one embodiment, each RLC substream (431-433) may be mapped to multiple MAC layers (441-433). In another embodiment, multiple RLC layers (431-433) may be mapped to a single MAC layer (431-433). The processed PDU from each RLC layer (431-433) includes a header indicating the RLC layer (431-433) by which the PDU (410) was processed. The processed PDU from each MAC layer (441-443) includes a MAC subheader indicating the corresponding MAC layer (441-443) by which the PDU (410) was processed. The MAC layers (441-443) further process the processed PDU into a single TB. Additionally, the MAC layers (441-443) transmit the single TB to the receiving device via the physical layer (450) of the transmitting device. The MAC layers (441-443) include their own schedulers for managing the same LCP across all RLC sub-data radio bearer (DRB) entities.

[0093] Figure 5BThis document describes the data processing performed in a receiving device by dividing the RLC layer (530) and MAC layer (520) according to embodiments disclosed herein. Consider an example scenario where the UE (100) is the transmitting device and the network entity (200) is the receiving device. The layer controller (210) divides the RLC layer (530) into multiple RLC layers, namely the first RLC (531) to the nth RLC (533), where n = 2, 3, etc. Furthermore, the layer controller (210) divides the MAC layer (520) into multiple MAC layers, namely the first MAC (521) to the nth RLC (523), where n = 2, 3, etc. The MAC layers (521-523) receive the TB from the transmitting device through the physical layer (510) of the receiving device. Furthermore, the MAC layers (521-523) demultiplex (520A) the TB to the processed PDU according to the MAC sub-header in each processed PDU. In response to receiving a processed PDU, the layer controller (210) distributes the processed PDU from the MAC layer (521-523) to the corresponding RLC layer (531-533) by parsing the MAC sub-header of each processed PDU.

[0094] In one embodiment, different MAC layers (521-523) may be mapped to different RLC layers (531-533). In another embodiment, each MAC layer (521-523) may be mapped to multiple RLC layers (531-533). In yet another embodiment, multiple MAC layers (521-523) may be mapped to a single RLC layer (531-533). Each RLC layer (531-533) independently processes the PDUs received from the MAC layers (521-523) and transmits the packets to the PDCP layer (540). In response to receiving a processed PDU at the PDCP layer (540), the layer controller (210) aggregates (540A) the processed PDUs in parallel to generate a PDU (410).

[0095] Figure 6AThis document describes the data processing performed in a transmitting device by dividing the RLC layer (430) and PDCP layer (420) according to embodiments disclosed herein. Consider an example scenario where a UE (100) needs to send a PDU (410) to a network entity (200). In this example scenario, the UE (100) is the transmitting device, and the network entity (200) is the receiving device. In one embodiment, the transmitting device includes a Service Data Adaptation Protocol (SDAP) layer (460), a PDCP layer (420), an RLC layer (430), a MAC layer (440), and a physical layer (450). The layer controller (110) divides the PDCP layer (420) into multiple PDCP layers, namely the first PDCP (421) to the nth PDCP (423), where n = 2, 3, etc. In addition, the layer controller (110) divides the RLC layer (430) into multiple RLC layers, namely the first RLC (431) to the nth RLC (433), where n = 2, 3, etc.

[0096] In response to receiving a PDU (410) at the SDAP layer (460), the layer controller (110) distributes the PDU (410) from the SDAP layer (460) to multiple PDCP layers (421-423) for parallel and independent processing at the multiple PDCP layers (421-423). In one embodiment, the PDU (410) is distributed based on at least one of the following: sequence (e.g., round-robin scheduling), random method, batch / block method, load on each PDCP layer (421-423) (e.g., buffer occupancy), processing capacity of each PDCP layer (421-423) (e.g., maximum idle time), and heuristic method. The layer controller (110) assigns an SDAP sequence number (SN) to each processed PDU (410) from the SDAP layer (460) to maintain the order in which the processed PDUs (410) are sent to the PDCP layers (421-423).

[0097] In response to the processing of a PDU (410), each PDCP layer (421-423) sends the processed PDU to the corresponding RLC layer (431-433) of the transmitting device. Furthermore, the RLC layers (431-433) process the received PDU and add a header indicating which RLC layer (431-433) the PDU (410) was processed from. To distribute the processed PDUs from the SDAP layer (460) to the various sub-streams, including the PDCP layers (421-423) and the RLC layers (431-433), the layer controller (110) maps between the Internet Engineering Task Force (IETF) TCP and 3GPP SDAP modules for sub-stream identification, classifying certain groups of packets into different sub-streams. The distribution of processed PDUs is completed at the SDAP layer, without any information regarding packet order. An identifier, typically from IP / TCP header fields, is required to help identify which sub-streams the SDAP layer distributes the flow into. In response to processing a PDU (410), multiple RLC layers send the processed PDU to the MAC layer (440) of the transmitting device. The MAC layer (440) multiplexes (440A) the processed PDU into a single TB. In one embodiment, the MAC layer (440) assigns a substream ID in the MAC subheader to the processed PDU from multiple RLC layers (431-433). Furthermore, the MAC layer (440) sends the single TB to the receiving device through the physical layer (450) of the transmitting device.

[0098] Figure 6B This document describes data processing performed in a receiving device by partitioning an RLC layer (530) and a PDCP layer (540) according to embodiments disclosed herein. Consider an example scenario where a UE (100) is a transmitting device and a network entity (200) is a receiving device. In one embodiment, the receiving device includes an SDAP layer (550), a PDCP layer (540), an RLC layer (530), a MAC layer (520), and a physical layer (510). A layer controller (210) partitions the PDCP layer (540) into multiple PDCP layers, namely the first PDCP (541) to the nth PDCP (543), where n = 2, 3, etc. Similarly, the layer controller (210) partitions the RLC layer (530) into multiple RLC layers, namely the first RLC (531) to the nth RLC (533), where n = 2, 3, etc. The MAC layer (520) receives a TB from the transmitting device through the physical layer (510) of the receiving device.

[0099] Furthermore, the MAC layer (520) demultiplexes (520A) the TB to the processed PDU based on the MAC sub-header in each processed PDU. In response to receiving a processed PDU, the layer controller (210) distributes the processed PDU from the MAC layer (520) to the corresponding RLC layer (531-533) by parsing the MAC sub-header of each processed PDU. Each RLC layer (531-533) independently processes the PDU received from the MAC layer (520) and transmits the packet to the corresponding PDCP layer (541-543). Furthermore, each PDCP layer (541-543) independently processes the PDU received from the corresponding RLC layer (531-533) and transmits the packet to the SDAP layer (550). In response to receiving a processed PDU at the SDAP layer (550), the layer controller (210) aggregates (550A) the processed PDUs in parallel to generate a PDU (410). The layer controller (210) aggregates (540A) the processed PDUs in parallel in the same order as the order in which the PDUs (410) are processed in the SDAP layer (460) of the transmitting device.

[0100] Figure 7A This document describes data processing performed in a transmitting device by dividing the RLC layer (431) and PDCP layer (421) according to embodiments disclosed herein. Consider an example scenario where a UE (100) needs to send a PDU (410) to a network entity (200). In this example scenario, the UE (100) is the transmitting device, and the network entity (200) is the receiving device. In one embodiment, the transmitting device includes a PDCP layer (420), an RLC layer (430), a MAC layer (440), and a physical layer (450). The layer controller (110) divides the PDCP layer (420) into multiple PDCP layers, namely the first PDCP (421) to the nth PDCP (423), where n = 2, 3, etc. Furthermore, the layer controller (110) divides the RLC layer (430) into multiple RLC layers, namely the first RLC (431) to the nth RLC (433), where n = 2, 3, etc.

[0101] In response to receiving and processing a PDU (410) at a PDCP layer (420), the layer controller (110) allocates the PDU (410) to multiple PDCP layers (421-423) for parallel and independent processing at the multiple PDCP layers (421-423). In one embodiment, the PDU (410) is allocated based on at least one of a sequence (e.g., round-robin scheduling), a random method, a batch / block method, the load (e.g., buffer occupancy) of each PDCP layer (421-423), the processing capacity (e.g., maximum idle time) of each PDCP layer (421-423), and a heuristic method. In response to processing the PDU (410), each PDCP layer (421-423) sends the processed PDU to the corresponding RLC layer (431-433) of the transmitting device. In one embodiment, the layer controller (110) assigns a PDCP SN to each processed PDU (410) from each PDCP layer (421-423) to maintain the order in which the processed PDU (410) is sent to the RLC layers (431-433).

[0102] Furthermore, the RLC layers (431-433) process the received PDUs and add headers indicating from which RLC layer (431-433) the PDU (410) was processed. In response to the processing of the PDU (410), the multiple RLC layers send the processed PDUs to the MAC layer (440) of the transmitting device. The MAC layer (440) multiplexes (440A) the processed PDUs into a single TB. The MAC layer (440) assigns a substream ID in the MAC subheader to the processed PDUs from the multiple RLC layers (431-433). Furthermore, the MAC layer (440) sends the single TB to the receiving device through the physical layer (450) of the transmitting device.

[0103] Figure 7B The present invention describes data processing performed in a receiving device by dividing an RLC layer (530) and a PDCP layer (540) according to embodiments disclosed herein.

[0104] Consider an example scenario where the UE (100) is the transmitting device and the network entity (200) is the receiving device. In one embodiment, the receiving device includes an SDAP layer (550), a PDCP layer (540), an RLC layer (530), a MAC layer (520), and a physical layer (510). The layer controller (210) divides the PDCP layer (540) into multiple PDCP layers, namely the first PDCP (541) to the nth PDCP (543), where n = 2, 3, etc. Furthermore, the layer controller (210) divides the RLC layer (530) into multiple RLC layers, namely the first RLC (531) to the nth RLC (533), where n = 2, 3, etc. The MAC layer (520) receives the TB from the transmitting device through the physical layer (510) of the receiving device. Furthermore, the MAC layer (520) demultiplexes (520A) the TB to the processed PDU according to the MAC sub-header in each processed PDU. In response to receiving a processed PDU, the layer controller (210) distributes the processed PDU from the MAC layer (520) to the corresponding RLC layer (531-533) by parsing the MAC sub-header of each processed PDU. Each RLC layer (531-533) independently processes the PDU received from the MAC layer (520) and transmits the packet to the corresponding PDCP layer (541-543). Furthermore, each PDCP layer (541-543) independently processes the PDU received from the corresponding RLC layer (531-533). Additionally, the layer controller (210) aggregates (540A) the processed PDUs in parallel to generate PDUs (410) in the same order as the PDUs (410) processed in the PDCP layers (421-423). In one embodiment, a global SN is required to maintain an ordered packet stream for aggregating the processed PDUs. Since packet allocation occurs before PDCP processing, meaning the SN has not yet been allocated, a classifier is needed to identify packets in order to correctly aggregate packets received from multiple PDCP substreams and still deliver them to the application in sequence.

[0105] Figure 8A This document describes data processing performed in a transmitting device by partitioning the physical layer (450) according to embodiments disclosed herein. Consider an example scenario where a UE (100) needs to send a PDU (410) to a network entity (200). In this example scenario, the UE (100) is the transmitting device, and the network entity (200) is the receiving device. The transmitting device includes a PDCP layer (420), an RLC layer (430), a MAC layer (440), and a physical layer (450). The layer controller (110) partitions the physical layer (450) into multiple physical layers, namely the first PHY (451) to the nth PHY (453), where n = 2, 3, etc.

[0106] In response to receiving and processing a PDU (410), the PDCP layer (420) sends the PDU (410) to the RLC layer (430). The RLC layer (430) processes the packets received from the PDCP layer (420) and sends the processed PDU to the MAC layer (440). Furthermore, the MAC layer (440) generates a TB using the processed PDU. Additionally, the layer controller (110) allocates (440B) TBs on the physical layer (451-453) to transmit TBs in parallel and independently over a single carrier (470), where the UE (100) is served with multiple TRPs (transmit and receive points) or with a single TRP, where each PHY can be considered a combination of one or more TRPs. The MAC layer (440) assigns a substream ID in the MAC subheader to the processed PDUs from the multiple RLC layers (431-433). In one embodiment, processed PDUs are allocated based on at least one of the following: a sequence (e.g., round-robin scheduling), a random method, a batch / block method, the load of each physical layer (451-453) (e.g., buffer occupancy), the processing capacity of each physical layer (451-453) (e.g., maximum idle time), and a heuristic method. In one embodiment, timers and parameters are configured independently for use in the physical layers (451-453) to send TBs in parallel and independently. To send TBs through a specific physical layer (451-453), the layer controller (110) maps the SDAP layer (550), PDCP layer (540), RLC layer (530), and MAC layer (520) to the specific physical layer (451-453).

[0107] In one embodiment, when multiple physical layers (451-453) have already been served through a single TRP, the UE (100) receives multiple grants from the wireless network to send data to the wireless network within a single transmission time interval (TTI) for each physical layer (451-453). In one embodiment, the physical downlink control channel (PDCCH) or any other control channel provides the UE (100) with indications of multiple grants. The MAC layer (440) processes these grants simultaneously or in parallel and forms multiple TBs. The encoding and processing of these individual MAC TBs can occur in parallel at the physical layers. In one embodiment, multiple physical layers (451-453) concatenate multiple TBs from different or the same MAC layer (440) to form a single physical layer data block and send the single physical layer data block to the wireless network. While the UE (100) is receiving a single grant from the wireless network to send data to the wireless network, the layer controller (110) repeats the same packetization across multiple physical layers (451-453).

[0108] Figure 8BThis document describes the data processing performed in a receiving device by partitioning the physical layer (510) according to embodiments disclosed herein. Consider an example scenario where the UE (100) is the transmitting device and the network entity (200) is the receiving device. The receiving device includes a PDCP layer (540), an RLC layer (530), a MAC layer (520), and a physical layer (510). The layer controller (210) partitions the physical layer (510) into multiple physical layers, namely the first PHY (511) to the nth PHY (513), where n = 2, 3, etc.

[0109] The MAC layer (520) receives TBs from the transmitting device through multiple physical layers (511-513) of the receiving device. Furthermore, the layer controller (210) aggregates (520B) the TBs received at the MAC layer (520) from the multiple physical layers (511-513) to generate a processed PDU. In response to the generation of the processed PDU, the MAC layer (520) sends the processed PDU from the MAC layer (520) to the RLC layer (531-533) by parsing the MAC sub-header of the processed PDU. The RLC layer (530) processes the PDU received from the MAC layer (520) and transmits the packet to the PDCP layer (540). In response to receiving the processed PDU, the PDCP layer (540) generates a PDU (410) using the processed PDU.

[0110] Figure 9A This document describes data processing performed in a transmitting device by dividing the MAC layer (440) and physical layer (450) according to embodiments disclosed herein. Consider an example scenario where a UE (100) needs to send a PDU (410) to a network entity (200). In this example scenario, the UE (100) is the transmitting device, and the network entity (200) is the receiving device. The transmitting device includes a PDCP layer (420), an RLC layer (430), a MAC layer (440), and a physical layer (450). The layer controller (110) divides the physical layer (450) into multiple physical layers, namely the first PHY (451) to the nth PHY (453), where n = 2, 3, etc. Furthermore, the layer controller (110) divides the MAC layer (440) into multiple MAC layers, namely the first MAC (441) to the nth RLC (433), where n = 2, 3, etc.

[0111] In response to receiving and processing a PDU (410), the PDCP layer (420) sends the PDU (410) to the RLC layer (430). The RLC layer (430) processes the packets received from the PDCP layer (420). Furthermore, the layer controller (110) distributes (430A) the PDU (410) from the RLC layer (430) to multiple MAC layers (441-443) to process the processed PDU in parallel and independently at the multiple MAC layers (441-443). In one embodiment, the RLC layer (430) may have many substreams and further perform one-to-one or many-to-one mapping with each MAC layer (441-443). Additionally, each MAC layer (441-443) generates a TB using the processed PDU and allocates the TB to the corresponding physical layer (451-453) to transmit the TB in parallel and independently via a single carrier (470). The MAC layers (441-443) assign substream IDs in the MAC subheading to the processed PDUs from the RLC layer (430). In one embodiment, each MAC layer (441-443) may be independently mapped to each carrier or each physical layer (451-453). In one embodiment, a single MAC layer (441-443) or different MAC layers (441-443) may have common or various MAC functions. In one embodiment, if only a single carrier is available, the physical layer (451-453) may merge packets into a single TB. In the case of multiple radio access technologies (multiple RATs), multiple TRPs, or multiple carriers, the physical layer (451-453) may process packets independently.

[0112] Figure 9B This document describes the data processing performed in a receiving device by dividing the MAC layer (520) and physical layer (510) according to embodiments disclosed herein. Consider an example scenario where the UE (100) is the transmitting device and the network entity (200) is the receiving device. The receiving device includes a PDCP layer (540), an RLC layer (530), a MAC layer (520), and a physical layer (510). The layer controller (210) divides the MAC layer (520) into multiple MAC layers, namely the first MAC (521) to the nth RLC (523), where n = 2, 3, etc. Furthermore, the layer controller (210) divides the physical layer (510) into multiple physical layers, namely the first PHY (511) to the nth PHY (513), where n = 2, 3, etc.

[0113] Multiple MAC layers (521-523) receive TBs from the transmitting device through their respective physical layers (511-513) of the receiving device. Furthermore, the multiple MAC layers (521-523) generate processed PDUs from the TBs and send the processed PDUs to the RLC layer (530). Additionally, the layer controller (210) aggregates (530A) the processed PDUs received from the MAC layers (521-523). Furthermore, the RLC layer (530) sends the processed PDUs to the PDCP layer (540). In response to receiving a processed PDU, the PDCP layer (540) generates a PDU (410) using the processed PDU.

[0114] Figure 10 The frame format of a MAC subtransfer block according to an embodiment disclosed herein is described. A MAC subtransfer block is a processed PDU generated by the MAC layer (440) using PDUs processed by the RLC layers (431-433). The frame of a MAC subtransfer block begins with a MAC subheader (601) and further comprises n PDUs processed sequentially by the RLC layers (431-433), namely the first RLC PDU (602) to the nth RLC PDU (604). A single MAC subheader can be used to indicate RLC PDUs (602-604) of the same substream.

[0115] If the allocation of PDUs (410) at the PDCP layer (420) is performed using a batch / block method (i.e., a batch of consecutive PDCP PDUs is mapped to an RLC substream), and the MAC layer (440) uses a batch / block method to concatenate processed PDUs from the RLC layers (431-433) (i.e., processed PDUs from the RLC layers (431-433) of the same substream are concatenated in a TB), then a MAC subheader is sufficient to generate a packetized data unit (i.e., a MAC subtransfer block) for an RLC substream.

[0116] Figure 11 The frame format of a MAC LCID sub-header with a sub-stream ID according to embodiments disclosed herein is described. The frame format of the MAC LCID sub-header with a sub-stream ID includes a reserved field (R 701), an extended field (E 702), a logical channel ID (LCID 703), a sub-stream ID (704), and the length of the sub-TB (705-707). A single LCID can map to multiple sub-stream IDs, therefore differentiation is required to determine at the MAC layer which part of the entire MAC TB belongs to which sub-stream ID. This part of the MAC TB is called the sub-TB, and therefore the length of the sub-TB must also be indicated in the MAC sub-header.

[0117] Figure 12The frame format of a 16-bit RLC header with a serial number (SN) according to the embodiments disclosed herein is described. The sample frame format of the 16-bit RLC header with a serial number (SN) includes a data / control field (D 801), a polling bit (P 802), segmentation information (SI 803), reserved bits (R), a sequence number (SN 805-806), and a length field (807-808).

[0118] The existing 3GPP 5G specifications do not include a length field (807-808) in the RLC header. However, it would be advantageous to simplify processing if the length of the RLCPDU were represented by the length itself in the RLC header.

[0119] In one embodiment, removing the length field from the MAC subheader of a single RLC PDU and adding the length field to the RLC PDU optimizes the packed data unit.

[0120] The above description of specific embodiments will fully reveal the general nature of the embodiments described herein. Others can easily modify and / or adapt them to specific embodiments for various applications by applying existing knowledge without departing from the general concepts. Therefore, such adaptations and modifications should and are intended to be understood within the scope of the meaning and equivalent forms of the disclosed embodiments. It should be understood that the wording or terminology used herein is for description and not for limitation. Therefore, although the embodiments herein are described in the form of preferred embodiments, those skilled in the art will recognize that the embodiments herein can be modified within the scope of the embodiments described herein.

Claims

1. A network entity (200) for a wireless network, the network entity (200) comprising: Communication circuits; as well as processor; The processor is configured as follows: The communication circuit receives information about the user equipment (UE)'s (100) capabilities related to parallel and independent data processing. Based on the capability information of the UE (100), determine the number of parallel and independent data processing operations supported by the UE (100). Based on the number of parallel and independent data processing operations supported by the UE (100), at least one of the physical layer and data link layer of the network entity (200) is partitioned to perform parallel and independent data processing. The communication circuit sends configuration parameters to the UE (100), including the number of parallel and independent data processing operations supported by the UE (100), and Based on the throughput requirements or performance requirements of the UE (100), the number of partitions of at least one of the data link layer and the physical layer is dynamically updated, while maintaining at least one active data stream.

2. The network entity (200) according to claim 1, wherein, The processor is also configured to: The communication circuit receives multiple packet data units (PDUs) (410) processed by the UE (100); and The processed PDUs are aggregated in parallel using at least one of the partitioned physical layer and partitioned data link layer of the network entity (200) to generate a plurality of PDUs (410).

3. The network entity (200) according to claim 1, wherein, The processor is also configured to: Receive multiple PDUs (410); The plurality of PDUs (410) are assigned to at least one of the partitioned data link layer and partitioned physical layer of the network entity (200) to process the plurality of PDUs (410) in parallel. as well as The processed PDU is sent to the UE (100) through the communication circuit.

4. The network entity (200) according to claim 1, wherein, The capability information of the UE (100) includes at least one of the following: the number of cores of the processor (130) of the UE (100) that can be used for data processing, the processor frequency, the maximum throughput of the UE (100), and the throughput requirements of the application of the UE (100).

5. The network entity (200) according to claim 1, wherein, The data link layer includes at least one of the following: Packet Data Convergence Protocol (PDCP) layer (420, 540), Radio Link Control (RLC) layer (430, 530), and Media Access Control (MAC) layer (440, 520).

6. A user equipment (UE) (100), the UE (100) comprising: Communication circuits; as well as processor; The processor is configured as follows: The communication circuit transmits the UE (100)'s capability information related to parallel and independent data processing to the network entity (200). The communication circuit receives configuration parameters from the network entity (200) including the number of parallel and independent data processing operations supported by the UE (100). Based on the number of parallel and independent data processing operations supported by the UE (100), at least one of the data link layer and physical layer of the UE (100) is partitioned, and Based on the throughput requirements or performance requirements of the UE (100), the number of partitions of at least one of the data link layer and the physical layer is dynamically updated, while maintaining at least one active data stream.

7. The UE (100) according to claim 6, wherein, The processor is also configured to: Receive multiple Packet Data Units (PDUs) (410); The plurality of PDUs (410) are assigned to at least one of the partitioned data link layer and the partitioned physical layer of the UE (100) to process the plurality of PDUs (410) in parallel. as well as The processed PDU is sent to the network entity (200) via the communication circuit.

8. The UE (100) according to claim 6, wherein, The processor is also configured to: The PDU processed by the network entity (200) is received through the communication circuit; as well as The processed PDUs are aggregated in parallel using at least one of the partitioned data link layer and partitioned physical layer of the UE (100) to generate a plurality of PDUs (410).

9. The UE (100) according to claim 6, wherein, The capability information of the UE (100) includes at least one of the following: the number of cores of the processor (130) of the UE (100) that can be used for data processing, the processor frequency, the maximum throughput of the UE (100), and the throughput requirements of the application of the UE (100).

10. The UE (100) according to claim 6, wherein, The data link layer includes at least one of the following: Packet Data Convergence Protocol (PDCP) layer (420, 540), Radio Link Control (RLC) layer (430, 530), and Media Access Control (MAC) layer (440, 520).

11. A method for data processing in a wireless network, the method comprising: The network entity (200) of the wireless network receives the capability information of the user equipment (UE) (100) related to parallel and independent data processing from the UE; The network entity (200) determines the number of parallel and independent data processing operations supported by the UE (100) based on the capability information of the UE (100); Based on the number of parallel and independent data processing operations supported by the UE (100), the network entity (200) divides at least one of its data link layer and physical layer to perform parallel and independent data processing. The network entity (200) sends configuration parameters to the UE (100) including the number of parallel and independent data processing operations supported by the UE (100), and The network entity (200) dynamically updates the number of partitions of at least one of the data link layer and the physical layer based on the throughput requirements or performance requirements of the UE (100), while maintaining at least one active data stream.

12. A method for performing data processing in a user equipment (UE) (100), the method comprising: The UE (100) sends its capability information related to parallel and independent data processing to the network entity (200) of the wireless network; The UE (100) receives configuration parameters from the network entity (200) including the number of parallel and independent data processing operations supported by the UE (100); Based on the number of parallel and independent data processing operations supported by the UE (100), the UE (100) divides at least one of its data link layer and physical layer, and The UE (100) dynamically updates the number of partitions of at least one of the data link layer and the physical layer based on the throughput requirements or performance requirements of the UE (100), while maintaining at least one active data stream.

Citation Information

Patent Citations

  • Method, apparatus, and computer program product for user equipment capability indication of parallel processing

    US20170265190A1