Patent Description:
A communication system can be seen as a facility that enables communication between two or more devices such as user terminals, machine-like terminals, base stations and/or other nodes by providing carriers between the communication devices. A communication system can be provided for example by means of a communication network and one or more compatible communication devices. The communication may comprise, for example, communication of data for carrying communications such as voice, electronic mail (email), text message, multimedia and/or content data and so on. Non-limiting examples of services provided include two-way or multi-way calls, data communication or multimedia services and access to a data network system, such as the Internet.

In a wireless system at least a part of communications between at least two stations occurs over wireless interfaces. Examples of wireless systems include public land mobile networks (PLMN), satellite based communication systems and different wireless local networks, for example wireless local area networks (WLAN). A local area wireless networking technology allowing devices to connect to a data network is known by the tradename Wi-Fi (or Wi-Fi). Wi-Fi is often used synonymously with WLAN. The wireless systems can be divided into cells, and are therefore often referred to as cellular systems.

A user can access a communication system by means of an appropriate communication device or terminal. A communication device of a user is often referred to as user equipment (UE). A communication device is provided with an appropriate signal receiving and transmitting apparatus for enabling communications, for example enabling access to a communication network or communications directly with other users. The communication device may access a carrier provided by a station, for example a base station of a cell, and transmit and/or receive communications on the carrier.

A communication system and associated devices typically operate in accordance with a given standard or specification which sets out what the various entities associated with the system are permitted to do and how that should be achieved. Communication protocols and/or parameters which shall be used for the connection are also typically defined. An example of standardized communication system architectures is the long-term evolution (LTE) of the Universal Mobile Telecommunications System (UMTS) radio-access technology. The LTE has been and is being standardized by the 3rd Generation Partnership Project (3GPP). The LTE employs the Evolved Universal Terrestrial Radio Access Network (E-UTRAN) access. Further development of LTE are sometimes referred to as LTE Advanced (LTE-A). The current 3GPP standardization effort is directed to what is termed as the 5th Generation (<NUM>) system. The <NUM> system is sometimes referred to as NR (new radio).

<CIT> discloses a method and apparatus for transmitting an indicator in a wireless communication system. A user equipment (UE) transmits an indicator to a base station, using at least one of a buffer status report (BSR) media access control (MAC) control element (CE) and a power headroom report (PHR) MAC CE if uplink transmission is not available. The indicator may indicate that there is no data in a buffer of the UE regardless of a current buffer status, or that there is no power headroom regardless of current power headroom status. The indicator may be a new logical channel identifier (LCID) or a new field, which indicates that the UL transmission is not available, in the at least one of the BSR MAC CE and the PHR MAC CE.

Aspects or embodiments of the disclosure which do not fall under the scope of the claims are not included in the scope of invention.

There is provided, in a first aspect, a method comprising: determining that buffered data is available for transmission and cannot be transmitted over allocated resources; and causing information indicating that buffered data is available for transmission and cannot be transmitted over allocated resources to be transmitted over the allocated resources.

The information includes a buffer status report.

The buffered data is associated with a logical channel.

The determining is based on a logical channel prioritization function.

The logical channel prioritization function may be configured with at least one logical channel mapping restriction a type of allocated resources.

The determining may be based on a type of the allocated resources.

The determining may be performed by a MAC entity.

The determining may be based on processing limitations at the MAC entity.

The determining is based on processing limitations at an upper layer entity.

The upper layer entity may be an RLC entity.

The upper layer entity may be a PDCP entity.

The method may further comprise: causing a counter to be set.

The method may further comprise: causing the counter to be updated upon transmitting the information over the allocated resources.

The method may further comprise: causing a timer to be set.

The method may further comprise: causing the timer to be triggered upon transmitting the information over the allocated resources.

The determining may be based on power limitations.

The information may include at least one indication for the determining.

There is provided, in a first aspect, a method comprising: determining allocated resources to receive buffered data available for transmission; and causing information indicating that buffered data is available for transmission and cannot be transmitted over allocated resources to be received over the allocated resources.

The method may further comprise: causing at least one action to be taken based on the information.

The information includes at least one indication for determining that buffered data is available for transmission and cannot be transmitted over allocated resources.

