[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

WO2019161529A1 - Logical channel prioritization in a medium access control layer - Google Patents

Logical channel prioritization in a medium access control layer Download PDF

Info

Publication number
WO2019161529A1
WO2019161529A1 PCT/CN2018/076960 CN2018076960W WO2019161529A1 WO 2019161529 A1 WO2019161529 A1 WO 2019161529A1 CN 2018076960 W CN2018076960 W CN 2018076960W WO 2019161529 A1 WO2019161529 A1 WO 2019161529A1
Authority
WO
WIPO (PCT)
Prior art keywords
token bucket
logical channel
respective initial
priority value
logical channels
Prior art date
Application number
PCT/CN2018/076960
Other languages
French (fr)
Inventor
Haiqin LIU
Bao Vinh Nguyen
Peng Wu
Gang Andy Xiao
Vishal DALMIYA
Krishna Chaitanya MUKKERA
Shailesh Maheshwari
Original Assignee
Qualcomm Incorporated
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Incorporated filed Critical Qualcomm Incorporated
Priority to PCT/CN2018/076960 priority Critical patent/WO2019161529A1/en
Publication of WO2019161529A1 publication Critical patent/WO2019161529A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/215Flow control; Congestion control using token-bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/56Allocation or scheduling criteria for wireless resources based on priority criteria

Definitions

  • the following relates generally to wireless communication, and more specifically to logical channel prioritization in a medium access control layer.
  • Wireless communications systems are widely deployed to provide various types of communication content such as voice, video, packet data, messaging, broadcast, and so on. These systems may be capable of supporting communication with multiple users by sharing the available system resources (e.g., time, frequency, and power) .
  • Examples of such multiple-access systems include fourth generation (4G) systems such as Long Term Evolution (LTE) systems, LTE-Advanced (LTE-A) systems, or LTE-A Pro systems, and fifth generation (5G) systems which may be referred to as New Radio (NR) systems.
  • 4G systems such as Long Term Evolution (LTE) systems, LTE-Advanced (LTE-A) systems, or LTE-A Pro systems
  • 5G systems which may be referred to as New Radio (NR) systems.
  • a wireless multiple-access communications system may include a number of base stations or network access nodes, each simultaneously supporting communication for multiple communication devices, which may be otherwise known as user equipment (UE) .
  • UE user equipment
  • Some wireless devices may operate according to a layered protocol stack.
  • a medium access control (MAC) layer in the protocol stack may perform priority handling and multiplexing of logical channels into transport channels. Improved systems and techniques for prioritizing the multiplexing of logical channels into transport channels may be desired.
  • MAC medium access control
  • the described techniques relate to improved methods, systems, devices, or apparatuses that support logical channel prioritization in a medium access control (MAC) layer.
  • MAC medium access control
  • the described techniques provide for mapping initial priority values of logical channels to updated priority values based on token bucket levels for the logical channels. For example, upon a receiving a transmission grant, a wireless device, such as a user equipment (UE) , may allocate data from multiple logical channels to a MAC protocol data unit (PDU) according to the techniques described herein.
  • PDU MAC protocol data unit
  • the wireless device may determine whether the token bucket level for each of the logical channels is negative or non-negative (e.g., zero positive) .
  • a negative token bucket level may indicate that a logical channel has been over-granted relative to a target bit rate metric, and a positive token bucket level may indicate that the logical channel has been under-granted relative to a target bit rate metric. If the token bucket level is negative, the wireless device may determine an updated priority value for the logical channel as equal to the initial priority value plus an increment factor. Thus, if the logical channel is in an over-granted state, its priority level may be decreased (as increased priority value may correspond to decreased priority level) .
  • the wireless device may determine an updated priority value for the logical channel as equal to the initial priority level. Thus, if the logical channel is not in an over-granted state, its priority level may be maintained.
  • the wireless device may allocate data from the logical channels to the MAC PDU in order of decreasing priority level (e.g., in order of increasing updated priority values) until either data available for the logical channels is exhausted or the MAC PDU is exhausted (e.g., full) .
  • the systems and techniques described herein may provide for logical channel prioritization in a MAC layer via a single allocation cycle (as opposed to multiple allocation cycles) , which may provide certain benefits, such as efficiency benefits.
  • a method of wireless communication may include identifying a respective initial priority value and a respective initial token bucket level for each of one or more logical channels, determining a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level, and allocating data associated with the one or more logical channels to a MAC PDU based at least in part on the respective updated priority values.
  • the apparatus may include means for identifying a respective initial priority value and a respective initial token bucket level for each of one or more logical channels, means for determining a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level, and means for allocating data associated with the one or more logical channels to a MAC PDU based at least in part on the respective updated priority values.
  • the apparatus may include a processor, memory in electronic communication with the processor, and instructions stored in the memory.
  • the instructions may be operable to cause the processor to identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels, determine a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level, and allocate data associated with the one or more logical channels to a MAC PDU based at least in part on the respective updated priority values.
  • a non-transitory computer-readable medium for wireless communication may include instructions operable to cause a processor to identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels, determine a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level, and allocate data associated with the one or more logical channels to a MAC PDU based at least in part on the respective updated priority values.
  • allocating data associated with the one or more logical channels to the MAC PDU based at least in part on the respective updated priority values comprises allocating data associated with the one or more logical channels to the MAC PDU in order of decreasing priority level, as indicated by the respective updated priority values, until either data available for a logical channel or a capacity of the MAC PDU may be exhausted.
  • determining a respective updated priority value based at least in part on the respective initial priority value and the respective initial token bucket level comprises determining whether the respective initial token bucket level may be negative or non-negative.
  • Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for calculating the respective updated priority value as the respective initial priority value plus an increment factor if the respective initial token bucket level may be negative.
  • Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for calculating the respective updated priority value as equal to the respective initial priority value if the respective initial token bucket level may be non-negative.
  • Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for determining that the respective initial token bucket level may be negative for a logical channel if an observed bit rate metric for the logical channel exceeds a target bit rate metric for the logical channel.
  • Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for determining that the respective initial token bucket level may be non-negative for a logical channel if an observed bit rate metric for the logical channel may be equal to or less than a target bit rate metric for the logical channel.
  • Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for identifying a maximum initial priority value. Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for identifying the increment factor as equal to the maximum initial priority value.
  • Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for setting the respective initial token bucket level for a logical channel to zero upon initialization of the logical channel.
  • Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for, for each transmission time interval (TTI) , incrementing the respective initial token bucket level for a logical channel by the product of a target bit rate metric for the logical channel and a TTI duration.
  • TTI transmission time interval
  • Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for decrementing the respective initial token bucket level for a logical channel by an amount of data associated with the logical channel allocated to the MAC PDU.
  • Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for decrementing the respective initial token bucket level for a logical channel by an amount of data associated with the logical channel allocated to the MAC PDU only if the respective initial token bucket level may be non-negative.
  • a decreasing priority level corresponds to an increasing priority value.
  • Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for determining a maximum amount of data available for each of the one or more logical channels.
  • determining the maximum amount of data available for each of the one or more logical channels comprises, for each of the one or more logical channels, determining the maximum amount of data available for a logical channel based at least in part on a target bit rate metric for the logical channel and a token bucket duration metric for the logical channel.
  • FIG. 1 illustrates an example of a system for wireless communication that supports logical channel prioritization in a medium access control (MAC) layer in accordance with aspects of the present disclosure.
  • MAC medium access control
  • FIG. 2 illustrates an example of a logical channel mapping that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
  • FIG. 3 illustrates an example of a logical channel mapping that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
  • FIG. 4 illustrates an example of a logical channel mapping that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
  • FIG. 5 illustrates an example of a logical channel mapping that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
  • FIGs. 6 through 8 show block diagrams of a device that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
  • FIG. 9 illustrates a block diagram of a system including a user equipment (UE) that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
  • UE user equipment
  • FIG. 10 illustrates a method for logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
  • Some wireless devices in a wireless communications system may operate according to a layered protocol stack, and a medium access control (MAC) layer in the protocol stack may perform priority handling and multiplexing of logical channels into transport channels. For example, upon a receiving a grant to transmit during a transmission time interval (TTI) , a wireless device may allocate data from multiple logical channels to a MAC protocol data unit (PDU) according to the techniques described herein. The wireless device may transmit any data mapped to the MAC PDU during the TTI.
  • TTI transmission time interval
  • a higher layer may signal to the MAC layer initial priority values for active logical channels, along with other parameters as described herein, that the MAC layer may use to allocate data for the logical channels to the MAC PDU.
  • the MAC layer may allocate the data for the logical channels to the MAC PDU based at least part on target bit rate metrics, target quality of service (QoS) metrics, or other target metrics from the logical channels.
  • QoS quality of service
  • a lower initial priority value may correspond to a higher priority level for transmission (e.g., a logical channel with an initial priority value of zero (0) may be a highest-priority channel) .
  • the MAC layer may determine a token bucket level for each logical channel, which may be initialized to zero upon establishment of the logical channel. Thereafter, the MAC layer may increment the token bucket level for a logical channel may by some set amount (e.g., some number of bits) during each transmission time interval (TTI) , which may be based at least in part on a target bit rate metric, and, in at least some cases, may decrement the token bucket level for the logical channel by any amount of data that has been mapped from the logical channel to a MAC PDU.
  • TTI transmission time interval
  • a positive token bucket level may indicate that the logical channel has been under-granted (e.g., data for the logical channel has been under-allocated to MAC PDUs) relative to the target bit rate
  • a negative token bucket level may indicate that the logical channel has been over-granted (e.g., data for the logical channel has been over-allocated to MAC PDUs) relative to the target bit rate.
  • a wireless device may map initial priority values of logical channels to updated priority values based at least in part on their respective token bucket levels, and then may allocate data associated with the logical channels to a MAC PDU in order of decreasing priority level (e.g., in order of increasing updated priority values) until either data available for the logical channels is exhausted or the MAC PDU is exhausted (e.g., is full) .
  • the systems and techniques described herein may provide for logical channel prioritization in MAC layer via a single allocation cycle (as opposed to multiple allocation cycles) . This may provide certain benefits, including efficiency benefits.
  • using one allocation cycle per PDU may conserve processing resources (e.g., allocation may be accomplished with fewer processing instructions than with multiple-cycle allocation techniques) and may reduce overhead related to radio link control (RLC) layer headers (e.g., a MAC PDU may include only a single RLC header, as opposed to multiple RLC headers that may be associated with multiple allocation cycles) .
  • RLC radio link control
  • aspects of the disclosure are initially described in the context of a wireless communications system. Examples of mappings of logical channels to MAC PDUs are then described. Aspects of the disclosure are further illustrated by and described with reference to apparatus diagrams, system diagrams, and flowcharts that relate to logical channel prioritization in a MAC layer.
  • FIG. 1 illustrates an example of a wireless communications system 100 in accordance with various aspects of the present disclosure.
  • the wireless communications system 100 includes base stations 105, UEs 115, and a core network 130.
  • the wireless communications system 100 may be a Long Term Evolution (LTE) network, an LTE-Advanced (LTE-A) network, an LTE-A Pro network, or a New Radio (NR) network.
  • LTE Long Term Evolution
  • LTE-A LTE-Advanced
  • LTE-A Pro LTE-A Pro
  • NR New Radio
  • wireless communications system 100 may support enhanced broadband communications, ultra-reliable (e.g., mission critical) communications, low latency communications, or communications with low-cost and low-complexity devices.
  • ultra-reliable e.g., mission critical
  • Base stations 105 may wirelessly communicate with UEs 115 via one or more base station antennas.
  • Base stations 105 described herein may include or may be referred to by those skilled in the art as a base transceiver station, a radio base station, an access point, a radio transceiver, a NodeB, an eNodeB (eNB) , a next-generation Node B or giga-nodeB (either of which may be referred to as a gNB) , a Home NodeB, a Home eNodeB, or some other suitable terminology.
  • Wireless communications system 100 may include base stations 105 of different types (e.g., macro or small cell base stations) .
  • the UEs 115 described herein may be able to communicate with various types of base stations 105 and network equipment including macro eNBs, small cell eNBs, gNBs, relay base stations, and the like.
  • Each base station 105 may be associated with a particular geographic coverage area 110 in which communications with various UEs 115 is supported. Each base station 105 may provide communication coverage for a respective geographic coverage area 110 via communication links 125, and communication links 125 between a base station 105 and a UE 115 may utilize one or more carriers. Communication links 125 shown in wireless communications system 100 may include uplink transmissions from a UE 115 to a base station 105, or downlink transmissions from a base station 105 to a UE 115. Downlink transmissions may also be called forward link transmissions while uplink transmissions may also be called reverse link transmissions.
  • the geographic coverage area 110 for a base station 105 may be divided into sectors making up only a portion of the geographic coverage area 110, and each sector may be associated with a cell.
  • each base station 105 may provide communication coverage for a macro cell, a small cell, a hot spot, or other types of cells, or various combinations thereof.
  • a base station 105 may be movable and therefore provide communication coverage for a moving geographic coverage area 110.
  • different geographic coverage areas 110 associated with different technologies may overlap, and overlapping geographic coverage areas 110 associated with different technologies may be supported by the same base station 105 or by different base stations 105.
  • the wireless communications system 100 may include, for example, a heterogeneous LTE/LTE-A/LTE-A Pro or NR network in which different types of base stations 105 provide coverage for various geographic coverage areas 110.
  • the term “cell” refers to a logical communication entity used for communication with a base station 105 (e.g., over a carrier) , and may be associated with an identifier for distinguishing neighboring cells (e.g., a physical cell identifier (PCID) , a virtual cell identifier (VCID) ) operating via the same or a different carrier.
  • a carrier may support multiple cells, and different cells may be configured according to different protocol types (e.g., machine-type communication (MTC) , narrowband Internet-of-Things (NB-IoT) , enhanced mobile broadband (eMBB) , or others) that may provide access for different types of devices.
  • MTC machine-type communication
  • NB-IoT narrowband Internet-of-Things
  • eMBB enhanced mobile broadband
  • the term “cell” may refer to a portion of a geographic coverage area 110 (e.g., a sector) over which the logical entity operates.
  • UEs 115 may be dispersed throughout the wireless communications system 100, and each UE 115 may be stationary or mobile.
  • a UE 115 may also be referred to as a mobile device, a wireless device, a remote device, a handheld device, or a subscriber device, or some other suitable terminology, where the “device” may also be referred to as a unit, a station, a terminal, or a client.
  • a UE 115 may also be a personal electronic device such as a cellular phone, a personal digital assistant (PDA) , a tablet computer, a laptop computer, or a personal computer.
  • PDA personal digital assistant
  • a UE 115 may also refer to a wireless local loop (WLL) station, an Internet of Things (IoT) device, an Internet of Everything (IoE) device, or an MTC device, or the like, which may be implemented in various articles such as appliances, vehicles, meters, or the like.
  • WLL wireless local loop
  • IoT Internet of Things
  • IoE Internet of Everything
  • MTC massive machine type communications
  • Some UEs 115 may be low cost or low complexity devices, and may provide for automated communication between machines (e.g., via Machine-to-Machine (M2M) communication) .
  • M2M communication or MTC may refer to data communication technologies that allow devices to communicate with one another or a base station 105 without human intervention.
  • M2M communication or MTC may include communications from devices that integrate sensors or meters to measure or capture information and relay that information to a central server or application program that can make use of the information or present the information to humans interacting with the program or application.
  • Some UEs 115 may be designed to collect information or enable automated behavior of machines. Examples of applications for MTC devices include smart metering, inventory monitoring, water level monitoring, equipment monitoring, healthcare monitoring, wildlife monitoring, weather and geological event monitoring, fleet management and tracking, remote security sensing, physical access control, and transaction-based business charging.
  • Some UEs 115 may be configured to employ operating modes that reduce power consumption, such as half-duplex communications (e.g., a mode that supports one-way communication via transmission or reception, but not transmission and reception simultaneously) . In some examples half-duplex communications may be performed at a reduced peak rate. Other power conservation techniques for UEs 115 include entering a power saving “deep sleep” mode when not engaging in active communications, or operating over a limited bandwidth (e.g., according to narrowband communications) . In some cases, UEs 115 may be designed to support critical functions (e.g., mission critical functions) , and a wireless communications system 100 may be configured to provide ultra-reliable communications for these functions.
  • critical functions e.g., mission critical functions
  • a UE 115 may also be able to communicate directly with other UEs 115 (e.g., using a peer-to-peer (P2P) or device-to-device (D2D) protocol) .
  • P2P peer-to-peer
  • D2D device-to-device
  • One or more of a group of UEs 115 utilizing D2D communications may be within the geographic coverage area 110 of a base station 105.
  • Other UEs 115 in such a group may be outside the geographic coverage area 110 of a base station 105, or be otherwise unable to receive transmissions from a base station 105.
  • groups of UEs 115 communicating via D2D communications may utilize a one-to-many (1: M) system in which each UE 115 transmits to every other UE 115 in the group.
  • a base station 105 facilitates the scheduling of resources for D2D communications.
  • D2D communications are carried out between UEs 115 without the involvement of a base
  • Base stations 105 may communicate with the core network 130 and with one another. For example, base stations 105 may interface with the core network 130 through backhaul links 132 (e.g., via an S1 or other interface) . Base stations 105 may communicate with one another over backhaul links 134 (e.g., via an X2 or other interface) either directly (e.g., directly between base stations 105) or indirectly (e.g., via core network 130) .
  • backhaul links 132 e.g., via an S1 or other interface
  • backhaul links 134 e.g., via an X2 or other interface
  • the core network 130 may provide user authentication, access authorization, tracking, Internet Protocol (IP) connectivity, and other access, routing, or mobility functions.
  • the core network 130 may be an evolved packet core (EPC) , which may include at least one mobility management entity (MME) , at least one serving gateway (S-GW) , and at least one Packet Data Network (PDN) gateway (P-GW) .
  • the MME may manage non-access stratum (e.g., control plane) functions such as mobility, authentication, and bearer management for UEs 115 served by base stations 105 associated with the EPC.
  • User IP packets may be transferred through the S-GW, which itself may be connected to the P-GW.
  • the P-GW may provide IP address allocation as well as other functions.
  • the P-GW may be connected to the network operators IP services.
  • the operators IP services may include access to the Internet, Intranet (s) , an IP Multimedia Subsystem (IMS) , or a Packet-Switched (PS) Stream
  • At least some of the network devices may include subcomponents such as an access network entity, which may be an example of an access node controller (ANC) .
  • Each access network entity may communicate with UEs 115 through a number of other access network transmission entities, which may be referred to as a radio head, a smart radio head, or a transmission/reception point (TRP) .
  • TRP transmission/reception point
  • various functions of each access network entity or base station 105 may be distributed across various network devices (e.g., radio heads and access network controllers) or consolidated into a single network device (e.g., a base station 105) .
  • Wireless communications system 100 may operate using one or more frequency bands, typically in the range of 300 MHz to 300 GHz.
  • the region from 300 MHz to 3 GHz is known as the ultra-high frequency (UHF) region or decimeter band, since the wavelengths range from approximately one decimeter to one meter in length.
  • UHF waves may be blocked or redirected by buildings and environmental features. However, the waves may penetrate structures sufficiently for a macro cell to provide service to UEs 115 located indoors. Transmission of UHF waves may be associated with smaller antennas and shorter range (e.g., less than 100 km) compared to transmission using the smaller frequencies and longer waves of the high frequency (HF) or very high frequency (VHF) portion of the spectrum below 300 MHz.
  • HF high frequency
  • VHF very high frequency
  • Wireless communications system 100 may also operate in a super high frequency (SHF) region using frequency bands from 3 GHz to 30 GHz, also known as the centimeter band.
  • SHF region includes bands such as the 5 GHmultiplez industrial, scientific, and medical (ISM) bands, which may be used opportunistically by devices that can tolerate interference from other users.
  • ISM bands 5 GHmultiplez industrial, scientific, and medical bands
  • Wireless communications system 100 may also operate in an extremely high frequency (EHF) region of the spectrum (e.g., from 30 GHz to 300 GHz) , also known as the millimeter band.
  • EHF extremely high frequency
  • wireless communications system 100 may support millimeter wave (mmW) communications between UEs 115 and base stations 105, and EHF antennas of the respective devices may be even smaller and more closely spaced than UHF antennas. In some cases, this may facilitate use of antenna arrays within a UE 115.
  • mmW millimeter wave
  • the propagation of EHF transmissions may be subject to even greater atmospheric attenuation and shorter range than SHF or UHF transmissions. Techniques disclosed herein may be employed across transmissions that use one or more different frequency regions, and designated use of bands across these frequency regions may differ by country or regulating body.
  • wireless communications system 100 may utilize both licensed and unlicensed radio frequency spectrum bands.
  • wireless communications system 100 may employ License Assisted Access (LAA) , LTE-Unlicensed (LTE-U) radio access technology, or NR technology in an unlicensed band such as the 5 GHz ISM band.
  • LAA License Assisted Access
  • LTE-U LTE-Unlicensed
  • NR NR technology
  • an unlicensed band such as the 5 GHz ISM band.
  • wireless devices such as base stations 105 and UEs 115 may employ listen-before-talk (LBT) procedures to ensure a frequency channel is clear before transmitting data.
  • LBT listen-before-talk
  • operations in unlicensed bands may be based on a CA configuration in conjunction with CCs operating in a licensed band (e.g., LAA) .
  • Operations in unlicensed spectrum may include downlink transmissions, uplink transmissions, peer-to-peer transmissions, or a combination of these.
  • Duplexing in unlicensed spectrum may be based on frequency division duplexing (FDD) , time division duplexing (TDD) , or a combination of both.
  • FDD frequency division duplexing
  • TDD time division duplexing
  • base station 105 or UE 115 may be equipped with multiple antennas, which may be used to employ techniques such as transmit diversity, receive diversity, multiple-input multiple-output (MIMO) communications, or beamforming.
  • wireless communications system 100 may use a transmission scheme between a transmitting device (e.g., a base station 105) and a receiving device (e.g., a UE 115) , where the transmitting device is equipped with multiple antennas and the receiving devices are equipped with one or more antennas.
  • MIMO communications may employ multipath signal propagation to increase the spectral efficiency by transmitting or receiving multiple signals via different spatial layers, which may be referred to as spatial multiplexing.
  • the multiple signals may, for example, be transmitted by the transmitting device via different antennas or different combinations of antennas. Likewise, the multiple signals may be received by the receiving device via different antennas or different combinations of antennas.
  • Each of the multiple signals may be referred to as a separate spatial stream, and may carry bits associated with the same data stream (e.g., the same codeword) or different data streams.
  • Different spatial layers may be associated with different antenna ports used for channel measurement and reporting.
  • MIMO techniques include single-user MIMO (SU-MIMO) where multiple spatial layers are transmitted to the same receiving device, and multiple-user MIMO (MU-MIMO) where multiple spatial layers are transmitted to multiple devices.
  • SU-MIMO single-user MIMO
  • MU-MIMO multiple-user MIMO
  • Beamforming which may also be referred to as spatial filtering, directional transmission, or directional reception, is a signal processing technique that may be used at a transmitting device or a receiving device (e.g., a base station 105 or a UE 115) to shape or steer an antenna beam (e.g., a transmit beam or receive beam) along a spatial path between the transmitting device and the receiving device.
  • Beamforming may be achieved by combining the signals communicated via antenna elements of an antenna array such that signals propagating at particular orientations with respect to an antenna array experience constructive interference while others experience destructive interference.
  • the adjustment of signals communicated via the antenna elements may include a transmitting device or a receiving device applying certain amplitude and phase offsets to signals carried via each of the antenna elements associated with the device.
  • the adjustments associated with each of the antenna elements may be defined by a beamforming weight set associated with a particular orientation (e.g., with respect to the antenna array of the transmitting device or receiving device, or with respect to some other orientation) .
  • a base station 105 may use multiple antennas or antenna arrays to conduct beamforming operations for directional communications with a UE 115. For instance, some signals (e.g. synchronization signals, reference signals, beam selection signals, or other control signals) may be transmitted by a base station 105 multiple times in different directions, which may include a signal being transmitted according to different beamforming weight sets associated with different directions of transmission. Transmissions in different beam directions may be used to identify (e.g., by the base station 105 or a receiving device, such as a UE 115) a beam direction for subsequent transmission and/or reception by the base station 105.
  • some signals e.g. synchronization signals, reference signals, beam selection signals, or other control signals
  • Transmissions in different beam directions may be used to identify (e.g., by the base station 105 or a receiving device, such as a UE 115) a beam direction for subsequent transmission and/or reception by the base station 105.
  • Some signals may be transmitted by a base station 105 in a single beam direction (e.g., a direction associated with the receiving device, such as a UE 115) .
  • the beam direction associated with transmissions along a single beam direction may be determined based at least in in part on a signal that was transmitted in different beam directions.
  • a UE 115 may receive one or more of the signals transmitted by the base station 105 in different directions, and the UE 115 may report to the base station 105 an indication of the signal it received with a highest signal quality, or an otherwise acceptable signal quality.
  • a UE 115 may employ similar techniques for transmitting signals multiple times in different directions (e.g., for identifying a beam direction for subsequent transmission or reception by the UE 115) , or transmitting a signal in a single direction (e.g., for transmitting data to a receiving device) .
  • a receiving device may try multiple receive beams when receiving various signals from the base station 105, such as synchronization signals, reference signals, beam selection signals, or other control signals.
  • a receiving device may try multiple receive directions by receiving via different antenna subarrays, by processing received signals according to different antenna subarrays, by receiving according to different receive beamforming weight sets applied to signals received at a plurality of antenna elements of an antenna array, or by processing received signals according to different receive beamforming weight sets applied to signals received at a plurality of antenna elements of an antenna array, any of which may be referred to as “listening” according to different receive beams or receive directions.
  • a receiving device may use a single receive beam to receive along a single beam direction (e.g., when receiving a data signal) .
  • the single receive beam may be aligned in a beam direction determined based at least in part on listening according to different receive beam directions (e.g., a beam direction determined to have a highest signal strength, highest signal-to-noise ratio, or otherwise acceptable signal quality based at least in part on listening according to multiple beam directions) .
  • the antennas of a base station 105 or UE 115 may be located within one or more antenna arrays, which may support MIMO operations, or transmit or receive beamforming.
  • one or more base station antennas or antenna arrays may be co-located at an antenna assembly, such as an antenna tower.
  • antennas or antenna arrays associated with a base station 105 may be located in diverse geographic locations.
  • a base station 105 may have an antenna array with a number of rows and columns of antenna ports that the base station 105 may use to support beamforming of communications with a UE 115.
  • a UE 115 may have one or more antenna arrays that may support various MIMO or beamforming operations.
  • wireless communications system 100 may be a packet-based network that operate according to a layered protocol stack.
  • the RRC protocol layer may provide establishment, configuration, and maintenance of an RRC connection between a UE 115 and a base station 105 or core network 130 supporting radio bearers for user plane data.
  • communications at the bearer or Packet Data Convergence Protocol (PDCP) layer may be IP-based.
  • An RLC layer may in some cases perform packet segmentation and reassembly to communicate over logical channels.
  • a MAC layer may perform priority handling and multiplexing of logical channels into transport channels. For example, the MAC layer may identify initial priority values for logical channels-which may in some cases be provided, along with other parameters, by the RRC layer-and may determine a respective updated priority value for each of the logical channels based on the respective initial priority value and token bucket level. The MAC layer may also allocate data associated with the logical channels to a MAC PDU based at least in part on the respective updated priority values. The MAC layer may also use hybrid automatic repeat request (HARQ) to provide retransmission at the MAC layer to improve link efficiency.
  • HARQ hybrid automatic repeat request
  • transport channels may be mapped to physical channels.
  • UEs 115 and base stations 105 may support retransmissions of data to increase the likelihood that data is received successfully.
  • HARQ feedback is one technique of increasing the likelihood that data is received correctly over a communication link 125.
  • HARQ may include a combination of error detection (e.g., using a cyclic redundancy check (CRC) ) , forward error correction (FEC) , and retransmission (e.g., automatic repeat request (ARQ) ) .
  • FEC forward error correction
  • ARQ automatic repeat request
  • HARQ may improve throughput at the MAC layer in poor radio conditions (e.g., signal-to-noise conditions) .
  • a wireless device may support same-slot HARQ feedback, where the device may provide HARQ feedback in a specific slot for data received in a previous symbol in the slot. In other cases, the device may provide HARQ feedback in a subsequent slot, or according to some other time interval.
  • the radio frames may be identified by a system frame number (SFN) ranging from 0 to 1023.
  • SFN system frame number
  • Each frame may include 10 subframes numbered from 0 to 9, and each subframe may have a duration of 1 ms.
  • a subframe may be further divided into 2 slots each having a duration of 0.5 ms, and each slot may contain 6 or 7 modulation symbol periods (e.g., depending on the length of the cyclic prefix prepended to each symbol period) . Excluding the cyclic prefix, each symbol period may contain 2048 sampling periods.
  • a subframe may be the smallest scheduling unit of the wireless communications system 100, and may be referred to as a transmission time interval (TTI) .
  • TTI transmission time interval
  • a smallest scheduling unit of the wireless communications system 100 may be shorter than a subframe or may be dynamically selected (e.g., in bursts of shortened TTIs (sTTIs) or in selected component carriers using sTTIs) .
  • a slot may further be divided into multiple mini-slots containing one or more symbols.
  • a symbol of a mini-slot or a mini-slot may be the smallest unit of scheduling.
  • Each symbol may vary in duration depending on the subcarrier spacing or frequency band of operation, for example.
  • some wireless communications systems may implement slot aggregation in which multiple slots or mini-slots are aggregated together and used for communication between a UE 115 and a base station 105.
  • carrier refers to a set of radio frequency spectrum resources having a defined physical layer structure for supporting communications over a communication link 125.
  • a carrier of a communication link 125 may include a portion of a radio frequency spectrum band that is operated according to physical layer channels for a given radio access technology.
  • Each physical layer channel may carry user data, control information, or other signaling.
  • a carrier may be associated with a pre-defined frequency channel (e.g., an E-UTRA absolute radio frequency channel number (EARFCN) ) , and may be positioned according to a channel raster for discovery by UEs 115.
  • E-UTRA absolute radio frequency channel number E-UTRA absolute radio frequency channel number
  • Carriers may be downlink or uplink (e.g., in an FDD mode) , or be configured to carry downlink and uplink communications (e.g., in a TDD mode) .
  • signal waveforms transmitted over a carrier may be made up of multiple sub-carriers (e.g., using multi-carrier modulation (MCM) techniques such as OFDM or DFT-s-OFDM) .
  • MCM multi-carrier modulation
  • the organizational structure of the carriers may be different for different radio access technologies (e.g., LTE, LTE-A, LTE-A Pro, NR, etc. ) .
  • communications over a carrier may be organized according to TTIs or slots, each of which may include user data as well as control information or signaling to support decoding the user data.
  • a carrier may also include dedicated acquisition signaling (e.g., synchronization signals or system information, etc. ) and control signaling that coordinates operation for the carrier.
  • acquisition signaling e.g., synchronization signals or system information, etc.
  • control signaling that coordinates operation for the carrier.
  • a carrier may also have acquisition signaling or control signaling that coordinates operations for other carriers.
  • Physical channels may be multiplexed on a carrier according to various techniques.
  • a physical control channel and a physical data channel may be multiplexed on a downlink carrier, for example, using time division multiplexing (TDM) techniques, frequency division multiplexing (FDM) techniques, or hybrid TDM-FDM techniques.
  • control information transmitted in a physical control channel may be distributed between different control regions in a cascaded manner (e.g., between a common control region or common search space and one or more UE-specific control regions or UE-specific search spaces) .
  • a carrier may be associated with a particular bandwidth of the radio frequency spectrum, and in some examples the carrier bandwidth may be referred to as a “system bandwidth” of the carrier or the wireless communications system 100.
  • the carrier bandwidth may be one of a number of predetermined bandwidths for carriers of a particular radio access technology (e.g., 1.4, 3, 5, 10, 15, 20, 40, or 80 MHz) .
  • each served UE 115 may be configured for operating over portions or all of the carrier bandwidth.
  • some UEs 115 may be configured for operation using a narrowband protocol type that is associated with a predefined portion or range (e.g., set of subcarriers or RBs) within a carrier (e.g., “in-band” deployment of a narrowband protocol type) .
  • a narrowband protocol type that is associated with a predefined portion or range (e.g., set of subcarriers or RBs) within a carrier (e.g., “in-band” deployment of a narrowband protocol type) .
  • a resource element may consist of one symbol period (e.g., a duration of one modulation symbol) and one subcarrier, where the symbol period and subcarrier spacing are inversely related.
  • the number of bits carried by each resource element may depend on the modulation scheme (e.g., the order of the modulation scheme) .
  • the more resource elements that a UE 115 receives and the higher the order of the modulation scheme the higher the data rate may be for the UE 115.
  • a wireless communications resource may refer to a combination of a radio frequency spectrum resource, a time resource, and a spatial resource (e.g., spatial layers) , and the use of multiple spatial layers may further increase the data rate for communications with a UE 115.
  • a spatial resource e.g., spatial layers
  • Devices of the wireless communications system 100 may have a hardware configuration that supports communications over a particular carrier bandwidth, or may be configurable to support communications over one of a set of carrier bandwidths.
  • the wireless communications system 100 may include base stations 105 and/or UEs that can support simultaneous communications via carriers associated with more than one different carrier bandwidth.
  • Wireless communications system 100 may support communication with a UE 115 on multiple cells or carriers, a feature which may be referred to as carrier aggregation (CA) or multi-carrier operation.
  • a UE 115 may be configured with multiple downlink CCs and one or more uplink CCs according to a carrier aggregation configuration.
  • Carrier aggregation may be used with both FDD and TDD component carriers.
  • wireless communications system 100 may utilize enhanced component carriers (eCCs) .
  • eCC may be characterized by one or more features including wider carrier or frequency channel bandwidth, shorter symbol duration, shorter TTI duration, or modified control channel configuration.
  • an eCC may be associated with a carrier aggregation configuration or a dual connectivity configuration (e.g., when multiple serving cells have a suboptimal or non-ideal backhaul link) .
  • An eCC may also be configured for use in unlicensed spectrum or shared spectrum (e.g., where more than one operator is allowed to use the spectrum) .
  • An eCC characterized by wide carrier bandwidth may include one or more segments that may be utilized by UEs 115 that are not capable of monitoring the whole carrier bandwidth or are otherwise configured to use a limited carrier bandwidth (e.g., to conserve power) .
  • an eCC may utilize a different symbol duration than other CCs, which may include use of a reduced symbol duration as compared with symbol durations of the other CCs.
  • a shorter symbol duration may be associated with increased spacing between adjacent subcarriers.
  • a device such as a UE 115 or base station 105, utilizing eCCs may transmit wideband signals (e.g., according to frequency channel or carrier bandwidths of 20, 40, 60, 80 MHz, etc. ) at reduced symbol durations (e.g., 16.67 microseconds) .
  • a TTI in eCC may consist of one or multiple symbol periods. In some cases, the TTI duration (that is, the number of symbol periods in a TTI) may be variable.
  • Wireless communications systems such as an NR system may utilize any combination of licensed, shared, and unlicensed spectrum bands, among others.
  • the flexibility of eCC symbol duration and subcarrier spacing may allow for the use of eCC across multiple spectrums.
  • NR shared spectrum may increase spectrum utilization and spectral efficiency, specifically through dynamic vertical (e.g., across frequency) and horizontal (e.g., across time) sharing of resources.
  • a MAC layer of a wireless device may allocate data from logical channels to a MAC PDU, and the wireless device may transmit any data mapped to the MAC PDU during the TTI. For each established logical channel, the MAC layer may determine the amount of associated data, if any, to include the MAC PDU according to a logical channel prioritization procedure. The MAC layer may perform the logical channel prioritization procedure for each MAC PDU generated by the wireless device (e.g., whenever the wireless device receives a new transmission grant) .
  • the wireless device may be a UE 115, and the UE 115 may receive the grant from a base station 105 via a control channel, such as a physical downlink control channel (PDCCH) .
  • Transmission grants may vary (e.g., regarding the amount of granted transmission resources) from one to another, and thus the size (e.g., capacity) of a MAC PDU may vary from TTI to TTI.
  • FIG. 2 illustrates an example of a mapping 200 of logical channels to a MAC PDU in accordance with various aspects of the present disclosure.
  • mapping 200 may be implemented by aspects of wireless communication system 100, such as by wireless device, which may in some cases be a UE 115.
  • Mapping 200 may be implemented by a MAC layer of the UE 115 and may correspond to a first TTI in which three logical channels-shown in FIG. 2 as Channel 0, Channel 1, and Channel 2-are initialized, which may be referred to as TTI 0 .
  • the token bucket level of a logical channel may be referred to herein as T i , where i corresponds to the logical channel number-thus, the initial token bucket levels for Channel 0, Channel 1, and Channel 2 may be referred to as T 0 , T 1 , and T 2 respectively.
  • Token bucket sizes may have units of a data size (e.g., number of bits or bytes) .
  • the MAC layer may initialize the token bucket level of a logical channel to zero when the logical channel is first initialized. Thus, as shown in FIG. 2, the MAC layer may initialize T 0 , T 1 , and T 2 each to zero (0) .
  • a higher layer of the UE 115 may signal several parameters to the MAC layer regarding the three logical channels.
  • the higher layer may signal initial priority values for each logical channel.
  • the higher layer may signal an initial priority value of 0 for Channel 0, an initial priority value of 1 for Channel 1, and an initial priority value of 2 for Channel 2.
  • the initial priority value of a logical channel may be referred to herein as P i .
  • An increasing priority value may corresponding to a decreasing priority level.
  • Channel 0 may be the highest priority channel
  • Channel 2 may be the lowest priority channel, at least as signaled by the higher layer.
  • the higher layer may also signal to the MAC layer a prioritized bit rate (PBR) and a bucket size duration (BSD) for each channel.
  • PBR prioritized bit rate
  • BSD bucket size duration
  • the PBR of a logical channel may correspond to a target bit rate for the logical channel and thus may relate to a QoS for the logical channel.
  • the BSD may be in the units of a time duration.
  • the MAC layer may cap the token bucket level of a logical channel at a bucket size 205 based at least in part on the PBR and BSD of the logical channel. For example, the MAC layer may determine a bucket size 205 for each logical channel as the PBR of the logical channel multiplied by the BSD of the logical channel.
  • a bucket size 205 may have units of a data size (e.g., number of bits or bytes) , and in the example of mapping 200, Channel 0 may have a bucket size 205-a that equals PBR 0 multiplied by BSD 0 , Channel 1 may have a bucket size 205-b that equals PBR 1 multiplied by BSD 1 , and Channel 2 may have a bucket size 205-c that equals PBR 2 multiplied by BSD 2 .
  • a data size e.g., number of bits or bytes
  • the MAC layer may also determine a token bucket increment factor 210 for each logical channel. For example, the MAC layer may determine the token bucket increment factor 210 of a logical channel as the PBR of the logical channel multiplied by the duration of a TTI.
  • a token bucket increment factor 210 may have units of a data size (e.g., number of bits or bytes) , and in the example of mapping 200, Channel 0 may have a token bucket increment factor 210-a that equals PBR 0 multiplied by the duration of a TTI, Channel 1 may have a token bucket increment factor 210-b that equals PBR 1 multiplied by the duration of a TTI, and Channel 2 may have a token bucket increment factor 210-c that equals PBR 2 multiplied by the duration of a TTI.
  • a data size e.g., number of bits or bytes
  • the MAC layer may increment the token bucket level of the logical channel by the token bucket increment factor 210, up to the bucket size 205 of the logical channel. Also, the MAC layer may at least sometimes decrement the token bucket level of the logical channel by the amount of any data associated with the logical channel that was mapped to a MAC PDU 215 in a prior TTI.
  • the MAC layer may decrement the token bucket level of the logical channel by the amount of any data associated with the logical channel that was mapped to a MAC PDU 215 in a prior TTI, but only if the logical channel had a non-negative token bucket level during the prior TTI (indicating that, at least as of the prior TTI, the logical channel was under-granted) .
  • the MAC layer may determine an updated priority value of the logical channel based on the initial priority value and the token bucket level of the logical channel. For example, the MAC layer may determine whether the token bucket level of the logical channel is negative or non-negative. If the token bucket level of a logical channel is non-negative, the MAC layer may determine the updated priority value of the logical channel as equal to the initial priority value of the logical channel. If the token bucket level of a logical channel is negative, the MAC layer may determine the updated priority value of the logical channel as equal to the initial priority value of the logical channel plus a priority value increment factor, which may be referred to herein as PMAX. The MAC layer may determine PMAX as any number greater than the largest initial priority value of any established logical channel. Thus, in the example of mapping 200, in which the highest initial priority value is two (2) , the MAC layer may determine that PMAX is three (3) .
  • the MAC layer may therefore increment or decrement token bucket levels for logical channels as follows:
  • T i 0
  • T i (T i for the prior TTI) + (token bucket increment factor 210) - (data allocated in the prior TTI)
  • T i (T i for the prior TTI) + (token bucket increment factor 210)
  • T i can never exceed the bucket size 205 of the logical channel.
  • the MAC layer may also therefore determine updated priority values for logical channels, which may be referred to herein as PN i , as follows:
  • the MAC layer may allocate data associated with the logical channels during TTI 0 to the corresponding MAC PDU 215-a in order of decreasing priority level (e.g., in order of increasing updated priority values) until either data available for the logical channels is exhausted or the MAC PDU 215-a is exhausted (e.g., full) .
  • the MAC layer may allocate all available data for Channel 0 to the MAC PDU 215-a, then may allocate as much data for Channel 1 to the MAC PDU 215-a as the MAC PDU 215-a can accommodate.
  • the MAC layer may thus allocate no data for Channel 2 during TTI 0 .
  • the techniques described herein may allocate data to a MAC PDU in the same order as would have occurred based on the initial priority values of the logical channels.
  • FIG. 3 illustrates another example of a mapping 300 of logical channels to a MAC PDU in accordance with various aspects of the present disclosure.
  • mapping 300 may be implemented by aspects of wireless communication system 100, such as by a UE 115.
  • the example of mapping 300 may correspond to a next TTI after TTI 0 , which may be referred to as TTI 1 .
  • New Channel 0 data may be available in TTI 1 , as shown in FIG. 3.
  • New Channel 1 data may also be available in TTI 1 , as also shown in FIG. 3.
  • the MAC layer may determine that T 0 was non-negative for TTI 0 and thus, for TTI 1 , may increment T 0 by token bucket increment factor 210-a and decrement T 0 by the amount of Channel 0 data allocated in TTI 0 . As shown by FIG. 2, the amount of Channel 0 data allocated in TTI 0 was greater than token bucket increment factor 210-a, and thus the MAC layer may determine that T 0 for TTI 1 is negative. Because T 0 for TTI 1 is negative, the MAC layer may determine PN 0 for TTI 1 as P 0 + PMAX, and thus may determine PN 0 for TTI 1 as three (3) .
  • the MAC layer may determine that T 1 was non-negative for TTI 0 and thus, for TTI 1 , may increment T 1 by token bucket increment factor 210-b and decrement T 1 by the amount of Channel 1 data allocated in TTI 0 . As shown by FIG. 2, the amount of Channel 1 data allocated in TTI 0 was greater than token bucket increment factor 210-b, and thus the MAC layer may determine that T 1 for TTI 1 is negative. Because T 1 for TTI 1 is negative, the MAC layer may determine PN 1 for TTI 1 as P 1 + PMAX, and thus may determine PN 1 for TTI 1 as four (4) .
  • the MAC layer may determine that T 2 was non-negative for TTI 0 .
  • the MAC layer may also determine, however, that the amount of available data for Channel 2 is already at the corresponding bucket size 205, and thus may not increment T 2 by token bucket increment factor 210-c. Further, the MAC layer may determine that no Channel 2 data was allocated in TTI 0 , and thus may maintain T 2 at zero (0) . Because T 2 for TTI 1 is therefore non-negative, the MAC layer may determine PN 2 for TTI 1 as P 2 , and thus may determine PN 2 for TTI 1 as two (2) .
  • the MAC layer may allocate data associated with the logical channels during TTI 1 to the corresponding MAC PDU 215-b in order of decreasing priority level (e.g., in order of increasing updated priority values) until either data available for the logical channels is exhausted or the MAC PDU 215-b is exhausted (e.g., full) .
  • the MAC layer may allocate all available data for Channel 2 to the MAC PDU 215-b, then allocate as much data for Channel 0 to the MAC PDU 215-b as the MAC PDU 215-b can accommodate.
  • the MAC layer may thus allocate no data for Channel 1 during TTI 1 .
  • those logical channels may have updated priority values that are higher (and thus may reflect lower priority levels) than the updated priority values of any logical channel having a non-negative token bucket level.
  • mapping 200 although Channel 0 and Channel 1 may both have a higher initial priority value than Channel 2, data for Channel 2 may be prioritized over data for Channel 0 and Channel 1 during TTI 1 , as both Channel 0 and Channel 1 may have been over-granted relative to their respective target bit rate metric (e.g., their respective PBR values) during TTI 0 .
  • the MAC layer may achieve target bit rates and related QoS metrics over time, while allocating data for logical channels to MAC PDUs using only a single allocation cycle (or pass) .
  • FIG. 4 illustrates an example of a mapping 400 of logical channels to a MAC PDU in accordance with various aspects of the present disclosure.
  • mapping 400 may be implemented by aspects of wireless communication system 100, such as by a UE 115.
  • the example of mapping 400 may correspond to a next TTI after TTI 1 , which may be referred to as TTI 2 .
  • New Channel 0 data may also be available in TTI 2
  • the amount of available Channel 1 data in TTI 2 may be unchanged from TTI 1 , as also shown in FIG. 4.
  • the MAC layer may determine that T 0 was negative for TTI 1 and thus, for TTI 2 , may increment T 0 by token bucket increment factor 210-a and may forego any decrementing of T 0 . Thus, for TTI 2 , the MAC layer may determine that T 0 is positive. (Whether a token bucket value becomes positive or remains negative may depend on the specific data amounts involved-e.g., in some scenarios, a logical channel may have become severely over-granted, and thus a token bucket value may remain positive even if incremented by the token bucket increment factor 210.
  • the MAC layer may determine PN 0 for TTI 1 as P 0 , and thus may determine PN 0 for TTI 1 as zero (0) .
  • the token bucket level of an over-granted logical channel may at some later time recover to a non-negative value, and the updated priority value of the over-granted logical channel may recover to the corresponding initial priority value.
  • the MAC layer may determine that T 1 was negative for TTI 0 and thus, for TTI 2 , may increment T 1 by token bucket increment factor 210-b and may forego any decrementing of T 1 . Thus, for TTI 2 , the MAC layer may determine that T 1 is positive. Because T 1 for TTI 2 is non-negative, the MAC layer may determine PN 1 for TTI 2 as P 1 , and thus may determine PN 1 for TTI 2 as one (1) .
  • the MAC layer may determine that T 2 was non-negative for TTI 0 , and thus, for TTI 2 , may increment T 2 by token bucket increment factor 210-c and decrement T 2 by the amount of Channel 2 data allocated in TTI 1 . As shown by FIG. 3, the amount of Channel 2 data allocated in TTI 1 was greater than token bucket increment factor 210-c, and thus the MAC layer may determine that T 2 for TTI 2 is negative. Because T 2 for TTI 2 is negative, the MAC layer may determine PN 2 for TTI 2 as P 2 + PMAX, and thus may determine PN 2 for TTI 2 as five (5) .
  • the MAC layer may allocate data associated with the logical channels during TTI 2 to the corresponding MAC PDU 215-c in order of decreasing priority level (e.g., in order of increasing updated priority values) until either data available for the logical channels is exhausted or the MAC PDU 215-c is exhausted (e.g., full) .
  • the MAC layer may allocate all available data for Channel 0 to the MAC PDU 215-c, then allocate all available data for Channel 1 to the MAC PDU 215-c, then allocate as much Channel 2 data to the MAC PDU 215-c as the MAC PDU 215-c can accommodate.
  • FIG. 5 illustrates an example of a mapping 500 of logical channels to a MAC PDU in accordance with various aspects of the present disclosure.
  • mapping 500 may be implemented by aspects of wireless communication system 100, such as by a UE 115.
  • the example of mapping 500 may correspond to a next TTI after TTI 1 , which may be referred to as TTI 3 .
  • New Channel 2 data may also be available in TTI 2 .
  • the MAC layer may determine that T 0 was non-negative for TTI 2 and thus, for TTI 3 , may increment T 0 by token bucket increment factor 210-a and decrement T 0 by the amount of Channel 0 data allocated in TTI 2 . As shown by FIG. 4, the amount of Channel 0 data allocated in TTI 2 was greater than token bucket increment factor 210-a, and thus the MAC layer may determine that T 0 for TTI 3 is negative.
  • a token bucket value may remain positive or becomes negative depending on the specific data amounts involved-e.g., in some scenarios, a logical channel may have become severely under-granted, and thus a token bucket value may remain positive even if the amount of data allocated in a prior TTI was greater than the token bucket increment factor 210.
  • the MAC layer may determine PN 0 for TTI 3 as P 0 + PMAX, and thus may determine PN 0 for TTI 3 as three (3) .
  • the MAC layer may determine that T 1 was non-negative for TTI 2 and thus, for TTI 3 , may increment T 1 by token bucket increment factor 210-b and decrement T 1 by the amount of Channel 1 data allocated in TTI 2 . As shown by FIG. 4, the amount of Channel 1 data allocated in TTI 2 was greater than token bucket increment factor 210-b, and thus the MAC layer may determine that T 1 for TTI 3 is negative. Because T 1 for TTI 3 is negative, the MAC layer may determine PN 1 for TTI 3 as P 1 + PMAX, and thus may determine PN 1 for TTI 3 as four (4) .
  • the MAC layer may determine that T 2 was negative for TTI 2 and thus, for TTI 3 , may increment T 2 by token bucket increment factor 210-c and may forego any decrementing of T 2 .
  • the amount of Channel 2 data allocated in TTI 2 was less than token bucket increment factor 210-c, and thus the MAC layer may determine that T 2 remains negative for TTI 3 .
  • a token bucket value remains negative or becomes positive may depend on the specific data amounts involved-e.g., in some scenarios, a logical channel may have become severely over-granted, and thus a token bucket value may remain negative even if the amount of data allocated in a prior TTI was less than the token bucket increment factor 210.
  • the MAC layer may determine PN 2 for TTI 3 as P 2 + PMAX, and thus may determine PN 2 for TTI 2 as five (5) .
  • the MAC layer may allocate data associated with the logical channels during TTI 3 to the corresponding MAC PDU 215-d in order of decreasing priority level (e.g., in order of increasing updated priority values) until either data available for the logical channels is exhausted or the MAC PDU 215-d is exhausted (e.g., full) .
  • the MAC layer may allocate all available data for Channel 0 to the MAC PDU 215-d, then allocate all available data for Channel 1 to the MAC PDU 215-d, then allocate as much Channel 2 data to the MAC PDU 215-d as the MAC PDU 215-d can accommodate.
  • the techniques described herein may allocate data to a MAC PDU in the same order as would have occurred based on the initial priority values of the logical channels.
  • mapping 200, mapping 300, mapping 400, mapping 500 are merely illustrative.
  • MAC PDUs 215 may be of any size, may be generated for any number of TTIs (including non-consecutive TTIs) , that any number of logical channels may be established as of any TTI, that logical channels may be initialized, inactivated, and re-initialized as of any TTI, and that the initial priority value of a logical channel may vary from TTI to TTI.
  • FIG. 6 shows a block diagram 600 of a wireless device 605 that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
  • Wireless device 605 may be an example of aspects of a user equipment (UE) 115 as described herein.
  • Wireless device 605 may include receiver 610, communications manager 615, and transmitter 620.
  • Wireless device 605 may also include a processor. Each of these components may be in communication with one another (e.g., via one or more buses) .
  • Receiver 610 may receive information such as packets, user data, or control information associated with various information channels (e.g., control channels, data channels, and information related to logical channel prioritization in a MAC layer, etc. ) . Information may be passed on to other components of the device.
  • the receiver 610 may be an example of aspects of the transceiver 935 described with reference to FIG. 9.
  • the receiver 610 may utilize a single antenna or a set of antennas.
  • Communications manager 615 may be an example of aspects of the communications manager 915 described with reference to FIG. 9.
  • Communications manager 615 and/or at least some of its various sub-components may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions of the communications manager 615 and/or at least some of its various sub-components may be executed by a general-purpose processor, a digital signal processor (DSP) , an application-specific integrated circuit (ASIC) , an field-programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described in the present disclosure.
  • DSP digital signal processor
  • ASIC application-specific integrated circuit
  • FPGA field-programmable gate array
  • the communications manager 615 and/or at least some of its various sub-components may be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations by one or more physical devices.
  • communications manager 615 and/or at least some of its various sub-components may be a separate and distinct component in accordance with various aspects of the present disclosure.
  • communications manager 615 and/or at least some of its various sub-components may be combined with one or more other hardware components, including but not limited to an I/O component, a transceiver, a network server, another computing device, one or more other components described in the present disclosure, or a combination thereof in accordance with various aspects of the present disclosure.
  • Communications manager 615 may identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels, determine a respective updated priority value for each of the one or more logical channels based on the respective initial priority value and the respective initial token bucket level, and allocate data associated with the one or more logical channels to a MAC PDU based on the respective updated priority values.
  • Transmitter 620 may transmit signals generated by other components of the device.
  • the transmitter 620 may be collocated with a receiver 610 in a transceiver module.
  • the transmitter 620 may be an example of aspects of the transceiver 935 described with reference to FIG. 9.
  • the transmitter 620 may utilize a single antenna or a set of antennas.
  • FIG. 7 shows a block diagram 700 of a wireless device 705 that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
  • Wireless device 705 may be an example of aspects of a wireless device 605 or a UE 115 as described with reference to FIG. 6.
  • Wireless device 705 may include receiver 710, communications manager 715, and transmitter 720.
  • Wireless device 705 may also include a processor. Each of these components may be in communication with one another (e.g., via one or more buses) .
  • Receiver 710 may receive information such as packets, user data, or control information associated with various information channels (e.g., control channels, data channels, and information related to logical channel prioritization in a MAC layer, etc. ) . Information may be passed on to other components of the device.
  • the receiver 710 may be an example of aspects of the transceiver 935 described with reference to FIG. 9.
  • the receiver 710 may utilize a single antenna or a set of antennas.
  • Communications manager 715 may be an example of aspects of the communications manager 915 described with reference to FIG. 9. Communications manager 715 may also include initialization component 725, updating component 730, and mapping component 735.
  • Initialization component 725 may identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels.
  • Updating component 730 may determine a respective updated priority value for each of the one or more logical channels based on the respective initial priority value and the respective initial token bucket level.
  • Mapping component 735 may allocate data associated with the one or more logical channels to a MAC PDU based on the respective updated priority values.
  • allocating data associated with the one or more logical channels to the MAC PDU based on the respective updated priority values includes allocating data associated with the one or more logical channels to the MAC PDU in order of decreasing priority level, as indicated by the respective updated priority values, until either data available for a logical channel or a capacity of the MAC PDU is exhausted.
  • Transmitter 720 may transmit signals generated by other components of the device.
  • the transmitter 720 may be collocated with a receiver 710 in a transceiver module.
  • the transmitter 720 may be an example of aspects of the transceiver 935 described with reference to FIG. 9.
  • the transmitter 720 may utilize a single antenna or a set of antennas.
  • FIG. 8 shows a block diagram 800 of a communications manager 815 that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
  • the communications manager 815 may be an example of aspects of a communications manager 615, a communications manager 715, or a communications manager 915 described with reference to FIGs. 6, 7, and 9.
  • the communications manager 815 may include initialization component 820, updating component 825, mapping component 830, token bucket level manager 835, priority value manager 840, and logical channel manager 845. Each of these modules may communicate, directly or indirectly, with one another (e.g., via one or more buses) .
  • Initialization component 820 may identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels.
  • Updating component 825 may determine a respective updated priority value for each of the one or more logical channels based on the respective initial priority value and the respective initial token bucket level. In some cases, determining a respective updated priority value based on the respective initial priority value and the respective initial token bucket level includes determining whether the respective initial token bucket level is negative or non-negative.
  • Mapping component 830 may allocate data associated with the one or more logical channels to a MAC PDU based on the respective updated priority values.
  • allocating data associated with the one or more logical channels to the MAC PDU based on the respective updated priority values includes allocating data associated with the one or more logical channels to the MAC PDU in order of decreasing priority level, as indicated by the respective updated priority values, until either data available for a logical channel or a capacity of the MAC PDU is exhausted.
  • Token bucket level manager 835 may determine that the respective initial token bucket level is negative for a logical channel if an observed bit rate metric for the logical channel exceeds a target bit rate metric for the logical channel, and may determine that the respective initial token bucket level is non-negative for a logical channel if an observed bit rate metric for the logical channel is equal to or less than a target bit rate metric for the logical channel. Token bucket level manager 835 may set the respective initial token bucket level for a logical channel to zero upon initialization of the logical channel. Token bucket level manager 835 may, for each TTI, increment the respective initial token bucket level for a logical channel by the product of a target bit rate metric for the logical channel and a TTI duration.
  • Token bucket level manager 835 may decrement the respective initial token bucket level for a logical channel by an amount of data associated with the logical channel allocated to the MAC PDU, and decrement the respective initial token bucket level for a logical channel by an amount of data associated with the logical channel allocated to the MAC PDU only if the respective initial token bucket level is non-negative.
  • Priority value manager 840 may calculate the respective updated priority value as the respective initial priority value plus an increment factor if the respective initial token bucket level is negative, and may calculate the respective updated priority value as equal to the respective initial priority value if the respective initial token bucket level is non-negative. Priority value manager 840 may identify a maximum initial priority value, and identify the increment factor as equal to the maximum initial priority value. In some cases, a decreasing priority level corresponds to an increasing priority value.
  • Logical channel manager 845 may determine a maximum amount of data available for each of the one or more logical channels. In some cases, determining the maximum amount of data available for each of the one or more logical channels includes, for each of the one or more logical channels, determining the maximum amount of data available for a logical channel based on a target bit rate metric for the logical channel and a token bucket duration metric for the logical channel.
  • FIG. 9 shows a diagram of a system 900 including a device 905 that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
  • Device 905 may be an example of or include the components of wireless device 605, wireless device 705, or a UE 115 as described above, e.g., with reference to FIGs. 6 and 7.
  • Device 905 may include components for bi-directional voice and data communications including components for transmitting and receiving communications, including communications manager 915, processor 920, memory 925, software 930, transceiver 935, antenna 940, and I/O controller 945. These components may be in electronic communication via one or more buses (e.g., bus 910) .
  • Device 905 may communicate wirelessly with one or more base stations 105.
  • Processor 920 may include an intelligent hardware device, (e.g., a general-purpose processor, a DSP, a central processing unit (CPU) , a microcontroller, an ASIC, an FPGA, a programmable logic device, a discrete gate or transistor logic component, a discrete hardware component, or any combination thereof) .
  • processor 920 may be configured to operate a memory array using a memory controller.
  • a memory controller may be integrated into processor 920.
  • Processor 920 may be configured to execute computer-readable instructions stored in a memory to perform various functions (e.g., functions or tasks supporting logical channel prioritization in a MAC layer) .
  • Memory 925 may include random access memory (RAM) and read only memory (ROM) .
  • the memory 925 may store computer-readable, computer-executable software 930 including instructions that, when executed, cause the processor to perform various functions described herein.
  • the memory 925 may contain, among other things, a basic input/output system (BIOS) which may control basic hardware or software operation such as the interaction with peripheral components or devices.
  • BIOS basic input/output system
  • Software 930 may include code to implement aspects of the present disclosure, including code to support logical channel prioritization in a MAC layer.
  • Software 930 may be stored in a non-transitory computer-readable medium such as system memory or other memory. In some cases, the software 930 may not be directly executable by the processor but may cause a computer (e.g., when compiled and executed) to perform functions described herein.
  • Transceiver 935 may communicate bi-directionally, via one or more antennas, wired, or wireless links as described above.
  • the transceiver 935 may represent a wireless transceiver and may communicate bi-directionally with another wireless transceiver.
  • the transceiver 935 may also include a modem to modulate the packets and provide the modulated packets to the antennas for transmission, and to demodulate packets received from the antennas.
  • the wireless device may include a single antenna 940. However, in some cases the device may have more than one antenna 940, which may be capable of concurrently transmitting or receiving multiple wireless transmissions.
  • I/O controller 945 may manage input and output signals for device 905. I/O controller 945 may also manage peripherals not integrated into device 905. In some cases, I/O controller 945 may represent a physical connection or port to an external peripheral. In some cases, I/O controller 945 may utilize an operating system such as or another known operating system. In other cases, I/O controller 945 may represent or interact with a modem, a keyboard, a mouse, a touchscreen, or a similar device. In some cases, I/O controller 945 may be implemented as part of a processor. In some cases, a user may interact with device 905 via I/O controller 945 or via hardware components controlled by I/O controller 945.
  • FIG. 10 shows a flowchart illustrating a method 1000 for logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
  • the operations of method 1000 may be implemented by a UE 115 or its components as described herein.
  • the operations of method 1000 may be performed by a communications manager as described with reference to FIGs. 6 through 9.
  • a UE 115 may execute a set of codes to control the functional elements of the device to perform the functions described below. Additionally or alternatively, the UE 115 may perform aspects of the functions described below using special-purpose hardware.
  • the UE 115 may identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels.
  • the operations of 1005 may be performed according to the methods described herein. In certain examples, aspects of the operations of 1005 may be performed by a initialization component as described with reference to FIGs. 6 through 9.
  • the UE 115 may determine a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level.
  • the operations of 1010 may be performed according to the methods described herein. In certain examples, aspects of the operations of 1010 may be performed by a updating component as described with reference to FIGs. 6 through 9.
  • the UE 115 may allocate data associated with the one or more logical channels to a MAC PDU based at least in part on the respective updated priority values.
  • the operations of 1015 may be performed according to the methods described herein. In certain examples, aspects of the operations of 1015 may be performed by a mapping component as described with reference to FIGs. 6 through 9.
  • CDMA code division multiple access
  • TDMA time division multiple access
  • FDMA frequency division multiple access
  • OFDMA orthogonal frequency division multiple access
  • SC-FDMA single carrier frequency division multiple access
  • a CDMA system may implement a radio technology such as CDMA2000, Universal Terrestrial Radio Access (UTRA) , etc.
  • CDMA2000 covers IS-2000, IS-95, and IS-856 standards.
  • IS-2000 Releases may be commonly referred to as CDMA2000 1X, 1X, etc.
  • IS-856 TIA-856) is commonly referred to as CDMA2000 1xEV-DO, High Rate Packet Data (HRPD) , etc.
  • UTRA includes Wideband CDMA (WCDMA) and other variants of CDMA.
  • a TDMA system may implement a radio technology such as Global System for Mobile Communications (GSM) .
  • GSM Global System for Mobile Communications
  • An OFDMA system may implement a radio technology such as Ultra Mobile Broadband (UMB) , Evolved UTRA (E-UTRA) , Institute of Electrical and Electronics Engineers (IEEE) 802.11 (Wi-Fi) , IEEE 802.16 (WiMAX) , IEEE 802.20, Flash-OFDM, etc.
  • UMB Ultra Mobile Broadband
  • E-UTRA Evolved UTRA
  • IEEE Institute of Electrical and Electronics Engineers
  • Wi-Fi Institute of Electrical and Electronics Engineers
  • IEEE 802.16 WiMAX
  • IEEE 802.20 Flash-OFDM
  • UTRA and E-UTRA are part of Universal Mobile Telecommunications System (UMTS) .
  • LTE, LTE-A, and LTE-A Pro are releases of UMTS that use E-UTRA.
  • UTRA, E-UTRA, UMTS, LTE, LTE-A, LTE-A Pro, NR, and GSM are described in documents from the organization named “3rd Generation Partnership Project” (3GP
  • CDMA2000 and UMB are described in documents from an organization named “3rd Generation Partnership Project 2” (3GPP2) .
  • 3GPP2 3rd Generation Partnership Project 2
  • the techniques described herein may be used for the systems and radio technologies mentioned above as well as other systems and radio technologies. While aspects of an LTE, LTE-A, LTE-A Pro, or NR system may be described for purposes of example, and LTE, LTE-A, LTE-A Pro, or NR terminology may be used in much of the description, the techniques described herein are applicable beyond LTE, LTE-A, LTE-A Pro, or NR applications.
  • a macro cell generally covers a relatively large geographic area (e.g., several kilometers in radius) and may allow unrestricted access by UEs 115 with service subscriptions with the network provider.
  • a small cell may be associated with a lower-powered base station 105, as compared with a macro cell, and a small cell may operate in the same or different (e.g., licensed, unlicensed, etc. ) frequency bands as macro cells.
  • Small cells may include pico cells, femto cells, and micro cells according to various examples.
  • a pico cell for example, may cover a small geographic area and may allow unrestricted access by UEs 115 with service subscriptions with the network provider.
  • a femto cell may also cover a small geographic area (e.g., a home) and may provide restricted access by UEs 115 having an association with the femto cell (e.g., UEs 115 in a closed subscriber group (CSG) , UEs 115 for users in the home, and the like) .
  • An eNB for a macro cell may be referred to as a macro eNB.
  • An eNB for a small cell may be referred to as a small cell eNB, a pico eNB, a femto eNB, or a home eNB.
  • An eNB may support one or multiple (e.g., two, three, four, and the like) cells, and may also support communications using one or multiple component carriers.
  • the wireless communications system 100 or systems described herein may support synchronous or asynchronous operation.
  • the base stations 105 may have similar frame timing, and transmissions from different base stations 105 may be approximately aligned in time.
  • the base stations 105 may have different frame timing, and transmissions from different base stations 105 may not be aligned in time.
  • the techniques described herein may be used for either synchronous or asynchronous operations.
  • Information and signals described herein may be represented using any of a variety of different technologies and techniques.
  • data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
  • DSP digital signal processor
  • ASIC application-specific integrated circuit
  • FPGA field-programmable gate array
  • PLD programmable logic device
  • a general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine.
  • a processor may also be implemented as a combination of computing devices (e.g., a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration) .
  • the functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Other examples and implementations are within the scope of the disclosure and appended claims. For example, due to the nature of software, functions described above can be implemented using software executed by a processor, hardware, firmware, hardwiring, or combinations of any of these. Features implementing functions may also be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations.
  • Computer-readable media includes both non-transitory computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another.
  • a non-transitory storage medium may be any available medium that can be accessed by a general purpose or special purpose computer.
  • non-transitory computer-readable media may comprise random-access memory (RAM) , read-only memory (ROM) , electrically erasable programmable read only memory (EEPROM) , flash memory, compact disk (CD) ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other non-transitory medium that can be used to carry or store desired program code means in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor.
  • RAM random-access memory
  • ROM read-only memory
  • EEPROM electrically erasable programmable read only memory
  • CD compact disk
  • magnetic disk storage or other magnetic storage devices or any other non-transitory medium
  • any connection is properly termed a computer-readable medium.
  • the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL) , or wireless technologies such as infrared, radio, and microwave
  • the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium.
  • Disk and disc include CD, laser disc, optical disc, digital versatile disc (DVD) , floppy disk and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above are also included within the scope of computer-readable media.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Methods, systems, and devices for wireless communications are described. A medium access control (MAC) layer of a wireless device may allocate data for logical channels to a MAC protocol data unit (PDU) based on updated priority values, which may be based on initial priority values (e.g., initial priority values signaled by a higher layer in the protocol stack that includes the MAC layer) and token bucket levels for each logical channel. The MAC layer may determine token bucket levels and updated priority values for logical channels on a per-TTI basis and may allocate data for the logical channels to a MAC PDU in one allocation cycle.

Description

LOGICAL CHANNEL PRIORITIZATION IN A MEDIUM ACCESS CONTROL LAYER BACKGROUND
The following relates generally to wireless communication, and more specifically to logical channel prioritization in a medium access control layer.
Wireless communications systems are widely deployed to provide various types of communication content such as voice, video, packet data, messaging, broadcast, and so on. These systems may be capable of supporting communication with multiple users by sharing the available system resources (e.g., time, frequency, and power) . Examples of such multiple-access systems include fourth generation (4G) systems such as Long Term Evolution (LTE) systems, LTE-Advanced (LTE-A) systems, or LTE-A Pro systems, and fifth generation (5G) systems which may be referred to as New Radio (NR) systems. These systems may employ technologies such as code division multiple access (CDMA) , time division multiple access (TDMA) , frequency division multiple access (FDMA) , orthogonal frequency division multiple access (OFDMA) , or discrete Fourier transform-spread-OFDM (DFT-S-OFDM) . A wireless multiple-access communications system may include a number of base stations or network access nodes, each simultaneously supporting communication for multiple communication devices, which may be otherwise known as user equipment (UE) .
Some wireless devices may operate according to a layered protocol stack. A medium access control (MAC) layer in the protocol stack may perform priority handling and multiplexing of logical channels into transport channels. Improved systems and techniques for prioritizing the multiplexing of logical channels into transport channels may be desired.
SUMMARY
The described techniques relate to improved methods, systems, devices, or apparatuses that support logical channel prioritization in a medium access control (MAC) layer. Generally, the described techniques provide for mapping initial priority values of logical channels to updated priority values based on token bucket levels for the logical channels. For example, upon a receiving a transmission grant, a wireless device, such as a user equipment (UE) , may allocate data from multiple logical channels to a MAC protocol data unit (PDU) according to the techniques described herein.
In some cases, the wireless device may determine whether the token bucket level for each of the logical channels is negative or non-negative (e.g., zero positive) . A negative token bucket level may indicate that a logical channel has been over-granted relative to a target bit rate metric, and a positive token bucket level may indicate that the logical channel has been under-granted relative to a target bit rate metric. If the token bucket level is negative, the wireless device may determine an updated priority value for the logical channel as equal to the initial priority value plus an increment factor. Thus, if the logical channel is in an over-granted state, its priority level may be decreased (as increased priority value may correspond to decreased priority level) . If the token bucket level for the logical channel is non-negative (e.g., zero or a positive value) , the wireless device may determine an updated priority value for the logical channel as equal to the initial priority level. Thus, if the logical channel is not in an over-granted state, its priority level may be maintained.
After determining updated priority levels for each established logical channel, the wireless device may allocate data from the logical channels to the MAC PDU in order of decreasing priority level (e.g., in order of increasing updated priority values) until either data available for the logical channels is exhausted or the MAC PDU is exhausted (e.g., full) . Thus, the systems and techniques described herein may provide for logical channel prioritization in a MAC layer via a single allocation cycle (as opposed to multiple allocation cycles) , which may provide certain benefits, such as efficiency benefits.
A method of wireless communication is described. The method may include identifying a respective initial priority value and a respective initial token bucket level for each of one or more logical channels, determining a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level, and allocating data associated with the one or more logical channels to a MAC PDU based at least in part on the respective updated priority values.
An apparatus for wireless communication is described. The apparatus may include means for identifying a respective initial priority value and a respective initial token bucket level for each of one or more logical channels, means for determining a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level, and means for  allocating data associated with the one or more logical channels to a MAC PDU based at least in part on the respective updated priority values.
Another apparatus for wireless communication is described. The apparatus may include a processor, memory in electronic communication with the processor, and instructions stored in the memory. The instructions may be operable to cause the processor to identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels, determine a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level, and allocate data associated with the one or more logical channels to a MAC PDU based at least in part on the respective updated priority values.
A non-transitory computer-readable medium for wireless communication is described. The non-transitory computer-readable medium may include instructions operable to cause a processor to identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels, determine a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level, and allocate data associated with the one or more logical channels to a MAC PDU based at least in part on the respective updated priority values.
In some examples of the method, apparatus, and non-transitory computer-readable medium described above, allocating data associated with the one or more logical channels to the MAC PDU based at least in part on the respective updated priority values comprises allocating data associated with the one or more logical channels to the MAC PDU in order of decreasing priority level, as indicated by the respective updated priority values, until either data available for a logical channel or a capacity of the MAC PDU may be exhausted.
In some examples of the method, apparatus, and non-transitory computer-readable medium described above, determining a respective updated priority value based at least in part on the respective initial priority value and the respective initial token bucket level comprises determining whether the respective initial token bucket level may be negative or non-negative. Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for calculating the respective updated priority value as the respective initial  priority value plus an increment factor if the respective initial token bucket level may be negative. Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for calculating the respective updated priority value as equal to the respective initial priority value if the respective initial token bucket level may be non-negative.
Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for determining that the respective initial token bucket level may be negative for a logical channel if an observed bit rate metric for the logical channel exceeds a target bit rate metric for the logical channel.
Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for determining that the respective initial token bucket level may be non-negative for a logical channel if an observed bit rate metric for the logical channel may be equal to or less than a target bit rate metric for the logical channel.
Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for identifying a maximum initial priority value. Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for identifying the increment factor as equal to the maximum initial priority value.
Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for setting the respective initial token bucket level for a logical channel to zero upon initialization of the logical channel.
Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for, for each transmission time interval (TTI) , incrementing the respective initial token bucket level for a logical channel by the product of a target bit rate metric for the logical channel and a TTI duration.
Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for decrementing the respective initial token bucket level for a logical channel by an amount of data associated with the logical channel allocated to the MAC PDU.
Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for decrementing the respective initial token bucket level for a logical channel by an amount of data associated with the logical channel allocated to the MAC PDU only if the respective initial token bucket level may be non-negative.
In some examples of the method, apparatus, and non-transitory computer-readable medium described above, a decreasing priority level corresponds to an increasing priority value.
Some examples of the method, apparatus, and non-transitory computer-readable medium described above may further include processes, features, means, or instructions for determining a maximum amount of data available for each of the one or more logical channels.
In some examples of the method, apparatus, and non-transitory computer-readable medium described above, determining the maximum amount of data available for each of the one or more logical channels comprises, for each of the one or more logical channels, determining the maximum amount of data available for a logical channel based at least in part on a target bit rate metric for the logical channel and a token bucket duration metric for the logical channel.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 illustrates an example of a system for wireless communication that supports logical channel prioritization in a medium access control (MAC) layer in accordance with aspects of the present disclosure.
FIG. 2 illustrates an example of a logical channel mapping that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
FIG. 3 illustrates an example of a logical channel mapping that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
FIG. 4 illustrates an example of a logical channel mapping that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
FIG. 5 illustrates an example of a logical channel mapping that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
FIGs. 6 through 8 show block diagrams of a device that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
FIG. 9 illustrates a block diagram of a system including a user equipment (UE) that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
FIG. 10 illustrates a method for logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure.
DETAILED DESCRIPTION
Some wireless devices in a wireless communications system, such as user equipments (UEs) , may operate according to a layered protocol stack, and a medium access control (MAC) layer in the protocol stack may perform priority handling and multiplexing of logical channels into transport channels. For example, upon a receiving a grant to transmit during a transmission time interval (TTI) , a wireless device may allocate data from multiple logical channels to a MAC protocol data unit (PDU) according to the techniques described herein. The wireless device may transmit any data mapped to the MAC PDU during the TTI.
A higher layer (e.g., a radio resource control (RRC) layer) may signal to the MAC layer initial priority values for active logical channels, along with other parameters as described herein, that the MAC layer may use to allocate data for the logical channels to the MAC PDU. The MAC layer may allocate the data for the logical channels to the MAC PDU based at least part on target bit rate metrics, target quality of service (QoS) metrics, or other target metrics from the logical channels. In some cases, a lower initial priority value may correspond to a higher priority level for transmission (e.g., a logical channel with an initial priority value of zero (0) may be a highest-priority channel) .
The MAC layer may determine a token bucket level for each logical channel, which may be initialized to zero upon establishment of the logical channel. Thereafter, the MAC layer may increment the token bucket level for a logical channel may by some set  amount (e.g., some number of bits) during each transmission time interval (TTI) , which may be based at least in part on a target bit rate metric, and, in at least some cases, may decrement the token bucket level for the logical channel by any amount of data that has been mapped from the logical channel to a MAC PDU. Thus, a positive token bucket level may indicate that the logical channel has been under-granted (e.g., data for the logical channel has been under-allocated to MAC PDUs) relative to the target bit rate, and a negative token bucket level may indicate that the logical channel has been over-granted (e.g., data for the logical channel has been over-allocated to MAC PDUs) relative to the target bit rate.
As described herein, a wireless device may map initial priority values of logical channels to updated priority values based at least in part on their respective token bucket levels, and then may allocate data associated with the logical channels to a MAC PDU in order of decreasing priority level (e.g., in order of increasing updated priority values) until either data available for the logical channels is exhausted or the MAC PDU is exhausted (e.g., is full) . Thus, the systems and techniques described herein may provide for logical channel prioritization in MAC layer via a single allocation cycle (as opposed to multiple allocation cycles) . This may provide certain benefits, including efficiency benefits. For example, using one allocation cycle per PDU may conserve processing resources (e.g., allocation may be accomplished with fewer processing instructions than with multiple-cycle allocation techniques) and may reduce overhead related to radio link control (RLC) layer headers (e.g., a MAC PDU may include only a single RLC header, as opposed to multiple RLC headers that may be associated with multiple allocation cycles) .
Aspects of the disclosure are initially described in the context of a wireless communications system. Examples of mappings of logical channels to MAC PDUs are then described. Aspects of the disclosure are further illustrated by and described with reference to apparatus diagrams, system diagrams, and flowcharts that relate to logical channel prioritization in a MAC layer.
FIG. 1 illustrates an example of a wireless communications system 100 in accordance with various aspects of the present disclosure. The wireless communications system 100 includes base stations 105, UEs 115, and a core network 130. In some examples, the wireless communications system 100 may be a Long Term Evolution (LTE) network, an LTE-Advanced (LTE-A) network, an LTE-A Pro network, or a New Radio (NR) network. In some cases, wireless communications system 100 may support enhanced broadband  communications, ultra-reliable (e.g., mission critical) communications, low latency communications, or communications with low-cost and low-complexity devices.
Base stations 105 may wirelessly communicate with UEs 115 via one or more base station antennas. Base stations 105 described herein may include or may be referred to by those skilled in the art as a base transceiver station, a radio base station, an access point, a radio transceiver, a NodeB, an eNodeB (eNB) , a next-generation Node B or giga-nodeB (either of which may be referred to as a gNB) , a Home NodeB, a Home eNodeB, or some other suitable terminology. Wireless communications system 100 may include base stations 105 of different types (e.g., macro or small cell base stations) . The UEs 115 described herein may be able to communicate with various types of base stations 105 and network equipment including macro eNBs, small cell eNBs, gNBs, relay base stations, and the like.
Each base station 105 may be associated with a particular geographic coverage area 110 in which communications with various UEs 115 is supported. Each base station 105 may provide communication coverage for a respective geographic coverage area 110 via communication links 125, and communication links 125 between a base station 105 and a UE 115 may utilize one or more carriers. Communication links 125 shown in wireless communications system 100 may include uplink transmissions from a UE 115 to a base station 105, or downlink transmissions from a base station 105 to a UE 115. Downlink transmissions may also be called forward link transmissions while uplink transmissions may also be called reverse link transmissions.
The geographic coverage area 110 for a base station 105 may be divided into sectors making up only a portion of the geographic coverage area 110, and each sector may be associated with a cell. For example, each base station 105 may provide communication coverage for a macro cell, a small cell, a hot spot, or other types of cells, or various combinations thereof. In some examples, a base station 105 may be movable and therefore provide communication coverage for a moving geographic coverage area 110. In some examples, different geographic coverage areas 110 associated with different technologies may overlap, and overlapping geographic coverage areas 110 associated with different technologies may be supported by the same base station 105 or by different base stations 105. The wireless communications system 100 may include, for example, a heterogeneous LTE/LTE-A/LTE-A Pro or NR network in which different types of base stations 105 provide coverage for various geographic coverage areas 110.
The term “cell” refers to a logical communication entity used for communication with a base station 105 (e.g., over a carrier) , and may be associated with an identifier for distinguishing neighboring cells (e.g., a physical cell identifier (PCID) , a virtual cell identifier (VCID) ) operating via the same or a different carrier. In some examples, a carrier may support multiple cells, and different cells may be configured according to different protocol types (e.g., machine-type communication (MTC) , narrowband Internet-of-Things (NB-IoT) , enhanced mobile broadband (eMBB) , or others) that may provide access for different types of devices. In some cases, the term “cell” may refer to a portion of a geographic coverage area 110 (e.g., a sector) over which the logical entity operates.
UEs 115 may be dispersed throughout the wireless communications system 100, and each UE 115 may be stationary or mobile. A UE 115 may also be referred to as a mobile device, a wireless device, a remote device, a handheld device, or a subscriber device, or some other suitable terminology, where the “device” may also be referred to as a unit, a station, a terminal, or a client. A UE 115 may also be a personal electronic device such as a cellular phone, a personal digital assistant (PDA) , a tablet computer, a laptop computer, or a personal computer. In some examples, a UE 115 may also refer to a wireless local loop (WLL) station, an Internet of Things (IoT) device, an Internet of Everything (IoE) device, or an MTC device, or the like, which may be implemented in various articles such as appliances, vehicles, meters, or the like.
Some UEs 115, such as MTC or IoT devices, may be low cost or low complexity devices, and may provide for automated communication between machines (e.g., via Machine-to-Machine (M2M) communication) . M2M communication or MTC may refer to data communication technologies that allow devices to communicate with one another or a base station 105 without human intervention. In some examples, M2M communication or MTC may include communications from devices that integrate sensors or meters to measure or capture information and relay that information to a central server or application program that can make use of the information or present the information to humans interacting with the program or application. Some UEs 115 may be designed to collect information or enable automated behavior of machines. Examples of applications for MTC devices include smart metering, inventory monitoring, water level monitoring, equipment monitoring, healthcare monitoring, wildlife monitoring, weather and geological event monitoring, fleet management and tracking, remote security sensing, physical access control, and transaction-based business charging.
Some UEs 115 may be configured to employ operating modes that reduce power consumption, such as half-duplex communications (e.g., a mode that supports one-way communication via transmission or reception, but not transmission and reception simultaneously) . In some examples half-duplex communications may be performed at a reduced peak rate. Other power conservation techniques for UEs 115 include entering a power saving “deep sleep” mode when not engaging in active communications, or operating over a limited bandwidth (e.g., according to narrowband communications) . In some cases, UEs 115 may be designed to support critical functions (e.g., mission critical functions) , and a wireless communications system 100 may be configured to provide ultra-reliable communications for these functions.
In some cases, a UE 115 may also be able to communicate directly with other UEs 115 (e.g., using a peer-to-peer (P2P) or device-to-device (D2D) protocol) . One or more of a group of UEs 115 utilizing D2D communications may be within the geographic coverage area 110 of a base station 105. Other UEs 115 in such a group may be outside the geographic coverage area 110 of a base station 105, or be otherwise unable to receive transmissions from a base station 105. In some cases, groups of UEs 115 communicating via D2D communications may utilize a one-to-many (1: M) system in which each UE 115 transmits to every other UE 115 in the group. In some cases, a base station 105 facilitates the scheduling of resources for D2D communications. In other cases, D2D communications are carried out between UEs 115 without the involvement of a base station 105.
Base stations 105 may communicate with the core network 130 and with one another. For example, base stations 105 may interface with the core network 130 through backhaul links 132 (e.g., via an S1 or other interface) . Base stations 105 may communicate with one another over backhaul links 134 (e.g., via an X2 or other interface) either directly (e.g., directly between base stations 105) or indirectly (e.g., via core network 130) .
The core network 130 may provide user authentication, access authorization, tracking, Internet Protocol (IP) connectivity, and other access, routing, or mobility functions. The core network 130 may be an evolved packet core (EPC) , which may include at least one mobility management entity (MME) , at least one serving gateway (S-GW) , and at least one Packet Data Network (PDN) gateway (P-GW) . The MME may manage non-access stratum (e.g., control plane) functions such as mobility, authentication, and bearer management for UEs 115 served by base stations 105 associated with the EPC. User IP packets may be  transferred through the S-GW, which itself may be connected to the P-GW. The P-GW may provide IP address allocation as well as other functions. The P-GW may be connected to the network operators IP services. The operators IP services may include access to the Internet, Intranet (s) , an IP Multimedia Subsystem (IMS) , or a Packet-Switched (PS) Streaming Service.
At least some of the network devices, such as a base station 105, may include subcomponents such as an access network entity, which may be an example of an access node controller (ANC) . Each access network entity may communicate with UEs 115 through a number of other access network transmission entities, which may be referred to as a radio head, a smart radio head, or a transmission/reception point (TRP) . In some configurations, various functions of each access network entity or base station 105 may be distributed across various network devices (e.g., radio heads and access network controllers) or consolidated into a single network device (e.g., a base station 105) .
Wireless communications system 100 may operate using one or more frequency bands, typically in the range of 300 MHz to 300 GHz. Generally, the region from 300 MHz to 3 GHz is known as the ultra-high frequency (UHF) region or decimeter band, since the wavelengths range from approximately one decimeter to one meter in length. UHF waves may be blocked or redirected by buildings and environmental features. However, the waves may penetrate structures sufficiently for a macro cell to provide service to UEs 115 located indoors. Transmission of UHF waves may be associated with smaller antennas and shorter range (e.g., less than 100 km) compared to transmission using the smaller frequencies and longer waves of the high frequency (HF) or very high frequency (VHF) portion of the spectrum below 300 MHz.
Wireless communications system 100 may also operate in a super high frequency (SHF) region using frequency bands from 3 GHz to 30 GHz, also known as the centimeter band. The SHF region includes bands such as the 5 GHmultiplez industrial, scientific, and medical (ISM) bands, which may be used opportunistically by devices that can tolerate interference from other users.
Wireless communications system 100 may also operate in an extremely high frequency (EHF) region of the spectrum (e.g., from 30 GHz to 300 GHz) , also known as the millimeter band. In some examples, wireless communications system 100 may support millimeter wave (mmW) communications between UEs 115 and base stations 105, and EHF  antennas of the respective devices may be even smaller and more closely spaced than UHF antennas. In some cases, this may facilitate use of antenna arrays within a UE 115. However, the propagation of EHF transmissions may be subject to even greater atmospheric attenuation and shorter range than SHF or UHF transmissions. Techniques disclosed herein may be employed across transmissions that use one or more different frequency regions, and designated use of bands across these frequency regions may differ by country or regulating body.
In some cases, wireless communications system 100 may utilize both licensed and unlicensed radio frequency spectrum bands. For example, wireless communications system 100 may employ License Assisted Access (LAA) , LTE-Unlicensed (LTE-U) radio access technology, or NR technology in an unlicensed band such as the 5 GHz ISM band. When operating in unlicensed radio frequency spectrum bands, wireless devices such as base stations 105 and UEs 115 may employ listen-before-talk (LBT) procedures to ensure a frequency channel is clear before transmitting data. In some cases, operations in unlicensed bands may be based on a CA configuration in conjunction with CCs operating in a licensed band (e.g., LAA) . Operations in unlicensed spectrum may include downlink transmissions, uplink transmissions, peer-to-peer transmissions, or a combination of these. Duplexing in unlicensed spectrum may be based on frequency division duplexing (FDD) , time division duplexing (TDD) , or a combination of both.
In some examples, base station 105 or UE 115 may be equipped with multiple antennas, which may be used to employ techniques such as transmit diversity, receive diversity, multiple-input multiple-output (MIMO) communications, or beamforming. For example, wireless communications system 100 may use a transmission scheme between a transmitting device (e.g., a base station 105) and a receiving device (e.g., a UE 115) , where the transmitting device is equipped with multiple antennas and the receiving devices are equipped with one or more antennas. MIMO communications may employ multipath signal propagation to increase the spectral efficiency by transmitting or receiving multiple signals via different spatial layers, which may be referred to as spatial multiplexing. The multiple signals may, for example, be transmitted by the transmitting device via different antennas or different combinations of antennas. Likewise, the multiple signals may be received by the receiving device via different antennas or different combinations of antennas. Each of the multiple signals may be referred to as a separate spatial stream, and may carry bits associated with the same data stream (e.g., the same codeword) or different data streams. Different  spatial layers may be associated with different antenna ports used for channel measurement and reporting. MIMO techniques include single-user MIMO (SU-MIMO) where multiple spatial layers are transmitted to the same receiving device, and multiple-user MIMO (MU-MIMO) where multiple spatial layers are transmitted to multiple devices.
Beamforming, which may also be referred to as spatial filtering, directional transmission, or directional reception, is a signal processing technique that may be used at a transmitting device or a receiving device (e.g., a base station 105 or a UE 115) to shape or steer an antenna beam (e.g., a transmit beam or receive beam) along a spatial path between the transmitting device and the receiving device. Beamforming may be achieved by combining the signals communicated via antenna elements of an antenna array such that signals propagating at particular orientations with respect to an antenna array experience constructive interference while others experience destructive interference. The adjustment of signals communicated via the antenna elements may include a transmitting device or a receiving device applying certain amplitude and phase offsets to signals carried via each of the antenna elements associated with the device. The adjustments associated with each of the antenna elements may be defined by a beamforming weight set associated with a particular orientation (e.g., with respect to the antenna array of the transmitting device or receiving device, or with respect to some other orientation) .
In one example, a base station 105 may use multiple antennas or antenna arrays to conduct beamforming operations for directional communications with a UE 115. For instance, some signals (e.g. synchronization signals, reference signals, beam selection signals, or other control signals) may be transmitted by a base station 105 multiple times in different directions, which may include a signal being transmitted according to different beamforming weight sets associated with different directions of transmission. Transmissions in different beam directions may be used to identify (e.g., by the base station 105 or a receiving device, such as a UE 115) a beam direction for subsequent transmission and/or reception by the base station 105. Some signals, such as data signals associated with a particular receiving device, may be transmitted by a base station 105 in a single beam direction (e.g., a direction associated with the receiving device, such as a UE 115) . In some examples, the beam direction associated with transmissions along a single beam direction may be determined based at least in in part on a signal that was transmitted in different beam directions. For example, a UE 115 may receive one or more of the signals transmitted by the base station 105 in different directions, and the UE 115 may report to the base station 105 an indication of the  signal it received with a highest signal quality, or an otherwise acceptable signal quality. Although these techniques are described with reference to signals transmitted in one or more directions by a base station 105, a UE 115 may employ similar techniques for transmitting signals multiple times in different directions (e.g., for identifying a beam direction for subsequent transmission or reception by the UE 115) , or transmitting a signal in a single direction (e.g., for transmitting data to a receiving device) .
A receiving device (e.g., a UE 115, which may be an example of a mmW receiving device) may try multiple receive beams when receiving various signals from the base station 105, such as synchronization signals, reference signals, beam selection signals, or other control signals. For example, a receiving device may try multiple receive directions by receiving via different antenna subarrays, by processing received signals according to different antenna subarrays, by receiving according to different receive beamforming weight sets applied to signals received at a plurality of antenna elements of an antenna array, or by processing received signals according to different receive beamforming weight sets applied to signals received at a plurality of antenna elements of an antenna array, any of which may be referred to as “listening” according to different receive beams or receive directions. In some examples a receiving device may use a single receive beam to receive along a single beam direction (e.g., when receiving a data signal) . The single receive beam may be aligned in a beam direction determined based at least in part on listening according to different receive beam directions (e.g., a beam direction determined to have a highest signal strength, highest signal-to-noise ratio, or otherwise acceptable signal quality based at least in part on listening according to multiple beam directions) .
In some cases, the antennas of a base station 105 or UE 115 may be located within one or more antenna arrays, which may support MIMO operations, or transmit or receive beamforming. For example, one or more base station antennas or antenna arrays may be co-located at an antenna assembly, such as an antenna tower. In some cases, antennas or antenna arrays associated with a base station 105 may be located in diverse geographic locations. A base station 105 may have an antenna array with a number of rows and columns of antenna ports that the base station 105 may use to support beamforming of communications with a UE 115. Likewise, a UE 115 may have one or more antenna arrays that may support various MIMO or beamforming operations.
In some cases, wireless communications system 100 may be a packet-based network that operate according to a layered protocol stack. In the control plane, the RRC protocol layer may provide establishment, configuration, and maintenance of an RRC connection between a UE 115 and a base station 105 or core network 130 supporting radio bearers for user plane data.
In the user plane, communications at the bearer or Packet Data Convergence Protocol (PDCP) layer may be IP-based. An RLC layer may in some cases perform packet segmentation and reassembly to communicate over logical channels. As described herein, a MAC layer may perform priority handling and multiplexing of logical channels into transport channels. For example, the MAC layer may identify initial priority values for logical channels-which may in some cases be provided, along with other parameters, by the RRC layer-and may determine a respective updated priority value for each of the logical channels based on the respective initial priority value and token bucket level. The MAC layer may also allocate data associated with the logical channels to a MAC PDU based at least in part on the respective updated priority values. The MAC layer may also use hybrid automatic repeat request (HARQ) to provide retransmission at the MAC layer to improve link efficiency. At the Physical (PHY) layer, transport channels may be mapped to physical channels.
In some cases, UEs 115 and base stations 105 may support retransmissions of data to increase the likelihood that data is received successfully. HARQ feedback is one technique of increasing the likelihood that data is received correctly over a communication link 125. HARQ may include a combination of error detection (e.g., using a cyclic redundancy check (CRC) ) , forward error correction (FEC) , and retransmission (e.g., automatic repeat request (ARQ) ) . HARQ may improve throughput at the MAC layer in poor radio conditions (e.g., signal-to-noise conditions) . In some cases, a wireless device may support same-slot HARQ feedback, where the device may provide HARQ feedback in a specific slot for data received in a previous symbol in the slot. In other cases, the device may provide HARQ feedback in a subsequent slot, or according to some other time interval.
Time intervals in LTE or NR may be expressed in multiples of a basic time unit, which may, for example, refer to a sampling period of T s = 1/30,720,000 seconds. Time intervals of a communications resource may be organized according to radio frames each having a duration of 10 milliseconds (ms) , where the frame period may be expressed as T f = 307,200 T s. The radio frames may be identified by a system frame number (SFN)  ranging from 0 to 1023. Each frame may include 10 subframes numbered from 0 to 9, and each subframe may have a duration of 1 ms. A subframe may be further divided into 2 slots each having a duration of 0.5 ms, and each slot may contain 6 or 7 modulation symbol periods (e.g., depending on the length of the cyclic prefix prepended to each symbol period) . Excluding the cyclic prefix, each symbol period may contain 2048 sampling periods. In some cases a subframe may be the smallest scheduling unit of the wireless communications system 100, and may be referred to as a transmission time interval (TTI) . In other cases, a smallest scheduling unit of the wireless communications system 100 may be shorter than a subframe or may be dynamically selected (e.g., in bursts of shortened TTIs (sTTIs) or in selected component carriers using sTTIs) .
In some wireless communications systems, a slot may further be divided into multiple mini-slots containing one or more symbols. In some instances, a symbol of a mini-slot or a mini-slot may be the smallest unit of scheduling. Each symbol may vary in duration depending on the subcarrier spacing or frequency band of operation, for example. Further, some wireless communications systems may implement slot aggregation in which multiple slots or mini-slots are aggregated together and used for communication between a UE 115 and a base station 105.
The term “carrier” refers to a set of radio frequency spectrum resources having a defined physical layer structure for supporting communications over a communication link 125. For example, a carrier of a communication link 125 may include a portion of a radio frequency spectrum band that is operated according to physical layer channels for a given radio access technology. Each physical layer channel may carry user data, control information, or other signaling. A carrier may be associated with a pre-defined frequency channel (e.g., an E-UTRA absolute radio frequency channel number (EARFCN) ) , and may be positioned according to a channel raster for discovery by UEs 115. Carriers may be downlink or uplink (e.g., in an FDD mode) , or be configured to carry downlink and uplink communications (e.g., in a TDD mode) . In some examples, signal waveforms transmitted over a carrier may be made up of multiple sub-carriers (e.g., using multi-carrier modulation (MCM) techniques such as OFDM or DFT-s-OFDM) .
The organizational structure of the carriers may be different for different radio access technologies (e.g., LTE, LTE-A, LTE-A Pro, NR, etc. ) . For example, communications over a carrier may be organized according to TTIs or slots, each of which may include user  data as well as control information or signaling to support decoding the user data. A carrier may also include dedicated acquisition signaling (e.g., synchronization signals or system information, etc. ) and control signaling that coordinates operation for the carrier. In some examples (e.g., in a carrier aggregation configuration) , a carrier may also have acquisition signaling or control signaling that coordinates operations for other carriers.
Physical channels may be multiplexed on a carrier according to various techniques. A physical control channel and a physical data channel may be multiplexed on a downlink carrier, for example, using time division multiplexing (TDM) techniques, frequency division multiplexing (FDM) techniques, or hybrid TDM-FDM techniques. In some examples, control information transmitted in a physical control channel may be distributed between different control regions in a cascaded manner (e.g., between a common control region or common search space and one or more UE-specific control regions or UE-specific search spaces) .
A carrier may be associated with a particular bandwidth of the radio frequency spectrum, and in some examples the carrier bandwidth may be referred to as a “system bandwidth” of the carrier or the wireless communications system 100. For example, the carrier bandwidth may be one of a number of predetermined bandwidths for carriers of a particular radio access technology (e.g., 1.4, 3, 5, 10, 15, 20, 40, or 80 MHz) . In some examples, each served UE 115 may be configured for operating over portions or all of the carrier bandwidth. In other examples, some UEs 115 may be configured for operation using a narrowband protocol type that is associated with a predefined portion or range (e.g., set of subcarriers or RBs) within a carrier (e.g., “in-band” deployment of a narrowband protocol type) .
In a system employing MCM techniques, a resource element may consist of one symbol period (e.g., a duration of one modulation symbol) and one subcarrier, where the symbol period and subcarrier spacing are inversely related. The number of bits carried by each resource element may depend on the modulation scheme (e.g., the order of the modulation scheme) . Thus, the more resource elements that a UE 115 receives and the higher the order of the modulation scheme, the higher the data rate may be for the UE 115. In MIMO systems, a wireless communications resource may refer to a combination of a radio frequency spectrum resource, a time resource, and a spatial resource (e.g., spatial layers) , and  the use of multiple spatial layers may further increase the data rate for communications with a UE 115.
Devices of the wireless communications system 100 (e.g., base stations 105 or UEs 115) may have a hardware configuration that supports communications over a particular carrier bandwidth, or may be configurable to support communications over one of a set of carrier bandwidths. In some examples, the wireless communications system 100 may include base stations 105 and/or UEs that can support simultaneous communications via carriers associated with more than one different carrier bandwidth.
Wireless communications system 100 may support communication with a UE 115 on multiple cells or carriers, a feature which may be referred to as carrier aggregation (CA) or multi-carrier operation. A UE 115 may be configured with multiple downlink CCs and one or more uplink CCs according to a carrier aggregation configuration. Carrier aggregation may be used with both FDD and TDD component carriers.
In some cases, wireless communications system 100 may utilize enhanced component carriers (eCCs) . An eCC may be characterized by one or more features including wider carrier or frequency channel bandwidth, shorter symbol duration, shorter TTI duration, or modified control channel configuration. In some cases, an eCC may be associated with a carrier aggregation configuration or a dual connectivity configuration (e.g., when multiple serving cells have a suboptimal or non-ideal backhaul link) . An eCC may also be configured for use in unlicensed spectrum or shared spectrum (e.g., where more than one operator is allowed to use the spectrum) . An eCC characterized by wide carrier bandwidth may include one or more segments that may be utilized by UEs 115 that are not capable of monitoring the whole carrier bandwidth or are otherwise configured to use a limited carrier bandwidth (e.g., to conserve power) .
In some cases, an eCC may utilize a different symbol duration than other CCs, which may include use of a reduced symbol duration as compared with symbol durations of the other CCs. A shorter symbol duration may be associated with increased spacing between adjacent subcarriers. A device, such as a UE 115 or base station 105, utilizing eCCs may transmit wideband signals (e.g., according to frequency channel or carrier bandwidths of 20, 40, 60, 80 MHz, etc. ) at reduced symbol durations (e.g., 16.67 microseconds) . A TTI in eCC may consist of one or multiple symbol periods. In some cases, the TTI duration (that is, the number of symbol periods in a TTI) may be variable.
Wireless communications systems such as an NR system may utilize any combination of licensed, shared, and unlicensed spectrum bands, among others. The flexibility of eCC symbol duration and subcarrier spacing may allow for the use of eCC across multiple spectrums. In some examples, NR shared spectrum may increase spectrum utilization and spectral efficiency, specifically through dynamic vertical (e.g., across frequency) and horizontal (e.g., across time) sharing of resources.
Upon a receiving a grant to transmit during a transmission time interval (TTI) , a MAC layer of a wireless device may allocate data from logical channels to a MAC PDU, and the wireless device may transmit any data mapped to the MAC PDU during the TTI. For each established logical channel, the MAC layer may determine the amount of associated data, if any, to include the MAC PDU according to a logical channel prioritization procedure. The MAC layer may perform the logical channel prioritization procedure for each MAC PDU generated by the wireless device (e.g., whenever the wireless device receives a new transmission grant) .
In some cases, the wireless device may be a UE 115, and the UE 115 may receive the grant from a base station 105 via a control channel, such as a physical downlink control channel (PDCCH) . Transmission grants may vary (e.g., regarding the amount of granted transmission resources) from one to another, and thus the size (e.g., capacity) of a MAC PDU may vary from TTI to TTI.
FIG. 2 illustrates an example of a mapping 200 of logical channels to a MAC PDU in accordance with various aspects of the present disclosure. In some examples, mapping 200 may be implemented by aspects of wireless communication system 100, such as by wireless device, which may in some cases be a UE 115.
Mapping 200 may be implemented by a MAC layer of the UE 115 and may correspond to a first TTI in which three logical channels-shown in FIG. 2 as Channel 0, Channel 1, and Channel 2-are initialized, which may be referred to as TTI 0. The token bucket level of a logical channel may be referred to herein as T i, where i corresponds to the logical channel number-thus, the initial token bucket levels for Channel 0, Channel 1, and Channel 2 may be referred to as T 0, T 1, and T 2 respectively. Token bucket sizes may have units of a data size (e.g., number of bits or bytes) . The MAC layer may initialize the token bucket level of a logical channel to zero when the logical channel is first initialized. Thus, as shown in FIG. 2, the MAC layer may initialize T 0, T 1, and T 2 each to zero (0) .
A higher layer of the UE 115, such as an RRC layer, may signal several parameters to the MAC layer regarding the three logical channels. For example, the higher layer may signal initial priority values for each logical channel. Thus, in the example of mapping 200, the higher layer may signal an initial priority value of 0 for Channel 0, an initial priority value of 1 for Channel 1, and an initial priority value of 2 for Channel 2. The initial priority value of a logical channel may be referred to herein as P i. An increasing priority value may corresponding to a decreasing priority level. Thus, Channel 0 may be the highest priority channel, and Channel 2 may be the lowest priority channel, at least as signaled by the higher layer.
The higher layer may also signal to the MAC layer a prioritized bit rate (PBR) and a bucket size duration (BSD) for each channel. The PBR of a logical channel may correspond to a target bit rate for the logical channel and thus may relate to a QoS for the logical channel. The BSD may be in the units of a time duration.
The MAC layer may cap the token bucket level of a logical channel at a bucket size 205 based at least in part on the PBR and BSD of the logical channel. For example, the MAC layer may determine a bucket size 205 for each logical channel as the PBR of the logical channel multiplied by the BSD of the logical channel. Thus, a bucket size 205 may have units of a data size (e.g., number of bits or bytes) , and in the example of mapping 200, Channel 0 may have a bucket size 205-a that equals PBR 0 multiplied by BSD 0Channel 1 may have a bucket size 205-b that equals PBR 1 multiplied by BSD 1, and Channel 2 may have a bucket size 205-c that equals PBR 2 multiplied by BSD 2.
The MAC layer may also determine a token bucket increment factor 210 for each logical channel. For example, the MAC layer may determine the token bucket increment factor 210 of a logical channel as the PBR of the logical channel multiplied by the duration of a TTI. Thus, a token bucket increment factor 210 may have units of a data size (e.g., number of bits or bytes) , and in the example of mapping 200, Channel 0 may have a token bucket increment factor 210-a that equals PBR 0 multiplied by the duration of a TTI, Channel 1 may have a token bucket increment factor 210-b that equals PBR 1 multiplied by the duration of a TTI, and Channel 2 may have a token bucket increment factor 210-c that equals PBR 2 multiplied by the duration of a TTI.
In some cases, for each TTI that a logical channel is established, the MAC layer may increment the token bucket level of the logical channel by the token bucket increment  factor 210, up to the bucket size 205 of the logical channel. Also, the MAC layer may at least sometimes decrement the token bucket level of the logical channel by the amount of any data associated with the logical channel that was mapped to a MAC PDU 215 in a prior TTI. For example, the MAC layer may decrement the token bucket level of the logical channel by the amount of any data associated with the logical channel that was mapped to a MAC PDU 215 in a prior TTI, but only if the logical channel had a non-negative token bucket level during the prior TTI (indicating that, at least as of the prior TTI, the logical channel was under-granted) .
For each TTI that a logical channel is established, the MAC layer may determine an updated priority value of the logical channel based on the initial priority value and the token bucket level of the logical channel. For example, the MAC layer may determine whether the token bucket level of the logical channel is negative or non-negative. If the token bucket level of a logical channel is non-negative, the MAC layer may determine the updated priority value of the logical channel as equal to the initial priority value of the logical channel. If the token bucket level of a logical channel is negative, the MAC layer may determine the updated priority value of the logical channel as equal to the initial priority value of the logical channel plus a priority value increment factor, which may be referred to herein as PMAX. The MAC layer may determine PMAX as any number greater than the largest initial priority value of any established logical channel. Thus, in the example of mapping 200, in which the highest initial priority value is two (2) , the MAC layer may determine that PMAX is three (3) .
The MAC layer may therefore increment or decrement token bucket levels for logical channels as follows:
· During a first TTI that the logical channel is initialized, T i = 0
· Thereafter:
о If T i ≥ 0, then T i = (T i for the prior TTI) + (token bucket increment factor 210) - (data allocated in the prior TTI)
о If T i < 0, then T i = (T i for the prior TTI) + (token bucket increment factor 210)
о But T i can never exceed the bucket size 205 of the logical channel.
The MAC layer may also therefore determine updated priority values for logical channels, which may be referred to herein as PN i, as follows:
· If T i ≥ 0, then PN i = P i
· If Ti < 0, then PN i = P i + PMAX
As of TTI 0Channel 0 and Channel 1 may each have an amount of associated data that is less than their respective bucket sizes 205-a and 205-b, whereas Channel 2 may have an amount of associated data that is equal to its associated bucket size 205-c. Because each of T 0, T 1, and T 2 are non-negative (each has been initialized to zero (0) , the MAC layer may determine that each logical channel has an updated priority value equal to its initial priority value. Thus, in example of mapping 200, the MAC layer may determine that PN 0 = 0, PN 1 = 1, and PN 2 = 2.
The MAC layer may allocate data associated with the logical channels during TTI 0 to the corresponding MAC PDU 215-a in order of decreasing priority level (e.g., in order of increasing updated priority values) until either data available for the logical channels is exhausted or the MAC PDU 215-a is exhausted (e.g., full) . Thus, in the example of mapping 200, the MAC layer may allocate all available data for Channel 0 to the MAC PDU 215-a, then may allocate as much data for Channel 1 to the MAC PDU 215-a as the MAC PDU 215-a can accommodate. The MAC layer may thus allocate no data for Channel 2 during TTI 0. Thus, when the token bucket values for all logical channels are non-negative, the techniques described herein may allocate data to a MAC PDU in the same order as would have occurred based on the initial priority values of the logical channels.
FIG. 3 illustrates another example of a mapping 300 of logical channels to a MAC PDU in accordance with various aspects of the present disclosure. In some examples, mapping 300 may be implemented by aspects of wireless communication system 100, such as by a UE 115. The example of mapping 300 may correspond to a next TTI after TTI 0, which may be referred to as TTI 1.
Although all Channel 0 data available in TTI 0 was mapped to MAC PDU 215-a, new Channel 0 data may be available in TTI 1, as shown in FIG. 3. New Channel 1 data may also be available in TTI 1, as also shown in FIG. 3.
For Channel 0, the MAC layer may determine that T 0 was non-negative for TTI 0 and thus, for TTI 1, may increment T 0 by token bucket increment factor 210-a and decrement T 0 by the amount of Channel 0 data allocated in TTI 0. As shown by FIG. 2, the amount of Channel 0 data allocated in TTI 0 was greater than token bucket increment factor 210-a, and thus the MAC layer may determine that T 0 for TTI 1 is negative. Because T 0 for TTI 1 is  negative, the MAC layer may determine PN 0 for TTI 1 as P 0 + PMAX, and thus may determine PN 0 for TTI 1 as three (3) .
For Channel 1, the MAC layer may determine that T 1 was non-negative for TTI 0 and thus, for TTI 1, may increment T 1 by token bucket increment factor 210-b and decrement T 1 by the amount of Channel 1 data allocated in TTI 0. As shown by FIG. 2, the amount of Channel 1 data allocated in TTI 0 was greater than token bucket increment factor 210-b, and thus the MAC layer may determine that T 1 for TTI 1 is negative. Because T 1 for TTI 1 is negative, the MAC layer may determine PN 1 for TTI 1 as P 1 + PMAX, and thus may determine PN 1 for TTI 1 as four (4) .
For Channel 2, the MAC layer may determine that T 2 was non-negative for TTI 0. The MAC layer may also determine, however, that the amount of available data for Channel 2 is already at the corresponding bucket size 205, and thus may not increment T 2 by token bucket increment factor 210-c. Further, the MAC layer may determine that no Channel 2 data was allocated in TTI 0, and thus may maintain T 2 at zero (0) . Because T 2 for TTI 1 is therefore non-negative, the MAC layer may determine PN 2 for TTI 1 as P 2, and thus may determine PN 2 for TTI 1 as two (2) .
The MAC layer may allocate data associated with the logical channels during TTI 1 to the corresponding MAC PDU 215-b in order of decreasing priority level (e.g., in order of increasing updated priority values) until either data available for the logical channels is exhausted or the MAC PDU 215-b is exhausted (e.g., full) . Thus, in the example of mapping 300, the MAC layer may allocate all available data for Channel 2 to the MAC PDU 215-b, then allocate as much data for Channel 0 to the MAC PDU 215-b as the MAC PDU 215-b can accommodate. The MAC layer may thus allocate no data for Channel 1 during TTI 1.
Thus, if some logical channels have negative token bucket levels, those logical channels may have updated priority values that are higher (and thus may reflect lower priority levels) than the updated priority values of any logical channel having a non-negative token bucket level. For example, in the example of mapping 200, although Channel 0 and Channel 1 may both have a higher initial priority value than Channel 2, data for Channel 2 may be prioritized over data for Channel 0 and Channel 1 during TTI 1, as both Channel 0 and Channel 1 may have been over-granted relative to their respective target bit rate metric (e.g., their respective PBR values) during TTI 0. Accordingly, by using the techniques described  herein, the MAC layer may achieve target bit rates and related QoS metrics over time, while allocating data for logical channels to MAC PDUs using only a single allocation cycle (or pass) .
FIG. 4 illustrates an example of a mapping 400 of logical channels to a MAC PDU in accordance with various aspects of the present disclosure. In some examples, mapping 400 may be implemented by aspects of wireless communication system 100, such as by a UE 115. The example of mapping 400 may correspond to a next TTI after TTI 1, which may be referred to as TTI 2.
Although all Channel 2 data available in TTI 1 was mapped to MAC PDU 215-b, new Channel 2 data may be available in TTI 2, as shown in FIG. 4. New Channel 0 data may also be available in TTI 2, and the amount of available Channel 1 data in TTI 2 may be unchanged from TTI 1, as also shown in FIG. 4.
For Channel 0, the MAC layer may determine that T 0 was negative for TTI 1 and thus, for TTI 2, may increment T 0 by token bucket increment factor 210-a and may forego any decrementing of T 0. Thus, for TTI 2, the MAC layer may determine that T 0 is positive. (Whether a token bucket value becomes positive or remains negative may depend on the specific data amounts involved-e.g., in some scenarios, a logical channel may have become severely over-granted, and thus a token bucket value may remain positive even if incremented by the token bucket increment factor 210. ) Because T 0 for TTI 2 is non-negative, the MAC layer may determine PN 0 for TTI 1 as P 0, and thus may determine PN 0 for TTI 1 as zero (0) . Thus, according to the techniques described herein, the token bucket level of an over-granted logical channel may at some later time recover to a non-negative value, and the updated priority value of the over-granted logical channel may recover to the corresponding initial priority value.
For Channel 1, the MAC layer may determine that T 1 was negative for TTI 0 and thus, for TTI 2, may increment T 1 by token bucket increment factor 210-b and may forego any decrementing of T 1. Thus, for TTI 2, the MAC layer may determine that T 1 is positive. Because T 1 for TTI 2 is non-negative, the MAC layer may determine PN 1 for TTI 2 as P 1, and thus may determine PN 1 for TTI 2 as one (1) .
For Channel 2, the MAC layer may determine that T 2 was non-negative for TTI 0, and thus, for TTI 2, may increment T 2 by token bucket increment factor 210-c and decrement T 2 by the amount of Channel 2 data allocated in TTI 1. As shown by FIG. 3, the amount of  Channel 2 data allocated in TTI 1 was greater than token bucket increment factor 210-c, and thus the MAC layer may determine that T 2 for TTI 2 is negative. Because T 2 for TTI 2 is negative, the MAC layer may determine PN 2 for TTI 2 as P 2 + PMAX, and thus may determine PN 2 for TTI 2 as five (5) .
The MAC layer may allocate data associated with the logical channels during TTI 2 to the corresponding MAC PDU 215-c in order of decreasing priority level (e.g., in order of increasing updated priority values) until either data available for the logical channels is exhausted or the MAC PDU 215-c is exhausted (e.g., full) . Thus, in the example of mapping 400, the MAC layer may allocate all available data for Channel 0 to the MAC PDU 215-c, then allocate all available data for Channel 1 to the MAC PDU 215-c, then allocate as much Channel 2 data to the MAC PDU 215-c as the MAC PDU 215-c can accommodate.
FIG. 5 illustrates an example of a mapping 500 of logical channels to a MAC PDU in accordance with various aspects of the present disclosure. In some examples, mapping 500 may be implemented by aspects of wireless communication system 100, such as by a UE 115. The example of mapping 500 may correspond to a next TTI after TTI 1, which may be referred to as TTI 3.
Although all Channel 0 data and Channel 1 available in TTI 2 was mapped to MAC PDU 215-c, new Channel 0 data and Channel 1 data may be available in TTI 2New Channel 2 data may also be available in TTI 2.
For Channel 0, the MAC layer may determine that T 0 was non-negative for TTI 2 and thus, for TTI 3, may increment T 0 by token bucket increment factor 210-a and decrement T 0 by the amount of Channel 0 data allocated in TTI 2. As shown by FIG. 4, the amount of Channel 0 data allocated in TTI 2 was greater than token bucket increment factor 210-a, and thus the MAC layer may determine that T 0 for TTI 3 is negative. (Whether a token bucket value remains positive or becomes negative may depend on the specific data amounts involved-e.g., in some scenarios, a logical channel may have become severely under-granted, and thus a token bucket value may remain positive even if the amount of data allocated in a prior TTI was greater than the token bucket increment factor 210. ) Because T 0 for TTI 3 is negative, the MAC layer may determine PN 0 for TTI 3 as P 0 + PMAX, and thus may determine PN 0 for TTI 3 as three (3) .
For Channel 1, the MAC layer may determine that T 1 was non-negative for TTI 2 and thus, for TTI 3, may increment T 1 by token bucket increment factor 210-b and decrement  T 1 by the amount of Channel 1 data allocated in TTI 2. As shown by FIG. 4, the amount of Channel 1 data allocated in TTI 2 was greater than token bucket increment factor 210-b, and thus the MAC layer may determine that T 1 for TTI 3 is negative. Because T 1 for TTI 3 is negative, the MAC layer may determine PN 1 for TTI 3 as P 1 + PMAX, and thus may determine PN 1 for TTI 3 as four (4) .
For Channel 2, the MAC layer may determine that T 2 was negative for TTI 2 and thus, for TTI 3, may increment T 2 by token bucket increment factor 210-c and may forego any decrementing of T 2. However, as shown by FIG. 4, the amount of Channel 2 data allocated in TTI 2 was less than token bucket increment factor 210-c, and thus the MAC layer may determine that T 2 remains negative for TTI 3. (Whether a token bucket value remains negative or becomes positive may depend on the specific data amounts involved-e.g., in some scenarios, a logical channel may have become severely over-granted, and thus a token bucket value may remain negative even if the amount of data allocated in a prior TTI was less than the token bucket increment factor 210. ) Because T 2 for TTI 3 is negative, the MAC layer may determine PN 2 for TTI 3 as P 2 + PMAX, and thus may determine PN 2 for TTI 2 as five (5) .
The MAC layer may allocate data associated with the logical channels during TTI 3 to the corresponding MAC PDU 215-d in order of decreasing priority level (e.g., in order of increasing updated priority values) until either data available for the logical channels is exhausted or the MAC PDU 215-d is exhausted (e.g., full) . Thus, in the example of mapping 500, the MAC layer may allocate all available data for Channel 0 to the MAC PDU 215-d, then allocate all available data for Channel 1 to the MAC PDU 215-d, then allocate as much Channel 2 data to the MAC PDU 215-d as the MAC PDU 215-d can accommodate. Thus, when the token bucket values for all logical channels are negative, the techniques described herein may allocate data to a MAC PDU in the same order as would have occurred based on the initial priority values of the logical channels.
The examples of mapping 200, mapping 300, mapping 400, mapping 500 are merely illustrative. For example, it is to be understood that MAC PDUs 215 may be of any size, may be generated for any number of TTIs (including non-consecutive TTIs) , that any number of logical channels may be established as of any TTI, that logical channels may be initialized, inactivated, and re-initialized as of any TTI, and that the initial priority value of a logical channel may vary from TTI to TTI.
FIG. 6 shows a block diagram 600 of a wireless device 605 that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure. Wireless device 605 may be an example of aspects of a user equipment (UE) 115 as described herein. Wireless device 605 may include receiver 610, communications manager 615, and transmitter 620. Wireless device 605 may also include a processor. Each of these components may be in communication with one another (e.g., via one or more buses) .
Receiver 610 may receive information such as packets, user data, or control information associated with various information channels (e.g., control channels, data channels, and information related to logical channel prioritization in a MAC layer, etc. ) . Information may be passed on to other components of the device. The receiver 610 may be an example of aspects of the transceiver 935 described with reference to FIG. 9. The receiver 610 may utilize a single antenna or a set of antennas.
Communications manager 615 may be an example of aspects of the communications manager 915 described with reference to FIG. 9.
Communications manager 615 and/or at least some of its various sub-components may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions of the communications manager 615 and/or at least some of its various sub-components may be executed by a general-purpose processor, a digital signal processor (DSP) , an application-specific integrated circuit (ASIC) , an field-programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described in the present disclosure. The communications manager 615 and/or at least some of its various sub-components may be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations by one or more physical devices. In some examples, communications manager 615 and/or at least some of its various sub-components may be a separate and distinct component in accordance with various aspects of the present disclosure. In other examples, communications manager 615 and/or at least some of its various sub-components may be combined with one or more other hardware components, including but not limited to an I/O component, a transceiver, a network server, another computing device, one or more other components described in the  present disclosure, or a combination thereof in accordance with various aspects of the present disclosure.
Communications manager 615 may identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels, determine a respective updated priority value for each of the one or more logical channels based on the respective initial priority value and the respective initial token bucket level, and allocate data associated with the one or more logical channels to a MAC PDU based on the respective updated priority values.
Transmitter 620 may transmit signals generated by other components of the device. In some examples, the transmitter 620 may be collocated with a receiver 610 in a transceiver module. For example, the transmitter 620 may be an example of aspects of the transceiver 935 described with reference to FIG. 9. The transmitter 620 may utilize a single antenna or a set of antennas.
FIG. 7 shows a block diagram 700 of a wireless device 705 that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure. Wireless device 705 may be an example of aspects of a wireless device 605 or a UE 115 as described with reference to FIG. 6. Wireless device 705 may include receiver 710, communications manager 715, and transmitter 720. Wireless device 705 may also include a processor. Each of these components may be in communication with one another (e.g., via one or more buses) .
Receiver 710 may receive information such as packets, user data, or control information associated with various information channels (e.g., control channels, data channels, and information related to logical channel prioritization in a MAC layer, etc. ) . Information may be passed on to other components of the device. The receiver 710 may be an example of aspects of the transceiver 935 described with reference to FIG. 9. The receiver 710 may utilize a single antenna or a set of antennas.
Communications manager 715 may be an example of aspects of the communications manager 915 described with reference to FIG. 9. Communications manager 715 may also include initialization component 725, updating component 730, and mapping component 735.
Initialization component 725 may identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels.
Updating component 730 may determine a respective updated priority value for each of the one or more logical channels based on the respective initial priority value and the respective initial token bucket level.
Mapping component 735 may allocate data associated with the one or more logical channels to a MAC PDU based on the respective updated priority values. In some cases, allocating data associated with the one or more logical channels to the MAC PDU based on the respective updated priority values includes allocating data associated with the one or more logical channels to the MAC PDU in order of decreasing priority level, as indicated by the respective updated priority values, until either data available for a logical channel or a capacity of the MAC PDU is exhausted.
Transmitter 720 may transmit signals generated by other components of the device. In some examples, the transmitter 720 may be collocated with a receiver 710 in a transceiver module. For example, the transmitter 720 may be an example of aspects of the transceiver 935 described with reference to FIG. 9. The transmitter 720 may utilize a single antenna or a set of antennas.
FIG. 8 shows a block diagram 800 of a communications manager 815 that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure. The communications manager 815 may be an example of aspects of a communications manager 615, a communications manager 715, or a communications manager 915 described with reference to FIGs. 6, 7, and 9. The communications manager 815 may include initialization component 820, updating component 825, mapping component 830, token bucket level manager 835, priority value manager 840, and logical channel manager 845. Each of these modules may communicate, directly or indirectly, with one another (e.g., via one or more buses) .
Initialization component 820 may identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels.
Updating component 825 may determine a respective updated priority value for each of the one or more logical channels based on the respective initial priority value and the respective initial token bucket level. In some cases, determining a respective updated priority  value based on the respective initial priority value and the respective initial token bucket level includes determining whether the respective initial token bucket level is negative or non-negative.
Mapping component 830 may allocate data associated with the one or more logical channels to a MAC PDU based on the respective updated priority values. In some cases, allocating data associated with the one or more logical channels to the MAC PDU based on the respective updated priority values includes allocating data associated with the one or more logical channels to the MAC PDU in order of decreasing priority level, as indicated by the respective updated priority values, until either data available for a logical channel or a capacity of the MAC PDU is exhausted.
Token bucket level manager 835 may determine that the respective initial token bucket level is negative for a logical channel if an observed bit rate metric for the logical channel exceeds a target bit rate metric for the logical channel, and may determine that the respective initial token bucket level is non-negative for a logical channel if an observed bit rate metric for the logical channel is equal to or less than a target bit rate metric for the logical channel. Token bucket level manager 835 may set the respective initial token bucket level for a logical channel to zero upon initialization of the logical channel. Token bucket level manager 835 may, for each TTI, increment the respective initial token bucket level for a logical channel by the product of a target bit rate metric for the logical channel and a TTI duration. Token bucket level manager 835 may decrement the respective initial token bucket level for a logical channel by an amount of data associated with the logical channel allocated to the MAC PDU, and decrement the respective initial token bucket level for a logical channel by an amount of data associated with the logical channel allocated to the MAC PDU only if the respective initial token bucket level is non-negative.
Priority value manager 840 may calculate the respective updated priority value as the respective initial priority value plus an increment factor if the respective initial token bucket level is negative, and may calculate the respective updated priority value as equal to the respective initial priority value if the respective initial token bucket level is non-negative. Priority value manager 840 may identify a maximum initial priority value, and identify the increment factor as equal to the maximum initial priority value. In some cases, a decreasing priority level corresponds to an increasing priority value.
Logical channel manager 845 may determine a maximum amount of data available for each of the one or more logical channels. In some cases, determining the maximum amount of data available for each of the one or more logical channels includes, for each of the one or more logical channels, determining the maximum amount of data available for a logical channel based on a target bit rate metric for the logical channel and a token bucket duration metric for the logical channel.
FIG. 9 shows a diagram of a system 900 including a device 905 that supports logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure. Device 905 may be an example of or include the components of wireless device 605, wireless device 705, or a UE 115 as described above, e.g., with reference to FIGs. 6 and 7.Device 905 may include components for bi-directional voice and data communications including components for transmitting and receiving communications, including communications manager 915, processor 920, memory 925, software 930, transceiver 935, antenna 940, and I/O controller 945. These components may be in electronic communication via one or more buses (e.g., bus 910) . Device 905 may communicate wirelessly with one or more base stations 105.
Processor 920 may include an intelligent hardware device, (e.g., a general-purpose processor, a DSP, a central processing unit (CPU) , a microcontroller, an ASIC, an FPGA, a programmable logic device, a discrete gate or transistor logic component, a discrete hardware component, or any combination thereof) . In some cases, processor 920 may be configured to operate a memory array using a memory controller. In other cases, a memory controller may be integrated into processor 920. Processor 920 may be configured to execute computer-readable instructions stored in a memory to perform various functions (e.g., functions or tasks supporting logical channel prioritization in a MAC layer) .
Memory 925 may include random access memory (RAM) and read only memory (ROM) . The memory 925 may store computer-readable, computer-executable software 930 including instructions that, when executed, cause the processor to perform various functions described herein. In some cases, the memory 925 may contain, among other things, a basic input/output system (BIOS) which may control basic hardware or software operation such as the interaction with peripheral components or devices.
Software 930 may include code to implement aspects of the present disclosure, including code to support logical channel prioritization in a MAC layer. Software 930 may be  stored in a non-transitory computer-readable medium such as system memory or other memory. In some cases, the software 930 may not be directly executable by the processor but may cause a computer (e.g., when compiled and executed) to perform functions described herein.
Transceiver 935 may communicate bi-directionally, via one or more antennas, wired, or wireless links as described above. For example, the transceiver 935 may represent a wireless transceiver and may communicate bi-directionally with another wireless transceiver. The transceiver 935 may also include a modem to modulate the packets and provide the modulated packets to the antennas for transmission, and to demodulate packets received from the antennas.
In some cases, the wireless device may include a single antenna 940. However, in some cases the device may have more than one antenna 940, which may be capable of concurrently transmitting or receiving multiple wireless transmissions.
I/O controller 945 may manage input and output signals for device 905. I/O controller 945 may also manage peripherals not integrated into device 905. In some cases, I/O controller 945 may represent a physical connection or port to an external peripheral. In some cases, I/O controller 945 may utilize an operating system such as
Figure PCTCN2018076960-appb-000001
Figure PCTCN2018076960-appb-000002
or another known operating system. In other cases, I/O controller 945 may represent or interact with a modem, a keyboard, a mouse, a touchscreen, or a similar device. In some cases, I/O controller 945 may be implemented as part of a processor. In some cases, a user may interact with device 905 via I/O controller 945 or via hardware components controlled by I/O controller 945.
FIG. 10 shows a flowchart illustrating a method 1000 for logical channel prioritization in a MAC layer in accordance with aspects of the present disclosure. The operations of method 1000 may be implemented by a UE 115 or its components as described herein. For example, the operations of method 1000 may be performed by a communications manager as described with reference to FIGs. 6 through 9. In some examples, a UE 115 may execute a set of codes to control the functional elements of the device to perform the functions described below. Additionally or alternatively, the UE 115 may perform aspects of the functions described below using special-purpose hardware.
At 1005 the UE 115 may identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels. The operations  of 1005 may be performed according to the methods described herein. In certain examples, aspects of the operations of 1005 may be performed by a initialization component as described with reference to FIGs. 6 through 9.
At 1010 the UE 115 may determine a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level. The operations of 1010 may be performed according to the methods described herein. In certain examples, aspects of the operations of 1010 may be performed by a updating component as described with reference to FIGs. 6 through 9.
At 1015 the UE 115 may allocate data associated with the one or more logical channels to a MAC PDU based at least in part on the respective updated priority values. The operations of 1015 may be performed according to the methods described herein. In certain examples, aspects of the operations of 1015 may be performed by a mapping component as described with reference to FIGs. 6 through 9.
It should be noted that the methods described above describe possible implementations, and that the operations and the steps may be rearranged or otherwise modified and that other implementations are possible. Further, aspects from two or more of the methods may be combined.
Techniques described herein may be used for various wireless communications systems such as code division multiple access (CDMA) , time division multiple access (TDMA) , frequency division multiple access (FDMA) , orthogonal frequency division multiple access (OFDMA) , single carrier frequency division multiple access (SC-FDMA) , and other systems. A CDMA system may implement a radio technology such as CDMA2000, Universal Terrestrial Radio Access (UTRA) , etc. CDMA2000 covers IS-2000, IS-95, and IS-856 standards. IS-2000 Releases may be commonly referred to as CDMA2000 1X, 1X, etc. IS-856 (TIA-856) is commonly referred to as CDMA2000 1xEV-DO, High Rate Packet Data (HRPD) , etc. UTRA includes Wideband CDMA (WCDMA) and other variants of CDMA. A TDMA system may implement a radio technology such as Global System for Mobile Communications (GSM) .
An OFDMA system may implement a radio technology such as Ultra Mobile Broadband (UMB) , Evolved UTRA (E-UTRA) , Institute of Electrical and Electronics Engineers (IEEE) 802.11 (Wi-Fi) , IEEE 802.16 (WiMAX) , IEEE 802.20, Flash-OFDM, etc.  UTRA and E-UTRA are part of Universal Mobile Telecommunications System (UMTS) . LTE, LTE-A, and LTE-A Pro are releases of UMTS that use E-UTRA. UTRA, E-UTRA, UMTS, LTE, LTE-A, LTE-A Pro, NR, and GSM are described in documents from the organization named “3rd Generation Partnership Project” (3GPP) . CDMA2000 and UMB are described in documents from an organization named “3rd Generation Partnership Project 2” (3GPP2) . The techniques described herein may be used for the systems and radio technologies mentioned above as well as other systems and radio technologies. While aspects of an LTE, LTE-A, LTE-A Pro, or NR system may be described for purposes of example, and LTE, LTE-A, LTE-A Pro, or NR terminology may be used in much of the description, the techniques described herein are applicable beyond LTE, LTE-A, LTE-A Pro, or NR applications.
A macro cell generally covers a relatively large geographic area (e.g., several kilometers in radius) and may allow unrestricted access by UEs 115 with service subscriptions with the network provider. A small cell may be associated with a lower-powered base station 105, as compared with a macro cell, and a small cell may operate in the same or different (e.g., licensed, unlicensed, etc. ) frequency bands as macro cells. Small cells may include pico cells, femto cells, and micro cells according to various examples. A pico cell, for example, may cover a small geographic area and may allow unrestricted access by UEs 115 with service subscriptions with the network provider. A femto cell may also cover a small geographic area (e.g., a home) and may provide restricted access by UEs 115 having an association with the femto cell (e.g., UEs 115 in a closed subscriber group (CSG) , UEs 115 for users in the home, and the like) . An eNB for a macro cell may be referred to as a macro eNB. An eNB for a small cell may be referred to as a small cell eNB, a pico eNB, a femto eNB, or a home eNB. An eNB may support one or multiple (e.g., two, three, four, and the like) cells, and may also support communications using one or multiple component carriers.
The wireless communications system 100 or systems described herein may support synchronous or asynchronous operation. For synchronous operation, the base stations 105 may have similar frame timing, and transmissions from different base stations 105 may be approximately aligned in time. For asynchronous operation, the base stations 105 may have different frame timing, and transmissions from different base stations 105 may not be aligned in time. The techniques described herein may be used for either synchronous or asynchronous operations.
Information and signals described herein may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
The various illustrative blocks and modules described in connection with the disclosure herein may be implemented or performed with a general-purpose processor, a digital signal processor (DSP) , an application-specific integrated circuit (ASIC) , a field-programmable gate array (FPGA) or other programmable logic device (PLD) , discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices (e.g., a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration) .
The functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Other examples and implementations are within the scope of the disclosure and appended claims. For example, due to the nature of software, functions described above can be implemented using software executed by a processor, hardware, firmware, hardwiring, or combinations of any of these. Features implementing functions may also be physically located at various positions, including being distributed such that portions of functions are implemented at different physical locations.
Computer-readable media includes both non-transitory computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A non-transitory storage medium may be any available medium that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, non-transitory computer-readable media may comprise random-access memory (RAM) , read-only memory (ROM) , electrically erasable programmable read only memory (EEPROM) , flash memory, compact disk (CD) ROM or other optical disk  storage, magnetic disk storage or other magnetic storage devices, or any other non-transitory medium that can be used to carry or store desired program code means in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL) , or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, include CD, laser disc, optical disc, digital versatile disc (DVD) , floppy disk and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above are also included within the scope of computer-readable media.
As used herein, including in the claims, “or” as used in a list of items (e.g., a list of items prefaced by a phrase such as “at least one of” or “one or more of” ) indicates an inclusive list such that, for example, a list of at least one of A, B, or C means A or B or C or AB or AC or BC or ABC (i.e., A and B and C) . Also, as used herein, the phrase “based on” shall not be construed as a reference to a closed set of conditions. For example, an exemplary step that is described as “based on condition A” may be based on both a condition A and a condition B without departing from the scope of the present disclosure. In other words, as used herein, the phrase “based on” shall be construed in the same manner as the phrase “based at least in part on. ”
In the appended figures, similar components or features may have the same reference label. Further, various components of the same type may be distinguished by following the reference label by a dash and a second label that distinguishes among the similar components. If just the first reference label is used in the specification, the description is applicable to any one of the similar components having the same first reference label irrespective of the second reference label, or other subsequent reference label.
The description set forth herein, in connection with the appended drawings, describes example configurations and does not represent all the examples that may be implemented or that are within the scope of the claims. The term “exemplary” used herein means “serving as an example, instance, or illustration, ” and not “preferred” or  “advantageous over other examples. ” The detailed description includes specific details for the purpose of providing an understanding of the described techniques. These techniques, however, may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form in order to avoid obscuring the concepts of the described examples.
The description herein is provided to enable a person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations without departing from the scope of the disclosure. Thus, the disclosure is not limited to the examples and designs described herein, but is to be accorded the broadest scope consistent with the principles and novel features disclosed herein.

Claims (16)

  1. A method for wireless communication, comprising:
    identifying a respective initial priority value and a respective initial token bucket level for each of one or more logical channels;
    determining a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level; and
    allocating data associated with the one or more logical channels to a medium access control (MAC) protocol data unit (PDU) based at least in part on the respective updated priority values.
  2. The method of claim 1, wherein allocating data associated with the one or more logical channels to the MAC PDU based at least in part on the respective updated priority values comprises:
    allocating data associated with the one or more logical channels to the MAC PDU in order of decreasing priority level, as indicated by the respective updated priority values, until either data available for a logical channel or a capacity of the MAC PDU is exhausted.
  3. The method of claim 1, wherein determining a respective updated priority value based at least in part on the respective initial priority value and the respective initial token bucket level comprises:
    determining whether the respective initial token bucket level is negative or non-negative;
    calculating the respective updated priority value as the respective initial priority value plus an increment factor if the respective initial token bucket level is negative; and
    calculating the respective updated priority value as equal to the respective initial priority value if the respective initial token bucket level is non-negative.
  4. The method of claim 3, further comprising:
    determining that the respective initial token bucket level is negative for a logical channel if an observed bit rate metric for the logical channel exceeds a target bit rate metric for the logical channel.
  5. The method of claim 3, further comprising:
    determining that the respective initial token bucket level is non-negative for a logical channel if an observed bit rate metric for the logical channel is equal to or less than a target bit rate metric for the logical channel.
  6. The method of claim 3, further comprising:
    identifying a maximum initial priority value; and 
    identifying the increment factor as equal to the maximum initial priority value.
  7. The method of claim 1, further comprising:
    setting the respective initial token bucket level for a logical channel to zero upon initialization of the logical channel.
  8. The method of claim 1, further comprising:
    for each transmission time interval (TTI) , incrementing the respective initial token bucket level for a logical channel by the product of a target bit rate metric for the logical channel and a TTI duration.
  9. The method of claim 1, further comprising:
    decrementing the respective initial token bucket level for a logical channel by an amount of data associated with the logical channel allocated to the MAC PDU.
  10. The method of claim 1, further comprising:
    decrementing the respective initial token bucket level for a logical channel by an amount of data associated with the logical channel allocated to the MAC PDU only if the respective initial token bucket level is non-negative.
  11. The method of claim 1, wherein a decreasing priority level corresponds to an increasing priority value.
  12. The method of claim 1, further comprising:
    determining a maximum amount of data available for each of the one or more logical channels.
  13. The method of claim 12, wherein determining the maximum amount of data available for each of the one or more logical channels comprises:
    for each of the one or more logical channels, determining the maximum amount of data available for a logical channel based at least in part on a target bit rate metric for the logical channel and a token bucket duration metric for the logical channel.
  14. An apparatus for wireless communication, comprising:
    means for identifying a respective initial priority value and a respective initial token bucket level for each of one or more logical channels;
    means for determining a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level; and
    means for allocating data associated with the one or more logical channels to a medium access control (MAC) protocol data unit (PDU) based at least in part on the respective updated priority values.
  15. An apparatus for wireless communication, comprising:
    a processor;
    memory in electronic communication with the processor; and
    instructions stored in the memory and executable by the processor to cause the apparatus to:
    identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels;
    determine a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level; and
    allocate data associated with the one or more logical channels to a medium access control (MAC) protocol data unit (PDU) based at least in part on the respective updated priority values.
  16. A non-transitory computer-readable medium storing code for wireless communication, the code comprising instructions executable by a processor to:
    identify a respective initial priority value and a respective initial token bucket level for each of one or more logical channels;
    determine a respective updated priority value for each of the one or more logical channels based at least in part on the respective initial priority value and the respective initial token bucket level; and
    allocate data associated with the one or more logical channels to a medium access control (MAC) protocol data unit (PDU) based at least in part on the respective updated priority values.
PCT/CN2018/076960 2018-02-22 2018-02-22 Logical channel prioritization in a medium access control layer WO2019161529A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/076960 WO2019161529A1 (en) 2018-02-22 2018-02-22 Logical channel prioritization in a medium access control layer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/076960 WO2019161529A1 (en) 2018-02-22 2018-02-22 Logical channel prioritization in a medium access control layer

Publications (1)

Publication Number Publication Date
WO2019161529A1 true WO2019161529A1 (en) 2019-08-29

Family

ID=67686604

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/076960 WO2019161529A1 (en) 2018-02-22 2018-02-22 Logical channel prioritization in a medium access control layer

Country Status (1)

Country Link
WO (1) WO2019161529A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113840305A (en) * 2020-06-24 2021-12-24 大唐移动通信设备有限公司 Data transmission method, parameter configuration method, terminal and network side equipment
GB2626318A (en) * 2023-01-17 2024-07-24 Nordic Semiconductor Asa Radio scheduling

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101827391A (en) * 2009-03-04 2010-09-08 中国移动通信集团公司 Method and device for allocating uplink resources and sending status reports
CN102123512A (en) * 2010-01-08 2011-07-13 捷讯研究有限公司 Method and apparatus for logical channel prioritization for uplink carrier aggregation
US20120120880A1 (en) * 2010-11-11 2012-05-17 Qualcomm Incorporated Scheduling of logical channels in a wireless communication system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101827391A (en) * 2009-03-04 2010-09-08 中国移动通信集团公司 Method and device for allocating uplink resources and sending status reports
CN102123512A (en) * 2010-01-08 2011-07-13 捷讯研究有限公司 Method and apparatus for logical channel prioritization for uplink carrier aggregation
US20120120880A1 (en) * 2010-11-11 2012-05-17 Qualcomm Incorporated Scheduling of logical channels in a wireless communication system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Evolved Universal Terrestrial Radio Access(E-UTRA); Medium Access Control(MAC)Protocol specification(Release 8", 3GPP . '' TS 36.321 TECHNICAL SPECIFICATION GROUP RADIO ACCESS NETWORK, V8.7.0, 22 September 2009 (2009-09-22), XP050377623 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113840305A (en) * 2020-06-24 2021-12-24 大唐移动通信设备有限公司 Data transmission method, parameter configuration method, terminal and network side equipment
CN113840305B (en) * 2020-06-24 2024-06-07 大唐移动通信设备有限公司 Data transmission method, parameter configuration method, terminal and network equipment
GB2626318A (en) * 2023-01-17 2024-07-24 Nordic Semiconductor Asa Radio scheduling

Similar Documents

Publication Publication Date Title
AU2019217447B2 (en) Collision avoidance for scheduling requests and uplink control information
AU2019215201B2 (en) Modulation table determination and channel quality indicator reporting for short transmission time intervals
US11050523B2 (en) Techniques to interpret control information based on a repetition factor
EP3811697A1 (en) Paging configuration in beamformed wireless communications
US10993215B2 (en) SPDCCH reuse indication constraint under DMRS sharing
US11063733B2 (en) Duplexing modes based on power configurations for transmissions
EP3970436B1 (en) Mixed capability signaling
US11864200B2 (en) Control channel mapping within search space for wireless systems
EP3718243B1 (en) Slot format indicator in frequency division duplexing
US11395179B2 (en) Channel quality reporting using random access messages
US20200100226A1 (en) Uplink preemption indication
US20200146068A1 (en) Indexing of random access occasions for channel state information reference signal based random access procedures
CN113678543A (en) Signaling of higher modulation order baseband capability
US11096178B2 (en) User equipment capability signaling for concurrent channel transmissions
WO2021127835A1 (en) Determining whether an uplink switching gap is to be applied between changes in radio frequency status of a user equipment
US11166274B2 (en) User equipment-specific hybrid automatic repeat request timeline offset
WO2019161529A1 (en) Logical channel prioritization in a medium access control layer
WO2020227006A1 (en) Determining transmission configurations for resource block groups and precoding resource block groups
WO2021146293A1 (en) Reference modulation and coding scheme table in sidelink signaling
WO2019161524A1 (en) Avoiding call drop in limited uplink or downlink-centric scenarios

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18907251

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18907251

Country of ref document: EP

Kind code of ref document: A1