Patent Description:
Resource allocation in cellular systems may ensure proper use of valuable radio resources to maximize the cell throughput, capacity and user throughput and fairness. For example, as shown <FIG>, a server, i.e., a resource allocator, serves each user equipment (UE) request as the UE requests arrive with the available resources until either all the resources are exhausted, or there are no more UE requests. A request may be associated with each radio bearer (RB), either signaling or data bearer, initiated by the UE on uplink (UL) or downlink (DL). A request may also be associated with a broadcast message set up on the network on the DL.

Arrangements to more efficiently allocate resources are needed.

Document <CIT> discloses a communication system in a cellular network that comprises: a processing system comprising a controller and remote units, with the remote units being configured to communicate with the controller and to communicate with mobile devices within a communication cell of the cellular network. At least part of the processing system is configured to perform operations comprising: estimating signal strength experienced by all or some of the mobile devices; identifying, based at least on the signal strength, one or more of the mobile devices that can be scheduled for communication with one or more of the remote units in the communication cell on a same airlink resource; and scheduling the communication.

Document <CIT> discloses a technique that includes determining, by the ultra-low latency user device, a decoder matrix; receiving, by the ultra-low latency user device, control information indicating that a scheduled transmission of an ultra-low latency data block to the ultra-low latency user device is co-scheduled with a transmission of a mobile broadband data block to a mobile broadband user device via a set of shared physical resource blocks using multi-user multiple-input, multiple-output (MU-MIMO); and projecting, by the ultra-low latency user device, the decoder matrix of the ultra-low latency user device to be substantially orthogonal with a reference spatial subspace in which a precoder matrix for the mobile broadband user device is aligned with the reference spatial subspace, to reduce interference at the ultra-low latency user device caused by the transmission of the enhanced mobile broadband data block, when receiving the ultra-low latency data block.

Document <CIT> discloses a method for transmitting and receiving an uplink demodulation reference signal (DMRS) in a wireless communication system, and an apparatus therefore. Particularly, a method by which a terminal transmits a DMRS in a wireless communication system comprises the steps of: receiving, from a base station, downlink control information (DCI) for physical uplink shared channel (PUSCH) scheduling; generating a DMRS sequence for the PUSCH; and mapping the DMRS sequence to a physical resource, wherein the DMRS sequence can be mapped with the spacing of a predetermined resource element (RE) within the symbol to which the DMRS sequence is mapped.

Document <CIT> discloses a method of wireless transmission between a base station (gNB) and a group of UEs. The base station transmits a group Downlink Control Information (DCI) message to the group of UEs on a downlink control channel (PDCCH). The group DCI message comprises a group DCI indicating at least a first UE in the group and a second UE in the group which are scheduled to receive a transmission of data on a downlink data channel. The base station (gNB) transmits a first data transmission to the first UE and a second data transmission to the second UE in accordance with the group DCI on the downlink data channel. The first data transmission and the second data transmission are spatially multiplexed.

Some embodiments advantageously provide a method and system for more efficient resource allocation in cellular systems.

According to the present disclosure, a method, a network node and a computer-readable medium according to the independent claims are provided. Developments are set forth in the dependent claims.

According to one aspect of the present disclosure, according to claim <NUM>, a method implemented in a network node is provided. The method includes selecting an available resource in a transmission time interval, TTI; determining at least one set of dedicated radio bearer, DRBs, that can be co-scheduled in the selected resource; and allocating the selected resource to at least a subset of the determined at least one set of DRBs.

In some embodiments of this aspect, allocating the selected resource to the at least the subset of the at least one set of DRBs includes selecting a highest priority DRB having data to transmit in the TTI; and allocating at least a first part of the selected resource to the highest priority DRB. In some embodiments of this aspect, allocating the selected resource to the at least the subset of the at least one set of DRBs includes selecting a highest priority DRB having data to transmit in the TTI; determining at least one set of dedicated radio bearer, DRBs, that can be co-scheduled
with the highest priority DRB; partitioning the resource among the highest priority DRB and at least one DRB of the at least one set of DRBs that can be co-scheduled with the highest priority DRB; and allocating at least a first part of the selected resource to the highest priority DRB.

In some embodiments of this aspect, the partitioning the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs includes dividing an available transmit power for the resource among the highest priority DRB and the at least one DRB of the set of DRBs. In some embodiments of this aspect, the partitioning the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs includes dividing at least one of time, frequency and power reserved for the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs.

In some embodiments of this aspect, the dividing the available transmit power for the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs includes computing a total number of transmission layers scheduled on the selected resource; and allocating equal transmit power per each transmission layer that is scheduled to be transmitted over the resource. In some embodiments of this aspect, the dividing the available transmit power for the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs includes computing a total number of transmission layers scheduled on the selected resource; and computing a transmit power share per each transmission layer that is scheduled to be transmitted over the resource according to the transmission layer's user priority.

In some embodiments of this aspect, determining the at least one set of DRBs that can be co-scheduled in the selected resource includes determining the at least one set of DRBs that can be co-scheduled with the highest priority DRB in the TTI; and allocating the selected resource to the at least the subset of the at least one set of DRBs includes allocating at least a second part of the selected resource to at least one DRB in the at least the subset of DRBs that can be co-scheduled with the highest priority DRB in the TTI. In some embodiments of this aspect, selecting the highest priority DRB having data to transmit in the TTI includes sorting a plurality of DRBs that have data in a buffer for the TTI in a queue of DRBs according to a priority order; and selecting the highest priority DRB in the queue.