The at least one indication indicates a logical channel prioritization function.

The at least one indication may indicate processing limitations.

The at least one indication may indicate power limitations.

The at least one action may include decreasing, maintaining or increasing the allocated resources.

The at least one action may include maintaining or changing a type of the allocated resources.

There is provided, in a third aspect, an apparatus comprising: means for determining that buffered data is available for transmission and cannot be transmitted over allocated resources; and means for causing information indicating that buffered data is available for transmission and cannot be transmitted over allocated resources to be transmitted over the allocated resources.

The means for determining are based on a logical channel prioritization function.

The means for determining may be based on a type of the allocated resources.

The means for determining may be performed by a MAC entity.

The means for determining may be based on processing limitations at the MAC entity.

The means for determining is based on processing limitations at an upper layer entity.

The apparatus may further comprise: means for causing a counter to be set.

The apparatus may further comprise: means for causing the counter to be updated upon transmitting the information over the allocated resources.

The apparatus may further comprise: means for causing a timer to be set.

The apparatus may further comprise: means for causing the timer to be triggered upon transmitting the information over the allocated resources.

The means for determining may be based on power limitations.

There is provided, in a fourth aspect, an apparatus comprising: means for determining allocated resources to receive buffered data available for transmission; and means for causing information indicating that buffered data is available for transmission and cannot be transmitted over allocated resources to be received over the allocated resources.

The apparatus may further comprise: means for causing at least one action to be taken based on the information.

There is provided, in a fifth aspect, an apparatus comprising at least one processor and at least one memory including a computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus at least to: determine that buffered data is available for transmission and cannot be transmitted over allocated resources; and cause information indicating that buffered data is available for transmission and cannot be transmitted over allocated resources to be transmitted over the allocated resources.

The at least one processor, may further cause the apparatus at least to: cause a counter to be set.

The at least one processor, may further cause the apparatus at least to: cause the counter to be updated upon transmitting the information over the allocated resources.

The at least one processor, may further cause the apparatus at least to: cause a timer to be set.

The at least one processor, may further cause the apparatus at least to: cause the timer to be triggered upon transmitting the information over the allocated resources.

There is provided, in a sixth aspect, an apparatus comprising at least one processor and at least one memory including a computer program code, the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus at least to: determine allocated resources to receive buffered data available for transmission; and cause information indicating that buffered data is available for transmission and cannot be transmitted over allocated resources to be received over the allocated resources.

The least one processor, may further cause the apparatus at least to: cause at least one action to be taken based on the information.

There is provided, in a seventh aspect, a computer program product for a computer, comprising software code portions for: determining that buffered data is available for transmission and cannot be transmitted over allocated resources; and causing information indicating that buffered data is available for transmission and cannot be transmitted over allocated resources to be transmitted over the allocated resources.

The computer program product for a computer, may further comprise software code portions for: causing a counter to be set.

The computer program product for a computer, may further comprise software code portions for: causing the counter to be updated upon transmitting the information over the allocated resources.

The computer program product for a computer, may further comprise software code portions for: causing a timer to be set.

The computer program product for a computer, may further comprise software code portions for: causing the timer to be triggered upon transmitting the information over the allocated resources.

There is provided, in an eight aspect, a computer program product for a computer, comprising software code portions for: determining allocated resources to receive buffered data available for transmission; and causing information indicating that buffered data is available for transmission and cannot be transmitted over allocated resources to be received over the allocated resources.

The computer program product for a computer, may further comprise software code portions for: causing at least one action to be taken based on the information.

There is provided, in a ninth aspect, computer program embodied on a non-transitory computer-readable storage medium, the computer program comprising program code for controlling a process to execute a process, the process comprising the steps of: determining that buffered data is available for transmission and cannot be transmitted over allocated resources; and causing information indicating that buffered data is available for transmission and cannot be transmitted over allocated resources to be transmitted over the allocated resources.

The process may further comprise the step of: causing a counter to be set.

The process may further comprise the step of: causing the counter to be updated upon transmitting the information over the allocated resources.

The process may further comprise the step of: causing a timer to be set.

The process may further comprise the step of: causing the timer to be triggered upon transmitting the information over the allocated resources.

