Methods and devices for enhanced mac operation

The enhanced MAC sublayer operations address inefficiencies in handling increased data traffic by implementing adaptive traffic coordination, LCP, and HARQ models, resulting in improved resource utilization and reduced delays.

WO2026123355A1PCT designated stage Publication Date: 2026-06-18APPLE INC +1

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
APPLE INC
Filing Date
2024-12-13
Publication Date
2026-06-18

Smart Images

  • Figure CN2024139238_18062026_PF_FP_ABST
    Figure CN2024139238_18062026_PF_FP_ABST
Patent Text Reader

Abstract

The techniques described herein can include solutions for enhances media access control (MAC) processes and techniques. Processes and techniques include adaptive uplink traffic coordination, enhanced logical channel prioritization (LCP), and an adaptive hybrid automatic repeat request (HARQ) model. Adapting uplink traffic coordination can include network or user equipment (UE) adjustment of grant size and packet size patterns for expected data amounts. Enhanced LCP can include reference LCP information indicated by the network to improve uplink rate control procedures at the UE. An adaptive HARQ model can include the UE determining uplink grant characteristics and using one uplink grant to schedule one or multiple MAC packet data units (PDUs) transmitted via one or multiple HARQ processes. Objectives of such techniques can include network and UE traffic coordination, dynamic LCP, and efficient hybrid automatic repeat request HARQ processes.
Need to check novelty before this filing date? Find Prior Art

Description

SYSTEMS, METHODS, AND DEVICES FOR ENHANCED MAC OPERATIONFIELD

[0001] This disclosure relates to wireless communication networks and mobile device capabilities.BACKGROUND

[0002] Wireless communication networks and wireless communication services are becoming increasingly dynamic, complex, and ubiquitous. For example, some wireless communication networks can be developed to implement fourth generation (4G) , fifth generation (5G) or new radio (NR) technology. Such technology can include solutions for increased data traffic.BRIEF DESCRIPTION OF THE DRAWINGS

[0003] The present disclosure will be readily understood and enabled by the detailed description and accompanying figures of the drawings. Like reference numerals can designate like features and structural elements. Figures and corresponding descriptions are provided as non-limiting examples of aspects, implementations, etc., of the present disclosure, and references to "an" or “one” aspect, implementation, etc., may not necessarily refer to the same aspect, implementation, etc., and can mean at least one, one or more, etc.

[0004] Figure 1 is a diagram of an example of an overview according to one or more implementations described herein.

[0005] Figure 2 is a diagram of an example network according to one or more implementations described herein.

[0006] Figure 3 is a diagram of an example process for enhanced media access control (MAC) operation according to one or more implementations described herein.

[0007] Figure 4 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0008] Figure 5 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0009] Figure 6 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0010] Figure 7 is a diagram of an example of enhanced MAC operation according to one or more implementations described herein.

[0011] Figure 8 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0012] Figure 9 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0013] Figure 10 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0014] Figure 11 is a diagram of an example of components of a device according to one or more implementations described herein.

[0015] Figure 12 is a diagram of example interfaces of baseband circuitry according to one or more implementations described herein.

[0016] Figure 13 is a block diagram illustrating components, according to one or more implementations described herein, able to read instructions from a machine-readable or computer-readable medium (e.g., a non-transitory machine-readable storage medium) and perform any one or more of the methodologies discussed herein.

[0017] Figure 14 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0018] Figure 15 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0019] Figure 16 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0020] Figure 17 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0021] Figure 18 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0022] Figure 19 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0023] Figure 20 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.

[0024] Figure 21 is a diagram of an example process for enhanced MAC operation according to one or more implementations described herein.DETAILED DESCRIPTION

[0025] The following detailed description refers to the accompanying drawings. Like reference numbers in different drawings can identify the same or similar features, elements, operations, etc. Additionally, the present disclosure is not limited to the following description as other implementations can be utilized, and structural or logical changes made, without departing from the scope of the present disclosure.

[0026] Telecommunication networks can include user equipment (UEs) capable of communicating with base stations and / or other network access nodes. UEs and base stations can implement various techniques and communications standards for enabling UEs and base stations to discover one another, establish and maintain connectivity, and exchange information in an ongoing manner. Objectives of such techniques can include network and UE traffic coordination, dynamic logical channel prioritization (LCP) , and efficient hybrid automatic repeat request (HARQ) processes.

[0027] Communications and processing in new radio (NR) applications can be represented by a protocol stack, which can be divided into layers. Each layer can support various functions, and data can be communicated between layers to decode information relevant to the functions of the associated layer. For example, layer 2 (L2) can include multiple sublayers, such as the medium access control (MAC) sublayer, the radio link control (RLC) sublayer, packet data convergence protocol (PDCP) sublayer, and the service data adaptation protocol (SDAP) sublayer. The MAC sublayer can perform functions such as mapping between logical channel and transport channels, error correction, and logical channel prioritization. Such functions can require time and frequency resources. Currently available techniques for implementing L2 provide inadequate solutions for transmitting increased amounts of data with decreased latencies, increased reliability, and more.

[0028] One or more of the techniques described herein address these inadequacies by enhancing L2 design, operation, and implementation, which can result in using data processing and other resources more efficiently while improving quality of service (QoS) and other aspects of wireless communications. For example, an enhanced MAC sublayer can include adaptive uplink traffic coordination, enhanced logical channel prioritization (LCP) , and an adaptive hybrid automatic repeat request (HARQ) model. Adapting uplink traffic coordination can include network or UE adjustment of grant size and packet size patterns for expected data amounts. Enhanced LCP can include reference LCP information indicated by the network to improve uplink rate control procedures at the UE. An adaptive HARQ model can include the UE determining uplink grant characteristics and using one uplink grant to schedule one or multiple MAC packet data units (PDUs) transmitted via one or multiple HARQ processes.

[0029] Figure 1 is a diagram of an example of an overview 100 according to one or more implementations described herein. As shown, overview 100 can include UE 110 and RAN 120 implementing one or more aspects of enhanced MAC operation as referred to herein. This can include adaptive uplink traffic coordination between UE 110 and RAN 120, enhanced uplink rate control via LCP, dynamic use of uplink grants for HARQ procedures, and more. Operations described as being performed by UE 110 can be performed, at least in part, by baseband circuitry of UE 110. Operation described as being performed by RAN 120 can be performed by a base station, baseband circuitry of a base station, an access point, and / or another type of device.

[0030] RAN 120 can communicate with UE 110, such as transmitting uplink grant 105. Uplink grants can include information, such as data size and logical channels (LCH) for UE 110 to use to communicate one or more messages 115. Messages 115 can include uplink control information (UCI) , MAC packet data units (PDUs) , other data packets, retransmission of data packets, and other types of messages or transmissions. Messages 115 can be created by processing data via one or more layers of a protocol stack.

[0031] For example, L2 can include the SDAP sublayer, PDCP sublayer, RLC sublayer, and MAC sublayer. Each sublayer can process a packet data unit and send the packet data unit to the next sublayer via logical channels. The MAC sublayer can perform one or more functions, such as mapping between logical channels (LCHs) and transport channels, multiplexing / demultiplexing of MAC service data units (SDUs) belonging to one or different logical channels into / from transport blocks (TB) delivered to / from the physical layer (e.g., layer 1 (L1) ) on transport channels; scheduling information reporting; error correction through hybrid automatic repeat request (HARQ) processes or procedures; priority handling between UEs 110 by means of dynamic scheduling; priority handling between logical channels of one UE 110 by means of logical channel prioritization (LCP) ; and priority handling between overlapping resources of one UE 110, among other functions.

[0032] In some examples, UE 110 can perform an LCP procedure, where UE 110 multiplexes data of one or more LCHs into one MAC PDU. Information, such as data size (e.g., data amount) , for performing LCP can be included in an uplink grant (e.g., uplink grant 105) . UE 110 can transmit the MAC PDU (e.g., message 115) to RAN 120 via a HARQ process. In some examples, UE 110, RAN 120, or both, can implement processes and techniques for enhanced MAC sublayer operation. An enhanced MAC sublayer can include adaptive uplink traffic coordination 125, enhanced uplink rate control 130, and dynamic use of uplink grant for HARQ 135.

[0033] For example, RAN 120 can perform adaptive uplink traffic coordination 125-2. RAN 120 can adapt uplink grant 105 according to predicted UE traffic patterns. Traffic patterns can include data amount and traffic interval (e.g., periodicity) . RAN 120 can predict UE 110 traffic patterns based on traffic information and data amount information from another source (e.g., core network) , data amount and traffic interval of a prior time period, and current conditions, among other factors. UE 110 can create one or more PDUs (e.g., message 115) according to the predicted pattern included as part of uplink grant 105.

[0034] UE 110 can perform adaptive uplink traffic coordination 125-1. For example, , UE 110 can predict traffic patterns, and pre-prepare PDUs (e.g., message 115) prior to receiving uplink grant 105. For example, UE 110 can aggregate or segment packets to adjust data size to correspond to the predictions. UE 110 can predict traffic patterns based on a prior configuration, such as information of a prior configured uplink grant, as well as other factors. Adaptive uplink traffic coordination 125 can result in reduced transmission delay.

[0035] In some examples, RAN 120 can perform enhanced uplink rate control 130-2, which can include dynamic LCP control. For example, RAN 120 can include reference LCP information as part of uplink grant 105. Reference LCP information can include LCH information and the amount of data per LCH. UE 110 can perform enhanced uplink rate control 130-1, such as by performing LCP based on the reference LCP information. Providing explicit instruction can reduce complexity of LCP procedures. In some examples, RAN 120 can perform enhanced uplink rate control 130-2 by implicitly indicating a data amount of an associated LCH via the size of uplink grant 105. In such an example, one LCH is associated with uplink grant 105, and the size of uplink grant 105 is also the size of the data of the LCH. UE 110 can generate the PDU according to the size of uplink grant 105. Enhanced uplink rate control 130 can result in reducing complexity by avoiding multiplexing, and can accelerate data processing speed, thereby improving QoS.

[0036] In some examples, UE 110 can implement dynamic use of uplink grant for HARQ 135-1 processes. For example, UE 110 can receive uplink grant 105 and can change HARQ information, resources, or both, of uplink grant 105. UE 110 can indicate UCI to RAN 120 that includes HARQ information and resources of upcoming message (s) 115, which may or may not be the same as those of uplink grant 105. UE 110 can transmit a MAC PDU (e.g., message 115) according to the UCI. RAN 120 can implement dynamic use of uplink grant for HARQ 135-2 by decoding the MAC PDU according to the UCI from UE 110, rather than uplink grant 105.

[0037] In some examples, UE 110 can implement dynamic use of uplink grant for HARQ 135-1 by segmenting uplink grant 105 and indicating the changes as part of UCI. The UCI can indicate MAC PDUs, which can each correspond to a segment of uplink grant 105 UE 110 then indicates each MAC PDUs according to the UCI. In some examples, one or more MAC PDUs may not be successfully received. In such examples, RAN 120 can implement dynamic use of uplink grant for HARQ 135-1 by transmitting another uplink grant 105 for retransmission of the failed MAC PDU (s) . That is, RAN 120 can indicate resources for the failed MAC PDUs, rather than all of the MAC PDUs. Dynamic use of uplink grant for HARQ 135 can result in preventing a failed MAC PDU from affecting other MAC PDUs, thereby reducing resource consumption for unnecessary retransmissions.

[0038] In another example, UE 110 can transmit a singular MAC PDU including multiple packets. If a portion of the MAC PDU fails, RAN 120 can indicate resources for retransmission of the MAC PDU. UE 110 can implement dynamic use of uplink grant for HARQ 135-1 by discarding latent packets and retransmitting the remaining packets. Dynamic use of uplink grant for HARQ 135 can result in reducing the transmission of outdated data, thereby reducing resource consumption and improving retransmission performance.

[0039] Figure 2 is an example network 200 according to one or more implementations described herein. Example network 200 can include UEs 210, 210-2, etc. (referred to collectively as “UEs 210” and individually as “UE 210” ) , a radio access network (RAN) 220, a core network (CN) 230, application servers 240, and external networks 250.