In some embodiments of this aspect, selecting the available resource in the TTI includes selecting the available resource in the TTI for allocation to the highest priority DRB. In some embodiments of this aspect, selecting the available resource in the TTI for the highest priority DRB includes identifying an available resource having a highest channel quality out of a plurality of available resources for allocation to the highest priority DRB. In some embodiments of this aspect, determining the at least one set of DRBs that can be co-scheduled with the highest priority DRB in the TTI includes identifying a plurality of DRBs having data to transmit in the TTI; and evaluating a sum utility metric among the identified plurality of DRBs and the highest priority DRB.

In some embodiments of this aspect, allocating the selected resource to the at least the subset of the at least one set of DRBs and the highest priority DRB includes selecting the at least the subset of the at least one set of DRBs based on a maximum sum utility; and allocating the selected resource to all DRBs in the selected at least the subset and the highest priority DRB. In some embodiments of this aspect, determining the at least one set of dedicated radio bearer, DRBs, that can be co-scheduled in the selected resource further includes grouping a plurality of DRBs that have data in a buffer for the TTI into multi-user multiple-input multiple-output, MU-MIMO, groups based at least in part on a spatial separation of user equipments, UEs, associated with each DRB of the plurality of DRBs.

In some embodiments of this aspect, the method further includes if the allocation of the selected highest priority DRB is fulfilled in the TTI, selecting a next highest priority DRB having data to transmit in the TTI; and allocating at least a third part of the selected resource to the next highest priority DRB. In some embodiments of this aspect, the method further includes as a result of selecting the next highest priority DRB, determining a set of DRBs that can be co-scheduled with the next highest priority DRB in the TTI; and allocating the at least the third part of the selected resource to the next highest priority DRB and at least a subset of the determined set of DRBs that can be co-scheduled with the next highest priority DRB in the TTI. In some embodiments of this aspect, the method further includes discontinuing allocating the selected resource to the at least one set of DRBs that can be co-scheduled with the highest priority DRB that is fulfilled in the TTI.

According to another aspect of the present disclosure, according to independent claim <NUM>, a network node including processing circuitry is provided. The processing circuitry is configured to select an available resource in a transmission time interval, TTI; determine at least one set of dedicated radio bearer, DRBs, that can be co-scheduled in the selected resource; and allocate the selected resource to at least a subset of the determined at least one set of DRBs.

In some embodiments of this aspect, the processing circuitry is configured to allocate the selected resource to the at least the subset of the at least one set of DRBs by being configured to select a highest priority DRB having data to transmit in the TTI; and allocate at least a first part of the selected resource to the highest priority DRB. In some embodiments of this aspect, the processing circuitry is configured to allocate the selected resource to the at least the subset of the at least one set of DRBs by being configured to select a highest priority DRB having data to transmit in the TTI; determine at least one set of dedicated radio bearer, DRBs, that can be co-scheduled with the highest priority DRB; partition the resource among the highest priority DRB and at least one DRB of the at least one set of DRBs that can be co-scheduled with the highest priority DRB; and allocate at least a first part of the selected resource to the highest priority DRB.

In some embodiments of this aspect, the processing circuitry is configured to partition the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs by being configured to divide an available transmit power for the resource among the highest priority DRB and the at least one DRB of the set of DRBs. In some embodiments of this aspect, the processing circuitry is configured to partition the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs by being configured to divide at least one of time, frequency and power reserved for the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs. In some embodiments of this aspect, the processing circuitry is configured to divide the available transmit power for the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs by being configured to compute a total number of transmission layers scheduled on the selected resource; and allocate equal transmit power per each transmission layer that is scheduled to be transmitted over the resource.

In some embodiments of this aspect, the processing circuitry is configured to divide the available transmit power for the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs by being configured to compute a total number of transmission layers scheduled on the selected resource; and compute a transmit power share per each transmission layer that is scheduled to be transmitted over the resource according to the transmission layer's user priority. In some embodiments of this aspect, the processing circuitry is configured to determine the at least one set of DRBs that can be co-scheduled in the selected resource by being configured to determine the at least one set of DRBs that can be co-scheduled with the highest priority DRB in the TTI; and allocate the selected resource to the at least the subset of the at least one set of DRBs by being configured to allocate at least a second part of the selected resource to at least one DRB in the at least the subset of DRBs that can be co-scheduled with the highest priority DRB in the TTI.

In some embodiments of this aspect, the processing circuitry is configured to select the highest priority DRB having data to transmit in the TTI by being configured to sort a plurality of DRBs that have data in a buffer for the TTI in a queue of DRBs according to a priority order; and select the highest priority DRB in the queue. In some embodiments of this aspect, the processing circuitry is configured to select the available resource in the TTI by being configured to select the available resource in the TTI for allocation to the highest priority DRB. In some embodiments of this aspect, the processing circuitry is configured to select the available resource in the TTI for the highest priority DRB by being configured to identify an available resource having a highest channel quality out of a plurality of available resources for allocation to the highest priority DRB.

In some embodiments of this aspect, the processing circuitry is configured to determine the at least one set of DRBs that can be co-scheduled with the highest priority DRB in the TTI by being configured to identify a plurality of DRBs having data to transmit in the TTI; and evaluate a sum utility metric among the identified plurality of DRBs and the highest priority DRB. In some embodiments of this aspect, the processing circuitry is configured to allocate the selected resource to the at least the subset of the at least one set of DRBs and the highest priority DRB by being configured to select the at least the subset of the at least one set of DRBs based on a maximum sum utility; and allocate the selected resource to all DRBs in the selected at least the subset and the highest priority DRB.