There is provided, in an tenth aspect, computer program embodied on a non-transitory computer-readable storage medium, the computer program comprising program code for controlling a process to execute a process, the process comprising the steps of: determining allocated resources to receive buffered data available for transmission; and causing information indicating that buffered data is available for transmission and cannot be transmitted over allocated resources to be received over the allocated resources.

The process may further comprise the step of: causing at least one action to be taken based on the information.

Some embodiments will now be described in further detail, by way of example only, with reference to the following examples and accompanying drawings, in which:.

Before explaining in detail embodiments, certain general principles of a communication system, a mobile communication device and a control apparatus are briefly explained with reference to <FIG> and <FIG> to assist in understanding the technology underlying the described invention.

In a wireless communication system <NUM>, such as that shown in <FIG>, wireless communication devices, for example, user equipments <NUM>, <NUM>, <NUM> are provided wireless access via at least one base station or similar wireless transmitting and/or receiving wireless infrastructure node or point. Such a node can be, for example, a base station or an eNodeB (eNB), or in a <NUM> system a Next Generation NodeB (gNB), or other wireless infrastructure node. These nodes will be generally referred to as base stations. Base stations are typically controlled by at least one appropriate controller apparatus, so as to enable operation thereof and management of mobile communication devices in communication with the base stations. The controller apparatus may be located in a radio access network (e.g. wireless communication system <NUM>) or in a core network (CN) (not shown) and may be implemented as one central apparatus or its functionality may be distributed over several apparatus. The controller apparatus may be part of the base station and/or provided by a separate entity such as a Radio Network Controller. In <FIG> control apparatus <NUM> and <NUM> are shown to control the respective macro level base stations <NUM> and <NUM>. In some systems, the control apparatus may additionally or alternatively be provided in a radio network controller. Other examples of radio access system comprise those provided by base stations of systems that are based on technologies such as <NUM> or new radio, wireless local area network (WLAN) and/or WiMax (Worldwide Interoperability for Microwave Access). A base station can provide coverage for an entire cell or similar radio service area.

The smaller base stations <NUM>, <NUM> and <NUM> may also be connected to the network <NUM>, for example by a separate gateway function and/or via the controllers of the macro level stations. The base stations <NUM>, <NUM> and <NUM> may be pico or femto level base stations or the like. In the example, stations <NUM> and <NUM> are connected via a gateway <NUM> whilst station <NUM> connects via the controller apparatus <NUM>. In some embodiments, the smaller stations may not be provided.

A possible wireless communication device will now be described in more detail with reference to <FIG> showing a schematic, partially sectioned view of a communication device <NUM>. Such a communication device is often referred to as an endpoint device. An appropriate communication device may be provided by any device capable of sending and receiving radio signals.

A communication device may be for example a mobile device, that is, a device not fixed to a particular location, or it may be a stationary device. The communication device may need human interaction for communication, or may not need human interaction for communication.

The communication device <NUM> may receive signals over an air or radio interface <NUM> via appropriate apparatus for receiving and may transmit signals via appropriate apparatus for transmitting radio signals. In <FIG> transceiver apparatus is designated schematically by block <NUM>. The transceiver apparatus <NUM> may be provided for example by means of a radio part and associated antenna arrangement. The antenna arrangement may be arranged internally or externally to the wireless device.

A communication device is typically provided with at least one data processing entity <NUM>, at least one memory <NUM> and other possible components <NUM> for use in software and hardware aided execution of tasks it is designed to perform, including control of access to and communications with access systems and other communication devices. The data processing, storage and other relevant control apparatus can be provided on an appropriate circuit board and/or in chipsets. This feature is denoted by reference <NUM>. Furthermore, a wireless communication device may comprise appropriate connectors (either wired or wireless) to other devices and/or for connecting external accessories. The communication devices <NUM>, <NUM>, <NUM> may access the communication system based on various access techniques.