[0040] The systems and devices of example network 200 can operate in accordance with one or more communication standards, such as 3rd generation (3G) , 4th generation (4G) (e.g., long-term evolution (LTE) ) , and / or 5th generation (5G) (e.g., new radio (NR) ) communication standards of the 3rd generation partnership project (3GPP) . Additionally, or alternatively, one or more of the systems and devices of example network 200 can operate in accordance with other communication standards and protocols discussed herein, including future versions or generations of 3GPP standards (e.g., sixth generation (6G) standards, seventh generation (7G) standards, etc. ) , institute of electrical and electronics engineers (IEEE) standards (e.g., wireless metropolitan area network (WMAN) , and more.

[0041] As shown, UEs 210 can include smartphones (e.g., handheld touchscreen mobile computing devices connectable to one or more wireless communication networks) . Additionally, or alternatively, UEs 210 can include other types of mobile or non-mobile computing devices capable of wireless communications, such as personal data assistants (PDAs) , pagers, laptop computers, desktop computers, wireless handsets, etc. In some implementations, UEs 210 can include internet of things (IoT) devices (or IoT UEs) that can comprise a network access layer designed for low-power IoT applications utilizing short-lived UE connections. Additionally, or alternatively, an IoT UE can utilize one or more types of technologies, such as machine-to-machine (M2M) communications or machine-type communications (MTC) (e.g., to exchanging data with an MTC server or other device via a public land mobile network (PLMN) ) , proximity-based service (ProSe) or device-to-device (D2D) communications, sensor networks, IoT networks, and more. Depending on the scenario, an M2M or MTC exchange of data can be a machine-initiated exchange, and an IoT network can include interconnecting IoT UEs (which can include uniquely identifiable embedded computing devices within an Internet infrastructure) with short-lived connections. In some scenarios, IoT UEs can execute background applications (e.g., keep-alive messages, status updates, etc. ) to facilitate the connections of the IoT network.

[0042] UEs 210 can communicate and establish a connection with one or more other UEs 210 via one or more wireless channels 212, each of which can comprise a physical communications interface  / layer. The connection can include an M2M connection, MTC connection, D2D connection, SL connection, etc. The connection can involve a PC5 interface. In some implementations, UEs 210 can be configured to discover one another, negotiate wireless resources between one another, and establish connections between one another, without intervention or communications involving RAN node 222 or another type of network node. In some implementations, discovery, authentication, resource negotiation, registration, etc., can involve communications with RAN node 222 or another type of network node.

[0043] Various techniques for communication between and among UEs 210 in furtherance of offloading or computing operations are within the scope of the present disclosure. As described herein, in an example, UE 210 can communicate with RAN node 222 to request SL resources. RAN node 222 can respond to the request by providing UE 210 with a dynamic grant (DG) or configured grant (CG) regarding SL resources. The UE 210 can communicate with RAN node 222 using a licensed frequency band and communicate with the other UE 210 using an unlicensed or licensed frequency band. In another example, UEs 210 can communicate directly without involvement of RAN node 222, such as through resource pools, etc.

[0044] UEs 210 can communicate and establish a connection with (e.g., be communicatively coupled) with RAN 220, which can involve one or more wireless channels 214-1 and 214-2, each of which can comprise a physical communications interface  / layer. In some implementations, a UE can be configured with dual connectivity (DC) as a multi-radio access technology (multi-RAT) or multi-radio dual connectivity (MR-DC) , where a multiple receive and transmit (Rx / Tx) capable UE can use resources provided by different RAN network nodes (e.g., RAN network nodes 222-1 and 222-2) that can be connected via non-ideal backhaul (e.g., where one network node provides NR access and the other network node provides either E-UTRA for LTE or NR access for 5G) . In such a scenario, one network node can operate as a master node (MN) and the other as the secondary node (SN) . The MN and SN can be connected via a network interface, and at least the MN can be connected to the CN 230. Additionally, at least one of the MN or the SN can be operated with shared spectrum channel access, and functions specified for UE 210 can be used for an integrated access and backhaul mobile termination (IAB-MT) . Similar for UE 210, the IAB-MT can access the network using either one network node or using two different nodes with enhanced dual connectivity (EN-DC) architectures, new radio dual connectivity (NR-DC) architectures, or the like. In some implementations, a base station (as described herein) can be an example of network RAN network nodes.

[0045] As shown, UE 210 can also, or alternatively, connect to access point (AP) 216 via connection interface 218, which can include an air interface enabling UE 210 to communicatively couple with AP 216. AP 216 can comprise a wireless local area network (WLAN) , WLAN node, WLAN termination point, etc. The connection 214 can comprise a local wireless connection, such as a connection consistent with any IEEE 702.11 protocol, and AP 216 can comprise a wireless fidelity  router or other AP. While not explicitly depicted in Fig. 2, AP 216 can be connected to another network (e.g., the Internet) without connecting to RAN 220 or CN 230.

[0046] RAN 220 can include one or more RAN nodes 222-1 and 222-2 (referred to collectively as RAN nodes 222, and individually as RAN node 222) that enable channels 214-1 and 214-2 to be established between UEs 210 and RAN 220. A RAN node 222 can be a base station and may be referred to herein as base station 222. RAN nodes 222 can include network access points configured to provide radio baseband functions for data and / or voice connectivity between users and the network based on one or more of the communication technologies described herein (e.g., 2G, 3G, 4G, 5G,  etc. ) . As examples therefore, a RAN node can be an E-UTRAN Node B (e.g., an enhanced Node B, eNodeB, eNB, 4G base station, etc. ) , a next generation base station (e.g., a 5G base station, NR base station, next generation eNBs (gNB) , etc. ) . RAN nodes 222 can include a roadside unit (RSU) , a transmission reception point (TRxP or TRP) , and one or more other types of ground stations (e.g., terrestrial access points) . In some scenarios, RAN node 222 can be a dedicated physical device, such as a macrocell base station, and / or a low power (LP) base station for providing femtocells, picocells or the like having smaller coverage areas, smaller user capacity, or higher bandwidth compared to macrocells.

[0047] Some or all of RAN nodes 222, or portions thereof, can be implemented as one or more software entities running on server computers as part of a virtual network, which can be referred to as a centralized RAN (CRAN) and / or a virtual baseband unit pool (vBBUP) . In these implementations, the CRAN or vBBUP can implement a RAN function split, such as a packet data convergence protocol (PDCP) split wherein radio resource control (RRC) and PDCP layers can be operated by the CRAN / vBBUP and other Layer 2 (L2) protocol entities can be operated by individual RAN nodes 222; a media access control (MAC)  / physical (PHY) layer split wherein RRC, PDCP, radio link control (RLC) , and MAC layers can be operated by the CRAN / vBBUP and the PHY layer can be operated by individual RAN nodes 222; or a “lower PHY” split wherein RRC, PDCP, RLC, MAC layers and upper portions of the PHY layer can be operated by the CRAN / vBBUP and lower portions of the PHY layer can be operated by individual RAN nodes 222. This virtualized framework can allow freed-up processor cores of RAN nodes 222 to perform or execute other virtualized applications.

[0048] In some implementations, an individual RAN node 222 can represent individual gNB-distributed units (DUs) connected to a gNB-control unit (CU) via individual F1 or other interfaces. In such implementations, the gNB-DUs can include one or more remote radio heads or radio frequency (RF) front end modules (RFEMs) , and the gNB-CU can be operated by a server (not shown) located in RAN 220 or by a server pool (e.g., a group of servers configured to share resources) in a similar manner as the CRAN / vBBUP. Additionally, or alternatively, one or more of RAN nodes 222 can be next generation eNBs (i.e., gNBs) that can provide evolved universal terrestrial radio access (E-UTRA) user plane and control plane protocol terminations toward UEs 210, and that can be connected to a 5G core network (5GC) 230 via an NG interface.

[0049] Any of the RAN nodes 222 can terminate an air interface protocol and can be the first point of contact for UEs 210. In some implementations, any of the RAN nodes 222 can fulfill various logical functions for the RAN 220 including, but not limited to, radio network controller (RNC) functions such as radio bearer management, uplink and downlink dynamic radio resource management and data packet scheduling, and mobility management. UEs 210 can be configured to communicate using orthogonal frequency-division multiplexing (OFDM) communication signals with each other or with any of the RAN nodes 222 over a multicarrier communication channel in accordance with various communication techniques, such as, but not limited to, an OFDMA communication technique (e.g., for downlink communications) or a single carrier frequency-division multiple access (SC-FDMA) communication technique (e.g., for uplink and ProSe or sidelink (SL) communications) , although the scope of such implementations may not be limited in this regard. The OFDM signals can comprise a plurality of orthogonal subcarriers.

[0050] The PDSCH can carry user data and higher layer signaling to UEs 210. The physical downlink control channel (PDCCH) can carry information about the transport format and resource allocations related to the PDSCH channel, among other things. The PDCCH can also inform UEs 210 about the transport format, resource allocation, and hybrid automatic repeat request (HARQ) information related to the uplink shared channel. Typically, downlink scheduling (e.g., assigning control and shared channel resource blocks to UE 210 within a cell) can be performed at any of the RAN nodes 222 based on channel quality information fed back from any of UEs 210. The downlink resource assignment information can be sent on the PDCCH used for (e.g., assigned to) each of UEs 210.

[0051] One or more of the techniques, described herein, can enable UE 210 to implement one or more methods of MAC operation simplification. For example, UE 210 can adapt the packet size pattern for transmission according to potential uplink grant pattern of the following time period. UE 210 can receive an uplink grant that includes reference LCP information and perform LCP according to the reference LCP information. Reference LCP information can indicate the amount of data allowed per LCH. In some examples, UE 210 can adjust resources, HARQ information, or both, based on the amount of data available for transmission. UE 210 can indicate the adjustments to RAN 220, setting the parameters for the following communications. These and many other features and aspects of the techniques described herein are presented below with reference to remaining Figures.

[0052] RAN nodes 222 can be configured to communicate with one another via interface 223. In implementations where the system is an LTE system, interface 223 can be an X2 interface. In NR systems, interface 223 can be an Xn interface. The X2 interface can be defined between two or more RAN nodes 222 (e.g., two or more eNBs  / gNBs or a combination thereof) that connect to evolved packet core (EPC) or CN 230, or between two eNBs connecting to an EPC. The RAN nodes 222 can be configured to communicate with the CN 230 via various interfaces, such as physical interfaces, including interface 224, interface 226, and interface 228.

[0053] As shown, RAN 220 can be connected (e.g., communicatively coupled) to CN 230. CN 230 can comprise a plurality of network elements 232, which are configured to offer various data and telecommunications services to customers / subscribers (e.g., users of UEs 210) who are connected to the CN 230 via the RAN 220. In some implementations, CN 230 can include an evolved packet core (EPC) , a 5G CN, and / or one or more additional or alternative types of CNs. The components of the CN 230 can be implemented in one physical node or separate physical nodes including components to read and execute instructions from a machine-readable or computer-readable medium (e.g., a non-transitory machine-readable storage medium) . In some implementations, network function virtualization (NFV) can be utilized to virtualize any or all the above-described network node roles or functions via executable instructions stored in one or more computer-readable storage mediums (described in further detail below) . A logical instantiation of the CN 230 can be referred to as a network slice, and a logical instantiation of a portion of the CN 230 can be referred to as a network sub-slice. Network Function Virtualization (NFV) architectures and infrastructures can be used to virtualize one or more network functions, alternatively performed by proprietary hardware, onto physical resources comprising a combination of industry-standard server hardware, storage hardware, or switches. In other words, NFV systems can be used to execute virtual or reconfigurable implementations of one or more EPC components / functions.

[0054] As shown, CN 230, application servers 240, and external networks 250 can be connected to one another via interfaces 234, 236, and 238, which can include IP network interfaces. Application servers 240 can include one or more server devices or network elements (e.g., virtual network functions (VNFs) offering applications that use IP bearer resources with CN 230 (e.g., universal mobile telecommunications system packet services (UMTS PS) domain, LTE PS data services, etc. ) . Application servers 240 can also, or alternatively, be configured to support one or more communication services (e.g., voice over IP (VoIP) sessions, push-to-talk (PTT) sessions, group communication sessions, social networking services, etc. ) for UEs 210 via the CN 230. Similarly, external networks 250 can include one or more of a variety of networks, including the Internet, thereby providing the mobile communication network and UEs 210 of the network access to a variety of additional services, information, interconnectivity, and other network features.

[0055] Figure 3 is a diagram of an example process 300 for enhanced MAC operation according to one or more implementations described herein. As shown, process 300 can be performed by UE 210, RAN 220, and network 305. Operations described as being performed by UE 210 can be performed, at least in part, by baseband circuitry of UE 210. Operation described as being performed by RAN 220 can be performed by base station 222, baseband circuitry of base station 222, access point 216, and / or another type of device. Network 305 can be an example of CN 230, network elements 232, external networks 250, and / or another type of network. Network 305 can be an applications server, another UE 210, or another device. In such examples, network 305 can correspond to a UE 210 or application server connected to at least one of CN 230, network elements 232, external networks 250, and / or another type of network.

[0056] Some or all of process 300 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 300 can include one or more fewer, additional, differently ordered, and / or arranged operations than those shown in Fig. 3. Some or all of the operations of process 300 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 300. As such, the techniques described herein are not limited to the number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 3.

[0057] As shown, process 300 describes an example of traffic coordination between UE 210 and RAN 220. Traffic coordination can result in UE 210 and RAN 220 adjusting uplink grants according to the amount of available data for transmission. For example, RAN 220 can adapt an uplink grant according to potential UE 210 traffic pattern and data amount (e.g., amount of data, data quantity) . Such methods can reduce or eliminate scheduling delay.

[0058] Process 300 can include an indication of an expected traffic pattern (at 310) . For example, RAN 220 can receive an indication of an expected traffic pattern from UE 210. The expected traffic pattern can include periodicity and an amount of data UE 210 expects to have in the future. For example, UE 210 can indicate a traffic pattern of a transmission of 100 bytes (B) followed by a transmission of 200B occurring according to a periodicity. The periodicity can be a time between consecutive transmissions, a time between consecutive sets of transmission, etc., as expected by UE 210. In some examples, UE 210 can indicate the expected traffic pattern based on information received from a core network (e.g., core network 230) .

[0059] Process 300 can include receiving an indication of data (at 315) . For example, RAN 220 can receive an indication of data from network 305. The data can include downlink data, as well as traffic information and data amount information. For example, the downlink data can be data from an external application or device to be transmitted to UE 210. The data can include information that affects or reflects uplink traffic, such as affecting uplink traffic patterns, uplink transmission size, uplink data amount, etc. For example, the data can include a transmission control protocol (TCP) acknowledgement (ACK) . TCP ACK can be a packet that confirms data was successfully received by network 305 from RAN 220 and can establish the connection between RAN 220 and network 305.

[0060] Process 300 can include one or more physical uplink shared channel (PUSCH) transmission. For example, UE 210 can indicate one or more PUSCH transmissions to RAN 220. Different PUSCH transmissions can vary in data amount. For example, a first PUSCH transmission can include a data amount of 100 bytes, while a second PUSCH transmission can include a data amount of 200 bytes. The data can be application (APP) data, such as APP data that originated from an application at UE 210.

[0061] Process 300 can include predicting UE data traffic (at 325) . For example, RAN 220 can predict future data traffic of UE 210, such as predicting data amount and periodicity. Periodicity can be intervals between data transmissions or sets of data transmissions. RAN 220 can predict UE 210 data traffic based on multiple inputs or factors, such as the expected traffic pattern received from UE 210, prior traffic patterns, data from network 305, relevant downlink traffic transmission situations, information carried in application layer data and protocols, etc.

[0062] For example, prior traffic patterns can include the data amount and traffic interval actually transmitted during a previous time period (e.g., time period x) , change in data amount transmitted during different time periods (e.g., time period y) , or both. Relevant downlink traffic transmission situations can include, such as for TCP, predicting the uplink data amount impacted by TCP ACK in the downlink direction.

[0063] In some examples, RAN 220 can predict the TCP sliding window, amount of data during a future time window, and / or length of the time window. Based on the predictions, RAN 220 can determine a subsequent uplink grant to accommodate the precited data traffic. For example, the TCP sliding window can be a length of time where data packets are sent without receiving an ACK. Rather, ACKs are sent at the end of the TCP sliding window. Increased data traffic can result in a smaller TCP sliding window to maintain efficiency and QoS. Thus, when RAN 220 predicts an increase of data when compared to a prior time period, RAN 220 can also predict a smaller TCP sliding window.

[0064] By predicting UE 210 traffic, RAN 220 can adjust resource grants accordingly. For a larger predicted amount of data, RAN 220 can increase resources when compared to the prior time period. If RAN 220 predicts a smaller amount of data, RAN 220 can decrease time resources relative to the prior time period. For example, RAN 220 can receive the PUSCH transmission with 100 bytes of data during the prior time period and can predict that data traffic for the future time period will be 4 times greater than the prior time period. To provide enough resources for the predicted data amount, RAN 220 can increase the resources of the subsequent grant to have 400 bytes. In another example, when a PUSCH transmission has 200 bytes and RAN 220 predicts a four-fold increase of data traffic, RAN 220 can indicate 800 bytes in the following resource grant (e.g., uplink grant) .

[0065] Process 300 can include indicating one or more resource grants (at 330) . For example, RAN 220 can transmit one or more resource grants to UE 210 based on the predicted UE data traffic (e.g., 400 bytes, 800 bytes, etc. ) . The resource grant can be based on the predicted traffic, and can include a change in time domain resources, frequency domain resources, a number of uplink grants, and / or a combination thereof. By performing the uplink scheduling based on predicted UE 210 traffic pattern and providing a timely uplink grant, scheduling delays can be avoided. For example, proactively including additional resources for a precited increase in data can reduce delays. Additionally, or alternatively, reducing resources for a predicted decrease in data can reduce inefficiencies.

[0066] Fig. 4 is a diagram of an example process 400 for enhanced MAC operation according to one or more implementations described herein. As shown, process 400 can be performed by UE 210 and RAN 220. Operations described as being performed by UE 210 can be performed, at least in part, by baseband circuitry of UE 210. Operation described as being performed by RAN 220 can be performed by base station 222, baseband circuitry of base station 222, access point 216, and / or another type of device.

[0067] UE 210 can include multiple layers and sublayers of a protocol stack, such application (APP) layer 210-1 and multiple L2 sublayers such as MAC sublayer 210-2 (e.g., access stratum (AS) MAC sublayer) . APP layer 210-1 can be the highest layer of the protocol stack, where application data of user applications are sent and received. MAC sublayer 210-2 can perform many functions, such as mapping between logical channels (LCHs) and transport channels, multiplexing / de-multiplexing of MAC service data units (SDUs) from one or more LCHs onto transport blocks (TB) , scheduling information reporting, error correction through hybrid automatic repeat request (HARQ) , and LCP. MAC sublayer 210-2 and APP layer 210-1 can have intermediate sublayers and layers that process and forward communications from one to the other. Similarly, MAC sublayer 210-2 and RAN 220 can have intermediate sublayers and layers process and forward communications (e.g., physical layer) .

[0068] Some or all of process 400 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 400 can include one or more fewer, additional, differently ordered, and / or arranged operations than those shown in Fig. 4. Some or all of the operations of process 400 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 400. As such, the techniques described herein are not limited to the number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 4.

[0069] Process 400 can include a method of coordinating traffic between UE 210 and RAN 220. As shown in Fig. 4, UE 210 can adapt packets (e.g., data packets) for transmission as a PDU according to potential uplink grant patterns in the following time period. Thus, UE 210 can prepare PDUs with the exact size in advance, which can result in the advantage of saving header overhead and saving online processing time.

[0070] Process 400 can include receiving scheduling information (at 405) . For example, UE 210 can receive scheduling information from RAN 220. In some examples, the scheduling information can be network uplink scheduling policy-relating information for a future time period. Network uplink scheduling information can include traffic pattern information, such as size and periodicity of future transmissions. In some examples, the scheduling information can include one or more configured resource grants (e.g., uplink grants) . The configured resource grant can be transmitted separately from scheduling information. For example, RAN 220 can use L1 signaling, L2 signaling, layer 3 (L3) signaling, or a combination of L1, L2, and L3 signaling to indicate scheduling information separately from the configured resource grant (s) .

[0071] The configured grant can allocate an amount of resources and periodicity for future UE 210 transmissions. For example, the configured grant can indicate 100 bytes per transmission with a periodicity of 80 milliseconds (ms) between transmissions. The configured grant can be processed by MAC sublayer 210-2 (e.g., AS MAC sublayer) .

[0072] Process 400 can include indicating a scheduled traffic pattern (at 410) . For example, MAC sublayer 210-2 can determine the scheduled traffic pattern based on the configured grant from RAN 220 and indicate the pattern to APP layer 210-1. The scheduled traffic pattern can include a size (e.g., amount of data) and a periodicity, such as a size of 100 bytes per transmission and a periodicity of 80ms between transmissions. In some examples, a transmission can be one or more PDUs.

[0073] Process 400 can include preparing packets according to the scheduled traffic pattern (at 415) . For example, APP layer 210-1 can prepare packets (e.g., data packets, internet protocol (IP) packets, PDUs) . The packets can be from applications of a user device. To prepare the packets for sending to MAC 210-2, APP layer 210-1 can aggregate or segregate packets. For example, the scheduled traffic pattern can be indicated by MAC sublayer 210-2 to be 100 bytes per transmission (e.g., PDU) with a periodicity of 80ms. When data packets are smaller than 100 bytes, APP layer 210-1 can aggregate the data packets. For example, APP layer 210-1 can aggregate two data packets of 50 bytes each to create a packet of 100 bytes. When data packets are larger than 100 bytes, APP layer 210-1 can segment packets. For example, APP layer 210-1 can segment a packet of 200 bytes to create two packets of 100 bytes. APP layer 210-1 can process multiple data packets in this way (e.g., segmenting / aggregating) to create packets according to the scheduled traffic pattern.

[0074] In some examples, the PDCP sublayer (not shown) can support aggregation / segmentation functions on packets to be delivered to RAN 220 in the Uu interface. For example, the PDCP sublayer can change the size of packets by aggregating / segmenting packets from a higher layer (e.g., APP layer 210-1) . The PDCP sublayer can further support adapting packet size pattern by transmitting the adapted PDUs to MAC sublayer 210-2 according to the periodicity.

[0075] Process 400 can include indicating one or more scheduled traffic pattern packet (s) (at 420) . APP layer 210-1 can indicate packet (s) prepared according to the scheduled traffic pattern determined by MAC layer 210-2 from the previously received configured grant. For example, when the scheduled pattern is transmissions of 100 bytes with a periodicity of 80ms, APP layer 210-1 can indicate packets of 100 bytes every 80 ms (e.g., with a periodicity of 80ms) . In some examples, the packets include adapted APP packets that have been aggregated / segmented. APP layer 210-1 communicates the packets to L2, where the packets are processed by each sublayer, including MAC sublayer 210-2.

[0076] The packet (s) can be further processed by UE 210, such as by MAC sublayer 210-2 and L1 (e.g., physical layer, not shown) . For example, the packets can be processed to be transmitted to RAN 220 as PDU (s) . After processing at UE 210, UE 210 can forward the packets as PDUs to RAN 220.

[0077] Process 400 can include predicting or determining one or more uplink grant patterns (at 425) . Predicting the uplink grant pattern can include predicting timing and data amount or size for future configured grants from RAN 220. For example, UE 210 can predict PDU size and periodicity between PDUs (e.g., transmissions) . Predicting the uplink grant pattern can be based on scheduling from RAN 220, configuration from RAN 220, or both. Configuration from RAN 220 can include repetition number and configured grant periodicity. The repetition number can indicate the number of redundant versions of a packet are to be transmitted, and configured grant periodicity describes the time between transmissions. A lower repetition number can correlate to a prediction of fewer resources, and a higher repetition number can indicate a prediction of more resources that can be included in the following configured grant. Similarly, a larger periodicity (e.g., more time between transmissions) can indicate more resources, and a smaller periodicity (e.g., less time between transmissions) can indicate fewer resources.

[0078] Predicting the uplink grant pattern can be further based on the interval of the uplink grant in the previous time period (e.g., time period x) , scheduling policy information of RAN 220, etc. The interval of uplink grants can indicate the time between uplink grants. Scheduling policy information can include parameters that can affect data transmissions, such as thresholds of data and latency requirements.

[0079] Process 400 can include adapting packets for transmission according to the predicted uplink grant pattern (at 430) . APP layer 210-1 can adapt packets based on uplink grant pattern prediction. To adapt packet size pattern for transmission, UE 210 can, in APP layer 210-1 (e.g., or PDCP layer (not shown) ) , aggregate packets and / or segment packets to create one or more adjusted packets. The packets can be data packets, or IP packets. Packets that are larger than the predicted uplink grant PDU size or with longer periodical transmission can be segmented, and packets that are smaller than predicated uplink grant PDU size or with shorter periodicities can be aggregated. For example, APP layer 210-1 can predict the future uplink grant will indicate resources for transmissions of 50 bytes (e.g., a data amount of 50 bytes, a PDU size of 50 bytes) and a periodicity of 40ms. In such an example, APP layer 210-1 can aggregate packets smaller than 50 bytes and segment larger packets into 50 byte segments to create PDUs according to the predicted uplink grant. The packets are prepared (e.g., aggregated / segmented) prior to receiving the subsequent uplink grant, which can reduce latency and inefficiencies.

[0080] Process 400 can include receiving scheduling information (at 435) . MAC sublayer 210-2 can receive scheduling information, such as an uplink grant or configured grant, from RAN 220. The scheduling information can include resources and a periodicity for future transmissions. For example, the configured grant can include 50 bytes for transmissions (e.g., PDUs) with a periodicity of 40ms.

[0081] Process 400 can include indicating another scheduled traffic pattern (at 440) . For example, MAC layer 210-2 can, based on the scheduling information (e.g., configured grant) , indicate a scheduled traffic pattern of a transmission size (e.g., PDU size) and periodicity to APP layer 210-1. For example, the scheduled traffic pattern can have a transmission size of 50 bytes and a periodicity of 40ms.

[0082] Process 400 can include indicating one or more adapted PDUs according to periodicity 450 (at 445-a, 445-b) . Adapted PDUs can be sent from UE 210 to RAN 220 based on the predicted uplink grant pattern. The adapted PDUs can be the packets that were aggregated / segmented by APP layer 210-1 (e.g., or PDCP sublayer) based on the uplink grant pattern prediction.

[0083] For example, the adapted packets previously prepared by APP layer 210-2 can have a size of 50 bytes and be indicated with a periodicity of 40ms. The adapted packets are communicates from APP layer 210-1 through the protocol stack to MAC layer 210-2. The adapted packet are further processed by UE 210 to prepare adapted PDUs for transmitting to RAN 220.

[0084] The predicted uplink grant pattern can match the scheduled traffic pattern from RAN 220. For example, the predicted uplink grant pattern and scheduling traffic pattern can both include PDUs with a size of 50 bytes and a periodicity of 40ms. A PDU with a size of 50 bytes can be transmitted (at 440-a) , and after a time period of 40ms (periodicity 430) , another PDU with a size of 50 bytes can be transmitted (at 445-b) .

[0085] Fig. 5 is a diagram of an example process 500 for enhanced MAC operation according to one or more implementations described herein. As shown, process 500 can be performed by UE 210 and RAN 220. Operations described as being performed by UE 210 can be performed, at least in part, by baseband circuitry of UE 210. Operation described as being performed by RAN 220 can be performed by base station 222, baseband circuitry of base station 222, access point 216, and / or another type of device. Fig. 5 describes an example of enhanced LCP design. The enhanced LCP can include dynamic LCP and QoS control, which can result in an enhanced UE 210 uplink rate control procedure.

[0086] Some or all of process 500 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 500 can include one or more fewer, additional, differently ordered, and / or arranged operations than those shown in Fig. 5. Some or all of the operations of process 500 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 500. As such, the techniques described herein are not limited to the number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 5.

[0087] Process 500 can include determining an uplink resource grant using the MAC scheduler (at 505) . RAN 220 can perform uplink scheduling, such as via the MAC scheduler. Uplink scheduling can include determining resources for UE 210 to use for uplink data transmissions during a time period. The resources can be allocated and indicated to UE 210 via an uplink grant. To generate the uplink grant, RAN 220 can allocate resources based on one or more assumptions about data transmissions, such as expected LCH information and data amount per LCH. For example, if RAN 220 assumes a larger LCH and data amount, greater resources can be allocated as part of the uplink grant.

[0088] Process 500 can include indicating the uplink grant (at 510) . For example, RAN 220 can indicate, to UE 210, an uplink grant. As part of the uplink grant indication, RAN 220 can include reference LCP information. The reference LCP information can include LCH information for each LCH associated with the uplink grant, such as the data mount per LCH. Reference LCH information can further identify and define one or more LCHs for UE 210 to use for subsequent transmission.

[0089] Process 500 can include performing an enhanced MAC LCP procedure (at 515) . For example, UE 210 can, based on receiving the uplink grant, perform an enhanced MAC LCP procedure. LCP procedure can include allocating resources to LCHs and can be performed by the MAC sublayer. If the uplink grant includes reference LCH information, UE 210 can use the reference LCP information as input for performing the LCP procedure.

[0090] In some examples, the uplink grant can include reference LCP information that explicitly indicates each LCH and the data amount for each allowed LCH. In such, examples, to perform the enhanced MAC LCP procedure, UE 210 can follow the reference LCP information to select each LCH and data amount.

[0091] UE 210 can first consider control information with high priority in the uplink grant (e.g., packet success rate (PSR) , power headroom report (PHR) , etc. ) for allocation. In some examples, resources can be used for high priority MAC control element (CE) transmission. After allocating resource for the high priority data, for the remaining resources, UE 210 can follow the order in the reference LCP information to select the LCH and the data amount for the LCH until all resources have been allocated. Such techniques are further described in Fig. 6.

[0092] In some examples, UE 210 can follow another example of an enhanced MAC LCP procedure. In such examples, UE 210 can take a baseline for performing the enhanced MAC LCP operation. Then, UE 210 can first consider the high priority MAC control information (e.g., MAC CE) to be carried in the uplink grant. After resources have been allocated for any high priority MAC control information, UE 210 can use the LCP order in the reference LCP information to select the data amount for the remaining resources.

[0093] For each LCH, UE 210 can select the data amount based on available data, available data amount, and remaining resources. For example, if no data is available for the LCH, UE 210 can skip the LCH. If the available data amount is less than the indicated value of data for the LCH in the reference LCP information, UE 210 can select the current available data amount. If the available data amount is greater than or equal to the indicated value, UE 210 can select the data amount indicated in the reference information or select the data amount according to the current value of the reference variable Bj of the associated LCH. The reference variable Bj can be maintained for each logical channel j.

[0094] The MAC entity can adjust Bj for each LCH at each instance of the LCP procedure based on parameters, such as prioritized bit rate (PBR) , time of the previous update, and bucket size duration (BSD) . When the LCH is established, the MAC entity can set Bj to 0. The MAC entity can increment Bj by the product of the PBR and T before every instance of the LCP procedure, where T is the time elapsed since Bj was last incremented. If the value of Bj is greater than the bucket size (determined by the product of the PBR and BSD) , Bj is set to the bucket size.

[0095] If any resources remain, UE 210 can select the LCH with Bj > 0 according to the priority of the LCH. That is, UE 210 can select the LCH with the highest priority and Bj > 0. The data amount selected, or allocated, to the LCH is equal to the value of Bj. UE 210 can continue allocating data in this manner until all data has been allocated. In some examples, when there is no reference LCP information in the uplink grant, UE 210 can perform the LCP procedure according to a predetermined default (e.g., legacy procedure) .

[0096] Process 500 can include transmitting a PUSCH transmission (at 520) . For example, UE 210 can transmit a PUSCH transmission to RAN 220. The PUSCH transmission can include the data as allocated according to the enhanced MAC LCP procedure performed by UE 210.

[0097] Fig. 6 is a diagram of an example process 600 for enhanced MAC operation according to one or more implementations described herein. As shown, process 600 can be performed by UE 210 and RAN 220. Operations described as being performed by UE 210 can be performed, at least in part, by baseband circuitry of UE 210. Operation described as being performed by RAN 220 can be performed by base station 222, baseband circuitry of base station 222, access point 216, and / or another type of device. Process 600 describes an example of enhanced LCP design. The enhanced LCP can include dynamic LCP and QoS control, which can result in an enhanced UE 210 uplink rate control procedure. Process 600 can be an example of techniques describe in Fig. 5.

[0098] Some or all of process 600 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 600 can include one or more fewer, additional, differently ordered, and / or arranged operations than those shown in Fig. 6. Some or all of the operations of process 600 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 600. As such, the techniques described herein are not limited to the number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 6.

[0099] Process 600 can include determining uplink resource grant using the MAC scheduler (at 605) . RAN 220 can perform uplink scheduling, such as via the MAC scheduler. Uplink scheduling can include determining resources for UE 210 to use for uplink data transmissions during a time period. The resources can be allocated and indicated to UE 210 via an uplink grant. To generate the uplink grant, RAN 220 can allocate resources based on one or more assumptions about data transmissions, such as expected LCH information and data amount per LCH. For example, if RAN 220 assumes a larger LCH and data amount, greater resources can be allocated as part of the uplink grant.

[0100] Process 600 can include indicating an uplink grant (at 610) . For example, RAN 220 can indicate, to UE 210, an uplink grant. The uplink grant can be associated with a cell (e.g., RAN 220 provides one uplink grant per cell) . As part of the uplink grant, RAN 220 can include reference LCP information 615. The reference LCP information 615 can include information for each LCH associated with the uplink grant, such as the data amount per LCH. In some examples, RAN 220 can indicate reference LCP information 615 as part of downlink control information (DCI) .

[0101] Reference LCP information 615 can include data amounts for each LCH, such as a first data amount for LCH1, a second data amount for LCH2, and a third data amount for LCH3. Such values can be indicated to UE 210 as {LCH1, data amount 1} {LCH2, data amount 2} {LCH3, data amount 3} . In some examples, one or more LCHs can include a buffer size (BS) . The buffer size can be based on a BSR previously indicated by UE 210 to RAN 220. For example, LCH1 can include BS1.

[0102] Process 600 can include performing an enhanced MAC LCP procedure (at 620) . For example, UE 210 can, based on receiving the uplink grant, perform an enhanced MAC LCP procedure to assemble the MAC PDU. In some examples, the uplink grant can include reference LCP information that explicitly indicates each LCH and the data amount for each allowed LCH. In such, examples, to perform the enhanced MAC LCP procedure, UE 210 can follow the reference LCP information to select each LCH and data amount.

[0103] For example, the uplink grant can indicate each LCH and the amount of data of each LCH be included in the following transmission. Such information can be indicated to UE 210 as {LCH#, Data amount) {LCH#, Data amount} . UE 210 can identify data packets, such as PDUs or SDUs, corresponding to each LCH. The size of each PDU can correspond to the data amount of the reference LCP information. UE 210 can generate (e.g., assemble) the MAC PDU by assigning each PDU according to the reference LCP information.

[0104] For example, reference LCP information can indicate to include BS1 of LCH1 and all of LCH2 according to the format: {LCH1, BS1) {LCH2, All} . UE 210 can assemble the MAC PDU by first including the BS1 of LCH1, and then the PDU corresponding to LCH2. In this example, the reference LCP information may not include other data of LCH1 or data of another LCH, such as LCH. When UE 210 has PDUs for LCH1 and LCH3, UE 210 may not include the PDUs of LCH1 and LCH3.

[0105] In another example, UE 210 can receive reference LCP information indicating to include all data of LCH1, LCH2, and LCH3, which can be represented as {LCH1, All} {LCH2, All } {LCH3, All } . In this example, UE 210 can assemble the MAC PDU by including the PDU of LCH1, then the PDU of LCH2, and lastly the PDU of LCH3.

[0106] In some examples, higher priority data, such as MAC CE, can take priority over the user data of the LCHs when UE 210 assembles the MAC PDU. For example, UE 210 can first include a MAC CE in the MAC PDU, and then follow the reference LCP information.

[0107] Process 600 can include indicating the PUSCH transmission (at 625) . For example, UE 210 can indicate the PUSCH transmission according to the assembled MAC PDU to RAN 220. For example, according to the reference LCP information and uplink grant, UE 210 can include BS1 of LCH1 and LCH2.

[0108] Fig. 7 is a diagram of an example for enhanced MAC operation according to one or more implementations described herein. Fig. 7 can be performed by UE 210 and RAN 220. Operations described as being performed by UE 210 can be performed, at least in part, by baseband circuitry of UE 210. Operation described as being performed by RAN 220 can be performed by base station 222, baseband circuitry of base station 222, access point 216, and / or another type of device. The methods of Fig. 7 can result in avoiding multiplexing and can accelerate the data processing speed in MAC.

[0109] Fig. 7 describes an example of uplink grants RAN 220 can send to UE 210. UE 210 can use uplink grants to perform an enhanced MAC LCP procedure. For example, UE 210 can receive uplink grant 0, uplink grant 1, and uplink grant 2. Each uplink grant can be associated with a function 770 or service 775. RAN 220 can provide uplink grants for differences services to UE 210 at one time and can indicate one uplink grant per service 775. For example, uplink grant 0 can be indicated for MAC control function 770, uplink grant 1 for service 775-1, and uplink grant 2 for service 775-2. Services 775 can include LCH, DRB, QoS flow, IP flow, etc. UE 210 can receive multiple uplink grants at the same time for one cell.

[0110] To perform each function 770 or service 775, a data packet (e.g., IP packet 745, PDU, service data packet (SDU) , MAC Control packet 740) is processed by each sublayer of L2. Fig. 7 illustrates SDAP sublayer 705, PDCP sublayer 710, RLC sublayer 715 and MAC sublayer 720. Each sublayer can communicate the processed data packet to the next sublayer (e.g., IP packet 745, PDU, SDU) . Each sublayer can perform different functions.

[0111] UE 210 can select the data packet from the associated LCH to be sent using the uplink grant. For example, UE 210 can indicate MAC Control packet / element 740 via uplink grant 0 and MAC SDU 765-1 via uplink grant 1. In some examples, RAN 220 can implicitly indicate the data amount per LCH via the uplink grant size, creating an enhanced MAC LCP procedure. In such examples, one uplink grant is associated with one LCH and the data associated with the LCH. The transport block (TB) size of the uplink grant can indicate the maximum amount of data for UE 210 to allocate to the LCH.

[0112] The MAC sublayer 720 of UE 210 can use MAC control function 770 (e.g., common control function) to process MAC control packet 740 (e.g., MAC CE, MAC control packet data unit (PDU) ) transmission. In some examples, RAN 220 can provide UE 210 with the specific uplink grant 0 for MAC control function 770 to transmit MAC control packet 740, or MAC control packet 740 can be transmitted via any other uplink grant. For example, uplink grant 0 can be received via a physical uplink control channel (PUCCH) . In some examples, such as Uu interface applications, multiple MAC control packet 740 are assembled and transmitted for one cell.

[0113] For example, UE 210 can receive uplink grant 0 for MAC control function 770. The size of uplink grant 0 can implicitly indicate the data amount available for MAC control packet 740. MAC control packet 740 can be assigned to the LCH associated with uplink grant 0. To create MAC control packet 740, SDAP control PDU 725 can be processed by each sublayer.

[0114] For example, SDAP sublayer 705 can indicate SDAP control PDU 725 to PDCP sublayer 710 via one or more data radio bearers (DRBs) . SDAP sublayer 705 can interface with upper layers via QoS flows. Traffic from QoS flows can be mapped to suitable DRBs.

[0115] PDCP sublayer 710 can receive SDAP control PDU 725 and generate PDCP control PDU 730, which can be indicated to RLC sublayer 715 via one or more RLC channels. PDCP sublayer 710 can process SDAP control PDU 725 in various ways to generate PDCP control PDU 730. For example, PDCP sublayer 710 can execute header compression and decompression of IP data, maintain PDCP sequence numbers (SNs) , and perform in-sequence delivery of upper layer PDUs at re-establishment of lower layers. PDCP sublayer 710 can also eliminate duplicates of lower layer SDUs at re-establishment of lower layers (e.g., RLC sublayer 715) . PDCP sublayer 710 can also cipher and decipher control plane data, perform integrity protection and integrity verification of control plane data, control timer-based discard of data, and perform security operations (e.g., ciphering, deciphering, integrity protection, integrity verification, etc. ) .

[0116] RLC sublayer 715 can receive PDCP control PDU 730 from PDCP sublayer 710 and generate RLC control PDU 735, which can be communicated to MAC sublayer 720 via one or more LCHs. To create RLC control PDU 735, RLC sublayer 715 can perform various functions. For example, RLC sublayer 715 can support a plurality of modes of operation, including Transparent Mode (TM) , Unacknowledged Mode (UM) , and / or Acknowledged Mode (AM) . RLC sublayer 715 can execute transfer of upper layer protocol data units (PDUs) , error correction through automatic repeat request (ARQ) for AM data transfers, as well as concatenation, segmentation and reassembly of RLC SDUs for UM and AM data transfers. RLC sublayer 715 can also execute re-segmentation of RLC data PDUs for AM data transfers, reorder RLC data PDUs for UM and AM data transfers, detect duplicate data for UM and AM data transfers, discard RLC SDUs for UM and AM data transfers, detect protocol errors for AM data transfers, and perform RLC re-establishment.

[0117] MAC sublayer 720 can receive RLC control PDU 735 and generate MAC control packet 740 through processing, such as adding a header (H) . MAC control packet 740, which can also be a MAC CE, can include a header (H) providing information associated with the MAC control packet 740. MAC sublayer 720 can perform mapping between logical channels and transport channels, multiplexing of MAC service data units (SDUs) from one or more logical channels onto transport blocks (TB) to be delivered to PHY via transport channels, de-multiplexing MAC SDUs to one or more logical channels from transport blocks (TB) delivered from the PHY via transport channels, multiplexing MAC SDUs onto TBs, scheduling information reporting, error correction through hybrid automatic repeat request (HARQ) , and logical channel prioritization.

[0118] MAC sublayer 720 can create MAC control packet 740 according to uplink grant 0, the size of MAC control packet 740 and associated header corresponding to the size of uplink grant 0. MAC sublayer 720 can communicate the resulting MAC control packet 740 (e.g., including the header) ) to RAN 220 (e.g., via the PHY layer) .

[0119] In some examples, UE 210 can receive uplink grant 1 for service 775-1. UE 210 can receive IP packet 745-1, which can include data, such as user data or application data, for transmission to RAN 220. Sublayers of L2 can process IP packet 745-1 or SDU for transmitting to RAN 220 to facilitate service 775-1. Each sublayer can add a header (H) of identifying information for future decoding by RAN 220 before forwarding to the next lower sublayer. Similarly, when the SDU is received from a lower sublayer, the SDU can contain a header, which can be removed, and the packet is passed to the next upper sublayer.

[0120] For uplink grant 1 for service 775-1, SDAP sublayer 705 can receive IP packet 745-1 and generate SDAP SDU 750-1. When SDAP sublayer 705 receives IP packet 745-1 (e.g., a PDU from upper layer flow) , the packet is associated with QoS for this flow. SDAP sublayer 705 can map the flow to a DRB.

[0121] PDCP sublayer 710 can receive SDAP SDU 750-1 from SDAP sublayer 705 and generate PDCP SDU 755-1. Generating PDCP SDU 755-1 can include processing and addition of a header. RLC sublayer 715 can receive PDCP SDU 755-1 from RLC sublayer 715 and generate RLC SDU 760-1 through processing, including the addition of a header.

[0122] MAC sublayer 720 can receive RLC SDU 760-1 from RLC sublayer 715 and generate MAC SDU 765-1 through processing, including the addition of a header. MAC SDU 765-1 can be generated according to uplink grant 1. The size of the resulting packet can correspond to the size of uplink grant 1 and can be forwarded to RAN 220.

[0123] In the example of uplink grant 2 for service 775-2, two MAC SDU 765 can be generated. For example, IP packet 745-2 can be processed by SDAP sublayer 705 to generate SDAP SDU 750-2 and the associated header. PDCP sublayer 710 can segment SDAP SDU 750-2 to generate two or more packets. RLC sublayer 715 can generate two packets: RLC SDU 760-2 and RLC SDU 760-3, each with an associated header. MAC sublayer 720 can generate two corresponding packets: MAC SDU 765-2 and MAC SDU 765-3, each with an associated header. The combined amount of data of the packets can correspond to the size of uplink grant 2. MAC SDU 765-2 and MAC SDU 765-3 can be indicated as part of a PDU (with the associated headers) to RAN 220 to facilitate service 775-2.

[0124] Fig. 8 is a diagram of an example process 800 for enhanced MAC operation according to one or more implementations described herein. As shown, process 800 can be performed by UE 210 and RAN 220. Operations described as being performed by UE 210 can be performed, at least in part, by baseband circuitry of UE 210. Operations described as being performed by RAN 220 can be performed by base station 222, baseband circuitry of base station 222, access point 216, and / or another type of device. Process 800 describes an example of HARQ communication between UE 210 and RAN 220. As described in process 800, UE 210 can determine the uplink grant and RAN 220 proceeds accordingly.

[0125] Some or all of process 800 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 800 can include one or more fewer, additional, differently ordered, and / or arranged operations than those shown in Fig. 8. Some or all of the operations of process 800 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 800. As such, the techniques described herein are not limited to the number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 8.

[0126] Process 800 can include indicating an uplink grant (at 805) . RAN 220 can indicate an uplink grant to UE 210. The uplink grant can include resources for UE 210 to use to transmit a MAC PDU according to a HARQ process. The uplink grant can include parameters for UE 210, such as a MAC PDU size, TB size, new data indicator (NDI) , redundancy version (RV) , and HARQ process ID. The uplink grant can have an associated size (e.g., 1000 bytes) and modulation coding scheme (MCS) (e.g., MCS1) .

[0127] Process 800 can include determining HARQ information, resources, or both (at 810) . UE 210 can determine whether to adjust or change the HARQ information and resources for the MAC PDU (or multiple MAC PDUs) associated with the uplink grant. In some examples, UE 210 keeps the resources indicated by the uplink grant unchanged and adapts the HARQ information. In some examples, UE 210 adapts the resource according to the data amount and keeps the HARQ information the same by keeping the MCS indicated by the uplink grant (e.g., MCS1) unchanged. In some examples, UE 210 can, based on the current conditions, select from a set of candidate uplink grant sets preconfigured by RAN 220. For example, UE 210 can select a grant set from the set of candidate uplink grant sets. The uplink grant sets can be previously configured by RAN 220 or otherwise known to UE 210.

[0128] UE 210 can determine to adapt HARQ information, resources, or both, based on available data amount for transmission. For example, if the amount of data available is larger than the resources of the uplink grant (e.g., greater than 1000 bytes) , UE 210 can determine to increase the resources of the uplink grant. In some examples, UE 210 can select a different HARQ process with a HARQ ID that differs from that indicated by RAN 220. UE 210 can further adjust parameters of MAC PDU size, TB size, NDI, RV, and MCS according to current available data. For example, UE 210 can determine to change the MCS (e.g., to MCS2) . UE 210 can indicate the changes, if any, to UE 210 via UCI to RAN 220.

[0129] Process 800 can include indicating UCI (at 815) . The UCI can indicate an uplink grant as determined by UE 210. UE 210 can indicate the HARQ information and resources, which can be different than those indicate by the uplink grant. The UCI can include parameters of the uplink grant, such as MAC PDU size, TB size, NDI, and MCS. For example, the UCI can indicate a TB size of 100 bytes and MCS2.

[0130] Process 800 can include indicating a PUSCH transmission (at 820) . UE 210 can indicate a PUSCH transmission to RAN 220. The PUSCH transmission can be transmitted according to the UCI and include a MAC PDU. For example, the MAC PDU can be of a size of 100 bytes, in accordance with the TB size of the UCI, and include the header.

[0131] Process 800 can include decoding the PUSCH according to the UCI (at 825) . RAN 220 can decode the PUSCH transmission indicated by UE 210 according to the UCI indicated by UE 210. For example, RAN 220 can decode the MAC PDU of 100 bytes according to MCS2.

[0132] Fig. 9 is a diagram of an example process 900 for enhanced MAC operation according to one or more implementations described herein. As shown, process 900 can be performed by UE 210 and RAN 220. Operations described as being performed by UE 210 can be performed, at least in part, by baseband circuitry of UE 210. Operations described as being performed by RAN 220 can be performed by base station 222, baseband circuitry of base station 222, access point 216, and / or another type of device. Fig. 9 describes an example of HARQ communication between UE 210 and RAN 220. A singular uplink grant can schedule multiple MAC PDUs, which are then transmitted via multiple HARQ processes.

[0133] Some or all of process 900 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 900 can include one or more fewer, additional, differently ordered, and / or arranged operations than those shown in Fig. 9. Some or all of the operations of process 900 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 900. As such, the techniques described herein are not limited to the number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 9. Process 900 can result in preventing the possible retransmission or transmission failure of each LCH not from impacting other LCHs.

[0134] Process 900 can include an uplink grant (at 905) . In some examples, RAN 220 can indicate a single uplink grant, such as via a single DCI. In such examples, UE 210 can determine to further divide the singular uplink grant. For example, RAN 220 can indicate an uplink grant of 1000 bytes.

[0135] In some examples, RAN 220 can one or more uplink grants. For example, multiple uplink grants can be indicated via DCI. The multiple uplink grant can be indicated in the same or different time slot, in the same or different serving cells. An LCH can be associated with each uplink grant transmission. In some examples, RAN 220 can explicitly indicate, via each uplink grant, the LCH associated with each respective uplink grant. In some examples, the LCH for each uplink grant transmission may not be indicated by RAN 220, and UE 210 can assign each LCH to an uplink grant transmission.

[0136] Process 900 can include generating one or more MAC PDUs (at 910) . For example, UE 210 can generate MAC PDUs based on the uplink grant (s) received from RAN 220. In some examples, one MAC PDU is generated per LCH and per HARQ process. In some examples, the LCH of each uplink grant transmission can be decided by UE 210. A singular HARQ process can carry one LCH’s data.

[0137] Process 900 can include dividing the uplink grant into subgrants (at 915) . In some examples, UE 210 can receive a singular uplink grant from RAN 220, and segment the uplink grant into multiple sub-grants for individual PUSCH transmissions. For example, segment an uplink grant of 1000 bytes into a first transmission of 100 bytes, a second transmission of 200 bytes, and a third transmission of 300 bytes.

[0138] Process 900 can include indicating UCI (at 920) . UE 210 can indicate UCI to RAN 220. In some examples, such as when there is one UCI for one uplink grant, the UCI can include the TB information and HARQ information for all MAC PDUs. For example, when UE 210 is transmitting three TBs, a singular UCI can include size and associated MAC PCU identifier of all the transmissions, as well as HARQ information for each transmission. In some examples, UCI can be included with the first uplink TB, or via PUCCH, rather than as a separate transmission.

[0139] In some examples, when UE 210 divides the uplink grant into multiple sub-grants, each transmission includes a UCI specific to the associated sub-grant. Each sub-grant can include UCI information that indicates HARQ information and TBS for the corresponding MAC PDU / TB. For example, UE 210 can indicate different HARQ information for each sub-grant.

[0140] Process 900 can include transmitting multiple MAC PDUs using the different HARQ processes (at 925, 930, 935) . Each transmission can be transmitted according to the UCI, which can be one UCI for all transmissions or UCI for each transmission. For example, UE 210 can transmit a first transmission with a TB1 and MAC PDU1 (at 925) , a second transmission with a TB2 and MAC PDU2 (at 930) , and a third transmission of TB3 and MAC PDU3 (at 935) . Each transmission can include an identifier and TB size. The first transmission can have an identifier of 1 and a TB of 100 bytes, the second transmission can have an identifier of 2 and a TB of 200 bytes, and the third transmission can have an identifier of 3 and a TB of 300 bytes.

[0141] Process 900 can include indicating an uplink grant for retransmission (at 940) . RAN 220 can indicate resources and identification for each transmission that failed. For example, if the second transmission failed, RAN 220 can indicate an uplink grant for retransmission of the second transmission. The uplink grant can include information identifying the second transmission, such as the identifier (e.g., identifier=2) and indicate the number of redundancy versions for UE 210 to retransmission (e.g., RV=1) .

[0142] Process 900 can include a retransmission (at 945) . For example, in response to receiving the uplink grant for retransmission identifying the failed transmission, UE 210 can retransmit. For example, if the uplink grant for retransmission indicates that the second transmission failed, UE 210 can retransmit the second transmission. By receiving each transmission separately, the failed transmissions can be retransmitted without affecting the other transmissions.

[0143] Fig. 10 is a diagram of an example process 1000 for enhanced MAC operation according to one or more implementations described herein. As shown, process 1000 can be performed by UE 210 and RAN 220. Operations described as being performed by UE 210 can be performed, at least in part, by baseband circuitry of UE 210. Operation described as being performed by RAN 220 can be performed by base station 222, baseband circuitry of base station 222, access point 216, and / or another type of device. Fig. 10 describes an example of HARQ communication between UE 210 and RAN 220. A single uplink grant can schedule multiple transmissions, and the MAC PDU can be updated via retransmission.

[0144] Some or all of process 1000 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 1000 can include one or more fewer, additional, differently ordered, and / or arranged operations than those shown in Fig. 10. Some or all of the operations of process 1000 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 1000. As such, the techniques described herein are not limited to the number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 10.

[0145] Process 1000 can include an uplink grant (at 1005) . RAN 220 can transmit a singular uplink grant to schedule one MAC PDU, which can be associated with a HARQ process. Process 1000 can include transmitting a MAC PDU (at 1010) . UE 210 can indicate the MAC PDU to RAN 220 based on the uplink grant. The MAC PDU can include multiple packets, or PDUs. The initial transmission can be identified as being the first time the MAC PDU has been transmitted with an RV=0. In some examples, multiple LCHs can be multiplexed into one MAC PDU.

[0146] Process 1000 can include indicating an uplink grant for retransmission (at 1015) . RAN 220 can transmit the uplink grant for retransmission based on not successfully receiving on or more of the PDUs of the MAC PDU. The uplink grant for retransmission can include resources for the entirety of the MAC PDU be retransmitted, although only a portion may have failed. Accordingly, RAN 220 can increment RV to 1.

[0147] Process 1000 can include discarding latent PDUs (at 1020) . UE 210 can discard one or multiple latent PDUs prior to transmitting the HARQ retransmission. That is, the content of the retransmitted MAC PDU can be changed due to PDUs being discarded in the upper layers (e.g., or sublayers) due to latency. For example, the second PDU can be dropped based on exceeding a threshold of time. UE 210 can update the MAC PDU size and adapt the MCS according to the MAC PCU size and network allocated physical resources.

[0148] Process 1000 can include HARQ retransmission without discarded PDUs (at 1025) . UE 210 can perform the retransmission without the latent PDUs that were discarded. The retransmission can include UCI that indicates the updated HARQ information of the adjusted MAC PDU. For example, if the original transmission had three PDUs, and the second PDU is latent and discarded, the retransmission can include the first and third PDUs. In such an example, the MAC PDU can include UCI for the first and third PDUs. As the MAC PDU has changed, UE 210 can adjust the RV to 0.

[0149] Process 1000 can include decoding the retransmission (at 1030) . RAN 220 can follow the UCI indicated as part of the retransmission to decode the retransmitted MAC PDU. In some examples, the retransmission can be a PUSCH message. RAN 220 receives and decodes an updated retransmission without latent PDUs . By avoiding retransmission of outdated data and reducing the MAC PDU size of retransmission, retransmission performance can be improved.

[0150] Figure 11 is a diagram of an example of components of a device according to one or more implementations described herein. In some implementations, the device 1100 can include application circuitry 1102, baseband circuitry 1104, RF circuitry 1106, front-end module (FEM) circuitry 1108, one or more antennas 1110, and power management circuitry (PMC) 1112 coupled together at least as shown. In some implementations, device 1100 can include fewer elements (e.g., a RAN node may not utilize application circuitry 1102, and can instead include a processor / controller to process data received from a core network. In some implementations, device1100 can include additional elements such as, for example, memory / storage, display, camera, sensor (including one or more temperature sensors, such as a single temperature sensor, a plurality of temperature sensors at different locations in device 1100, etc. ) , or input / output (I / O) interface. In other implementations, the components described below can be included in more than one device (e.g., said circuitries can be separately included in more than one device for cloud-RAN (C-RAN) implementations) .

[0151] The application circuitry 1102 can include one or more application processors. For example, the application circuitry 1102 can include circuitry such as, but not limited to, one or more single-core or multi-core processors. The processor (s) can include any combination of general-purpose processors and dedicated processors (e.g., graphics processors, application processors, etc. ) . The processors can be coupled with or can include memory / storage and can be configured to execute instructions stored in the memory / storage to enable various applications or operating systems to run on the device 1100. In some implementations, processors of application circuitry 1102 can process data packets received from a core network.

[0152] The baseband circuitry 1104 can include circuitry such as, but not limited to, one or more single-core or multi-core processors. Baseband circuitry 1104 can include one or more baseband processors or control logic to process baseband signals received from a receive signal path of RF circuitry 1106 and to generate baseband signals for a transmit signal path of RF circuitry 1106. Baseband circuitry 1104 can interface with application circuitry 1102 for generation and processing of the baseband signals and for controlling operations of RF circuitry 1106. For example, in some implementations, baseband circuitry 1104 can include a 3G baseband processor 1104A, a 4G baseband processor 1104B, a 5G baseband processor 1104C, or other baseband processor (s) 1104D for other existing generations, generations in development or to be developed in the future (e.g., 5G, 6G, 7G, etc. ) . Baseband circuitry 1104 (e.g., one or more of baseband processors 1104A-D) can handle various radio control functions that enable communication with one or more radio networks via RF circuitry 1106. In other implementations, some or all of the functionality of baseband processors 1104A-D can be included in modules stored in memory 804G and executed via a central processing unit (CPU) 804E. The radio control functions can include, but are not limited to, signal modulation / demodulation, encoding / decoding, radio frequency shifting, etc. In some implementations, modulation / demodulation circuitry of baseband circuitry 804 can include Fast-Fourier Transform (FFT) , precoding, or constellation mapping / de-mapping functionality. In some implementations, encoding / decoding circuitry of baseband circuitry 804 can include convolution, tail-biting convolution, turbo, Viterbi, or low-density parity check (LDPC) encoder / decoder functionality. Implementations of modulation / demodulation and encoder / decoder functionality are not limited to these examples and can include other suitable functionality in other implementations.

[0153] In some implementations, memory 1104G can receive and / or store information and instructions for enabling UE 210, and / or one or more components thereof, to perform techniques and methods for enhanced MAC operation, including adaptive uplink traffic coordination, enhanced uplink rate control, and dynamic use of uplink grant for HARQ. For example, UE 110 can perform adaptive uplink traffic coordination. For example, UE 110 can predict traffic patterns, and pre-prepare PDUs prior to receiving the uplink grant. For example, UE 110 can aggregate or segment packets to adjust data size to correspond to the predictions. UE 110 can predict traffic patterns based on a prior configuration, such as information of a prior configured uplink grant, as well as other factors. Adaptive uplink traffic coordination 125 can result in reduced transmission delay.

[0154] UE 110 can perform enhanced uplink rate control, such as by performing LCP based on the reference LCP information. Providing explicit instruction can reduce complexity of LCP procedures. In some examples, RAN 120 can implicitly indicate a data amount of an associated LCH via the size of the uplink grant. Enhanced uplink rate control can result in reducing complexity by avoiding multiplexing, and can accelerate data processing speed, thereby improving QoS. In some examples, UE 110 can implement dynamic use of uplink grant for HARQ processes. For example, UE 110 can receive an uplink grant and can change HARQ information, resources, or both, of uplink grant 105. In some examples, UE 110 can segment an uplink grant and indicate the changes as part of UCI. The UCI can indicate MAC PDUs, which can each correspond to a segment of the uplink grant. UE 110 can then indicate each MAC PDU according to the UCI.

[0155] In another example, UE 110 can transmit a singular MAC PDU including multiple packets. If a portion of the MAC PDU fails, RAN 120 can indicate resources for retransmission of the MAC PDU. UE 110 can implement dynamic use of uplink grant for HARQ by discarding latent packets and retransmitting the remaining packets. Dynamic use of uplink grant for HARQ can result in reducing the transmission of outdated data, thereby reducing resource consumption and improving retransmission performance. These and many other features and examples are described herein.

[0156] In some implementations, the baseband circuitry 1104 can include one or more audio digital signal processor (s) (DSP) 1104F. The audio DSPs 1104F can include elements for compression / decompression and echo cancellation and can include other suitable processing elements in other implementations. Components of the baseband circuitry can be suitably combined in a single chip, a single chipset, or disposed on a same circuit board in some implementations. In some implementations, some or all of the constituent components of the baseband circuitry 1104 and the application circuitry 1102 can be implemented together such as, for example, on a system on a chip (SOC) .

[0157] In some implementations, the baseband circuitry 1104 can provide for communication compatible with one or more radio technologies. For example, in some implementations, the baseband circuitry 1104 can support communication with a NG-RAN, an evolved universal terrestrial radio access network (EUTRAN) or other wireless metropolitan area networks (WMAN) , a wireless local area network (WLAN) , a wireless personal area network (WPAN) , etc. Implementations in which the baseband circuitry 1104 is configured to support radio communications of more than one wireless protocol can be referred to as multi-mode baseband circuitry.

[0158] RF circuitry 1106 can enable communication with wireless networks using modulated electromagnetic radiation through a non-solid medium. In various implementations, RF circuitry 806 can include switches, filters, amplifiers, etc., to facilitate the communication with the wireless network. RF circuitry 1106 can include a receive signal path which can include circuitry to down-convert RF signals received from FEM circuitry 1108 and provide baseband signals to baseband circuitry 1104. RF circuitry 1106 can also include a transmit signal path which can include circuitry to up-convert baseband signals provided by baseband circuitry 804 and provide RF output signals to FEM circuitry 1108 for transmission.

[0159] In some implementations, the receive signal path of the RF circuitry 1106 can include mixer circuitry 1106A, amplifier circuitry 1106B and filter circuitry 1106C. In some implementations, the transmit signal path of RF circuitry 1106 can include filter circuitry 1106C and mixer circuitry 1106A. RF circuitry 1106 can also include synthesizer circuitry 1106D for synthesizing a frequency for use by mixer circuitry 1106A of the receive signal path and the transmit signal path. In some implementations, mixer circuitry 1106A of the receive signal path can be configured to down-convert RF signals received from FEM circuitry 1108 based on the synthesized frequency provided by synthesizer circuitry 1106D. Amplifier circuitry 1106B can be configured to amplify the down-converted signals and filter circuitry 1106C can be a low-pass filter (LPF) or band-pass filter (BPF) configured to remove unwanted signals from the down-converted signals to generate output baseband signals. Output baseband signals can be provided to baseband circuitry 1104 for further processing. In some implementations, the output baseband signals can be zero-frequency baseband signals, although this may not be a requirement. In some implementations, mixer circuitry 1106A of the receive signal path can comprise passive mixers, although the scope of the implementations is not limited in this respect.

[0160] In some implementations, the mixer circuitry 1106A of the transmit signal path can be configured to up-convert input baseband signals based on the synthesized frequency provided by the synthesizer circuitry 1106D to generate RF output signals for the FEM circuitry 1108. The baseband signals can be provided by the baseband circuitry 1104 and can be filtered by filter circuitry 1106C.

[0161] In some implementations, mixer circuitry 1106A of the transmit signal path can be configured to up-convert input baseband signals based on the synthesized frequency provided by synthesizer circuitry 1106D to generate RF output signals for FEM circuitry 1108. The baseband signals can be provided by baseband circuitry 1104 and can be filtered by filter circuitry 1106C. In some implementations, mixer circuitry 1106A of the receive signal path and mixer circuitry 1106A of the transmit signal path can include two or more mixers and can be arranged for quadrature down conversion and up conversion, respectively. In some implementations, mixer circuitry 1106A of the receive signal path and mixer circuitry 1106A of the transmit signal path can include two or more mixers and can be arranged for image rejection. In some implementations, mixer circuitry 1106A of the receive signal path and mixer circuitry 1106A can be arranged for direct down conversion and direct up conversion, respectively. In some implementations, mixer circuitry 1106A of the receive signal path and mixer circuitry 1106A of the transmit signal path can be configured for super-heterodyne operation.

[0162] In some implementations, the output baseband signals, and the input baseband signals can be analog baseband signals, although the scope of the implementations is not limited in this respect. In some alternate implementations, the output baseband signals, and the input baseband signals can be digital baseband signals. In these alternate implementations, RF circuitry 1106 can include analog-to-digital converter (ADC) and digital-to-analog converter (DAC) circuitry and baseband circuitry 1104 can include a digital baseband interface to communicate with RF circuitry 1106.

[0163] In some dual-mode implementations, a separate radio IC circuitry can be provided for processing signals for each spectrum, although the scope of the implementations is not limited in this respect. In some implementations, the synthesizer circuitry 1106D can be a fractional-N synthesizer or a fractional N / N+1 synthesizer, although the scope of the implementations is not limited in this respect as other types of frequency synthesizers can be suitable. For example, synthesizer circuitry 1106D can be a delta-sigma synthesizer, a frequency multiplier, or a synthesizer comprising a phase-locked loop with a frequency divider.

[0164] Synthesizer circuitry 1106D can be configured to synthesize an output frequency for use by mixer circuitry 1106A of RF circuitry 1106 based on a frequency input and a divider control input. In some implementations, synthesizer circuitry 1106D can be a fractional N / N+1 synthesizer. In some implementations, frequency input can be provided by a voltage-controlled oscillator (VCO) . Divider control input can be provided by either baseband circuitry 1104 or the applications circuitry 1102 depending on the desired output frequency. In some implementations, a divider control input (e.g., N) can be determined from a look-up table based on a channel indicated by the applications circuitry 1102.

[0165] Synthesizer circuitry 1106D of RF circuitry 1106 can include a divider, a delay-locked loop (DLL) , a multiplexer, and a phase accumulator. In some implementations, the divider can be a dual modulus divider (DMD) , and the phase accumulator can be a digital phase accumulator (DPA) . In some implementations, the DMD can be configured to divide the input signal by either N or N+1 (e.g., based on a carry out) to provide a fractional division ratio. In some example implementations, the DLL can include a set of cascaded, tunable, delay elements, a phase detector, a charge pump and a D-type flip-flop. In these implementations, the delay elements can be configured to break a VCO period up into Nd equal packets of phase, where Nd is the number of delay elements in the delay line. In this way, the DLL provides negative feedback to help ensure that the total delay through the delay line is one VCO cycle.

[0166] In some implementations, synthesizer circuitry 1106D can be configured to generate a carrier frequency as the output frequency, while in other implementations, the output frequency can be a multiple of the carrier frequency (e.g., twice the carrier frequency, four times the carrier frequency) and used in conjunction with quadrature generator and divider circuitry to generate multiple signals at the carrier frequency with multiple different phases with respect to each other. In some implementations, the output frequency can be a LO frequency (fLO) . In some implementations, RF circuitry 1106 can include an in-phase / quadrature (I / Q)  / polar converter.

[0167] FEM circuitry 1108 can include a receive signal path which can include circuitry configured to operate on RF signals received from one or more antennas 1110, amplify the received signals and provide the amplified versions of the received signals to RF circuitry 1106 for further processing. FEM circuitry1108 can also include a transmit signal path which can include circuitry configured to amplify signals for transmission provided by RF circuitry 1106 for transmission by one or more of the one or more antennas 1110. In various implementations, the amplification through the transmit or receive signal paths can be done solely in RF circuitry 1106, solely in FEM circuitry 1108, or in both RF circuitry 1106 and FEM circuitry 1108.

[0168] In some implementations, the FEM circuitry 1108 can include a TX / RX switch to switch between transmit mode and receive mode operation. The FEM circuitry can include a receive signal path and a transmit signal path. The receive signal path of the FEM circuitry can include an LNA to amplify received RF signals and provide the amplified received RF signals as an output (e.g., to the RF circuitry 1106) . The transmit signal path of the FEM circuitry 1108 can include a power amplifier (PA) to amplify input RF signals (e.g., provided by RF circuitry 1106) , and one or more filters to generate RF signals for subsequent transmission (e.g., by one or more of the one or more antennas 1110) .

[0169] In some implementations, the PMC 1112 can manage power provided to the baseband circuitry 1104. In particular, PMC 1112 can control power-source selection, voltage scaling, battery charging, or direct current (DC) to DC (DC-to-DC) conversion. PMC 1112 can often be included when device 1100 is capable of being powered by a battery, for example, when device 1100 is included in a UE. PMC 1112 can increase the power conversion efficiency while providing desirable implementation size and heat dissipation characteristics.

[0170] While Fig. 11 shows PMC 1112 coupled only with the baseband circuitry 1104, in other implementations, PMC 1112 can be additionally or alternatively coupled with, and perform similar power management operations for, other components such as, but not limited to, application circuitry 1102, RF circuitry 1106, or FEM circuitry 1108.

[0171] In some implementations, the PMC 1112 can control, or otherwise be part of, various power saving mechanisms of device 1100. For example, if device 1100 is in an RRC_Connected state, where device 1100 is still connected to the RAN node as device 1100 expects to receive traffic shortly, then device 1100 can enter a state known as discontinuous reception mode (DRX) after a period of inactivity. During this state, device 1100 can power down for brief intervals of time and thus save power.

[0172] If there is no data traffic activity for an extended period of time, then device 1100 can transition off to an RRC_Idle state, where device 1100 disconnects from the network and does not perform operations such as channel quality feedback, handover, etc. Device 1100 can go into a very low power state and device 1100 can perform paging where again device 1100 periodically can wake up to listen to the network and then power down again. Device 1100 may not receive data in this state; in order to receive data, device 1100 can transition back to RRC_Connected state.

[0173] An additional power saving mode can allow a device to be unavailable to the network for periods longer than a paging interval (ranging from seconds to a few hours) . During this time, the device 1100 can be unreachable to the network and can power down completely. Any data sent during this time can incur a large delay and device 1100 can assume the delay is acceptable.

[0174] Processors of application circuitry 1102 and processors of baseband circuitry 1104 can be used to execute elements of one or more instances of a protocol stack. For example, processors of baseband circuitry 1104, alone or in combination, can be used execute Layer 3, Layer 2, or Layer 1 functionality, while processors of baseband circuitry 1104 can utilize data (e.g., packet data) received from these layers and further execute Layer 4 functionality (e.g., transmission communication protocol (TCP) and user datagram protocol (UDP) layers) . As referred to herein, Layer 3 can comprise a radio resource control layer. As referred to herein, Layer 2 can comprise a medium access control layer, a radio link control layer, and a packet data convergence protocol layer, described in further detail below. As referred to herein, Layer 1 can comprise a physical layer of a UE / RAN node.

[0175] Figure 12 is a diagram of example interfaces 1200 of baseband circuitry according to one or more implementations described herein. One or more components or features of example interfaces 1200 can correspond to one or more components or features described above or elsewhere. Baseband circuitry 1204 can comprise processors 1204A, 1204B, 1204C, 1204D, and 1204E and a memory 1204G utilized by said processors. Each of the processors 1204A, 1204B, 1204C, 1204D, and 1204E can include a memory interface, 1206A, 1206B, 1206C, 1206D, and 1206E, respectively, to send / receive data to / from the memory 1204G. Baseband circuitry can be a component of a UE and / or another type of device or system capable of transmitting and / or receiving wireless signals.

[0176] In some implementations, memory 1204G can receive, store, and / or provide information and instructions for implementing processes and techniques for enhanced MAC sublayer operation. An enhanced MAC sublayer can include adaptive uplink traffic coordination, enhanced uplink rate control, and dynamic use of uplink grant for HARQ. For example, the baseband circuitry can support predicting traffic patterns and creating PDUs according to the predicted pattern. Baseband circuitry can support can aggregate or segment packets to adjust data size to correspond to future uplink grant predictions. In some examples, baseband circuitry can support performing LCP based on reference LCP information. Further examples can include adjusting HARQ information, resources, or both, and discarding latent packets prior to transmitting a MAC PDU. Such techniques can support reduced resource consumption and improved retransmission performance.

[0177] Baseband circuitry 1204 can further include one or more interfaces to communicatively couple to other circuitries / devices, such as a memory interface 1212 (e.g., an interface to send / receive data to / from memory external to baseband circuitry 1204) , an application circuitry interface1214 (e.g., an interface to send / receive data to / from the application circuitry as described herein) , an RF circuitry interface 1216, a wireless hardware connectivity interface 1218 (e.g., an interface to send / receive data to / from Near Field Communication (NFC) components,  components (e.g.,  Low Energy) ,  components, and other communication components) , and a power management interface 1220 (e.g., an interface to send / receive power or control signals to / from a PMC)

[0178] Figure 13 is a block diagram illustrating components, according to some example implementations, able to read instructions from a machine-readable or computer-readable medium (e.g., a non-transitory machine-readable storage medium) and perform any one or more of the methodologies discussed herein. Specifically, Fig. 13 shows a diagrammatic representation of hardware resources 1300 including one or more processors 1310 (or processor cores) , one or more memory / storage devices 1320, and one or more communication resources 1330, each of which can be communicatively coupled via a bus 1340. For implementations where node virtualization or network function virtualization is utilized, a hypervisor can be executed to provide an execution environment for one or more network slices / sub-slices to utilize hardware resources 1300. Hardware resources 1300 can interact with hypervisor 1302. For example, hypervisor 1302 can schedule or otherwise manage hardware resource 1300.

[0179] The processors 1310 (e.g., a central processing unit (CPU) , a reduced instruction set computing (RISC) processor, a complex instruction set computing (CISC) processor, a graphics processing unit (GPU) , a digital signal processor (DSP) such as a baseband processor, an application specific integrated circuit (ASIC) , a radio-frequency integrated circuit (RFIC) , another processor, or any suitable combination thereof) can include, for example, a processor 1312 and a processor 1314.

[0180] The memory / storage devices 1320 can include main memory, disk storage, or any suitable combination thereof. The memory / storage devices 1320 can include, but are not limited to any type of volatile or non-volatile memory such as dynamic random-access memory (DRAM) , static random-access memory (SRAM) , erasable programmable read-only memory (EPROM) , electrically erasable programmable read-only memory (EEPROM) , Flash memory, solid-state storage, etc.

[0181] In some implementations, memory / storage devices 1320 receive and / or store information and instructions 1355 for implementing processes and techniques for enhanced MAC sublayer operation. For example, an enhanced MAC sublayer can include adaptive uplink traffic coordination, enhanced uplink rate control, and dynamic use of uplink grant for HARQ. Techniques can support predicting traffic patterns and creating PDUs according to the predicted pattern. Information and instructions 1355 can support can aggregating or segmenting packets to adjust data size to correspond to future uplink grant predictions. In some examples information and instructions 1355 can support performing LCP based on reference LCP information. Further examples can include adjusting HARQ information, resources, or both, and discarding latent packets prior to transmitting a MAC PDU. Such techniques can support reduced resource consumption and improved retransmission performance. These and many other features and examples are discussed herein.

[0182] Communication resources 1330 can include interconnection or network interface components or other suitable devices to communicate with one or more peripheral devices 1304 or one or more databases 1306 via a network1308. For example, communication resources 1330 can include wired communication components (e.g., for coupling via a universal serial bus) , cellular communication components, near field communication components,  components (e.g.,  Low Energy) ,  components, and other communication components.

[0183] Instructions 1350A, 1350B, 1350C, 1350D, and / or 1350E can comprise software, a program, an application, an applet, an app, or other executable code for causing at least any of processors 1310 to perform any one or more of the methodologies discussed herein. Instructions 1350 can reside, completely or partially, within at least one of processors 1310 (e.g., within a cache memory) , memory / storage devices 1320, or any suitable combination thereof. Furthermore, any portion of instructions 1350A-E can be transferred to hardware resources 1300 from any combination of peripheral devices 1304 or databases 1306. Accordingly, memory of processors 1310, memory / storage devices 1320, peripheral devices 1304, and databases 1306 are examples of computer-readable and machine-readable media.

[0184] Figure 14 is a diagram of an example process 1400 for enhanced MAC operation according to one or more implementations described herein. Process 1400 can be implemented by RAN 220, baseband circuitry (e.g., baseband circuitry of RAN 220) , or both. In some implementations, some or all of process 1400 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 1400 can include one or more fewer, additional, differently ordered and / or arranged operations than those shown in Fig. 14. In some implementations, some or all of the operations of process 1400 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 1400. As such, the techniques described herein are not limited to a number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 14.

[0185] Process 1400 can include determining a predicted traffic pattern of UE 210 during a future time period based on a prior traffic pattern during a prior time period (block 1410) . Process 1400 can include outputting at least one uplink grant comprising resources for the future time period based on the predicted traffic pattern of UE 210 (block 1420) .

[0186] Figure 15 is a diagram of an example process 1500 for enhanced MAC operation according to one or more implementations described herein. Process 1500 can be implemented by UE 210, baseband circuitry (e.g., baseband circuitry of UE 210) , or both. In some implementations, some or all of process 1500 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 1500 can include one or more fewer, additional, differently ordered and / or arranged operations than those shown in Fig. 15. In some implementations, some or all of the operations of process 1500 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 1500. As such, the techniques described herein are not limited to a number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 15.

[0187] Process 1500 can include determining, based on a first uplink grant, a first uplink grant pattern comprising a first data quantity and a first periodicity (block 1510) . Process 1500 can include generating, based at least on the first uplink grant pattern, a prediction of a second uplink grant pattern comprising a second data quantity and a second periodicity (block 1520) . Process 1500 can include generating at least one data packet based on the prediction of the second uplink grant pattern (block 1530) . Process 1500 can include obtaining a second uplink grant comprising the second uplink grant pattern (block 1540) . Process 1500 can include generating generate a transmission comprising the at least one data packet according to the second uplink grant (block 1550) .

[0188] Figure 16 is a diagram of an example process 1600 for enhanced MAC operation according to one or more implementations described herein. Process 1600 can be implemented by UE 210, baseband circuitry (e.g., baseband circuitry of UE 210) , or both. In some implementations, some or all of process 1600 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 1600 can include one or more fewer, additional, differently ordered and / or arranged operations than those shown in Fig. 16. In some implementations, some or all of the operations of process 1600 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 1600. As such, the techniques described herein are not limited to a number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 16.

[0189] Process 1600 can include obtaining an uplink grant comprising reference LCP information for PUSCH, wherein the reference LCP information comprises at least one logical channel (LCH) and at least one data quantity corresponding to the at least one LCH (block 1610) . Process 1600 can include generating a MAC PDU by applying at least one data amount corresponding to the at least one LCH and the at least one data quantity corresponding to the at least one LCH according to the reference LCP information (block 1620) .

[0190] Figure 17 is a diagram of an example process 1700 for enhanced MAC operation according to one or more implementations described herein. Process 1700 can be implemented by UE 210, baseband circuitry (e.g., baseband circuitry of UE 210) , or both. In some implementations, some or all of process 1700 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 1700 can include one or more fewer, additional, differently ordered and / or arranged operations than those shown in Fig. 17. In some implementations, some or all of the operations of process 1700 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 1700. As such, the techniques described herein are not limited to a number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 17.

[0191] Process 1700 can include obtaining a first uplink grant configured for a first data amount and associated with a first LCH (block 1710) . Process 1700 can include generating a packet for a first service associated with the LCH and based on the first data amount corresponding to a size of the first uplink grant (block 1720) .

[0192] Figure 18 is a diagram of an example process 1800 for enhanced MAC operation according to one or more implementations described herein. Process 1800 can be implemented by UE 210, baseband circuitry (e.g., baseband circuitry of UE 210) , or both. In some implementations, some or all of process 1800 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 1800 can include one or more fewer, additional, differently ordered and / or arranged operations than those shown in Fig. 18. In some implementations, some or all of the operations of process 1800 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 1800. As such, the techniques described herein are not limited to a number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 18.

[0193] Process 1800 can include obtaining an uplink grant comprising at least one MCS and at least one time-frequency resource (block 1810) . Process 1800 can include determining, based on an amount of data available for transmission, to change the MCS, the at least one time-frequency resource, or both the MCS and the at least one time-frequency resource (block 1820) . Process 1800 can include generating uplink control information comprising an indication of the change of the MCS, the at least one time-frequency resource, or both the MCS and the at least one time-frequency resource (block 1830) .

[0194] Figure 19 is a diagram of an example process 1900 for enhanced MAC operation according to one or more implementations described herein. Process 1900 can be implemented by RAN 220, baseband circuitry (e.g., baseband circuitry of RAN 220) , or both. In some implementations, some or all of process 1900 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 1900 can include one or more fewer, additional, differently ordered and / or arranged operations than those shown in Fig. 19. In some implementations, some or all of the operations of process 1900 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 1900. As such, the techniques described herein are not limited to a number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 19.

[0195] Process 1900 can include generating at least one first uplink grant configured to schedule MAC PDUs (block 1910) . Process 1900 can include obtaining the MAC PDUs, each of the MAC PDUs being associated with at least one HARQ process (block 1920) . Process 1900 can include determining a failure to receive at least one MAC PDU of the MAC PDUs (block 1930) . Process 1900 can include generating at least one second uplink grant configured to schedule retransmission of the at least one MAC PDU (block 1940) . Process 1900 can include obtaining a retransmission of the at least one MAC PDU (block 1950) .

[0196] Figure 20 is a diagram of an example process 2000 for enhanced MAC operation according to one or more implementations described herein. Process 2000 can be implemented by UE 210, baseband circuitry (e.g., baseband circuitry of UE 210) , or both. In some implementations, some or all of process 2000 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 2000 can include one or more fewer, additional, differently ordered and / or arranged operations than those shown in Fig. 20. In some implementations, some or all of the operations of process 2000 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 2000. As such, the techniques described herein are not limited to a number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 20.

[0197] Process 2000 can include obtaining a first uplink grant configured to schedule media access control (MAC) packet data units (PDUs (block 2010) . Process 2000 can include determining, based on the first uplink grant, a plurality of subgrants, wherein each subgrant of the plurality of subgrants is associated with at least one of the MAC PDUs and at least one HARQ process (block 2020) . Process 2000 can include generating the MAC PDUs according to the plurality of subgrants and the at least one HARQ process (block 2030) . Process 2000 can include obtaining a second uplink grant configured to schedule retransmission of at least one failed MAC PDU of the MAC PDUs and at least one corresponding HARQ process (block 2040) . Process 2000 can include generating a retransmission of the at least one failed MAC PDU according to the at least one corresponding HARQ process (block 2050) .

[0198] Figure 21 is a diagram of an example process 2100 for enhanced MAC operation according to one or more implementations described herein. Process 2100 can be implemented by UE 210, baseband circuitry (e.g., baseband circuitry of UE 210) , or both. In some implementations, some or all of process 2100 can be performed by one or more other systems or devices, including one or more of the devices of Fig. 2. Additionally, process 2100 can include one or more fewer, additional, differently ordered and / or arranged operations than those shown in Fig. 21. In some implementations, some or all of the operations of process 2100 can be performed independently, successively, simultaneously, etc., of one or more of the other operations of process 2100. As such, the techniques described herein are not limited to a number, sequence, arrangement, timing, etc., of the operations or processes depicted in Fig. 21.

[0199] Process 2100 can include obtaining a first uplink grant configured to schedule a MAC PDU (block 2110) . Process 2100 can include generating the MAC PDU comprising PDUs, the MAC PDU being associated with a HARQ process (block 2120) . Process 2100 can include receiving a second uplink grant configured to schedule a retransmission of the MAC PDU (block 2130) . Process 2100 can include determining that at least one PDU satisfies a latency threshold (block 2140) . Process 2100 can include generating the retransmission of the MAC PDU comprising at least one PDU that does not satisfy the latency threshold (block 2150) .

[0200] Examples and / or implementations herein can include subject matter such as a method, means for performing acts or blocks of the method, at least one machine-readable medium including executable instructions that, when performed by a machine (e.g., a processor (e.g., processor , etc. ) with memory, an application-specific integrated circuit (ASIC) , a field programmable gate array (FPGA) , or the like) cause the machine to perform acts of the method or of an apparatus or system for concurrent communication using multiple communication technologies according to implementations and examples described.

[0201] In example 1, which can also include one or more of the examples described herein, a base station 222 (e.g., RAN 220) , baseband circuitry (e.g., of a base station 222) , or a combination thereof, can comprise: a memory; and one or more processors configured to, when executing instructions stored in the memory, cause the baseband circuitry to: determine a predicted traffic pattern of UE 210 during a future time period based on a prior traffic pattern during a prior time period; and output at least one uplink grant comprising resources for the future time period based on the predicted traffic pattern of the UE 210.

[0202] In example 2, which can also include one or more of the examples described herein, the predicted traffic pattern comprises a data amount and a periodicity comprising a time between UE transmissions, and the prior traffic pattern comprises a prior data amount and a prior periodicity comprising a prior time between prior UE transmissions, and herein the at least one uplink grant further comprises the data amount and the periodicity.

[0203] In example 3, which can also include one or more of the examples described herein, the one or more processors are further configured to cause the baseband circuitry to: receive an expected traffic pattern from the UE 210, the expected traffic pattern indicating an expected data amount by the UE 210 and an expected periodicity of the UE 210, wherein the predicted traffic pattern of the UE 210 is determined based on the expected traffic pattern

[0204] In example 4, which can also include one or more of the examples described herein, wherein the predicted traffic pattern is determined based on data from a network device, wherein the data comprises information associated with uplink traffic.

[0205] In example 5, which can also include one or more of the examples described herein, wherein the predicted traffic pattern of the UE is determined based on at least one transmission from the UE.

[0206] In example 6, which can also include one or more of the examples described herein, a UE (e.g., UE 210) , baseband circuitry (e.g., of UE 210) , or a combination thereof, can comprise: a memory; and one or more processors configured to, when executing instructions stored in the memory, cause the baseband circuitry to: determine, based on a first uplink grant, a first uplink grant pattern comprising a first data quantity and a first periodicity; generate, based at least on the first uplink grant pattern, a prediction of a second uplink grant pattern comprising a second data quantity and a second periodicity; generate at least one data packet based on the prediction of the second uplink grant pattern; obtain a second uplink grant comprising the second uplink grant pattern; and generate a transmission comprising the at least one data packet according to the second uplink grant.

[0207] In example 7, which can also include one or more of the examples described herein, wherein, to generate the at least one data packet, the one or more processors are further configured to cause the baseband circuitry to: aggregate one or more packets based on the second data quantity being greater than a third data quantity of the one or more packets; and segment the one or more packets based on the second data quantity being less than the third data quantity of the one or more packets.

[0208] In example 8, which can also include one or more of the examples described herein, to generate the at least one data packet, the one or more processors are further configured to cause the baseband circuitry to: aggregate one or more packets based on the second periodicity being longer than a third periodicity of the one or more packets; and segment the one or more packets based on the second periodicity being shorter than the third periodicity of the one or more packets.

[0209] In example 9, which can also include one or more of the examples described herein, wherein the at least one data packet comprises the second data quantity

[0210] In example 10, which can also include one or more of the examples described herein, wherein the transmission comprising the at least one data packet is generated according to the second uplink grant.

[0211] In example 11, which can also include one or more of the examples described herein, the one or more processors are further configured to cause the baseband circuitry to: generate the at least one data packet according to the first uplink grant pattern comprising the first data quantity and the first periodicity; and generate another transmission of the at least one data packet according to the first uplink grant pattern.

[0212] In example 12, which can also include one or more of the examples described herein, a UE (e.g., UE 210) , baseband circuitry (e.g., of UE 210) , or a combination thereof, can comprise: a memory; and one or more processors configured to, when executing instructions stored in the memory, cause the baseband circuitry to: obtain an uplink grant comprising reference logical channel prioritization (LCP) information for a physical uplink shared channel (PUSCH) , wherein the reference LCP information comprises at least one logical channel (LCH) and at least one data quantity corresponding to the at least one LCH; and generate a media access control (MAC) packet data unit (PDU) by applying at least one data amount corresponding to the at least one LCH and the at least one data quantity corresponding to the at least one LCH according to the reference LCP information.

[0213] In example 13, which can also include one or more of the examples described herein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to: apply high priority control information prior to applying the at least one data amount according to the reference LCP information.

[0214] In example 14, which can also include one or more of the examples described herein, wherein the reference LCP information comprises a first LCH and a first data quantity corresponding to the first LCH, and a second LCH and a second data quantity corresponding to a second LCH, wherein the at least one LCH comprises the first LCH and the second LCH and the at least one data quantity comprises the first data quantity and the second data quantity.

[0215] In example 15, which can also include one or more of the examples described herein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to: apply a first data amount of the first data quantity of the first LCH, and apply a second data amount of the second data quantity of the second LCH, wherein the at least one data amount comprises the first data amount and the second data amount.

[0216] In example 16, which can also include one or more of the examples described herein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to: determine that a first data amount of the at least one data amount does not correspond to a first LCH of the at least one LCH; and refrain from assigning the first data amount to the first LCH. In example 17, which can also include one or more of the examples described herein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to: determine that a first data amount of the at least one data amount has a size less than the first data quantity; and apply the first data amount.

[0217] In example 18, which can also include one or more of the examples described herein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to: determine that a first data amount of the at least one data amount has a size that is greater less than the first data quantity; and apply a portion of the first data amount according to the first data quantity.

[0218] In example 19, which can also include one or more of the examples described herein, wherein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to: determine that the uplink grant comprises unassigned resources; and apply a first data amount of the at least one data amount, wherein the data amount has a highest priority, according to a data amount of a reference value associated with the first data amount.

[0219] In example 20, which can also include one or more of the examples described herein, a UE (e.g., UE 210) , baseband circuitry (e.g., of UE 210) , or a combination thereof, can comprise: a memory; and one or more processors configured to, when executing instructions stored in the memory, cause the baseband circuitry to: obtain a first uplink grant configured for a first data amount and associated with a first logical channel (LCH) ; and generate a packet for a first service associated with the LCH and based on the first data amount corresponding to a size of the first uplink grant.

[0220] In example 21, which can also include one or more of the examples described herein, wherein the first uplink grant is associated with the first service.

[0221] In example 22, which can also include one or more of the examples described herein, the one or more processors are further configured to cause the baseband circuitry to: obtain at least one additional uplink grant, each of the at least one additional uplink grant being associated with a respective service and a respective LCH.

[0222] In example 23, which can also include one or more of the examples described herein, the one or more processors are further configured to cause the baseband circuitry to: obtain a second uplink grant configured for a second data amount and associated with a media access control (MAC) control transmission, and generate a MAC packet data unit (PDU) according to the second data amount corresponding to the size of the second uplink grant.

[0223] In example 24, which can also include one or more of the examples described herein, a UE (e.g., UE 210) , baseband circuitry (e.g., of UE 210) , or a combination thereof, can comprise: a memory; and one or more processors configured to, when executing instructions stored in the memory, cause the baseband circuitry to: obtain an uplink grant comprising at least one modulation coding scheme (MCS) and at least one time-frequency resource; determine, based on an amount of data available for transmission, to change the MCS, the at least one time-frequency resource, or both the MCS and the at least one time-frequency resource; and generate uplink control information comprising an indication of the change of the MCS, the at least one time-frequency resource, or both the MCS and the at least one time-frequency resource.

[0224] In example 25, which can also include one or more of the examples described herein, wherein the uplink control information further comprises a MAC packet data unit (PDU) size, a transport block size, a new data indicator (NDI) , the MCS, and a hybrid automatic resource request (HARQ) information.

[0225] In example 26, which can also include one or more of the examples described herein, wherein to determine to change the MCS, the at least one time-frequency resource, or both the MCS and the at least one time-frequency resource, the one or more processors are further configured to cause the baseband circuitry to: select a grant set of a set of configured grant sets, each grant set corresponding to the MCS and the at least one time-frequency resource.

[0226] In example 27, which can also include one or more of the examples described herein, a base station 222 (e.g., RAN 220) , baseband circuitry (e.g., of a base station 222) , or a combination thereof, can comprise: a memory; and one or more processors configured to, when executing instructions stored in the memory, cause the baseband circuitry to: generate at least one first uplink grant configured to schedule media access control (MAC) packet data units (PDUs) ; obtain the MAC PDUs, each of the MAC PDUs being associated with at least one hybrid automatic repeat request (HARQ) process; determine a failure to receive at least one MAC PDU of the MAC PDUs; generate at least one second uplink grant configured to schedule retransmission of the at least one MAC PDU; and obtain a retransmission of the at least one MAC PDU.

[0227] In example 28, which can also include one or more of the examples described herein, wherein a downlink control information (DCI) comprises the at least one first uplink grant.

[0228] In example 29, which can also include one or more of the examples described herein, wherein the second uplink grant configured to schedule retransmission further comprises an identifier for each of the at least one MAC PDU.

[0229] In example 30, which can also include one or more of the examples described herein, wherein each uplink grant of the at least one first uplink grant is associated with a logical channel (LCH) .

[0230] In example 31, which can also include one or more of the examples described herein, a UE (e.g., UE 210) , baseband circuitry (e.g., of UE 210) , or a combination thereof, can comprise: a memory; and one or more processors configured to, when executing instructions stored in the memory, cause the baseband circuitry to: obtain a first uplink grant configured to schedule media access control (MAC) packet data units (PDUs) ; determine, based on the first uplink grant, a plurality of subgrants, wherein each subgrant of the plurality of subgrants is associated with at least one of the MAC PDUs and at least one hybrid automatic repeat request (HARQ) process; generate the MAC PDUs according to the plurality of subgrants and the at least one HARQ process; obtain a second uplink grant configured to schedule retransmission of at least one failed MAC PDU of the MAC PDUs and at least one corresponding HARQ process; and generate a retransmission of the at least one failed MAC PDU according to the at least one corresponding HARQ process.

[0231] In example 32, which can also include one or more of the examples described herein, the one or more processors are further configured to cause the baseband circuitry to: generate uplink control information comprising an indication of the plurality of subgrants, the MAC PDUs, and the at least one HARQ process.

[0232] In example 33, which can also include one or more of the examples described herein, wherein the uplink control information is transmitted as a part of a first MAC PDU of the MAC PDUs.

[0233] In example 34, which can also include one or more of the examples described herein, wherein the at least one MAC PDU is associated with at least one identifier.

[0234] In example 35, which can also include one or more of the examples described herein, a UE (e.g., UE 210) , baseband circuitry (e.g., of UE 210) , or a combination thereof, can comprise: a memory; and one or more processors configured to, when executing instructions stored in the memory, cause the baseband circuitry to: obtain a first uplink grant configured to schedule a media access control (MAC) packet data unit (PDU) ; generate the MAC PDU comprising PDUs, the MAC PDU being associated with a hybrid automatic repeat request (HARQ) process; receive a second uplink grant configured to schedule a retransmission of the MAC PDU; determine that at least one PDU satisfies a latency threshold; and generate the retransmission of the MAC PDU comprising at least one PDU that does not satisfy the latency threshold.

[0235] In example 36, which can also include one or more of the examples described herein, wherein the latency threshold comprises a first amount of time.

[0236] In example 37, which can also include one or more of the examples described herein, to determine that the at least one PDU satisfies a latency threshold, the one or more processors are further configured to cause the baseband circuitry to: determine that a second amount of time associated with the at least one PDU is greater than the first amount of time associated with the latency threshold.

[0237] In example 38, which can also include one or more of the examples described herein, to determine that the at least one PDU satisfies a latency threshold, the one or more processors are further configured to cause the baseband circuitry to: determine that a second amount of time associated with the at least one PDU is greater than the first amount of time associated with the latency threshold.

[0238] The examples discussed above also extend to method, computer-readable medium, and means-plus-function claims and implementations, any of which can include one or more of the features or operations of any one or combination of the examples mentioned above.

[0239] The above description of illustrated examples, implementations, aspects, etc., of the subject disclosure, including what is described in the Abstract, is not intended to be exhaustive or to limit the disclosed aspects to the precise forms disclosed. While specific examples, implementations, aspects, etc., are described herein for illustrative purposes, various modifications are possible that are considered within the scope of such examples, implementations, aspects, etc., as those skilled in the relevant art can recognize.

[0240] In this regard, while the disclosed subject matter has been described in connection with various examples, implementations, aspects, etc., and corresponding Figures, where applicable, it is to be understood that other similar aspects can be used or modifications and additions can be made to the disclosed subject matter for performing the same, similar, alternative, or substitute function of the subject matter without deviating therefrom. Therefore, the disclosed subject matter should not be limited to any single example, implementation, or aspect described herein, but rather should be construed in breadth and scope in accordance with the appended claims below.

[0241] In particular regard to the various functions performed by the above described components or structures (assemblies, devices, circuits, systems, etc. ) , the terms (including a reference to a “means” ) used to describe such components are intended to correspond, unless otherwise indicated, to any component or structure which performs the specified function of the described component (e.g., that is functionally equivalent) , even though not structurally equivalent to the disclosed structure which performs the function in the herein illustrated exemplary implementations. In addition, while a particular feature can have been disclosed with respect to only one of several implementations, such feature can be combined with one or more other features of the other implementations as can be desired and advantageous for any given application.

[0242] As used herein, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or” . That is, unless specified otherwise, or clear from context, “X employs A or B” is intended to mean any of the natural inclusive permutations. That is, if X employs A; X employs B; or X employs both A and B, then “X employs A or B” is satisfied under any of the foregoing instances. In addition, the articles “a” and “an” as used in this application and the appended claims should generally be construed to mean “one or more” unless specified otherwise or clear from context to be directed to a singular form. Furthermore, to the extent that the terms “including” , “includes” , “having” , “has” , “with” , or variants thereof are used in either the detailed description or the claims, such terms are intended to be inclusive in a manner similar to the term “comprising. ” Additionally, in situations wherein one or more numbered items are discussed (e.g., a “first X” , a “second X” , etc. ) , in general the one or more numbered items can be distinct, or they can be the same, although in some situations the context can indicate that they are distinct or that they are the same.

[0243] It is well understood that the use of personally identifiable information should follow privacy policies and practices that are generally recognized as meeting or exceeding industry or governmental requirements for maintaining the privacy of users. In particular, personally identifiable information data should be managed and handled to minimize risks of unintentional or unauthorized access or use, and the nature of authorized use should be clearly indicated to users.

Claims

1.A base station, comprising:one or more processors configured to:determine a predicted traffic pattern of a user equipment (UE) during a future time period based on a prior traffic pattern during a prior time period; andtransmit at least one uplink grant comprising resources for the future time period based on the predicted traffic pattern of the UE.2.The base station of claim 1, wherein the predicted traffic pattern comprises a data amount and a periodicity comprising a time between UE transmissions, and the prior traffic pattern comprises a prior data amount and a prior periodicity comprising a prior time between prior UE transmissions, andwherein the at least one uplink grant further comprises the data amount and the periodicity.3.The base station of claim 1, wherein the one or more processors are further configured to cause the base station to:receive an expected traffic pattern from the UE, the expected traffic pattern indicating an expected data amount by the UE and an expected periodicity of the UE, wherein the predicted traffic pattern of the UE is determined based on the expected traffic pattern.4.The base station of claim 1, wherein the predicted traffic pattern is determined based on data from a network device, wherein the data comprises information associated with uplink traffic.5.The base station of claim 1, wherein the predicted traffic pattern of the UE is determined based on at least one transmission from the UE.6.A method, performed by a user equipment (UE) , comprising:determining, based on a first uplink grant, a first uplink grant pattern comprising a first data quantity and a first periodicity;determining, based at least on the first uplink grant pattern, a prediction of a second uplink grant pattern comprising a second data quantity and a second periodicity;generating at least one data packet based on the prediction of the second uplink grant pattern;receiving a second uplink grant comprising the second uplink grant pattern; andtransmitting a transmission comprising the at least one data packet according to the second uplink grant.7.The method of claim 6, wherein, to generate the at least one data packet, further comprises:aggregating one or more packets based on the second data quantity being greater than a third data quantity of the one or more packets; andsegmenting the one or more packets based on the second data quantity being less than the third data quantity of the one or more packets.8.The method of claim 6, wherein, to generate the at least one data packet, further comprises:aggregating one or more packets based on the second periodicity being longer than a third periodicity of the one or more packets; andsegmenting the one or more packets based on the second periodicity being shorter than the third periodicity of the one or more packets.9.The method of claim 6, wherein the at least one data packet comprises the second data quantity.10.The method of claim 6, wherein the transmission comprising the at least one data packet is generated according to the second uplink grant.11.The method of claim 6, further comprising:generating the at least one data packet according to the first uplink grant pattern comprising the first data quantity and the first periodicity; andtransmitting another transmission of the at least one data packet according to the first uplink grant pattern.12.Baseband circuitry, comprising:a memory; andone or more processors configured to, when executing instructions stored in the memory, cause the baseband circuitry to:obtain an uplink grant comprising reference logical channel prioritization (LCP) information for a physical uplink shared channel (PUSCH) , wherein the reference LCP information comprises at least one logical channel (LCH) and at least one data quantity corresponding to the at least one LCH; andgenerate a media access control (MAC) packet data unit (PDU) by applying at least one data amount corresponding to the at least one LCH and the at least one data quantity corresponding to the at least one LCH according to the reference LCP information.13.The baseband circuitry of claim 12, wherein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to:apply high priority control information prior to applying the at least one data amount according to the reference LCP information.14.The baseband circuitry of claim 12, wherein the reference LCP information comprises a first LCH and a first data quantity corresponding to the first LCH, anda second LCH and a second data quantity corresponding to a second LCH, wherein the at least one LCH comprises the first LCH and the second LCH and the at least one data quantity comprises the first data quantity and the second data quantity.15.The baseband circuitry of claim 14, wherein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to:apply a first data amount of the first data quantity of the first LCH, andapply a second data amount of the second data quantity of the second LCH, wherein the at least one data amount comprises the first data amount and the second data amount.16.The baseband circuitry of claim 12, wherein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to:determine that a first data amount of the at least one data amount does not correspond to a first LCH of the at least one LCH; andrefrain from assigning the first data amount to the first LCH.17.The baseband circuitry of claim 14, wherein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to:determine that a first data amount of the at least one data amount has a size less than the first data quantity; andapply the first data amount.18.The baseband circuitry of claim 14, wherein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to:determine that a first data amount of the at least one data amount has a size that is greater less than the first data quantity; andapply a portion of the first data amount according to the first data quantity.19.The baseband circuitry of claim 14, wherein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to:determine that the uplink grant comprises unassigned resources.20.The baseband circuitry of claim 19, wherein, to generate the MAC PDU, the one or more processors are further configured to cause the baseband circuitry to:apply a first data amount of the at least one data amount, wherein the data amount has a highest priority, according to a data amount of a reference value associated with the first data amount.