In some embodiments of this aspect, the processing circuitry is configured to determine the at least one set of dedicated radio bearer, DRBs, that can be co-scheduled in the selected resource by being further configured to group a plurality of DRBs that have data in a buffer for the TTI into multi-user multiple-input multiple-output, MU-MIMO, groups based at least in part on a spatial separation of user equipments, UEs, associated with each DRB of the plurality of DRBs. In some embodiments of this aspect, the processing circuitry is further configured to if the allocation of the selected highest priority DRB is fulfilled in the TTI, select a next highest priority DRB having data to transmit in the TTI; and allocate at least a third part of the selected resource to the next highest priority DRB.

In some embodiments of this aspect, the processing circuitry is further configured to as a result of selecting the next highest priority DRB, determine a set of DRBs that can be co-scheduled with the next highest priority DRB in the TTI; and allocate the at least the third part of the selected resource to the next highest priority DRB and at least a subset of the determined set of DRBs that can be co-scheduled with the next highest priority DRB in the TTI. In some embodiments of this aspect, the processing circuitry is further configured to discontinue allocating the selected resource to the at least one set of DRBs that can be co-scheduled with the highest priority DRB that is fulfilled in the TTI.

In the case of multi-user (MU)-MIMO, multiple user/service requests may be allocated to the same resource. The server/resource allocator depicted in <FIG>, allocates resources to each UE request until each request is fulfilled. However, for a MU-MIMO resource allocator to be efficient in utilizing the available resources, the server should know a priori whether a resource can be shared with, or reused for another request, so that e.g., part of the resource may be reserved for the requests waiting in the queue.