An example of wireless communication systems are architectures standardized by the 3rd Generation Partnership Project (3GPP). A latest 3GPP based development is often referred to as the long term evolution (LTE) of the Universal Mobile Telecommunications System (UMTS) radio-access technology. The various development stages of the 3GPP specifications are referred to as releases. More recent developments of the LTE are often referred to as LTE Advanced (LTE-A). The LTE employs a mobile architecture known as the Evolved Universal Terrestrial Radio Access Network (E-UTRAN). Base stations of such systems are known as evolved or enhanced NodeBs (eNBs) and provide E-UTRAN features such as user plane Packet Data Convergence/Radio Link Control/Medium Access Control/Physical layer protocol (PDCP/RLC/MAC/PHY) and control plane Radio Resource Control (RRC) protocol terminations towards the communication devices. Other examples of radio access system comprise those provided by base stations of systems that are based on technologies such as wireless local area network (WLAN) and/or WiMax (Worldwide Interoperability for Microwave Access). A base station can provide coverage for an entire cell or similar radio service area.

Another example of a communications system is the <NUM> concept. Network architecture in <NUM> may be quite similar to that of the LTE-advanced. Changes to the network architecture may depend on the need to support various radio technologies and finer QoS support, and some on-demand requirements for e.g. QoS levels to support QoE of user point of view. Also network aware services and applications, and service and application aware networks may bring changes to the architecture. Those are related to Information Centric Network (ICN) and User-Centric Content Delivery Network (UC-CDN) approaches. <NUM> may use multiple input - multiple output (MIMO) antennas, many more base stations or nodes than the LTE (a so-called small cell concept), including macro sites operating in co-operation with smaller stations and perhaps also employing a variety of radio technologies for better coverage and enhanced data rates.

The base stations in <NUM> may be referred to as gNB.

<FIG> illustrates the <NUM> NR Radio protocol stack (user plane). The protocol stack comprises a physical layer (PHY), a medium access layer (MAC), a radio link control layer (RLC), a radio resource control (RRC), Packet Data Convergence Control layer (PDCP) and a service data adaptation protocol layer (SDAP).

The functions of the SDAP include mapping between a quality of service (QoS) flow and a data radio bearer and marking QoS flow ID (QFI) in both DL and UL packets.

A single SDAP is configured for each individual PDU session, except for dual connectivity (DC) where two SDAP entities can be configured.

The functions of the PDCP sublayer include sequence numbering, header compression and decompression, transfer of user data, reordering and duplicate detection, PDCP packet data units (PDU) routing, retransmission of PDCP service data units (SDU), ciphering and deciphering, PDCP SDU discard, PDCP re-establishment and data recovery for RLC acknowledge mode (AM), duplication of PDCP PDUs.

The functions of the RLC layer depend on the transmission mode and include transfer of upper layer PDUs, sequence numbering independent of the one in PDCP, error correction through automatic repeat request (ARQ), segmentation and re-segmentation, reassembly of RL SDU, RLC SDU discard, RLC re-establishment.

The functions of the MAC layer include mapping between logical channels and transport channels, multiplexing/ demultiplexing of MAC SDUs belonging to one or different logical channels into/from transport blocks (TB) delivered to/from the physical layer on transport channels, scheduling information reporting, error correction through hybrid ARQ, (HARQ), priority handling between UEs by means of dynamic scheduling, priority handling between logical channels of one UE by means of logical channel prioritization, padding. A single MAC entity can support one or multiple numerologies and/or TTI durations and mapping restrictions in logical channel prioritization controls which numerology and/or TTI duration a logical channel can use.

The functions of the physical Layer includes carrying all information from transport channels over physical channels. It takes care of link adaptation (AMC), power control, cell search (for initial synchronization and handover purposes) and other measurements for the RRC layer.

Some embodiments relate to uplink grant skipping in <NUM> NR but it will be understood that they are equally applicable to other radio access technologies.

Uplink grant is the process by which a user equipment is allocated resources for uplink transmission over an uplink physical channel, for example the physical uplink shared channel (PUSCH). The uplink grant can be dynamic in which case it may be received from a gNB over a downlink physical channel, for example the physical downlink control channel (PDCCH). The uplink grant can also be semi persistent or persistent in which case it may be configured by a gNB via RRC signalling. It should be noted that a semi-persistent grant may also be adapted dynamically by the gNB in which case the grant may be changed over a downlink physical channel, for example the PDCCH.

Uplink grant skipping is the process by which the user equipment does not use the allocated resources for uplink transmission (i.e. skips the use of the allocated resources), typically because there is no buffered data associated with any logical channel (i.e. there is no available data for transmission). Uplink grant skipping can be configured for dynamic, semi persistent and/or persistent independently for LTE. Uplink grant skipping is always applied for semi-persistent and persistent when there is no buffered data associated with any logical channel, and is configurable for the dynamic grant.

RAN2#97bis: Uplink grant skipping for dynamic grant should be configurable. It will be determined if uplink grant skipping for semi persistent grant should be configurable.

RAN2#<NUM>: In <NUM> NR, when the user equipment is configured with semi persistent grant, the user equipment should always skip semi persistent grant if there is no data to transmit (i.e. skipping semi persistent grant is mandated in <NUM> NR regardless of semi persistent grant periodicity). Logical channel prioritization is performed the same regardless whether the grant is dynamic or semi persistent. The user equipment will always at least skip semi persistent grant whenever it has no data to transmit. Furthermore, whether the user equipment is allowed to skip a dynamic grant is up to network configuration.

RAN2-NR#AH: A single logical channel can be mapped to one or more numerology/TTI duration. Logical channel to numerology/TTI length mapping can be reconfigured via RRC reconfiguration. A single MAC entity can support one or more numerology/TTI durations. Logical channel prioritization takes into account the mapping of logical channel to one or more numerology/TTI duration.

RAN2-NR#AH2: At least numerology and TTI length are included/taken into account for restriction for logical channel prioritization. A user equipment can be configured with logical channel prioritization where data of certain logical channel is not allowed to be mapped to certain type of grant available for uplink.

In LTE, the uplink grant skipping has been specified in MAC specification/3GPP TS <NUM> as follows:
If the MAC PDU includes only the MAC CE for padding BSR or periodic BSR with zero MAC SDUs and there is no aperiodic CSI requested for this TTI [<NUM>], the MAC entity shall not generate a MAC PDU for the HARQ entity in the following cases:.

Whenever the condition holds in LTE, the padding BSR and periodic BSR would indicate a BS of zero for all logical channel groups. Hence, it makes sense to always skip the grant without MAC SDU.

A problem with uplink grant skipping for NR is that it is not only enforced when there is no buffered data associated with any logical channel. It can be enforced for other reasons, for example when the logical channel prioritization function prevents the transmission of buffered data associated with a logical channel on the allocated resources due to configured logical channel mapping restrictions.

A logical channel prioritization function is a function enforced in the MAC layer which prioritizes the transmission of a logical channel (e.g. URLLC) over the transmission of another logical channel (e.g. eMBB). Besides, logical channel mapping restrictions can be configured via RRC signalling such that allocated resources of a certain type (e.g. certain numerology or certain transmission duration) can only be mapped with certain logical channels (e.g. URLLC or eMBB).

For instance, the transmission of a logical channel conveying control plane data may be prioritized over the transmission of another logical channel conveying user plane data. In another example, the transmission of a logical channel conveying user plane data with more stringent latency requirement may be prioritized over the transmission of another logical channel. Further, these can be restricted to be mapped to allocated resources of certain type as explained above.

A problem is that a base station cannot infer whether uplink grant skipping is enforced because there is no buffered data associated with any logical channel or because the logical channel prioritization function prevents the transmission of buffered data associated with a logical channel due to the configured channel mapping restrictions. There may therefore be an ambiguity and the base station cannot take appropriate actions. For example, the base station may not decrease, maintain or increase the allocated resources appropriately. Likewise, the base station may not maintain or change the type of allocated resources appropriately.

Some embodiments may address this problem. These embodiments are described separately but it will be understood that they can be combined with one another.

<FIG> illustrates a diagram of a method performed by a user equipment according to a first embodiment. In step <NUM>, a user equipment obtains an uplink grant. As discussed above, the uplink grant may be dynamic in which case it may be received from a gNB over a downlink physical channel, for example the PDCCH. Alternatively, the uplink grant may be semi persistent or persistent in which case it may be configured via RRC signalling. The uplink grant indicates allocated resources to be used for uplink communication over an uplink physical channel, for example the PUSCH. It should be noted that a semi-persistent grant may also be adapted dynamically by the gNB in which case the grant may be changed over a downlink physical channel, for example the PDCCH.