Some embodiment propose methods of resource allocation in which UE requests are allocated to available resources (as opposed to resources allocated to UE requests. Some embodiments may advantageously enable proper sharing of resources, available transmit power, etc. among the UE requests, as described in more detail herein below.

Before describing in detail example embodiments, it is noted that the embodiments reside primarily in combinations of apparatus components and processing steps related to resource allocation. Accordingly, components have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the embodiments so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.

The term "network node" used herein can be any kind of network node comprised in a radio network which may further comprise any of base station (BS), radio base station, base transceiver station (BTS), base station controller (BSC), radio network controller (RNC), g Node B (gNB), evolved Node B (eNB or eNodeB), Node B, multi-standard radio (MSR) radio node such as MSR BS, multi-cell/multicast coordination entity (MCE), integrated access and backhaul (IAB) node, relay node, donor node controlling relay, radio access point (AP), transmission points, transmission nodes, Remote Radio Unit (RRU), Remote Radio Head (RRH), baseband unit (BBU), a core network node (e.g., mobile management entity (MME), self-organizing network (SON) node, a coordinating node, positioning node, MDT node, etc.), an external node (e.g., 3rd party node, a node external to the current network), nodes in distributed antenna system (DAS), a spectrum access system (SAS) node, an element management system (EMS), etc. The network node may also comprise test equipment. The term "radio node" used herein may be used to also denote a user equipment (UE) such as a wireless device (WD) or a radio network node.

The UE herein can be any type of wireless device capable of communicating with a network node or another UE over radio signals, such as wireless device (WD). The UE may also be a radio communication device, target device, device to device (D2D) UE, machine type UE or UE capable of machine to machine communication (M2M), low-cost and/or low-complexity UE, a sensor equipped with UE, Tablet, mobile terminals, smart phone, laptop embedded equipped (LEE), laptop mounted equipment (LME), USB dongles, Customer Premises Equipment (CPE), an Internet of Things (IoT) device, or a Narrowband IoT (NB-IOT) device, etc..

In some embodiments, the term "allocation" may be considered to refer to one or more UEs being allocated one or more resources for a transmission, such as, for example, allocating a radio resource for one or more dedicated radio bearers (DRBs). In some embodiments, a network node may allocate resources by scheduling a UE and, for example, configuring the UE with the allocated resources via e.g., radio resource control (RRC) signaling in a higher layer and/or by signaling an indication of the allocated resources in a physical layer via e.g., a grant in downlink control information (DCI).

In some embodiments, the term "radio resource" is intended to indicate a frequency resource and/or a time resource. The time resource may correspond to any type of physical resource or radio resource expressed in terms of length of time. Examples of time resources are: symbol, time slot, subframe, radio frame, transmission time interval (TTI), interleaving time, etc. The frequency resource may correspond to one or more resource elements, subcarriers, resource blocks, bandwidth part and/or any other resources in the frequency domain. The radio resource may also indicate a combination of subcarriers, time slots, codes and/or spatial dimensions.

Even though the descriptions herein may be explained in the context of one of a Downlink (DL) and an Uplink (UL) communication, it should be understood that the basic principles disclosed may also be applicable to the other of the one of the DL and the UL communication. For DL communication, the network node is the transmitter and the receiver is the UE. For the UL communication, the transmitter is the UE and the receiver is the network node.

Although some of the examples herein may be explained in the context of one or more UEs being allocated radio resources in e.g., MU-MIMO, it should be understood that the principles may also be applicable to other types of radio communication.

In some embodiments, the allocated resource/radio resource may be allocated to UE requests and/or radio bearers. Signaling may generally comprise one or more symbols and/or signals and/or messages. A signal may comprise or represent one or more bits. An indication may represent signaling, and/or be implemented as a signal, or as a plurality of signals. One or more signals may be included in and/or represented by a message. Signaling, in particular control signaling, may comprise a plurality of signals and/or messages, which may be transmitted on different carriers and/or be associated to different signaling processes, e.g. representing and/or pertaining to one or more such processes and/or corresponding information. An indication may comprise signaling, and/or a plurality of signals and/or messages and/or may be comprised therein, which may be transmitted on different carriers and/or be associated to different acknowledgement signaling processes, e.g. representing and/or pertaining to one or more such processes. Signaling associated to a channel may be transmitted such that represents signaling and/or information for that channel, and/or that the signaling is interpreted by the transmitter and/or receiver to belong to that channel. Such signaling may generally comply with transmission parameters and/or format/s for the channel.

Transmitting in downlink may pertain to transmission from the network or network node to the terminal. The terminal may be considered the WD or UE. Transmitting in uplink may pertain to transmission from the terminal to the network or network node. Transmitting in sidelink may pertain to (direct) transmission from one terminal to another. Uplink, downlink and sidelink (e.g., sidelink transmission and reception) may be considered communication directions. In some variants, uplink and downlink may also be used to described wireless communication between network nodes, e.g. for wireless backhaul and/or relay communication and/or (wireless) network communication for example between base stations or similar network nodes, in particular communication terminating at such. It may be considered that backhaul and/or relay communication and/or network communication is implemented as a form of sidelink or uplink communication or similar thereto.

Note further, that functions described herein as being performed by a user equipment or a network node may be distributed over a plurality of user equipments and/or network nodes. In other words, it is contemplated that the functions of the network node and user equipment described herein are not limited to performance by a single physical device and, in fact, can be distributed among several physical devices.

Some embodiments provide arrangements for resource allocation in cellular systems.

Referring again to the drawing figures, in which like elements are referred to by like reference numerals, there is shown in <FIG> a schematic diagram of a communication system <NUM>, according to an embodiment, such as a 3GPP-type cellular network that may support standards such as LTE and/or NR (<NUM>), which comprises an access network <NUM>, such as a radio access network, and a core network <NUM>. The access network <NUM> comprises a plurality of network nodes 16a, 16b, 16c (referred to collectively as network nodes <NUM>), such as NBs, eNBs, gNBs or other types of wireless access points, each defining a corresponding coverage area 18a, 18b, 18c (referred to collectively as coverage areas <NUM>). Each network node 16a, 16b, 16c is connectable to the core network <NUM> over a wired or wireless connection <NUM>. A first user equipment (UE) 22a located in coverage area 18a is configured to wirelessly connect to, or be paged by, the corresponding network node 16a. A second UE 22b in coverage area 18b is wirelessly connectable to the corresponding network node 16b. While a plurality of UEs 22a, 22b (collectively referred to as user equipments <NUM>) are illustrated in this example, the disclosed embodiments are equally applicable to a situation where a sole UE is in the coverage area or where a sole UE is connecting to the corresponding network node <NUM>. Note that although only two UEs <NUM> and three network nodes <NUM> are shown for convenience, the communication system may include many more UEs <NUM> and network nodes <NUM>.

Also, it is contemplated that a UE <NUM> can be in simultaneous communication and/or configured to separately communicate with more than one network node <NUM> and more than one type of network node <NUM>. For example, a UE <NUM> can have dual connectivity with a network node <NUM> that supports LTE and the same or a different network node <NUM> that supports NR. As an example, UE <NUM> can be in communication with an eNB for LTE/E-UTRAN and a gNB for NR/NG-RAN.

A network node <NUM> is configured to include a determination unit <NUM> which is configured to select an available resource in a transmission time interval, TTI; and determine at least one set of dedicated radio bearer, DRBs, that can be co-scheduled in the selected resource The network node <NUM> may further include an allocation unit <NUM> which is configured to allocate the selected resource to at least a subset of the determined at least one set of DRBs.

Example implementations, in accordance with an embodiment, of the UE <NUM> and network node <NUM> discussed in the preceding paragraphs will now be described with reference to <FIG>.

The communication system <NUM> further includes a network node <NUM> provided in a communication system <NUM> and includes hardware <NUM> enabling the network node <NUM> to communicate with the UE <NUM>. The hardware <NUM> may include a communication interface <NUM> for setting up and maintaining a wired or wireless connection with an interface of a different communication device of the communication system <NUM>, as well as a radio interface <NUM> for setting up and maintaining at least a wireless connection <NUM> with a UE <NUM> located in a coverage area <NUM> served by the network node <NUM>.

Thus, the network node <NUM> further has software <NUM> stored internally in, for example, memory <NUM>, or stored in external memory (e.g., database, storage array, network storage device, etc.) accessible by the network node <NUM> via an external connection. The processing circuitry <NUM> may be configured to control any of the methods and/or processes described herein and/or to cause such methods, and/or processes to be performed, e.g., by network node <NUM>. Processor <NUM> corresponds to one or more processors <NUM> for performing network node <NUM> functions described herein. The memory <NUM> is configured to store data, programmatic software code and/or other information described herein. In some embodiments, the software <NUM> may include instructions that, when executed by the processor <NUM> and/or processing circuitry <NUM>, causes the processor <NUM> and/or processing circuitry <NUM> to perform the processes described herein with respect to network node <NUM>. For example, processing circuitry <NUM> of the network node <NUM> may include determination unit <NUM> and/or allocation unit <NUM> configured to perform network node methods discussed herein, such as the methods discussed with reference to <FIG> as well as other figures.

The UE <NUM> may have hardware <NUM> that may include a radio interface <NUM> configured to set up and maintain a wireless connection <NUM> with a network node <NUM> serving a coverage area <NUM> in which the UE <NUM> is currently located.

The hardware <NUM> of the UE <NUM> further includes processing circuitry <NUM>.

Thus, the UE <NUM> may further comprise software <NUM>, which is stored in, for example, memory <NUM> at the UE <NUM>, or stored in external memory (e.g., database, storage array, network storage device, etc.) accessible by the UE <NUM>. The client application <NUM> may be operable to provide a service to a human or non-human user via the UE <NUM>.

The processing circuitry <NUM> may be configured to control any of the methods and/or processes described herein and/or to cause such methods, and/or processes to be performed, e.g., by UE <NUM>. The processor <NUM> corresponds to one or more processors <NUM> for performing UE <NUM> functions described herein. The UE <NUM> includes memory <NUM> that is configured to store data, programmatic software code and/or other information described herein. In some embodiments, the software <NUM> and/or the client application <NUM> may include instructions that, when executed by the processor <NUM> and/or processing circuitry <NUM>, causes the processor <NUM> and/or processing circuitry <NUM> to perform the processes described herein with respect to UE <NUM>. For example, the processing circuitry <NUM> of the user equipment <NUM> may be configured to use resources and/or receive and/or transmit on radio resources (e.g., physical layer resources, such as, on one or more MU-MIMO layers, etc.) that are allocated to the UE <NUM> using one or more of the techniques disclosed herein.

In some embodiments, the inner workings of the network node <NUM> and UE <NUM>, may be as shown in <FIG> and independently, the surrounding network topology may be that of <FIG>.

Although <FIG> and <FIG> show various "units" such as determination unit <NUM> and allocation unit <NUM> as being within a processor, it is contemplated that these units may be implemented such that a portion of the unit is stored in a corresponding memory within the processing circuitry. In other words, the units may be implemented in hardware or in a combination of hardware and software within the processing circuitry.

In addition, although <FIG> and <FIG> show both determination unit <NUM> and allocation unit <NUM> as being with the network node <NUM>, it is contemplated that the network node <NUM> may include only one of these units.

<FIG> is a flowchart of an example process in a network node <NUM> for allocating resources using a dynamic decision threshold according to some embodiments of the present disclosure. One or more Blocks and/or functions and/or methods performed by the network node <NUM> may be performed by one or more elements of network node <NUM> such as by determination unit <NUM> and/or allocation unit <NUM> in processing circuitry <NUM>, processor <NUM>, communication interface <NUM>, radio interface <NUM>, etc. according to the example method. The example method includes selecting (Block S <NUM>), such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, an available resource in a transmission time interval, TTI. The method includes determining (Block S <NUM>), such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, at least one set of dedicated radio bearer, DRBs, that can be co-scheduled in the selected resource. The method includes allocating (Block S104), such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, the selected resource to at least a subset of the determined at least one set of DRBs.

In some embodiments, allocating the selected resource to the at least the subset of the at least one set of DRBs comprises selecting, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, a highest priority DRB having data to transmit in the TTI; and allocating, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, at least a first part of the selected resource to the highest priority DRB.

In some embodiments, allocating the selected resource to the at least the subset of the at least one set of DRBs includes selecting, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, a highest priority DRB having data to transmit in the TTI; determining, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, at least one set of dedicated radio bearer, DRBs, that can be co-scheduled with the highest priority DRB; partitioning, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, the resource among the highest priority DRB and at least one DRB of the at least one set of DRBs that can be co-scheduled with the highest priority DRB; and allocating, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, at least a first part of the selected resource to the highest priority DRB.

In some embodiments, the partitioning the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs comprises dividing, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, an available transmit power for the resource among the highest priority DRB and the at least one DRB of the set of DRBs. In some embodiments, the partitioning the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs comprises dividing, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, at least one of time, frequency and power reserved for the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs.

In some embodiments, the dividing the available transmit power for the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs comprises computing, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, a total number of transmission layers scheduled on the selected resource; and allocating, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, equal transmit power per each transmission layer that is scheduled to be transmitted over the resource.

In some embodiments, the dividing the available transmit power for the resource among the highest priority DRB and the at least one DRB of the at least one set of DRBs comprises computing, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, a total number of transmission layers scheduled on the selected resource; and computing, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, a transmit power share per each transmission layer that is scheduled to be transmitted over the resource according to the transmission layer's user priority.

In some embodiments, determining the at least one set of DRBs that can be co-scheduled in the selected resource comprises determining, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, the at least one set of DRBs that can be co-scheduled with the highest priority DRB in the TTI; and allocating, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, the selected resource to the at least the subset of the at least one set of DRBs comprises allocating, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, at least a second part of the selected resource to at least one DRB in the at least the subset of DRBs that can be co-scheduled with the highest priority DRB in the TTI.

In some embodiments, selecting the highest priority DRB having data to transmit in the TTI comprises sorting, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, a plurality of DRBs that have data in a buffer for the TTI in a queue of DRBs according to a priority order; and selecting, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, the highest priority DRB in the queue. In some embodiments, selecting the available resource in the TTI comprises selecting, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, the available resource in the TTI for allocation to the highest priority DRB.

In some embodiments, selecting the available resource in the TTI for the highest priority DRB comprises identifying, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, an available resource having a highest channel quality out of a plurality of available resources for allocation to the highest priority DRB. In some embodiments, determining the at least one set of DRBs that can be co-scheduled with the highest priority DRB in the TTI comprises identifying, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, a plurality of DRBs having data to transmit in the TTI; and evaluating, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, a sum utility metric among the identified plurality of DRBs and the highest priority DRB.

In some embodiments, allocating the selected resource to the at least the subset of the at least one set of DRBs and the highest priority DRB comprises selecting, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, the at least the subset of the at least one set of DRBs based on a maximum sum utility; and allocating, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, the selected resource to all DRBs in the selected at least the subset and the highest priority DRB.

In some embodiments, determining the at least one set of dedicated radio bearer, DRBs, that can be co-scheduled in the selected resource further comprises grouping, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, a plurality of DRBs that have data in a buffer for the TTI into multi-user multiple-input multiple-output, MU-MIMO, groups based at least in part on a spatial separation of user equipments, UEs, associated with each DRB of the plurality of DRBs. In some embodiments, the method further includes if the allocation of the selected highest priority DRB is fulfilled in the TTI, selecting, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, a next highest priority DRB having data to transmit in the TTI; and allocating, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, at least a third part of the selected resource to the next highest priority DRB.

In some embodiments, the method further includes, as a result of selecting the next highest priority DRB, determining, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, a set of DRBs that can be co-scheduled with the next highest priority DRB in the TTI; and allocating, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, the at least the third part of the selected resource to the next highest priority DRB and at least a subset of the determined set of DRBs that can be co-scheduled with the next highest priority DRB in the TTI.

In some embodiments, the method further includes discontinuing, such as via determination unit <NUM> and/or allocation unit <NUM>, processing circuitry <NUM>, processor <NUM>, communication interface <NUM> and/or radio interface <NUM>, allocating the selected resource to the at least one set of DRBs that can be co-scheduled with the highest priority DRB that is fulfilled in the TTI.

Having described the general process flow of arrangements of the disclosure and having provided examples of hardware and software arrangements for implementing the processes and functions of the disclosure, the sections below provide details and examples of arrangements for resource allocation, which may be implemented by the network node <NUM> and/or user equipment <NUM>.

<FIG> and <FIG> summarize some embodiments of the proposed method of resource allocation. As shown in <FIG>, UE requests are allocated to available resources (as opposed to resources allocated to UE requests). This may enable proper sharing of resources, such as, transmit power, etc., among the UE requests. The example method includes, in step S106, selecting an available radio resource. In step S108, the method includes determining DRBs that need resources. If there are no DRBs in need of resources, the process may end. If there are DRBs in need of resources, the process includes, in step S110, selecting a set of DRBs that can be scheduled on the selected resource. In step S112, the method includes assigning the resource to the selected set of DRBs. In step S114, the method includes determining whether there are more resources available. If the answer is 'yes,' the process may return to step S106 and the process may repeat. If the answer is 'no,' the process may end.

<FIG> shows an example of the proposed mechanism, where UE request priorities are considered in allocating requests to resources. In step S116, the method includes identifying the highest priority DRB with data in the buffer from the queue. In step S118, the method includes selecting an available radio resource for the identified DRB. In step S120, the method includes selecting lower priority DRBs that can co-scheduled with the identified highest priority DRB on the selected radio resource. In step S122, the method includes determining a set of DRBs from the pairable DRBs, i.e., the selected lower priority DRBs. In step S124, the method includes allocating the resource to the highest priority DRB and the selected set of DRBs. In step S126, the method includes determining whether more resources are available. If there are no more resources available, the process may end. If there are more resources available, the process may proceed to step S127, and determine whether the highest priority DRB has data in the buffer after the allocation. If the highest priority DRB does not have data in the buffer after the allocation (i.e., the request is fulfilled), the process may return to step S116, where the next, highest priority DRB with data in the buffer is identified from the queue and the process may repeat. If there are more resources available and the highest priority DRB does have data in the buffer after the allocation (i.e., the request is not yet fulfilled), the process may proceed to step S118, where a next, available radio resource is selected and the process may repeat.

<FIG> is a schematic diagram depicting an example of a proposed resource allocation arrangement. According one embodiment of the proposed arrangement, the resources are served with the UE requests (e.g., DRBs), until all the resources are exhausted, or all the requests are fulfilled. As shown in the depicted example, the network node <NUM> (e.g., resource allocation server) identifies each available resource and determines the appropriate UE request(s) that can be served by the resource. In one embodiment, an appropriate UE request may be selected, for example, based on the UE request's priority in the queue. In the example, shown in <FIG>, the first two available resources (resources <NUM> and <NUM>) are allocated to the highest priority request (UE request <NUM>) to empty the UE's <NUM> buffer. The UE requests are organized in a queue, with UE request <NUM> being the highest priority request and UE request <NUM> being the lowest priority request currently in the queue. The next resource (resource <NUM>) is assigned to the second highest priority request (UE request <NUM>) and so on, until all the resources are exhausted, or all the UE requests are fulfilled. Based on the network node's <NUM> allocation decision, the resources allocated to a particular UE's <NUM> request may be provided to the UE <NUM> via control signaling, e.g., a physical downlink control channel (PDCCH). UE requests, that are not served in the current TTI may be prioritized during subsequent TTIs.

In some embodiments, when appropriate UEs <NUM> are selected for each available resource, the UE requests may be selected in their order of priority in the request queue. This may be performed to reduce control signaling overhead, e.g., the resources may be used such that the high priority UE requests are fulfilled and further control signaling may not be required in the subsequent TTIs to reallocate resources to the same UE requests.

Alternatively, in some embodiments, appropriate UEs <NUM> are selected for a given resource based on the UE's <NUM> channel quality on the resource.

<FIG> is a schematic diagram illustrating yet another embodiment of a resource allocation mechanism where each available resource is assigned to an appropriate set of UE requests. In the example, the resource is shared among different UE requests (e.g., DRBs) based on, for example, the UE request's priority in the queue and/or UE request's need. Alternatively, in some embodiments, each available resource is co-allocated/co-scheduled to an appropriate set of UE requests based on the UE's <NUM> channel quality for the resource.

In the example shown in <FIG>, for illustrative purposes, it may be assumed that the UE requests <NUM>, <NUM>, <NUM> and <NUM> can share resources. In some embodiments, whether the UE requests can share a resource or not may depend on the transmission channel conditions of the corresponding UEs <NUM> associated with the UE requests, for example, when the UEs <NUM> are sufficiently spatially separated and/or their respective channels are mutually orthogonal. Resources <NUM>, <NUM> and <NUM> are shared among UE requests <NUM>, <NUM>, <NUM> and <NUM> until the UE request <NUM> (i.e., highest priority request in the queue) fulfilled its request. After the allocation of resource <NUM>, UE <NUM> request <NUM> is fulfilled and does not have a resource-share in resources <NUM> and <NUM>. Instead, UE request <NUM> shares the resources (resources <NUM> and <NUM>) with UE requests <NUM> and <NUM> (e.g., since UE request <NUM> is already fulfilled in the resource <NUM> allocation). Based on the network node's <NUM> allocation decision, the resources allocated to a particular UE's <NUM> UE request may be informed to the UE <NUM> via e.g., PDCCH signaling (e.g., scheduling DCI).

In some embodiments, to avoid or at least reduce PDCCH capacity problems and fulfilling user fairness, UE requests may be processed by the network node <NUM> based on the priority of the UE requests. In some embodiments, the priority of a radio bearer (RB), for example, may be computed from the RB's current channel/ service quality or historical channel/service quality or both. The UE requests for a current TTI may be ordered according to the priority weights computed by the network node <NUM>.

<FIG> shows a flowchart representing one example resource allocation arrangement, which may be performed by the network node <NUM>, according to an embodiment of the present disclosure. As shown in <FIG>, in step S128, a next highest priority UE request with data in the buffer, waiting in the queue may be selected as the "primary request" being served by the available resource. In step S130, an available resource may be determined. The available resources may be served in sequence. The order of the resources being served may be based on e.g., the channel quality of the "primary request". The first resource selected may be evaluated further for other potential UE requests that may share the resource with the "primary request". For example, in step S132, the network node <NUM> may select UE requests that can share the resource with the highest priority request in the queue. The selection of co-scheduled UE requests may be determined by the network node <NUM> based on, for example, the scheduled throughput on the selected resource. Alternatively, or additionally, in some embodiments, the selection of co-scheduled UE requests may be determined by the network node <NUM> based on e.g., maximizing a sum-utility on the selected resource. In one example, the utility may be defined as a ratio of expected user throughput if a resource is allocated to the user and average user throughput measured up until the time of evaluation. The expected throughput can be computed at the network using the channel state reported by the user or channel state measured the network node during the uplink reception from the user. In computing the ratio, the numerator and denominator may be modified by different parameters, α and β, (<NUM> ≤ α, β ≤ <NUM>), as shown below. Utility function, for example, to evaluate the allocation decision of resource n can be expressed as follows. <MAT> average throughput(u, n - <NUM>) is the average user throughput of user-u measured up until the allocation of a previous resource allocation.

The expected user throughput(u, n, U) is the expected user throughput of user -u if the user were allocated resource-n, when the resource is shared among the user set U. The resource can be shared among the users in user set-U in many ways. The resource may be shared by splitting the transmit power allotted for the resource. In other examples, a resource can be shared by splitting the subcarriers, or OFDM symbols. In step S134, each of the selected UE requests may be evaluated by e.g., in step S136, computing the fraction of the requests that can be fulfilled with the shared resource. Steps S134 and S136 may be performed for each of the selected UE requests that can share the resource with the highest priority request. The selected UE requests may be co-allocated/co-scheduled on the selected resource and further evaluated for the fulfillment of the selected UE requests.

For example, in step S138, the network node <NUM> may determine whether there are any fulfilled UE requests among the co-scheduled requests. If the answer to step S138 is 'no' (i.e., no requests are fulfilled), the process returns to step S130, where a next available resource is identified to fulfill the UE requests. If the answer to step S138 is 'yes (i.e., if there are one or more fulfilled requests), the network node <NUM> may determine whether the highest priority request is fulfilled in step S140. If the answer to step S140 is 'no' (i.e., the highest priority request is not yet fulfilled), the process proceeds to step S142, where the fulfilled UE request(s) may be removed from the queue for subsequent allocations and the process returns to step S130, where a next available resource is identified to continue to fulfill the selected UE requests. If the answer to step S140 is 'yes' (i.e., the highest priority request has been fulfilled), the process proceeds to step S144, where the network node <NUM> determines whether the request queue/priority queue is empty or the resource pool is empty. If the answer to step S144 is 'no' (i.e., if the resource pool is not empty and the request queue is not empty, meaning more resource allocation can be performed), the process returns to step S128, where the next highest priority UE request in the queue is selected as the "primary request" and the process repeats. If the answer to step S144 is 'yes' (i.e., there are no UE requests waiting in the queue or all the available resources are exhausted), then the process may stop.

<FIG> and <FIG> illustrate details of some embodiments of the present disclosure with an example, where <NUM> UEs <NUM> with varying channel qualities are competing for <NUM> resources. Each UE <NUM> has a maximum of <NUM> radio bearers (RBs) in this example. In <FIG>, in the first step, step S146, the UE requests are organized into different MU groups (UE0, UE1, UE2 and UE5 are in MU GROUP <NUM> and UE3, UE4 and UE6 are in MU Group <NUM>). Some of the UEs <NUM> may not be grouped into any of the MU groups (UE7 and UE8 are not in any of the MU groups), which are scheduled alone on allocated resources. In step S148, resources are assigned, co-scheduling the UEs <NUM> in the MU groups according to the user request (DRB) priorities. <FIG> shows the priority queue in descending order, with UE8's scheduling request R0 (notated UE8, R0) being the highest priority UE request in the queue and UE6's scheduling request R0 (notated UE6, R0) being the lowest priority UE request in the queue. <FIG> is a schematic diagram illustrating an allocation resource strategy using the example scenario priority queue and grouping arrangement introduced in <FIG>.

As shown in <FIG>, the first three resources (labelled -<NUM>, -<NUM>, -<NUM>) are allocated to UE8 R0, i.e., request for radio bearer (RB) <NUM> of UE8, which is the highest priority RB and, as discussed above with reference to <FIG>, UE8 cannot share a resource with other UE requests in the queue. Thus, as shown in <FIG>, all of the available transmit power, P, is used by the single transmission layer for the UE8 R0 request.

When UE8 R0 is fulfilled, the next available resources, i.e., from the fourth resource onwards are allocated to the next highest priority request in the queue, UE0 R1 (see the <FIG> queue where the <NUM>nd highest priority is for the UE0 R1 request). In addition to the UE0 R1 request, the available resource may be shared with other co-schedulable UE requests. UE0 is in MU Group <NUM> along with UE1, UE2 and UE5. Thus, UE requests from UE1, UE2 and UE5 may be co-scheduled with UE0 R1. As depicted, although UE1 R0 and UE0 R0 are part of the same MU Group <NUM>, they are not co-scheduled since there are already UE requests from UE1 and UE0 being processed in the resource. When UE1 R1 is fulfilled after two resources have been scheduled, UE1 R0 is then considered for co-scheduling with the highest priority UE request, UE0 R1.

UE0 and UE5 can transmit two layers (as shown in <FIG>, resources <NUM>-<NUM> and <NUM>-<NUM> are illustrated as corresponding to two layers) based e.g., on the channel quality for UE0 and UE5. The available transmit power, P, for a resource is equally divided across all the transmission layers. For example, P/<NUM> indicates that the available transmit power is divided equally per each of the <NUM> transmission layers that is scheduled to be transmitted over the resource; while P/<NUM> indicates that the available transmit power is divided equally per each of the <NUM> transmission layers that is scheduled to be transmitted over the particular resource.

When the UE0 R1 request (<NUM>nd highest priority) is fulfilled, the next available resources are then allocated to the next highest priority UE request in the queue (<NUM>rd highest priority), which in this case is UE2 R0. Since UE2 is still part of the same MU Group <NUM>, the same UEs <NUM> (UE0, UE1, UE2 and UE5) can be co-scheduled on the available resources.

When the UE2 R0 request is fulfilled, the next available resources are then allocated to yet the next highest priority request in the queue (<NUM>th highest priority), which in this case is UE3 R1. In addition to the UE3 R1 request, the available resource may be shared with other co-schedulable UE requests. However, UE3 is in MU Group <NUM>, along with UE4 and UE6. Thus, UE requests from UE4 and UE6 may be co-scheduled with the UE3 R1 request, as shown in <FIG>.

UE1 R0 still had more data in the buffer, i.e., needed more resources when the primary request from UE2 R0 is fulfilled. However, the subsequent resources after the UE2 R0 is fulfilled cannot be allocated to UE1 R0, since the next highest priority radio bearer is UE3 R1, which is not part of UE1's MU group. Thus, the UE1 R0 request waits for the next scheduling or co-scheduling opportunity.

The allocation map is shown in <FIG> and assumes that all the pairable UE requests are always paired. However, although there are UE requests which can be paired, in some embodiments, only a subset of them may be paired. For example, if a resource is allocated to many UE requests expected to result in overall data rate and/or user fairness on the resource to degrade, the resource is allocated to only selected UE requests. As evident from <FIG>, allocating to more layers results in less transmit power per each individual layer, which may cause degraded signal-to-interference-plus-noise ratio (SINR) for each layer.

In some embodiments, the available transmit power per each resource may also be unequally distributed among the co-scheduled UE requests based on the UE request's need and/or priority.

One or more of the following abbreviations may be used in the present disclosure:.

Accordingly, all embodiments can be combined in any way and/or combination, and the present specification, including the drawings, shall be construed to constitute a complete written description of all combinations and subcombinations of the embodiments described herein, and of the manner and process of making and using them, and shall all fall within the scope of the appended claims.

Claim 1:
A method implemented in a network node (<NUM>), the method comprising:
selecting (S100) an available resource in a transmission time interval, TTI;
determining (S102) at least one set of dedicated radio bearer, DRBs, that can be co-scheduled in the selected resource, comprising:
determining the at least one set of DRBs that can be co-scheduled with the highest priority DRB in the TTI; and
allocating (S104) the selected resource to at least a subset of the determined at least one set of DRBs, comprising:
selecting a highest priority DRB having data to transmit in the TTI;
determining at least one set of dedicated radio bearer, DRBs, that can be co-scheduled with the highest priority DRB;
partitioning the resource among the highest priority DRB and at least one DRB of the at least one set of DRBs that can be co-scheduled with the highest priority DRB;
allocating at least a first part of the selected resource to the highest priority DRB; and
allocating at least a second part of the selected resource to at least one DRB in the at least the subset of DRBs that can be co-scheduled with the highest priority DRB in the TTI.