In step <NUM>, the user equipment (e.g. a MAC entity), first determines whether there is buffered data associated with a logical channel. The user equipment then determines whether this buffered data can be transmitted over the allocated resources based on one or more of a logical channel prioritization function with configured logical channel mapping restrictions and a type of allocated resources.

As discussed above, there may be buffered data associated with a logical channel but the logical channel cannot be mapped to the allocated resources due to the configured logical channel mapping restrictions. In this event, the logical channel prioritization function prevents the transmission of buffered data associated with the logical channel on the allocated resources.

If the user equipment determines that there is buffered data associated with a logical channel and determines that this buffered data can be transmitted over the allocated resources, the method goes to step <NUM>.

In step <NUM>, the user equipment transmits the buffered data associated with the logical channel to the gNB over the allocated resources. For example, the MAC entity delivers at least one MAC PDU to a PHY entity. The at least one MAC PDU includes the buffered data associated with the logical channel and a buffer status report (BSR), if triggered, indicating a remaining amount of buffered data associated with the logical channel.

If the user equipment determines that there is buffered data associated with a logical channel and determines that this buffered data cannot be transmitted over the allocated resources, the method goes to step <NUM>.

In step <NUM>, the user equipment does not transmit the buffered data associated with the logical channel to the gNB over the allocated resources. However, it does not mean that the allocated resources are skipped. Rather, in step <NUM> the user equipment transmits a BSR to the gNB over the allocated resources. For example, the MAC entity delivers at least one MAC PDU to the PHY entity. The at least one MAC PDU includes the BSR indicating non-zero value for BS for at least one logical channel or logical channel group (LCG). The at least one MAC PDU does not include buffered data associated with a logical channel, that is the at least one MAC PDU includes zero MAC SDU.

Uplink grant skipping is enforced only when the MAC PDU includes only BSR with BS indicating zero value for all the LCGs and zero MAC SDU. In certain example, this enforcement may also require to take the BSR trigger into account, being for instance, padding or periodic BSR.

Example text for <NUM> could be as follow:
If the MAC PDU includes only the MAC CE for padding BSR or periodic BSR with BS indicating zero value for all LCGs with zero MAC SDUs, the MAC entity shall not generate a MAC PDU for the HARQ entity in the following cases:.

In optional step <NUM>, the user equipment may transmit an indication as to why buffered data associated with a logical channel cannot be transmitted over the allocated resources. For example, the MAC entity delivers at least one MAC PDU to the PHY entity. The at least one MAC PDU includes an indication that buffered data associated with the logical channel cannot be transmitted over the allocated resources because of the logical channel prioritization function with configured logical channel restrictions and the type of allocated resources.

In this way, the gNB receives information (i.e. the BSR and the indication) indicating that buffered data associated with a logical channel is available for transmission but cannot be transmitted due to the logical channel prioritization function with configured logical channel restrictions and the type of allocated resources. Hence, the gNB may take appropriate actions. For example, the gNB can decrease, maintain or increase the allocated resources. Likewise, the gNB can maintain or change the type of allocated resources.

It will be understood that the at least one MAC PDU of step <NUM> and the at least one MAC PDU of step <NUM> can be the same MAC PDU or different MAC PDUs.

<FIG> illustrates a diagram of a method performed by a user equipment according to a second embodiment. The second embodiment is the same as to the first embodiment shown on <FIG> except that step <NUM> is replaced or supplemented by step <NUM> and step <NUM> is replaced or supplemented by step <NUM>.

In step <NUM>, the user equipment determines whether buffered data associated with a logical channel can be transmitted based on processing limitations at the RLC entity or processing limitations at the PDCP entity. For instance, in a dual connectivity scenario, data from a data radio bearer may be served by two separate cell groups through two separate logical channels/RLC entities. The user equipment may have pre-processed/pre-submitted PDCP PDUs to one of the RLC entity/ logical channel while the uplink grant is received for another RLC entity/logical channel. The user equipment may not in this case be able to map the data to the allocated resources.

In optional step <NUM>, the user equipment may indicate that buffered data associated with a logical channel cannot be transmitted because of processing limitations at the RLC entity or the PDCP entity.

<FIG> illustrates a diagram of a method performed by a user equipment according to a third embodiment. The third embodiment is the same as the first embodiment shown on <FIG> except that step <NUM> is replaced or supplemented by step <NUM> and step <NUM> is replaced or supplemented by step <NUM>.

In step <NUM>, the user equipment determines whether buffered data associated with a logical channel can be transmitted based on processing limitations at the MAC entity.

In optional step <NUM>, the user equipment may indicate that buffered data associated with a logical channel cannot be transmitted because of processing limitations at the MAC entity.

<FIG> illustrates a diagram of a method performed by a user equipment according to a fourth embodiment. The fourth embodiment is the same as the first embodiment shown on <FIG> except that steps <NUM>, <NUM> and <NUM> are added.

In step <NUM>, the user equipment sets a counter (that may be configured by RRC). In an example, the purpose of the counter is to track the number of times buffered data cannot be transmitted over the allocated resources (i.e. the number of times the user equipment transmits a MAC PDU with zero MAC SDU and a BSR with non-zero BS value for any logical channel/LCG over the allocated resources). It will be understood that the counter can be a count up counter or a count down counter.

In step <NUM>, the user equipment compares the counter with a predetermined value (e.g. <NUM>). When the counter is different from (small or greater than) the predetermined value, the user equipment goes to steps <NUM> and <NUM>.

In steps <NUM> and <NUM>, if buffered data cannot be transmitted based on the logical channel prioritization function with configured logical channel mapping restrictions and the type of allocated resources, a MAC PDU with BSR with non-zero BS value and zero MAC SDU is transmitted over the allocated resources.

In step <NUM>, the counter is updated (i.e. incremented or decremented).

In step <NUM>, when the counter is equal to the predetermined value, the user equipment does not go to steps <NUM> and <NUM>. That is, the user equipment does not transmit a MAC PDU with BSR with non-zero BSR and zero MAC SDU. Instead, the user equipment skips the allocated resources.

Alternatively or in supplement, a counter may track the number of times the user equipment skips the allocated resources since the last transmission of a MAC PDU with BSR with non-zero BS value and zero MAC SDU over the allocated resources.

The user equipment may skip the allocated resources for a predetermined number of times (e.g. <NUM> allocated resources) when buffered data cannot be transmitted over the allocated resources (i.e. when no MAC SDU can be included in the MAC PDU). When the counter reaches the predetermined value the user equipment may be allowed to transmit again a MAC PDU with BSR with non-zero BS value and zero MAC SDU over the allocated resources if there is still no buffered data associated with a logical channel to be transmitted.

<FIG> illustrates a diagram of a method performed by a user equipment according to a fifth embodiment. The fifth embodiment is identical to the first embodiment shown on <FIG> except that steps <NUM>, <NUM> and <NUM> are added.

In step <NUM>, the user equipment sets a timer. The purpose of the timer is to track a maximum duration for skipping the allocated resources. It will be understood that the timer can be a count up timer or a count down timer.

In step <NUM>, the user equipment determines if the timer is running. When the timer is not running the user equipment goes to steps <NUM> and <NUM>.

In steps <NUM> and <NUM>, a MAC PDU with BSR with non-zero BS value and zero MAC SDU is transmitted.

In step <NUM>, the timer is started. The user equipment then skips the allocated resources as long as the timer is running (and as long as buffered data associated with a logical channel cannot be transmitted). In other words, the user equipment does not transmit a MAC PDU with non-zero BSR without MAC SDU as long as the timer is running (and as long as buffered data associated with a logical channel cannot be transmitted). When the timer expires and buffered data associated with a logical channel cannot be transmitted, the user equipment transmits a MAC PDU with non-zero BSR without MAC SDU, resets the timer and triggers the timer.

Equally, when the timer is running and buffered data associated with a logical channel can be transmitted, the user equipment stops skipping the allocated resources. The user equipment transmits a MAC PDU with non-zero MAC SDU and stops and resets the timer.

In step <NUM>, when the timer is running the user equipment does not go to steps <NUM> and <NUM>. The user equipment keep skipping the allocated resources.

<FIG> illustrates a diagram of a method performed by a user equipment according to a sixth embodiment. The sixth embodiment is the same to the first embodiment shown on <FIG> except that step <NUM> is replaced or supplemented by step <NUM> and step <NUM> is replaced or supplemented by step <NUM>.

In step <NUM>, the user equipment determines whether buffered data associated with a logical channel can be transmitted based on power limitations at the user equipment. For example, if the user equipment has low battery power or is in a power saving mode, the user equipment may determine that buffered data associated with a logical channel cannot be transmitted. By contrast, if the user equipment has high battery power or is not in a power saving mode, the user equipment may determine that buffered data associated with a logical channel can be transmitted.

In step <NUM>, the user equipment indicates that buffered data associated with a logical channel cannot be transmitted because of power limitations.

<FIG> illustrates a diagram of a method performed by a gNB according to the first, second, third, fourth, fifth and sixth embodiments. The method is complementary to the methods described above and therefore is not described in detail.

In step <NUM>, the gNB receives the buffer status report over the allocated resources (i.e. the buffer status transmitted by the user equipment in step <NUM>).

In step <NUM>, the gNB receives the indication as to why the UE has enforced uplink grant skipping (i.e. the indication is transmitted by the user equipment in step <NUM>, <NUM>, <NUM>, <NUM>, <NUM> and/or <NUM>). For example, the reason may be one or more of logical channel prioritization function with configured logical channel restrictions and a type of allocated resources, processing limitations at the MAC entity, processing limitations at the PDCP entity, processing limitations at the RLC entity and/ or power limitations).

It will be understood that in the event that more than one reason needs to be reported the user equipment could report all of them or only one of them, for example based on a priority order.

In step <NUM>, the gNB takes appropriate actions based on the buffer status report and/or the indication. For example, the gNB decreases, maintains or increases the allocated resources. Alternatively or in addition, the gNB maintains or changes the type of allocated resources.

<FIG> shows an example of a control apparatus <NUM> that may perform the method shown in <FIG>. The method may be implanted in a single control apparatus or across more than one control apparatus. The control apparatus may be integrated in a gNB. The control apparatus <NUM> can be arranged to provide control on communications in a service area of the system. The control apparatus <NUM> comprises at least one memory <NUM>, at least one data processing unit <NUM>, <NUM> and an input/output interface <NUM>. Via the interface the control apparatus <NUM> can be coupled to a receiver and a transmitter of the gNB. The receiver and/or the transmitter may be implemented as a radio front end or a remote radio head. For example the control apparatus <NUM> can be configured to execute an appropriate software code to provide the control functions.

Some embodiments may provide one or more advantages. In particular, they allow the gNB to avoid ambiguity about the user equipment buffer situation when both uplink grant skipping and the logical channel prioritization function are enforced. More generally, they allow the gNB to determine the reason why uplink grant skipping has been enforced and to take appropriate actions. They also allow the user equipment to save power if uplink grant skipping is enforced when it is "safe" (e.g. when with very high probability one of the buffer status reports has reached the gNB).

In general, the various embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. Some aspects of the invention may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although the invention is not limited thereto.

Computer software or program, also called program product, including software routines, applets and/or macros, may be stored in any apparatus-readable data storage medium and they comprise program instructions to perform particular tasks. A computer program product may comprise one or more computer-executable components which, when the program is run, are configured to carry out embodiments. The one or more computer-executable components may be at least one software code or portions of it.

Claim 1:
A method comprising:
determining (<NUM>), by a user equipment (<NUM>, <NUM>), that buffered data is available for transmission and cannot be transmitted over allocated resources, wherein the buffered data is associated with a logical channel, and wherein the determining is based on a logical channel prioritization function configured with at least one logical channel mapping restriction on a type of allocated resources that prevents the transmission of the buffered data over the allocated resources; and
in response to said determining that the buffered data is available for transmission and cannot be transmitted over the allocated resources, transmitting, over the allocated resources, a medium access control, MAC, protocol data unit, PDU, including zero MAC service data units and further including a buffer status report MAC control element indicating non-zero value for buffer status for at least one logical channel or logical channel group.