Method and apparatus for power control of a physical uplink shared channel of a cellular network

A power control algorithm adjusts UE transmit power to optimize SINR, addressing interference issues and improving network performance by minimizing interference and optimizing communication quality.

JP2026111551APending Publication Date: 2026-07-03NTT DOCOMO INC

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
NTT DOCOMO INC
Filing Date
2025-12-22
Publication Date
2026-07-03

AI Technical Summary

Technical Problem

Interference between user equipment (UEs) in cellular networks degrades system performance due to varying transmission powers, leading to suboptimal signal-to-interference-plus-noise ratios (SINR), which affects communication quality and efficiency.

Method used

A power control algorithm is implemented to iteratively adjust the transmit power of UEs to maintain an acceptable SINR, involving steps such as measuring RSRP, updating power allocations, and clustering UEs to minimize interference and optimize SINR across cells.

Benefits of technology

The algorithm effectively controls UE transmit power to achieve minimum target performance, enhancing overall network communication quality and efficiency by reducing interference among UEs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026111551000001_ABST
    Figure 2026111551000001_ABST
Patent Text Reader

Abstract

The present invention provides a method, apparatus, and non-temporary machine-readable medium for controlling the physical uplink shared channel (PUSCH) transmit power of a UE in order to improve the overall performance of uplink communication in a cellular network. [Solution] The base station 102 executes a power control algorithm over multiple iterations until the signal-to-interference-plus-noise ratio (SINR) falls within an acceptable level from the target SINR. Each iteration obtains the SINR associated with each UE106 in one or more cells, and if it determines that the SINR is above the target SINR, it reduces the transmit power of the UE106; if it determines that the SINR is below the target SINR, it increases the transmit power and updates the power allocation between the UE106s in each cell.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001]

[0002] This disclosure relates generally to wireless technology, and more specifically to technology for power control of a physical uplink shared channel (PUSCH).

[0002] [Related applications]

[0001] This application claims the benefit of U.S. Provisional Patent Application No. 63 / 738,137, filed on 23 December 2024, entitled “METHODS AND APPARATUS FOR PHYSICAL UPLINK SHARED CHANNEL POWER CONTROL IN CELLULAR NETWORK,” which is incorporated herein by reference in its entirety. [Background technology]

[0003]

[0003] A telecommunications network is a system that enables the exchange of information between entities or nodes through links. A cellular network is a type of telecommunications network in which the links between end nodes are wireless and the network is distributed over small geographical areas called cells, which are serviced by at least one fixed-location transceiver (such as a base station (BS)). The BS provides the cells with network coverage that can be used to transmit voice, data, and other types of content over radio waves. The coverage area of ​​each cell is determined by factors such as the transceiver's power, antenna parameters (antenna height, horizontal and vertical antenna beamwidth, antenna azimuth and tilt, available MIMO configurations, and capabilities, etc.), terrain, and the frequency band used. User equipment (UE) communicates with the network or cells through the BS. Interference between different UEs that span different BSs can degrade the overall system performance. For example, a UE may require higher transmission power from the UE to communicate with a BS, but this may cause more interference with other UEs. [Overview of the project]

[0004]

[0004] Processes, machines, and products for power control of a physical uplink shared channel (PUSCH) are described. In some embodiments, a method for wireless communication by a network for power control of a physical uplink shared channel (PUSCH) includes the step of running a power control algorithm over several iterations until the signal-to-interference-plus-noise ratio (SINR) falls within an acceptable level from a target SINR. In some embodiments, each iteration includes, for each cell in one or more sets of cells, obtaining the SINR associated with the user equipment (UE) in each cell, reducing the transmit power of the UE in each cell if it is determined that the SINR is above the target SINR, and increasing the transmit power if it is determined that the SINR is below the target SINR, and updating the power allocation between the UEs in each cell.

[0005]

[0005] Other processes, machines, and products are also described herein and may be combined in any number of ways, such as in brief schematic embodiments, without departing from the scope of this disclosure.

[0006]

[0006] This disclosure is not limited to but is illustrated by examples in the accompanying drawings. In the accompanying drawings, similar reference numerals indicate similar elements. To facilitate the identification of a particular element or operation, the most significant digit in the reference numeral refers to the figure number in which the element is first introduced. [Brief explanation of the drawing]

[0007] [Figure 1] This is a diagram illustrating an exemplary wireless communication system according to several embodiments. [Figure 2] This diagram shows a BS or base station (BS) communicating with a user equipment (UE) device, according to several embodiments. [Figure 3] This is an illustrative block diagram of a UE according to several embodiments. [Figure 4] These are exemplary block diagrams of gNB or BS according to several embodiments. [Figure 5] This is an exemplary block diagram of a cellular communication circuit according to several embodiments. [Figure 6] This is an illustrative diagram of several embodiments of an open radio access network (O-RAN) architecture. [Figure 7] This diagram schematically illustrates the process of push power control according to several embodiments. [Figure 8] This diagram schematically illustrates the process of push power control according to several embodiments. [Figure 9] This diagram schematically illustrates the process of push power control according to several embodiments. [Figure 10]FIG. is a diagram illustrating an exemplary aspect of transmission from a UE to a BS for PUSCH power control according to some embodiments. [Figure 11] FIG. is an exemplary table listing (SINR of UE1, SINR of UE2, weighted square distance) for the reference signal reception power (RSRP) of each of UE1 and UE2 according to some embodiments. "SINR" refers to signal-to-interference. [Figure 12] FIG. is an exemplary table listing (SINR of UE1, SINR of UE2, sum of SINR of UE1 and SINR of UE2) for the RSRP of UE1 and UE2 according to some embodiments. [Figure 13] FIG. is an exemplary chart of cumulative cases (%) of SINR according to some embodiments. [Figure 14] FIG. is a diagram showing an exemplary aspect of reference signal reception power ( "neigRSRP") from a UE to an adjacent base station (BS) and RSRP (servRSRP) from the UE to a serving BS for PUSCH power control according to some embodiments. [Figure 15] FIG. is an index table of an exemplary modulation and coding scheme (MCS) according to some embodiments. [Figure 16] FIG. is a diagram showing an exemplary aspect of a UE and a BS according to some embodiments. [Figure 17] FIG. is a diagram showing an exemplary aspect of clustering of UEs according to some embodiments. [Figure 18] FIG. is a diagram showing some embodiments of a process of a method of wireless communication by a UE for PUSCH power control. [Figure 19] FIG. is a diagram showing some embodiments of a process of wireless communication by a BS for PUSCH power control. [Figure 20] FIG. is a diagram showing some embodiments of a process of wireless communication by a network for PUSCH power control. [Figure 21] FIG. is a diagram showing some embodiments of a process for initializing values (e.g., as described in FIG. 20). [Figure 22] A diagram showing some embodiments of a process for verifying requirements (e.g., as described in FIG. 20). [Figure 23] A diagram showing some embodiments of a process for splitting clusters (e.g., as described in FIG. 22). [Figure 24A] A diagram schematically showing an exemplary manner for splitting clusters (e.g., as described in FIG. 22). [Figure 24B] A diagram schematically showing an exemplary manner for splitting clusters (e.g., as described in FIG. 22). [Figure 25] A diagram showing some embodiments of a process for updating power allocation (e.g., as described in FIG. 20). [Figure 26] A diagram showing some embodiments of a process for verifying power allocation (e.g., as described in FIG. 20). [Figure 27] An exemplary diagram of the relationship between the individuality and performance of power (P) between a UE and a BS. [Figure 28] A diagram showing some embodiments of a process of wireless communication by a UE for PUSCH power control. [Figure 29] A diagram showing some embodiments of a process of wireless communication by a BS for PUSCH power control. [Figure 30] A diagram showing some embodiments of a process of wireless communication by a network for PUSCH power control.​​​​​​​​Generally, this disclosure describes techniques for controlling the transmit power of UEs in a network to improve the overall performance of uplink communications in a cellular network. More specifically, embodiments are directed toward techniques for controlling transmit power after UEs have been scheduled to resource bins (RBs) determined by a scheduler. The techniques disclosed herein aim to control the transmit power of scheduled UEs such that all interference caused (to each other) by the scheduled UEs is controlled toward achieving the minimum target performance of each UE.

[0009]

[0038] The following description includes numerous specific details in order to provide a complete description of the embodiments of the disclosure. However, it will be apparent to those skilled in the art that embodiments of the disclosure may be carried out without using those specific details. In other examples, well-known components, structures, and techniques are not shown in detail so as not to obscure the understanding of this description.

[0010]

[0039] Any reference in this specification to “one embodiment” or “one embodiment” means that a particular function, structure, or characteristic described in relation to that embodiment may be included in at least one embodiment of this disclosure. The phrase “in one embodiment” appearing in various parts of this specification does not necessarily refer to the same embodiment.

[0011]

[0040] In the following description and claims, the words “combined” and “connected” may be used together with their derivatives. It should be understood that these words are not intended to be synonyms of each other. “Combined” may be used to mean that two or more elements, which may or may not be in direct physical or electrical contact with each other, work together or interact with each other. “Connected” may be used to mean the establishment of communication between two or more elements that are combined with each other.

[0012]

[0041] The process shown in the following diagram is carried out by processing logic that includes hardware (e.g., circuitry, dedicated logic, etc.), software (such as that executed on a general-purpose computer system or a dedicated machine), or a combination of both. While the process is described below as several consecutive operations, it should be noted that some of the operations described may occur in a different order. Furthermore, some operations may occur in parallel rather than sequentially.

[0013]

[0042] The terms “server,” “client,” and “device” are intended to refer generally to a data processing system, rather than specifically to any particular form factor relating to a server, client, and / or device.

[0014]

[0043] As used herein, “PUSCH” refers to the channel used for transmitting data uplink (i.e., from UE to BS). As used herein, “power control” refers to controlling the transmission power of the UE. As used herein, “signal-to-interference and noise ratio” or “SINR (signal to interference and noise ratio)” refers to (signal power) - (interference and noise power). As used herein, “signal-to-noise ratio” or “SNR” refers to (signal power) - (noise power). SINR or SNR may be measured in dB units.

[0015]

[0044] In some embodiments, a wireless communication method by a UE for PUSCH power control includes measuring reference signal received power (RSRP) data, reporting the RSRP data to a first BS, receiving P_0 and P_UE values ​​from the first BS, and transmitting a signal to the BS using P_TX defined by PUSCH. P_0 (=P0) is the nominal power and is a cell-specific parameter. P_UE (=P UE) is a UE-specific parameter. Therefore, all UEs served by the same cell will use the same P_0 value but may have different P_UE values. In some embodiments, the UE uses these two values ​​along with other parameters to define the PUSCH transmit power.

[0016]

[0045] In some embodiments, a wireless communication method by BS for push power control includes the steps of: associating with a first base station (BS); receiving a reference table from a network; collecting reference signal received power (RSRP) data from a user device (UE); identifying the cluster to which the UE belongs based on the RSRP data; identifying the P_UE value of the UE based on the reference table, wherein P_UE is a power parameter of that particular UE; reporting the P_UE value to the UE; collecting signal power minus interference and noise power (SINR) data from the UE; and reporting the RSRP data and SINR data to the network.

[0017]

[0046] In some embodiments, a wireless communication method over a network for push power control includes the steps of initializing a base station (BS) with a default cluster group and a default power value per cluster; transmitting a new power setting to the BS; collecting network data from the BS; verifying requirements; updating power allocations between user equipment (UEs); and verifying power allocations between UEs.

[0018]

[0047] Figure 1 shows a simplified exemplary wireless communication system in several embodiments. It should be noted that the system in Figure 1 is merely one example of a possible system, and the functions of this disclosure may be implemented in any of the various systems as needed.

[0019]

[0048] As illustrated, an exemplary wireless communication system includes a base station 102A that communicates with one or more user devices 106A, 106B, etc. ~ 106N via a transmission medium. Each user device may also be referred to herein as a “user equipment” (UE) or UE device. Thus, user device 106 is referred to as a UE or UE device.

[0020]

[0049] Base station (BS) 102A may be a base transceiver station (BTS) or a cell site ("cellular base station"), and may include hardware that enables wireless communication with UE106A~106N.

[0021]

[0050] The communication area (or coverage area) of a base station is sometimes referred to as a "cell." Base stations 102A and UE106 may be configured to communicate over a transmission medium using various radio access technologies (RATs), also known as wireless communication technologies, or telecommunication standards, such as GSM, UMTS (e.g., related to WCDMA or TD-SCDMA air interfaces), LTE, LTE-Advanced (LTE-A), 5G new radio (5G NR), HSPA, 3GPP2 CDMA2000 (e.g., 1xRTT, 1xEV-DO, HRPD, eHRPD), 6G, etc. Note that when base station 102A is implemented in the context of LTE, it may be alternatively referred to as "eNodeB" or "eNB." Note that when base station 102A is implemented in the context of 5G NR, it may be alternatively referred to as "gNodeB" or "gNB." Next-generation eNBs (ng-eNBs) may include advanced versions of eNBs that use a 4G LTE air interface to connect a 5G UE to a 5G core network.

[0022]

[0051] As illustrated, base station 102A may be equipped to communicate with network 100 (for example, a telecommunications network such as the cellular service provider's core network, the Public Switched Telephone Network (PSTN), and / or the Internet, among various possibilities). Thus, base station 102A may facilitate communication between user devices and / or between user devices and network 100. In particular, cellular base station 102A may provide UE 106 with various telecommunications capabilities such as voice, SMS, and / or data services. In various embodiments, it will be recognized that the term “network” may be used to collectively refer to one or more devices and components that form a telecommunications network. For example, a reference to a network that transmits data to or receives data from a UE may refer to one or more parts of the cellular service provider's core network and / or one or more base stations. In some such examples, the data to be transmitted to the UE may be determined by a component of the core network and then relayed to the UE via a base station. In other such examples, the data to be transmitted to the UE may be determined by a base station and then transmitted to the UE.

[0023]

[0052] Therefore, base stations 102A and other similar base stations (such as base stations 102B...102N) operating according to the same or different cellular communication standards may be provided as a network of cells, which may provide continuous or nearly continuous overlapping services to UE106A~N and similar devices over a geographic area via one or more cellular communication standards.

[0024]

[0053] Therefore, base station 102A may function as a “serving cell” for UEs 106A-N as shown in Figure 1, but each UE 106 may also be able to receive signals from (and possibly within their communication range) one or more other cells (which may be provided by base stations 102B-N and / or any other base stations), which may also be called “adjacent cells.” Such cells may also facilitate communication between user devices and / or between user devices and the network 100. Such cells may include “macro” cells, “micro” cells, “pico” cells, and / or cells that provide any other granularity of service area size. For example, base stations 102A-B shown in Figure 1 may be macrocells, and base station 102N may be a microcell. Other configurations are also possible.

[0025]

[0054] In some embodiments, base station 102A may be a next-generation base station, such as a 5G New Radio (5G NR) base station, or a "gNB". In some embodiments, the BS may be connected to a legacy evolved packet core (EPC) network and / or an NR core (NRC) network. The BS cell may also include one or more transition and reception points (TRPs). Furthermore, a UE capable of operating according to 5G NR may be connected to one or more TRPs in one or more BSs.

[0026]

[0055] It should be noted that UE106 may be capable of communicating using multiple wireless communication standards. For example, UE106 may be configured to communicate using at least one cellular communication protocol (e.g., GSM, UMTS (e.g., related to WCDMA or TD-SCDMA air interfaces), LTE, LTE-A, 5G NR, 6G, HSPA, 3GPP2 CDMA2000 (e.g., 1xRTT, 1xEV-DO, HRPD, eHRPD)) in addition to wireless networking (e.g., Wi-Fi) and / or peer-to-peer wireless communication protocols (e.g., Bluetooth, Wi-Fi peer-to-peer). UE106 may also be configured to communicate using one or more Global Navigation Satellite Systems (GNSS, e.g., GPS or GLONASS), one or more mobile television broadcasting standards (e.g., ATSC-M / H or DVB-H), and / or any other wireless communication protocols, if necessary. Other combinations of wireless communication standards (including three or more wireless communication standards) are also possible.

[0027]

[0056] Figure 2 shows a user device 106 (e.g., one of devices 106A to 106N) in communication with a base station 102 in several embodiments. The UE 106 may be a device with cellular communication capabilities, such as a mobile phone, a handheld device, a computer or tablet, or substantially any type of wireless device.

[0028]

[0057] UE106 may include a processor configured to execute program instructions stored in memory. By executing such stored instructions, UE106 may perform any of the functions and / or operations described herein. Alternatively, or additionally, UE106 may include programmable hardware elements, such as an FPGA (Field Programmable Gate Array), configured to perform any of the embodiments described herein, or a portion of any of the embodiments described herein.

[0029]

[0058] UE106 may include one or more antennas for communication using one or more wireless communication protocols or technologies. In some embodiments, UE106 may be configured to communicate using, for example, 5G NR, CDMA2000 (1xRTT / 1xEV-DO / HRPD / eHRPD), 6G, or LTE using a single shared radio, and / or GSM or LTE using a single shared radio. The shared radio may be coupled to a single antenna for wireless communication, or to multiple antennas (e.g., for MIMO). Generally, the radio may include any combination of a baseband processor, analog RF signal processing circuitry (e.g., including filters, mixers, oscillators, amplifiers, etc.), or digital processing circuitry (e.g., for digital modulation and other digital processing). Similarly, the radio may implement one or more receive and transmit chains using the hardware described above. For example, UE106 may share one or more parts of the receive chain and / or transmit chain among the multiple wireless communication technologies described above.

[0030]

[0059] In some embodiments, UE106 may include separate transmit chains and / or receive chains (e.g., separate antennas and other radio components) for each wireless communication protocol it is configured to communicate with. Further possibilities include UE106 including one or more radios shared among multiple wireless communication protocols and one or more radios used exclusively by a single wireless communication protocol. For example, UE106 may include a shared radio for communication using either LTE or 5G NR (or LTE or 1xRTT or LTE or GSM or 6G) and separate radios for communication using Wi-Fi and Bluetooth, respectively. Other configurations are also possible.

[0031]

[0060] Figure 3 shows several embodiments of an exemplary simplified block diagram of UE106 (or other communication device). It should be noted that the block diagram of the communication device in Figure 3 is only an example of a possible communication device. In some embodiments, UE106 may be, among other things, a user equipment (UE) device, a mobile device or mobile station, a wireless device or wireless station, a desktop computer or computing device, a mobile computing device (e.g., a laptop, notebook, or portable computing device), a tablet, and / or a combination of devices. As shown, UE106 may include a set of components 300 configured to perform core functions. For example, this set of components may be implemented as a system-on-a-chip (SOC) which may include parts for various purposes. Alternatively, this set of components 300 may be implemented as separate components or groups of components for various purposes. The set of components 300 may be coupled (e.g., directly or indirectly, in a communicative manner) to various other circuits of UE106.

[0032]

[0061] For example, UE106 may include various types of memory (e.g., including NAND flash 310), input / output interfaces such as connector I / F 320 (for connecting to computer systems, docks, charging cradles, input devices such as microphones, cameras, and keyboards, output devices such as speakers, etc.), a display 360 which may be built into or external to UE106, a cellular communication circuit section 330 for 5G NR, LTE, GSM, etc., and a short-to-medium-range wireless communication circuit section 329 (e.g., Bluetooth® and WLAN circuit sections). In some embodiments, UE106 may include a wired communication circuit section (not shown), such as a network interface card for Ethernet.

[0033]

[0062] The cellular communication circuit 330 may be coupled (for example, directly or indirectly, in a communicative manner) to one or more antennas, such as antennas 335 and 336, as shown in the figure. The short-to-medium-range wireless communication circuit 329 may also be coupled (for example, directly or indirectly, in a communicative manner) to one or more antennas, such as antennas 337 and 338, as shown in the figure. Alternatively, the short-to-medium-range wireless communication circuit 329 may be coupled (for example, directly or indirectly, in a communicative manner) to antennas 335 and 336, in addition to or instead of coupling (for example, directly or indirectly, in a communicative manner) to antennas 337 and 338. The short-to-medium-range wireless communication circuit 329 and / or the cellular communication circuit 330 may include multiple receive chains and / or transmit chains for receiving and / or transmitting multiple spatial streams, such as in a multiple-input multiple output (MIMO) configuration.

[0034]

[0063] In some embodiments, as further described below, the cellular communication circuit 330 may include dedicated receiving chains for multiple radio access techniques (RATs) (including dedicated processors and / or radios, and / or being connected to them directly or indirectly, for example, in a communicative manner) (e.g., a first receiving chain for LTE and a second receiving chain for 5G NR). In addition, in some embodiments, the cellular communication circuit 330 may include a single transmitting chain that can be switched between radios dedicated to specific RATs. For example, the first radio may be dedicated to a first RAT, e.g., LTE, and may be in communication with a dedicated receiving chain and a transmitting chain shared with an additional radio, e.g., a second radio, which may be dedicated to a second RAT, e.g., 5G NR, and may be in communication with a dedicated receiving chain and a shared transmitting chain.

[0035]

[0064] UE106 may also include one or more user interface elements and / or be configured for use with one or more user interface elements. User interface elements may include any of a variety of elements, such as a display 360 (which may be a touchscreen display), a keyboard (which may be a separate keyboard or implemented as part of a touchscreen display), a mouse, a microphone and / or a speaker, one or more cameras, one or more buttons, and / or any of any other elements that can provide information to the user and / or receive or interpret user input.

[0036]

[0065] The UE106 may further include one or more smart cards 345 (or more) that include SIM (Subscriber Identity Module) functionality, such as one or more UICC (Universal Integrated Circuit Card) cards 345.

[0037]

[0066] As shown in the figure, the SOC 300 may include a processor 302(or more) which may execute program instructions relating to the UE 106, and a display circuit 304 which may perform graphics processing and provide display signals to the display 360. The processor 302(or more) may also be coupled to a memory management unit (MMU) 340 which may be configured to receive addresses from the processor 302(or more) and translate those addresses to locations in memory (e.g., memory 306, read-only memory (ROM) 350, NAND flash memory 310), and / or to other circuits or devices, such as the display circuit 304, the short-range wireless communication circuit 229, the cellular communication circuit 330, the connector I / F 320, and / or the display 360. The MMU 340 may be configured to perform memory protection and page table translation or setup. In some embodiments, the MMU 340 may be included as part of the processor 302(or more).

[0038]

[0067] As described above, UE106 may be configured to communicate using wireless and / or wired communication circuits. UE106 may be configured to send a request to connect to a first network node operating according to a first RAT (e.g., 5G NR, 4G LTE, Bluetooth, Wi-Fi, etc.) and to send an instruction that the wireless device is capable of maintaining substantially simultaneous connectivity with the first network node and a second network node operating according to a second RAT (e.g., 5G NR, 4G LTE, Bluetooth, Wi-Fi, etc.). The wireless device may also be configured to send a request to connect to a second network node. The request may include an instruction that the wireless device is capable of maintaining substantially simultaneous connectivity with the first and second network nodes. Furthermore, the wireless device may be configured to receive an instruction that dual connectivity with the first and second network nodes has been established.

[0039]

[0068] As described herein, UE106 may include hardware and software components that implement the above-described functions for supporting DGL transmission. The processor 302 of UE106 may be configured to implement some or all of the functions described herein by executing program instructions stored, for example, in a memory medium (e.g., a non-temporary computer-readable memory medium). Alternatively (or additionally), the processor 302 may be configured as a programmable hardware element such as an FPGA (Field Programmable Gate Array) or as an ASIC (Application Specific Integrated Circuit). Alternatively (or additionally), the processor 302 of UE106 may be configured to implement some or all of the functions described herein together with one or more of the other components 300, 304, 306, 310, 320, 329, 330, 340, 345, 350, 360.

[0040]

[0069] In addition, as described herein, the processor 302 may include one or more processing elements. Thus, the processor 302 may include one or more integrated circuits (ICs) configured to perform the functions of the processor 302. In addition, each integrated circuit may include circuit sections (e.g., a first circuit section, a second circuit section, etc.) configured to perform the functions of the processor 302.

[0041]

[0070] Furthermore, as described herein, the cellular communication circuit section 330 and the short-range wireless communication circuit section 329 may each include one or more processing elements. In other words, one or more processing elements may be included in the cellular communication circuit section 330, and similarly, one or more processing elements may be included in the short-range wireless communication circuit section 329. Thus, the cellular communication circuit section 330 may include one or more integrated circuits (ICs) configured to perform the functions of the cellular communication circuit section 330. In addition, each integrated circuit may include circuit sections (e.g., a first circuit section, a second circuit section, etc.) configured to perform the functions of the cellular communication circuit section 330. Similarly, the short-range wireless communication circuit section 329 may include one or more ICs configured to perform the functions of the short-range wireless communication circuit section 329. In addition, each integrated circuit may include circuit sections (e.g., a first circuit section, a second circuit section, etc.) configured to perform the functions of the short-range wireless communication circuit section 329.

[0042]

[0071] Figure 4 shows an exemplary block diagram of a base station 102 according to several embodiments. It should be noted that the base station in Figure 4 is only one example of a possible base station. As shown, the base station 102 may include a processor 404(or more) which may execute program instructions relating to the base station 102. The processor 404(or more) may also be coupled to a memory management unit (MMU) 440 or to other circuitry or devices, the memory management unit (MMU) 440 which may be configured to receive addresses from the processor 404(or more) and translate those addresses to locations in memory (e.g., memory 460 and read-only memory (ROM) 450).

[0043]

[0072] The base station 102 may include at least one network port 470. The network port 470 may be connected to a telephone network and configured to provide access to the telephone network to multiple devices, such as UE devices 106, as described above in Figures 1 and 2.

[0044]

[0073] Network port 470 (or additional network ports) may be further or alternatively configured to connect to a cellular network, such as the core network of a cellular service provider. The core network may provide mobility-related services and / or other services to multiple devices, such as UE device 106. In some cases, network port 470 may be connected to a telephone network via the core network, and / or the core network may provide a telephone network (e.g., between other UE devices serviced by the cellular service provider).

[0045]

[0074] In some embodiments, base station 102 may be a next-generation base station, for example, a 5G New Radio (5G NR) base station, or a “next-generation node B,” “gNodeB,” or “gNB.” In such embodiments, base station 102 may be connected to a legacy Evolved Packet Core (EPC) network and / or NR Core (NRC) network. In addition, base station 102 may be considered a 5G NR cell and may include one or more transition and receive points (TRPs). In addition, a UE capable of operating according to 5G NR may be connected to one or more TRPs in one or more gNBs.

[0046]

[0075] The base station 102 may include at least one antenna 434, and possibly multiple antennas such as an array of antennas. These antennas may be configured to operate as wireless transceivers and may also be configured to communicate with the UE device 106 via a radio 430. Antenna 434 communicates with the radio 430 via a communication chain 432. The communication chain 432 may be a receive chain, a transmit chain, or both. The radio 430 may be configured to communicate via various wireless communication standards, including, but not limited to, 5G NR, LTE, LTE-A, GSM, UMTS, CDMA2000, Wi-Fi, etc.

[0047]

[0076] The base station 102 may be configured to wirelessly communicate using multiple wireless communication standards. In some examples, the base station 102 may include multiple radios, which may enable the base station 102 to communicate according to multiple wireless communication technologies. For example, one possibility is that the base station 102 includes an LTE radio for communicating according to LTE and a 5G NR radio for communicating according to 5G NR. In such a case, the base station 102 may be capable of operating as both an LTE base station and a 5G NR base station. Another possibility is that the base station 102 includes a multimode radio capable of communicating according to any of the multiple wireless communication technologies (e.g., 5G NR and Wi-Fi, LTE and Wi-Fi, LTE and UMTS, LTE and CDMA2000, UMTS and GSM, etc.).

[0048]

[0077] As further described herein, BS102 may include hardware and software components that implement or assist in the implementation of the functions described herein. The processor 404 of the base station 102 may be configured to implement or assist in the implementation of some or all of the methods described herein by executing program instructions stored, for example, in a memory medium (e.g., a non-temporary computer-readable memory medium). Alternatively, the processor 404 may be configured as a programmable hardware element such as an FPGA (Field Programmable Gate Array), or as an ASIC (Application Specific Integrated Circuit), or a combination thereof. Alternatively (or additionally), the processor 404 of BS102 may be configured together with one or more of the other components 430, 432, 434, 440, 450, 460, 470 to implement or assist in the implementation of some or all of the functions described herein.

[0049]

[0078] In addition, as described herein, the processor 404(or more) may consist of one or more processing elements. In other words, one or more processing elements may be included in the processor 404(or more). Thus, the processor 404(or more) may include one or more integrated circuits (ICs) configured to perform the functions of the processor 404(or more). In addition, each integrated circuit may include circuit sections (e.g., a first circuit section, a second circuit section, etc.) configured to perform the functions of the processor 404(or more).

[0050]

[0079] Furthermore, as described herein, the radio 430 may consist of one or more processing elements. In other words, one or more processing elements may be included in the radio 430. Thus, the radio 430 may include one or more integrated circuits (ICs) configured to perform the functions of the radio 430. In addition, each integrated circuit may include circuit sections (e.g., a first circuit section, a second circuit section, etc.) configured to perform the functions of the radio 430.

[0051]

[0080] Figure 5 shows an exemplary simplified block diagram of a cellular communication circuit according to several embodiments. It should be noted that the block diagram of the cellular communication circuit in Figure 5 is only one example of a possible cellular communication circuit. According to the embodiments, the cellular communication circuit 330 may be contained within a communication device such as the UE 106 described above. Additionally or alternatively, instead of the UE, the communication device may be, among other things, a mobile device or mobile station, a wireless device or wireless station, a desktop computer or computing device, a mobile computing device (e.g., a laptop, notebook, or portable computing device), a tablet, and / or a combination of devices.

[0052]

[0081] The cellular communication circuit unit 330 may be coupled (for example, directly or indirectly, in a communicative manner) to one or more antennas, such as antennas 335a-b and 336, as shown. In some embodiments, the cellular communication circuit unit 330 may include dedicated receiving chains for multiple RATs (including dedicated processors and / or radios, and / or coupled to them, for example, in a communicative manner, directly or indirectly) (for example, a first receiving chain for LTE and a second receiving chain for 5G NR). For example, as shown in Figure 5, the cellular communication circuit unit 330 may include modems 510 and 520. Modem 510 may be configured for communication according to a first RAT, for example, LTE or LTE-A, and modem 520 may be configured for communication according to a second RAT, for example, 5G NR.

[0053]

[0082] As shown in the figure, the modem 510 may include one or more processors 512 and a memory 516 communicating with the processors 512. The modem 510 may also communicate with a radio frequency (RF) front end 530. The RF front end 530 may include circuitry for transmitting and receiving radio signals. For example, the RF front end 530 may include a receiving circuit (RX) 532 and a transmitting circuit (TX) 534. In some embodiments, the receiving circuit 532 may communicate with a downlink (DL) front end 550, which may include circuitry for receiving radio signals via an antenna 335a.

[0054]

[0083] Similarly, the modem 520 may include one or more processors 522 and a memory 526 communicating with the processors 522. The modem 520 may also communicate with an RF front end 540. The RF front end 540 may include circuitry for transmitting and receiving radio signals. For example, the RF front end 540 may include a receiving circuit 542 and a transmitting circuit 544. In some embodiments, the receiving circuit 542 may communicate with a DL front end 560, which may include circuitry for receiving radio signals via an antenna 335b.

[0055]

[0084] In some embodiments, the switch 570 may couple the transmitting circuit 534 to the uplink (UL) front end 572. In addition, the switch 570 may couple the transmitting circuit 544 to the UL front end 572. The UL front end 572 may include a circuit for transmitting radio signals via the antenna 336. Thus, when the cellular communication circuit 330 receives a command to transmit according to a first RAT (e.g., supported via the modem 510), the switch 570 may be switched to a first state in which the modem 510 can transmit signals according to the first RAT (e.g., via a transmission chain including the transmitting circuit 534 and the UL front end 572). Similarly, when the cellular communication circuit 330 receives a command to transmit according to a second RAT (e.g., supported via the modem 520), the switch 570 may be switched to a second state in which the modem 520 can transmit signals according to the second RAT (e.g., via a transmission chain including the transmitting circuit 544 and the UL front end 572).

[0056]

[0085] As described herein, the modem 510 may include hardware and software components for implementing the above functions, or for supporting DGL transmission, and for various other technologies described herein. The processor 512 may be configured to implement some or all of the functions described herein by executing program instructions stored, for example, in a memory medium (e.g., a non-temporary computer-readable memory medium). Alternatively (or in addition), the processor 512 may be configured as a programmable hardware element such as an FPGA (Field Programmable Gate Array) or as an ASIC (Application Specific Integrated Circuit). Alternatively (or in addition), the processor 512 may be configured to implement some or all of the functions described herein together with one or more of the other components 530, 532, 534, 550, 570, 572, 335, and 336.

[0057]

[0086] In addition, as described herein, the processor 512 may include one or more processing elements. Thus, the processor 512 may include one or more integrated circuits (ICs) configured to perform the functions of the processor 512. In addition, each integrated circuit may include circuit sections (e.g., a first circuit section, a second circuit section, etc.) configured to perform the functions of the processor 512.

[0058]

[0087] As described herein, the modem 520 may include hardware and software components for implementing the above-described functions for supporting DGL transmission, as well as various other technologies described herein. The processor 522 may be configured to implement some or all of the functions described herein by executing program instructions stored, for example, in a memory medium (e.g., a non-temporary computer-readable memory medium). Alternatively (or in addition), the processor 522 may be configured as a programmable hardware element such as an FPGA (Field Programmable Gate Array) or as an ASIC (Application Specific Integrated Circuit). Alternatively (or in addition), the processor 522 may be configured to implement some or all of the functions described herein together with one or more of the other components 540, 542, 544, 550, 570, 572, 335, and 336.

[0059]

[0088] In addition, as described herein, the processor 522 may include one or more processing elements. Thus, the processor 522 may include one or more integrated circuits (ICs) configured to perform the functions of the processor 522. In addition, each integrated circuit may include circuit sections (e.g., a first circuit section, a second circuit section, etc.) configured to perform the functions of the processor 522.

[0060]

[0089] Figure 6 shows an illustrative diagram of an open radio access network (O-RAN) architecture. The O-RAN 602 includes a database (DB) 606 containing service requirements 604, a service management and orchestration / non-real-time RAN intelligent controller (SMO / non-RT RIC) 608, and a quasi-RT RIC 610. The DB 606 contains and controls network log / network traffic and BS (e.g., gNodeB (gNB)) information. The SMO / non-RT RIC 608 performs control policy optimization, parameter optimization, and parameter planning. The quasi-RT RIC 610 controls the RAN and PUSCH UE power control.

[0061]

[0090] The SMO / non-RT RIC608 or quasi-RT RIC610 transmits signals to BS616. UE614 is associated with BS616. BS616 transmits data from quasi-RT-RIC610. BS616 also collects data 612 such as terminal reports and gNB reports and transmits that data to DB606.

[0062]

[0091] As used herein, E-UTRAN cell identity (ECI) refers to a unique identifier assigned to each individual cell in an LTE network, consisting of an eNodeB ID and a physical cell ID, and acts as a cell ID that enables a mobile device to identify and connect to a specific BS (cell tower) for communication. In some embodiments provided herein, the BS may be the ECI. In some embodiments, the ECI may refer to the BS.

[0063]

[0092] Figures 7 to 9 schematically illustrate the PUSCH power control process in several embodiments. As an example, the target UE (UE1) has P=-80 and SINR=1dB, achieving 1Mbps at BS1. The interfering UE (UE2) has P=-71 and SINR=5dB, achieving 8Mbps at BS2. As shown in Figure 7, UE1 increases its transmission power (P_TX). This results in an increase in SINR at BS1 (P=-71, SINR=10dB, achieving 20Mbps), while at BS2, the SINR decreases (P=-80, SINR=-4dB, achieving 0Mbps).

[0064]

[0093] As shown in Figure 8, UE2 then increases the transmission power (P_TX). This results in a decrease in SINR at BS1 (P=-71, SINR=1dB, achieving 1Mbps) and an increase in SINR at B2 (P=-71, SINR=5dB, achieving 8Mbps).

[0065]

[0094] As shown in Figure 9, UE1 and UE2 optimize their respective transmit power P_TX to improve SINR and meet key performance index (KPI) requirements. As a result, UE1 achieves P=-78 and SINR=3dB, reaching 3Mbps on BS1, while UE2 achieves P=-80 and SINR=3dB, reaching 3Mbps on BS2. As this example illustrates, power control (controlling the transmit power of the UEs) improves communication.

[0066]

[0095] In some embodiments, PUSCH BS power control uses a thresholding algorithm to improve power allocation for PUSCH. In various standards, PUSCH power control requires that each cell has a fixed P_0 parameter (updatable via a non-RT RIC). All UEs within a cell use the same P_0 to calculate their own transmission power P_TX: P_TX=min(P_Max,P_0+α*PL+f(RB)) Here, α∈{0,0.4,0.5,0.6,0.7,0.8,0.9,1}, PL is the path loss between the user and the cell, f(RB) is a function of RB assigned to the UE, and P_0∈{-204,-202,…,22,24}. In some embodiments, the function is P_0+α*PL+f(RB)), for example min(P_Max,g(P_0+α*PL+f(RB))), where g() is a function that depends on granting and closed-loop decisions as described in some known standards.

[0067]

[0096] In some embodiments of PUSCH's UE power control, all UEs in a cell use the same P_0 and individual P_UE values ​​(controllable in real time or quasi-real-time) to calculate their own transmission power P_TX: P_TX=minP_Max, P_0+P_UE+α*PL+f(RB)) Here, α∈{0,0.4,0.5,0.6,0.7,0.8,0.9,1}, PL is the path loss between the user and the cell, f(RB) is a function of RB assigned to UE, and P_0∈{-204,-202,...,22,24} and P_UE∈{-16,-15,...-1,0,1,...,14,15}.

[0068]

[0097] In some embodiments, power control includes an iterative power control algorithm, particularly for PUSCH. Given a current KPI (e.g., SINR) and a target KPI (e.g., SINR), this algorithm outputs a power allocation. By iteratively inputting the new KPI achieved by the power allocation, the power control algorithm approaches the target KPI (assuming the KPI is achievable). The iterative power control algorithm may be constructed from fundamental differential equations and adapted to work for PUSCH. The iterative power control algorithm can be used to find an optimal or suboptimal power allocation. Given an optimization function (e.g., maximum total SINR, maximum minimum SINR, maximum average bits / symbol or maximum average bits / second, or weighted change), the algorithm can be used as an internal step to evaluate the power allocation.

[0069]

[0098] In some embodiments, clustering techniques can be used to reduce the complexity of push power control. In such techniques, multiple UEs may be clustered based on their respective quantized channel measurements, and the controller may then define the P_UE per cluster. The cluster size may be adjusted depending on the controller capabilities or network requirements (e.g., smaller clusters offer better performance but have higher overhead).

[0070]

[0099] In some embodiments, a method is provided for obtaining an achievable set of SINR limits. The iterative algorithm assumes that the target values ​​are achievable and that all achievable target values ​​are within the achievable set of SINR limits. This can be used to determine which target values ​​(e.g., network requirements) can be achieved through power control alone, providing information on when the cluster should be split. For example, if an achievable target value cannot be reached, this means that the cluster should be split.

[0071]

[0100] In some embodiments, if there exists a power allocation where the SINR is equal to a target value and the target value is fixed, that power allocation can be found in a distributed manner if all BSs do the following: Repeat the following: If the BS's SINR exceeds the target value, the BS power will be reduced by "SINR - target value". If the BS's SINR falls below the target value, increase the BS's power by "target value - SINR". Until SINR reaches the target value

[0101] According to this embodiment, with each step taken, the BS approaches its target. If the target value is achievable (i.e., attainable), the BS reaches its target after a sufficiently large number of steps.

[0072]

[0102] In the example shown in Figure 10, a power allocation is sought such that the SINR is 4 for both UEs. Power control may start with a power value that solves a minor SNR problem, but it may start from any other point. The power algorithm is ultimately achieved using a mathematical algorithm. For example, The initial values ​​are P0=-96.3, SINR0=1.461, P1=-97.9, and SINR1=0.461. After one iteration, the values ​​were P0=-93.761 SINR0=2.0762, P1=-94.361, and SINR1 2.4083. After 21 iterations, the values ​​were P0 = -83.3471, SINR0 = 3.7854, P1 = -83.9471, and SINR1 = 3.8286. After 41 iterations, the values ​​were P0 = -80.5388, SINR0 = 3.8862, P1 = -81.1388, and SINR1 = 3.9094. After 61 iterations, the values ​​were P0 = -78.8474, SINR0 = 3.9226, P1 = -79.4474, and SINR1 = 3.9384. After 81 iterations, the values ​​were P0 = -77.6331, SINR0 = 3.9414, P1 = -78.2331, and SINR1 = 3.9534. After 100 iterations, the values ​​were P0 = -76.7231, SINR0 = 3.9621, P1 = -77.333, and SINR1 = 3.9523. After 1001 iterations, the values ​​were P0 = -66.7626, SINR0 = 3.9952, P1 = -67.3626, and SINR1 = 3.9962. After 3001 iterations, the values ​​were P0 = -61.9972, SINR0 = 3.9984, P1 = -62.5972, and SINR1 = 3.9987. After 5001 iterations, the values ​​were P0 = -59.7798, SINR0 = 3.999, P1 = -60.3798, and SINR1 = 3.9992. After 7001 iterations, the values ​​were P0=-58.3191 SINR0=3.9993, P1=-58.9191, and SINR1 3.9995. After 9001 iterations, the values ​​were P0 = -57.2279, SINR0 = 3.9995, P1 = -57.8279, and SINR1 = 3.9996. After 10,000 iterations, the values ​​are P0 = -56.7708, SINR0 = 3.9996, P1 = -57.3709, and SINR1 = 3.9995.

[0073]

[0103] In some embodiments, only integer P values ​​are used in the push power control: P = P_0 + P_UE. In some embodiments, P_0 is even, while P_UE can be even or odd. Between iterations, if the SINR decreases, the dataset closest to the target may be monitored and returned last. The following are some examples of embodiments in which push power control is performed, for example: The initial values ​​are P0=-96, SINR0=1.3394, P1=-97, and SINR1=1.1912. After one iteration, the values ​​were P0=-94, SINR0=2.2366, P1=-95, and SINR1=1.9335. After two iterations, the values ​​were P0=-93, SINR0=1.9159, P1=-93, and SINR1=3.2279. After 3 iterations, the values ​​were P0=-91, SINR0=3.1825, P1=-92, and SINR1=2.6854. After 4 iterations, the values ​​were P0=-90, SINR0=3.4065, P1=-91, and SINR1=2.8584. After 5 iterations, the values ​​were P0=-89, SINR0=3.5931, P1=-90, and SINR1=3.0009. After 6 iterations, the values ​​were P0=-88, SINR0=3.7473, P1=-89, and SINR1=3.1176. After 7 iterations, the values ​​were P0=-87, SINR0=3.8737, P1=-88, and SINR1=3.2125. After 8 iterations, the values ​​were P0=-86, SINR0=3.9769, P1=-87, and SINR1=3.2894. After 9 iterations, the values ​​were P0=-85, SINR0=4.0606, P1=-86, and SINR1=3.3515. After 10 iterations, the values ​​are P0=-86, SINR0=2.1283, P1=-85, and SINR1=5.2894.

[0074]

[0104] As shown above, the value after 9 iterations is the closest to the "least squares distance" to the target.

[0075]

[0105] The exemplary algorithms for PUSCH power control provided herein may be characterized as follows: Inputs: Target value, RSRP, and tolerance level (or maximum number of iterations) for discrepancy between the target SINR and the measured SINR, as well as initial power allocation. Note that in some embodiments, the measured SINR is a real-valued signal, but the selectable parameters are integer values. Thus, there may be a difference between the target value and the SINR, and there may be an tolerance level for how large that difference can be and whether it is still satisfied in this solution.

[0076] repeat 1. Simultaneously check if |Target Value - SINR| > Acceptable Value for all UEs. If so, the power becomes Power = Power + Target Value - SINR; otherwise, the power remains unchanged for that iteration. 2. If a new power allocation results in a SINR with a smaller squared distance to the target value, mark that as the closest power allocation. For all UEs performing the power control algorithm, for all SINRs, until |Target value - SINR| < Acceptable value, Output: Power allocation closest to the target value

[0106] Figure 11 shows an exemplary table listing the reference signal received power (RSRP) for UE1 and UE2 respectively (SINR for UE1, SINR for UE2, and weighted square distance (WSD)). The dataset closest to the target value can be found at P_TX1=-78 and P_TX2=-79, (4.33, 3.55, 0.312), where P_TX1 is the power (P) for UE1 and P_TX2 is the power for UE2. When the tolerance is specified as "weighted square distance < 0.315", the acceptable dataset (solution) showing the transmit power for UE1 and UE2 includes one of the following, as seen in Figure 11: [Table 1]

[0107] To address the problem of multiple possible solutions, the following may be considered: 1. After the algorithm terminates with a solution, examine the values ​​of + / -1 before and after the candidate power assignment. 2. Solutions corresponding to adjacent cases should be similar (for example, the solution for [-92.5, -96.5, -90.5, -85.5] should be similar to the solution for [-93.5, -96.5, -90.5, -85.5]). 3. Use a rule, for example, to select the smallest p-value among the candidates.

[0077]

[0108] To achieve a positive SINR, a positive sum target SINR may be used (i.e., Target1>0 and Target2>0), in which case, Target1 + Target2 <neigRSRP1-servRSRP1+neigRSRP2-servRSRP2 Alternatively, one of the target values ​​can be negative, while the other can be positive, as long as the "<" expression is still satisfied. This can be advantageous when power allocation is combined with scheduling.

[0078]

[0109] If some P_TX1 in UE1 and P_TX2 in UE2 achieve the SINR of Target_1 and Target_2, 1.Target1=P_TX1-L_Serv1-(P_TX2-L_Interf2) 2.Target2=P_TX2-L_Serv2-(P_TX1-L_Interf1) 3.Target1+Target2=-L_Serv1+L_Interf1-L_Serv2+L_Interf2 4. If L_Serv = servRSRP + C and L_Interf = neigRSRP + C, the results described above for the total target SINR limit can be achieved. L_Serv1 is the channel path loss between UE1 and its corresponding serving base station. L_Interf1 is the channel path loss between UE1 and the base station serving UE2; in other words, L_Interf1 is the channel through which UE1 interferes with signals from UE2. C is a UE-dependent value that maps the channel path loss to the reported RSRP measurement and is assumed to be constant at the time of measurement.

[0079]

[0110] In some embodiments, the RSRP value is expressed as a magnitude (absolute value), i.e., the value found in -1*MR.

[0080]

[0111] In the above algorithm, for any given pair of UEs, the achievable SINR values that can be reached are finite and limited. For example, when neigRSRP1 - servRSRP1+neigRSRP2 - servRSRP2 is equal to 10, there is no power allocation that can give both UEs a SINR of 10 dB. Therefore, in some embodiments, power control is restricted by the network topology.

[0081]

[0112] FIG. 12 shows an exemplary table listing (the SINR of UE1, the SINR of UE2, the sum of the SINR of UE1 and the SINR of UE2) for the RSRP of UE1 and UE2. When P_TX1 = 23 and P_TX2 = 23, (the SINR of UE1, the SINR of UE2, the sum of the SINR of UE1 and the SINR of UE2)=(-3.0, 11.0, 8.0). The actual sum of the SINR of UE1 and the SINR of UE2 is 7.998..., which is rounded to 8.0 to the second decimal place. In this data set, based on Target1+Target2 < neigRSRP1 - servRSRP1+neigRSRP2 - servRSRP2, 90.5 - 85.5+96.5 - 93.5 = 8 SINR BS1+SINR BS2 < 8

[0113] In some embodiments, the network controller needs to determine the following.

[0082] How are several clusters defined? To which cluster does each UE belong? For each cluster, what is the P_UE value of the UEs in that cluster? Does that P_UE value increase, remain the same, or decrease compared to the P_UE value that the cluster previously used? Which value should the P_UE of that cluster be among the standard fixed sets of values that P_UE can take? If it increases or decreases, by how much? Which P_0 value should each BS use?

[0114] Several options are available for implementing the power control algorithms described above. These options may include processing logic that encompasses hardware (e.g., circuitry, dedicated logic, memory, etc.), software (such as that run on a general-purpose computer system or a dedicated machine), firmware (e.g., software programmed in read-only memory), or a combination thereof.

[0083]

[0115] For example, one option, let's call it Option A, involves a power control algorithm where the processing logic iterates over consecutive control periods, using the most recently reported measurement as the current value and updating it through a specified change during each iteration of the algorithm. For example, in this control period, the SINR is 4 and the target value is 6. The algorithm then instructs to increase the power by 2, and the power is increased by 2. In the next control period, the power adjustment is similarly repeated. This option is recommended when updates can be made frequently (e.g., on the order of seconds to an order of magnitude for near real-time control, and on the order of milliseconds for real-time control) and control is assumed to be possible. This technique should be effective when the immediate past represents the immediate future, which certainly applies to channels and many forms of traffic.

[0084]

[0116] Another option, referred to here as Option B, involves processing a power control algorithm by having the processing logic collect data, simulate the environment from that data, iterate through an internal simulator, and use the output from the simulation for the next control period. For example, Option B may collect available data and simulate the next control period. During the simulation, an iterative algorithm may be executed, and the output of the algorithm may be used as a parameter within the simulation for the next control period. This option is recommended when updates are not frequent and some simulation of the network can be performed. When updates are frequent, this option requires the most computing power.

[0085]

[0117] Another option, referred to here as Option C, involves processing a power control algorithm by having the processing logic maintain past results for a specific area and time, using past measurements as the current value, and updating it through a specified change during a single iteration of the algorithm. For example, at 7:15 a.m. on Monday of the previous week, this BS had P=-80 and SINR=4. According to the algorithm, in this case the power should increase by 2, and therefore, at 7:15 a.m. on Monday of the current week, P=-78 would be used. This option is recommended when the data suggests that the behavior is statistically similar at the same time / location and the data is not frequently updateable. This method has the advantage of not requiring simulation, being a variation of Option A (for example, each control period is repeated at predetermined intervals (e.g., once every 7 days), whereas in Option A the iterations are performed over consecutive control periods), and allowing the data to be combined in various ways.

[0086] (Exemplary techniques for improving and / or optimizing parameters)

[0118] According to this disclosure, any parameter of interest may be improved and, in some cases, optimized. For example, to improve, and in some cases optimize, the inputs used are the RSRP value, noise, alpha, PMax, PMin, and a function describing the achievable rate for a given measured SINR (e.g., f(SINR) = B bits / second).

[0087] maxΣB i st, f(SINR i )=B i ΣSINR i ≦Limit i

[0119] The algorithms described herein measure the SINR of all controlled UEs (i.e., all controlled UEs). i SINR i It may be used to find a power allocation that achieves this.

[0088]

[0120] For example, to improve and possibly optimize the total measured SINR across all controlled UEs, the input may be the RSRP value, noise, alpha, PMax, and PMin.

[0089] maxΣSINR i s.t.,ΣSINR i ≦Limit i

[0121] The algorithms described herein may be used to find a power allocation that achieves the SINR.

[0090]

[0122] For example, to improve and possibly optimize the maximum total SINR, the input may be the RSRP value, noise, alpha, PMax, and PMin.

Number

[0091]

[0124] For example, to improve and possibly optimize the weighted maximum total SINR, the input may be the RSRP value, noise, alpha, PMax, PMin, and weight.

Number

[0125] The algorithms described herein may be used to find a power allocation that achieves SINR. Typically, a weighted change is expressed as "fair," with proportional weights serving as an indicator of fairness.

[0092]

[0126] For example, in some embodiments, to improve, and potentially optimize, the "fair" maximum sum SINR, the following formula is used for each instance found in the dataset (i.e., a pair of rows describing two UEs and two BS networks): Limit value = (neigRSRP1 - servRSRP1) + (neigRSRP2 - servRSRP2) If the limit value is even -> Target1 = limit value / 2 and Target2 = limit value / 2 If the limit value is odd -> Target1 = (limit value + 1) / 2 and Target2 = (limit value - 1) / 2

[0127] Figure 13 shows an exemplary chart of cumulative SINR cases (%). As shown in Figure 13, approximately 15% of all cases have an SINR <0 dB, and the average SINR is 3.7 dB.

[0093]

[0128] For example, in some embodiments, to improve, and possibly optimize, the maximum, minimum, and total SINR, the inputs are the RSRP value, noise, alpha, PMax, and PMin.

[0094] maxmin SINR i st,ΣSINR i ≦Limit i

number

[0129] The algorithms described herein may be used to find a power allocation that achieves SINR.

[0095]

[0130] For example, in some embodiments, to improve, and possibly optimize, a certain function rate, the input may be an RSRP value, noise, alpha, PMax, and Pmin, a function describing the achievable rate of a given SINR (e.g., f(SINR) = B bits / second), and a function g(B_i) which may associate that rate with some other value of interest, such as service requirements.

number

[0096] (Examples of achievable target values)

[0131] From the measurement report (MR) data, a total target SINR limit may be derived for any combination of UEs, for example, based on the following formula.

[0097] servRSRP - neigRSRP + servRSRP - neigRSRP > Total SINR limit

[0132] For example, in the example provided in Figure 14, Total SINR limit = -80.5 - (-97.5) + (-84.5) - (-87.5) = 20

[0133] In this example, a power allocation exists where target SINR + target SINR < 20, and this power allocation can be efficiently found. Therefore, an "average limit" can be found from historical data, and a set of achievable target values ​​can be selected. The method provided herein can reduce the cumbersome analysis required by network engineers. The imbalance may be as small as the noise power compared to the interference power.

[0098]

[0134] Tables of modulation and coding schemes (MCS) for PUSCH exist in various standards. Figure 15 shows an exemplary MCS table. A communicating device can switch MCS levels according to the SINR to ensure that as many bits as possible are transmitted. In some embodiments, the approximate SINR required to reach each MCS level can be found using the following formula: Approximate SINR = 10 * log_10(2^(spectral efficiency) - 1)

[0135] In various embodiments, the target value of SINR is set below the limit and above the SINR required for the highest achievable MCS level.

[0099] (Identifying user groups (clustering))

[0136] In some embodiments, the network operator may require checking both per-BS parameters and per-UE parameters. In some embodiments, all UEs within the BS range may be moved +15 / -16 dB away from P_0 via the use of P_UE.

[0100]

[0137] As shown in Figure 16, there are far more UEs than BS, which can be complex. In some embodiments, complexity may be reduced through clustering. In some embodiments, UEs periodically measure channels and report quantized values ​​of the UE's measurements. In some embodiments, UEs with similar channels report the same quantized values. For example, UE1 measuring servRSRP = -84.2 and neigRSRP = -87.9 and UE2 measuring servRSRP = -84.8 and neigRSRP = -87.3 may both report servRSRP = -84.5 and neigRSRP = -87.5. The quantized channels may be used as the cluster level. Furthermore, if a given cluster does not provide a good depiction of the UEs, additional MR data (e.g., the second strongest neighbor RSRP) may be used to subdivide the cluster into even smaller clusters. Controlling all UEs on the network is feasible and recommended. However, if controlling all UEs is not feasible, clustering makes per-UE power control computationally feasible.

[0101]

[0138] Since the number of groups (clusters) is usually less than the number of UEs, grouping (clustering) can reduce complexity. In some embodiments, UEs are grouped based on servRSRP and neigRSRP, as data has already been collected and is available from MR during association. For example, UEs may be grouped (or clustered) based on their reported servRSRP and neigRSRP values ​​(e.g., the strongest neigRSRP value). For example, UEi and k may be in the same group corresponding to BS A when they have the same servRSRP and neigRSRP and the same BS A: (servRSRP,neigRSRP)_BS=(-80,-82)_A

[0139] In some embodiments, smaller groups (clusters) may be created using additional data from the UE.

[0102] Example 1: Use the strongest neighboring RSRP and the second strongest neighboring RSRP. Example 2: If a UE reports its own (latitude, longitude), the network can create location-based groups. Example 3: Single element grouping by using data that uniquely identifies a single UE

[0140] For a given group, e.g., (servRSRP, neigRSRP), the network (e.g., RIC) sets up a function (i.e., a reference table) that returns the power allocation of all UEs within that group. For example, f(servRSRP,neigRSRP)_BS=P' P' is defined via an iterative algorithm using guidance derived from network data to establish feasible performance limits and, otherwise, to alert technicians (or higher levels of control) when power control is insufficient to adequately serve the UE.

[0103]

[0141] In various embodiments, possible scenarios for P' include: P' satisfies the service requirements, therefore we will not change P'. P' exceeds the service requirements, therefore we will reduce P'. P' is a case where the service requirements are not met, and therefore increases P'.

[0104]

[0142] After several iterations (for example, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 iterations, e.g., 6 iterations), P' is either sufficient or increases to its limit without improving service. If P reaches its limit without improving service, this indicates that power control alone is insufficient to provide the service.

[0105]

[0143] In some embodiments, UEs reporting the same quantization value may be clustered together. As shown in Figure 17, once clustered, all UEs within a single cluster are treated as if they were the same UE. Each cluster may then be iterated over according to a power control algorithm.

[0106] (Measurement report data / Key performance indicators)

[0144] In some embodiments, RSRP values ​​measured from the UE to its serving cell and adjacent cells may be obtained from the MR data. Depending on the mobility and different antennas of different UEs (e.g., mobile phones), in certain embodiments, the BS notifies the UE which power to use. In other embodiments, the BS broadcasts different cluster labels and powers, and the UE can then self-identify to a cluster and use the corresponding power. By broadcasting different cluster labels, the UE can be aware of whether / when it is in a particular cluster and use different powers. In some embodiments, the BS collects corresponding key performance indicators (KPIs) in a manner that knows which cluster they are input to. For example, cell A can measure the SINR from UE B (cell A is UE B's serving cell) and from that, determine that UE B is in cluster C.

[0107]

[0145] In some embodiments, SINR is measured according to the following protocol: For all ECI A: For all ECI Bs that have a UE that can reach _A: For all UEas in ECI A that can reach ECI B: For all UEb in ECI B that can reach ___A: ____P'_a=f(servRSRP_a,neigRSRP_a) _____P'_b=f(servRSRP_b,neigRSRP_b) ______Calculate the SINR using P'_a, P'_b, servRSRP_a, neigRSRP_a, servRSRP_b, and neigRSRP_b.

[0146] In some embodiments, E[SINR] is measured according to the following protocol: For all BS A: p_b = p(A's interference) = A's RB utilization rate, where p(A's interference) is the probability that A interferes. For all ECI Bs that have a UE that can reach _A: __p_a = p(B's interference) = B's RB utilization rate For all UEas of a BSA that can reach ___BS B: For all UE b of BS B that can reach A: _____P'_a=f(servRSRP_a,neigRSRP_a) _____P'_b=f(servRSRP_b,neigRSRP_b) Calculate the SINR using _____P'_a, P'_b, servRSRP_a, neigRSRP_a, servRSRP_b, and neigRSRP_b. Calculate the SNR using _____P'_a, P'_b, servRSRP_a, and servRSRP_b. _____E[SINR] is calculated as SINR*p(interference) + SNR*p(non-interference).

[0147] A function b(SINR) (see MCS table) may be defined that returns a number of bits for a given SINR (or SNR) value. The number of RBs used per second may be defined to obtain E[bits / second]. In some embodiments, E[bits / RB] is measured according to the following protocol:

[0148] For all BS A: p_b = p(Interference of A) = RB utilization rate of A For all ECI Bs that have a UE that can reach _A: _p_a = p(B's interference) = B's RB utilization rate For all UEa of BS A that can reach ___BS B: For all UE b of BS B that can reach A: ____P'_a=f(servRSRP_a,neigRSRP_a) ____P'_b=f(servRSRP_b,neigRSRP_b) ____Calculate SINR using P'_a, P'_b, servRSRP_a, neigRSRP_a, servRSRP_b, and neigRSRP_b. ____Calculate the SNR using P'_a, P'_b, servRSRP_a, and servRSRP_b E[bits / RB] is calculated as b(SINR)*p(interference)+b(SNR)*p(uninterference).

[0149] In some embodiments, E[SINR] is obtained from periodic MR. Other KPIs may be obtained from data collection. For example, if the coding-modulation scheme (CMS) and resource block utilization data are known, in some embodiments an estimate of average bits / second can be obtained from the SINR. The function f(E[SINR]) = E[b] bits / second may be inferred from the CMS. Other KPIs may be obtained with some delay from reports or higher layers.

[0108]

[0150] Figure 18 shows several embodiments of the process of wireless communication by UE for PUSCH power control. Referring to Figure 18, process 1800 starts at processing block 1802, where the processing logic associates the UE with the BS. Process 1800 continues to processing block 1804, where the processing logic measures RSRP data to the BS and reports it to the BS. Process 1800 continues to processing block 1806, where the processing logic obtains the P_0 and P_UE values ​​from the BS. Process 1800 then continues to processing block 1808, where the processing logic transmits using P_TX as defined by PUSCH. Next, in processing block 1810, the processing logic verifies whether the UE is still transmitting to the same BS. If the UE is not transmitting to the same BS, process 1800 moves to processing block 1816, where the processing logic associates the UE with a new BS. If the UE is transmitting to the same BS, process 1800 moves from processing block 1810 to processing block 1812, where the processing logic receives signals (e.g., data, control) from the BS. Process 1800 continues to processing block 1814, where the processing logic measures the RSRP to the adjacent BS, then moves to processing block 1804, where the processing logic measures the RSRP data and reports it to the BS associated with the UE. Process 1800 may continue the operation described in Figure 18.

[0109]

[0151] Figure 19 shows several embodiments of the process of wireless communication by BS for PUSCH power control. Referring to Figure 19, process 1900 begins with processing block 1902, where the processing logic initiates power control. Process 1900 continues with processing block 1904, where the processing logic receives an updated reference table from the network (e.g., RIC). As used herein, “reference table” refers to a function that returns power allocation to all UEs in a group, for example, via a table that provides P_0 and P_UE values ​​corresponding to UEs and / or clusters, given group labels. Process 1900 continues with processing block 1906, where the processing logic collects RSRP data from the UEs. Then, in processing block 1908, the processing logic determines, based on that data, which cluster each UE belongs to. Process 1900 continues with processing block 1910, where the processing logic determines the P_UE for each UE and reports its P_UE value to the UE. Subsequently, in processing block 1912, the processing logic collects SINR data from the UE. Process 1900 continues to processing block 1914, where the processing logic reports the RSRP and SINR data to the network (e.g., RIC), and in processing block 1916, the processing logic verifies that the network is continuing to update the UE's power parameters P_0 and P_UE (and the UE uses these values ​​to determine the transmit power). If the network is no longer updating the UE's transmit power, process 1900 continues to processing block 1918, where the processing logic stops updating the power control. If the network is still updating the UE's transmit power, process 1900 continues from processing block 1916 to processing block 1904, where the processing logic receives the updated reference table from the network (e.g., RIC). Process 1900 may continue with the steps described herein.

[0110]

[0152] Data collection can occur faster than the frequency at which data is reported to the network (e.g., RIC). Thus, the process can loop as shown in Figure 19, or data collection can be faster and / or more frequent than reporting data to the RIC in the process.

[0111]

[0153] Figure 20 shows several embodiments of the process of wireless communication by network for PUSCH power control. Referring to Figure 20, process 2000 starts in processing block 2002, where the processing logic initializes the BS with default P_0 value, cluster, and per-cluster P_UE value. Process 2000 continues to processing block 2004, where the processing logic sends the new power settings to the BS, and in processing block 2006, the processing logic collects network data from the BS. Process 2000 continues to processing block 2008, where the processing logic verifies whether the network is continuing to update the transmit power of the UE. If the network is no longer updating the power, process 2000 moves to processing block 2016, where the processing logic stops updating the power control. If the network is still updating the power, process 2000 moves from processing block 2008 to processing block 2010, where the processing logic verifies the service requirements (e.g., target SINR). Subsequently, process 2000 proceeds to processing block 2012, where the processing logic updates the power allocation. Process 2000 then proceeds to processing block 2014, where the processing logic verifies the power allocation. Process 2000 then moves to processing block 2004, where the processing logic transmits the new power settings to BS. Process 2000 may continue with the steps described herein.

[0112] (Requirements)

[0154] In some embodiments, the “requirements” are guided by the total SINR limit, QoE requirements, or information derived from the MCS table. For example, regarding the total SINR limit: neigRSRP0 - serv_RSRP0 + neigRSRP1 - serv_RSRP1 > Total SINR limit For example, if a requirement stipulates that a SINR higher than the total SINR limit is necessary, then that requirement cannot be met by power control alone and requires some scheduling method or other technique. For example, in some embodiments, if the next MCS level exceeds the total SINR limit, the network operates at a value below that limit.

[0113]

[0155] Figure 21 shows several embodiments of the process for initializing values, for example, as described in processing block 2002 in Figure 20. Referring to Figure 21, process 2100 begins with processing block 2102, where the processing logic receives historical data for its BS as input. Processing block 2102 is repeated for each BS. Process 2100 continues with processing block 2104, where the processing logic verifies whether there is any historical data available for that BS for that day and time or for the type of special event (e.g., a festival). As used herein, “historical data” refers to previous power allocations (P_0 or P_UE), clustering groups, and performance related to power allocations used to date. In some embodiments, historical data is used in the processes described herein to provide a suitable starting point for the algorithm.

[0114]

[0156] If there is historical data available for that BS regarding the date and time or type of special event, process 2100 moves from processing block 2104 to processing block 2106, where the processing logic initializes P_UE=0 for all UEs, with P_0 set to its default value (e.g., P_0=-80). Process 2100 then moves to processing block 2108, where the processing logic clusters as all combinations of (servRSRP, neigRSRP) within the range defined by one of the following options in various embodiments.

[0115]

[0157] Option 1 (less comprehensive): The default setting range for servRSRP is [>-75.5, -75.5, -76.5, ..., -94.5, -95.5, <-95.5], and for neigRSRP it is [>-80.5, -80.5, -81.5, ..., -104.5, -105.5, <-105.5], or some other fixed limited range;

[0158] Option 2 (higher coverage): The scope of servRSRP and neigRSRP is all 98 possible reported values ​​for RSRP; or

[0159] Option 3 (singular): Start with a single cluster and allow that cluster to be divided through iterations of the algorithm.

[0116]

[0160] Process 2100, following processing block 2112, obtains the initial power values ​​(i.e., P_0 and P_UE) and the cluster group.

[0117]

[0161] If, in processing block 2104, there is no historical data available for that BS regarding the day and time or the type of special event, process 2100 moves from processing block 2104 to processing block 2110, where the processing logic uses previously obtained values ​​for the day and time or the type of special event, and then process 2100 proceeds to processing block 2112, where the processing logic obtains the initial power values ​​(i.e., P_0 and P_UE) and the cluster group.

[0118]

[0162] Figure 22 shows several embodiments of a process for verifying requirements such as those described in processing block 2010 of Figure 20. Referring to Figure 22, process 2200 starts from processing block 2202, and the processing logic receives historical data of its BS as input. Processing block 2202 is repeated for each BS. "Historical data" may include previous power allocations (P_0 or P_UE), clustering groups, and the performance of said power allocations used so far. In some embodiments, historical data is used in the processes described herein to provide a suitable starting point for the algorithm.

[0119]

[0163] Process 2200 proceeds to processing block 2204, where the processing logic verifies whether all applicable BSs other than A (e.g., adjacent BS "~A") have been examined. If not all applicable BS~A have been examined, process 2200 moves to processing block 2206, where the processing logic examines the remaining BS~A, and then proceeds to processing block 2208, where the processing logic verifies whether BS~A has an MR indicating BS A as an adjacent BS. In some embodiments, the MR includes UEs, BSs, and relevant data characterizing their communication, and the relevant data characterizing the communication includes RB utilization data, servRSRP, neigRSRP, SINR value, or another key performance indicator (KPI) that depends on SINR (e.g., bitrate). If BS~A does not have an MR indicating BS A as an adjacent BS, process 2200 moves to processing block 2204, where the processing logic verifies whether all other applicable BS~A have been examined. If processing block 2208 has an MR that indicates BS ~A as an adjacent BS, process 2200 moves to processing block 2210, and the processing logic calculates the following for each cluster of A: Limit(A_C, ~A)=Σ(|neigRSRP_(A_C→ ~A)-servRSRP_(A_C)|+|neigRSRP_(~A→A)-serv_RSRP_(~A)|) Here, servRSRP_(A_C) is the serving RSRP from UE in cluster C of BS A to ECI A, and neigRSRP_(A_C→~A) is the neighboring RSRP value from UE in cluster C of BS A to ECI ~A. Process 2200 then proceeds to processing block 2204, where the processing logic verifies whether all other applicable BS ~A have been examined.

[0120]

[0164] If all applicable BS ~A have been examined in processing block 2204, process 2200 moves to processing block 2212, where the processing logic verifies whether all clusters of BS A have been examined. If not all clusters of BS A have been examined, process 2200 moves to processing block 2214, where the processing logic examines the cluster A_C that has not yet been examined. Process 2200 then moves to processing block 2216, where the processing logic calculates the average Limit(A_C, ~A) over all values ​​of ~A, which is

number

number

number

number

number

[0121]

[0165] Figure 23 illustrates several embodiments of the process for partitioning a cluster, such as those described in Figures 21 and 22. Referring to Figure 23, process 2300 begins at processing block 2302, where the processing logic receives the cluster to be partitioned and the available data from that cluster. Process 2300 continues to processing block 2304, where the processing logic verifies whether the cluster covers two or more unique values ​​for servRSRP. If the cluster covers two or more unique values ​​for servRSRP, process 2300 proceeds to processing block 2322, where the processing logic partitions the cluster into two new clusters with different servRSRP values ​​that are within the range of values ​​originally covered. Process 2300 then proceeds to processing block 2318, where the processing logic obtains a set of clusters with better granularity that can identify UEs.

[0122]

[0166] If, in processing block 2304, the cluster does not cover two or more unique values ​​for servRSRP, process 2300 moves to processing block 2306, where the processing logic verifies whether the cluster covers two or more unique values ​​for neigRSRP. If the cluster does cover two or more unique values ​​for neigRSRP, process 2300 proceeds to processing block 2314, where the processing logic splits the cluster into two new clusters with different neig.RSRP values ​​that are within the range of values ​​originally covered. Process 2300 then proceeds to processing block 2318, where the processing logic obtains a set of clusters with better granularity that can identify the UE.

[0123]

[0167] If, in processing block 2306, the cluster does not cover two or more unique values ​​for neigRSRP, process 2300 proceeds to processing block 2308, where the processing logic verifies whether there is more available data that can distinguish the UEs in this cluster. If there is more available data that can distinguish the UEs in this cluster, process 2300 proceeds to processing block 2316, where the processing logic splits the cluster into at least two new clusters with additional data values ​​for distinguishing them. Process 2300 then proceeds to processing block 2318, where the processing logic obtains a set of clusters with better granularity that can identify the UEs.

[0124]

[0168] If, in processing block 2308, there is no further available data that can distinguish the UEs within this cluster, then the measurement or data collection needs to be improved, and process 2300 proceeds to processing block 2310 to reset the data collected for this cluster. Process 2300 then proceeds to processing block 2320 to obtain a new set of clusters from which to collect new data. The data provided so far indicates that power control cannot improve the performance of this cluster.

[0125]

[0169] Figures 24A and 24B illustrate exemplary embodiments of splitting a cluster, such as those described in Figures 21 and 22. As shown in Figure 24A, if a user is under the cluster label (servRSRP,neigRSRP1)=(-80.5,-84.5), then option 1, described above in relation to Figure 21, can create new clusters labeled (servRSRP,neigRSRP1,neigRSRP2)=(-80.5,-84.5,-90.5) and (-80.5,-84.5,92.5), each cluster having a different neigRSRP relative to another neighbor BS2, as shown in Figure 24B.

[0126]

[0170] Figure 25 shows several embodiments of the process for updating power allocations, for example, as described in Figure 20. Referring to Figure 25, process 2500 begins at processing block 2502, where the processing logic receives historical data (e.g., MR) for its BS as input. Processing block 2502 is repeated for each BS. In some embodiments, MR includes any relevant data characterizing the BS, such as RB utilization data, servRSRP, neigRSRP, SINR value, or another key performance indicator (KPI) that depends on SINR (e.g., bitrate). Process 2500 continues to processing block 2404, where the processing logic verifies whether all clusters have been examined. If not all clusters have been examined, process 2500 proceeds to processing block 2506, where the processing logic examines cluster C that has not yet been examined, and then proceeds to processing block 2508, where the processing logic verifies whether the cluster's SINR (SINR_C) exceeds the highest service requirement. If SINR_C exceeds the highest requirement, process 2500 proceeds to processing block 2514, and the processing logic is as follows: P_(C,A) = P_(C,A) - (SINR_C - highest requirement) Update.

[0127]

[0171] Subsequently, process 2500 proceeds to processing block 2518, where the processing logic rounds P_(C,A) to the nearest integer value, and proceeds to processing block 2520, where the processing logic retrieves the updated P_(C,A) for all clusters C associated with BS A.

[0128]

[0172] If the cluster's SINR (SINR_C) does not exceed the highest requirement in processing block 2508, process 2500 proceeds to processing block 2510, where the processing logic verifies whether SINR_C falls below the lowest requirement. If SINR_C falls below the lowest requirement, process 2500 proceeds to processing block 2516, where the processing logic verifies whether SINR_C falls below the lowest requirement. P_(C,A) = P_(C,A) + (Lowest requirement - SINR_C) Update.

[0129]

[0173] Next, process 2500 proceeds to processing block 2518, where the processing logic rounds P_(C,A) to the nearest integer value, and then in processing block 2520, the processing logic retrieves the updated P_(C,A) for all clusters C associated with BS A.

[0130]

[0174] If SINR_C does not fall below the lowest requirement in processing block 2150, process 2500 proceeds to processing block 2512, and P_(C,A) remains unchanged.

[0131]

[0175] If all clusters have been examined in processing block 2504, process 2500 proceeds to processing block 2520, where the processing logic retrieves the updated P_C.A for all cluster C associated with BS A.

[0132]

[0176] In some embodiments, the approximate SINR required to reach each level may be inferred from an MCS index table, such as the one provided in Figure 15. These approximations may be used as guidance regarding the highest and lowest SINR requirements described above.

[0133]

[0177] Figure 26 shows several embodiments of the process for verifying power allocation, such as the one described in processing block 2014 of Figure 20. Referring to Figure 26, process 2600 begins at processing block 2602, where the processing logic receives the power allocation and historical data (e.g., MR) of its BS as input. Processing block 2602 is repeated for each BS. In some embodiments, MR includes any relevant data characterizing the BS, such as RB utilization data, servRSRP, neigRSRP, SINR value, or another key performance indicator (KPI) that depends on SINR (e.g., bitrate). Process 2600 continues to processing block 2604, where the processing logic,

number

number

[0134]

[0178] Process 2600 follows processing block 2604, and the processing logic is:

number

number

[0135]

[0179] If P_Max-P_Min<32 in processing block 2606, process 2600 proceeds to processing block 2608, where the processing logic verifies whether P_0-P_Min≦-16 and P_Max-P_0≦15. If P_0-P_Min≦-16 and P_Max-P_0≦15, process 2600 proceeds to processing block 2610, where the processing logic leaves P_0 unchanged. Process 2600 then proceeds to processing block 2616, where the processing logic constructs a reference table so that the UE of cluster C uses P_UE=P_(C,A)-P_0, and then in processing block 2618, the processing logic obtains a reference table of P_0 and P_UE values ​​that will be used by each cluster of its BS.

[0136]

[0180] If, in processing block 2608, P_0 - P_Min > -16 or P_Max - P_0 > 15, process 2600 proceeds to processing block 2614, and the processing logic performs one of the following three options: A: Set P_0 = P_Min + 16 B: Set P_0 = P_Max - 15 Select P_0 such that C:P_0-P_Min≦16 and P_Max-P_0≦15. Regarding the selection from these options, option A prioritizes maintaining lower interference, option B prioritizes achieving a higher target SINR, and option C is for cases where it is desirable to prioritize or otherwise impose restrictions on transmit power.

[0137]

[0181] Process 2600 proceeds to processing block 2616, where the processing logic constructs a reference table so that the UE of cluster C uses P_UE=P_(C,A)-P_0, and then in processing block 2618, the processing logic obtains a reference table of P_0 and P_UE values ​​that will be used by each cluster of its BS.

[0138]

[0182] In some embodiments of wireless communication relating to a network (e.g., RIC) for push power control, the network (e.g., RIC) performs the following operations: Obtain service requirements definitions for the BS that it controls (from data analysts, engineers, or higher-level controllers); Data identifying UE groups can be collected periodically, and KPIs (multiple KPIs) can be calculated for each UE group; Given the data and service requirements for each BS, a function f(servRSRP,neigRSRP)_BS is defined for all BS controlled by that RIC. For example, from f(servRSRP,neigRSRP)_BS=f(-80,-82)_A, UE i and UE k will obtain the P'=P_UE+P_0 value for use in PUSCH. For example, P_TX=min(23,P'+αserv_RSRP+C)); Update each BS with the new f(servRSRP,neigRSRP)_BS for that BS; Collect data; Measurement reports, throughput, schedules, and all available data that can be used to obtain KPI measurements and distinguish UEs. For example, UEs may be grouped according to their respective (serv_RSRP,neigRSRP) combinations and schedules that can calculate MR, power allocation, and throughput. Instead of each UE being uniquely identified, multiple UEs may have the same (serv_RSRP, neigRSRP). Based on the data and the given service requirements for each BS, the function f(serv_RSRP,neigRSRP)_BS=P' is controlled for each BS; f(serv_RSRP,neigRSRP)_BS informs the UE in the BS that when the UE looks at local information (serv_RSRP,neigRSRP), the UE should use P_TX=min(23, P' +αserv_RSRP+C), i.e., P'=P_UE+P_0, and Update each ECI with its new f(serv_RSRP,neigRSRP)_ECI.

[0139]

[0183] Figure 27 illustrates the relationship between power (P) individuality and performance between UEs or BSs. Performance may improve as power individuality increases, in the following order: Everything in the network has the same P (low performance); Each BS has its own P; Each cluster of UEs within each BS has its own P; Each UE has its own unique P (high performance).

[0184] Complexity also increases in the order described above, as the individuality of the power increases.

[0140]

[0185] Figure 28 shows several embodiments of the process of wireless communication by UE for PUSCH power control. Referring to Figure 28, process 2800 starts in processing block 2802, where the processing logic associates the UE with the BS. Process 2800 continues in processing block 2804, where the processing logic measures RSRP data to the BS, and then in processing block 2806, the processing logic reports the RSRP data to the BS. Process 2800 continues in processing block 2808, where the processing logic obtains P_0 and P_UE values ​​from the BS, and then in processing block 2810, the processing logic transmits them using P_TX as defined by PUSCH.

[0141]

[0186] Figure 29 shows several embodiments of the process of wireless communication by BS for PUSCH power control. Referring to Figure 29, process 2900 starts at processing block 2902, where the processing logic initiates power control. Process 2900 continues at processing block 2904, where the processing logic receives an updated reference table from the network (e.g., RIC). Process 2900 continues at processing block 2906, where the processing logic collects RSRP data from the UEs. Process 2900 continues at processing block 2908, where the processing logic determines, based on that data, which cluster each UE belongs to (e.g., RSRP data is used for initialization). Process 2900 continues at processing block 2910, where the processing logic determines the P_UE for each UE and reports its P_UE value to the UE. Next, process 2900 proceeds to processing block 2912, where the processing logic collects SINR data from the UE, and then in processing block 2914, the processing logic reports the RSRP and SINR data to the network (e.g., RIC).

[0142]

[0187] Figure 30 shows several embodiments of the process of wireless communication over a network for PUSCH power control. Referring to Figure 30, process 3000 starts at processing block 3002, where the processing logic initializes the BS with default P_0 values, clusters, and per-cluster P_UE values. Process 3000 continues at processing block 3004, where the processing logic sends the new power settings to the BS, and then at processing block 3006, the processing logic collects network data from the BS. Process 3000 continues at processing block 3008, where the processing logic verifies the requirements. Process 3000 continues at processing block 3010, where the processing logic updates the power allocation, and then at processing block 3012, where the processing logic verifies the power allocation.

[0143]

[0188] The techniques disclosed herein are shown in relation to single-antenna UE and single-antenna BS, but these techniques can also be applied in MIMO settings with appropriate modifications. One simple approach is to translate the MIMO target SINR requirement into a single-antenna (SISO) scenario and directly apply the techniques described herein in that context as well. Another, more attractive option, is to directly consider the effects of a multi-antenna array on reception at a base station. In this case, in some embodiments, multiple signals received across the array can be linearly combined into a single signal having a higher SINR than the signals at each individual antenna element. These are well-known methods in the art, and the techniques disclosed can be applied directly at the output of a linear combiner.

[0144]

[0189] Some of the processes described above may be implemented using logic circuits, such as dedicated logic circuits, or using a microcontroller or other form of processing core that executes program code instructions. Thus, the processes taught in the above description may also be performed by program code, such as machine-executable instructions, that cause the machine executing the instructions to perform a specific function. In this context, “machine” may refer to a machine that translates intermediate (or “abstract”) instructions into processor-specific instructions (e.g., an abstract execution environment such as a “virtual machine” (e.g., a Java virtual machine), an interpreter, a common language runtime, a high-level language virtual machine, etc.), and / or an electronic circuit (e.g., a “logic circuit unit” implemented with transistors) located on a semiconductor chip designed to execute instructions, such as a general-purpose processor and / or a special-purpose processor. The processes taught in the above description may also be performed (as a substitute for or in combination with a machine) by an electronic circuit designed to execute the process (or part thereof) without the execution of program code.

[0145]

[0190] This disclosure also relates to an apparatus for performing the operations described herein. The apparatus may be specifically constructed for the required purpose, or may comprise a general-purpose computer that is selectively operated or reconfigured by a computer program stored in the computer. Such computer programs may be stored on a computer-readable storage medium, which is any type of disk, including but not limited to floppy disks, optical disks, CD-ROMs, and magneto-optical disks, read-only memory (ROM), RAM, EPROM, EEPROM, magnetic or optical cards, or any type of medium suitable for storing electronic instructions, each coupled to a computer system bus.

[0146]

[0191] A machine-readable medium includes any mechanism for storing or transmitting information in a form readable by a machine (e.g., a computer). For example, machine-readable media include read-only memory ("ROM"), random-access memory ("RAM"), magnetic disk storage media, optical storage media, flash memory devices, and the like.

[0147]

[0192] A manufactured product may be used to store program code. A manufactured product for storing program code may, but is not limited to, one or more memories (e.g., one or more flash memories, random access memories (static, dynamic, or otherwise)), optical discs, CD-ROMs, DVD-ROMs, EPROMs, EEPROMs, magnetic or optical cards, or other types of machine-readable media suitable for storing electronic instructions. Program code may also be downloaded from a remote computer (e.g., a server) to a requesting computer (e.g., a client) via data signals embodied in a propagation medium (e.g., via a communication link (e.g., a network connection)).

[0148]

[0193] The detailed descriptions above are presented as algorithms and symbolic representations of operations on data bits in computer memory. These algorithmic descriptions and representations are means used by those skilled in data processing techniques to most effectively communicate the content of their research to others skilled in the art. An algorithm, as used herein and generally, is considered a self-sufficient sequence of actions leading to a desired result. An action is one that requires the physical manipulation of a physical quantity. Usually, but not always, these quantities take the form of electrical or magnetic signals that can be stored, transferred, combined, compared, and otherwise manipulated. Sometimes, particularly because of their widespread use, it has proven convenient to refer to these signals as bits, values, elements, symbols, characters, terms, digits, etc.

[0149]

[0194] However, it should be kept in mind that all such terms and similar terms should be associated with the physical quantities in question and are merely convenient labels applicable to those quantities. As is evident from the above explanation, unless otherwise specified, explanations throughout the explanation that use terms such as “select,” “decide,” “receive,” “form,” “group,” “aggregate,” “generate,” and “remove” refer to the operations and processes of a computer system or similar electronic computing device that manipulate data represented as physical (electronic) quantities within the registers and memory of a computer system to convert it into other data similarly represented as physical quantities within the computer system memory or registers or other such information storage, transmission, or display device.

[0150]

[0195] The processes and representations presented herein are essentially independent of any particular computer or other device. Various general-purpose systems may be used with the programs in accordance with the teachings herein, or it may be convenient to construct more specialized devices for performing the operations described. The structures required for various such systems will become apparent from the following description. In addition, this disclosure is not described with reference to any particular programming language. It will be recognized that various programming languages ​​may be used to carry out the teachings of this disclosure described herein.

[0151]

[0196] It is well understood that the use of personally identifiable information should comply with privacy guidelines and practices that are generally recognized as meeting or exceeding industry or administrative requirements for maintaining user privacy. In particular, personally identifiable information data should be managed and handled in a manner that minimizes the risk of unintended or unauthorized access or use, and the nature of permitted use should be clearly indicated to the user.

[0152]

[0197] The above description merely illustrates some exemplary embodiments of the present disclosure. Those skilled in the art will readily recognize that various modifications can be made from such description, accompanying drawings, and claims without departing from the spirit and scope of the present disclosure.

Claims

1. A method of wireless communication over a network for power control of a physical uplink shared channel (PUCH), The step involves running a power control algorithm over multiple iterations until the signal-to-interference plus noise ratio (SINR) falls within an acceptable level from the target SINR, with each iteration being performed for each cell in one or more sets of cells. To obtain the SINR associated with the user device (UE) in each of the aforementioned cells, If it is determined that the SINR exceeds the target SINR, the transmission power of the UE in each cell is reduced, and If it is determined that the SINR falls below the target SINR, the transmission power is increased. The steps to be performed include, The steps include updating the power allocation between UEs within each of the aforementioned cells. Methods that include...

2. The method according to claim 1, wherein the UEs within each cell are divided into clusters, and the power control algorithm is executed for each cluster of UEs within each cell.

3. A step of initializing the first base station (BS) with the default cluster group and power value per cluster, The steps include transmitting the new power settings to the first BS, The steps include: collecting network data from the first BS and The method according to claim 1, further comprising:

4. The aforementioned power value includes P_0 and P_UE, P_0 is a predetermined power parameter for all UEs served by the first BS, The method according to claim 3, wherein P_UE is a power parameter of a specific UE.

5. The step of initializing the cluster groups of the first BS and their power values ​​is: Obtaining historical data for the first BS, Determining that past data of the first BS having the same day, time, or type of special event is available, Based on the past data of the first BS having the same day, time, or type of special event, the initial power value and cluster group are obtained. The method according to claim 3, including the method described in claim 3.

6. The step of initializing the power value and cluster group of the first BS is: Obtaining historical data for the first BS, Determining that past data for the first BS having the same day, time, or type of special event is unavailable, Initialize the P_0 value to its default value, Initialize the P_UE value to 0 for all UEs, Initialize the cluster group as all combinations of the reference signal received power (RSRP) of the serving cells within range (servRSRP) and the RSRP of the adjacent cells (neigRSRP). The method according to claim 3, including the method described in claim 3.

7. The step to initialize the cluster group is, Set the default range for servRSRP and the default range for neigRSRP as fixed, restricted ranges. Set the default ranges for servRSRP and neigRSRP as all possible reporting values ​​for RSRP, or Set the initial cluster group as a single cluster. The method according to claim 6, including the method described in claim 6.

8. Receiving past measurement reports (MR) of the first BS, Receiving past MR broadcasts from adjacent BS channels. For all MRs of adjacent BS that indicate the first BS as an adjacent BS, and for all MRs of the first BS that indicates the adjacent BS as an adjacent BS, calculate the per-cluster limit value (Limit(A_C, ~A)) in the first BS. Calculate the average limit value across all values ​​in the cluster in the first BS or the adjacent BS. Determining whether the average SINR from the data of the cluster is between the average limit value and the lowest requirement, The highest requirement is set to a value lower than the average limit value, and Setting the lowest requirement to a value lower than the highest requirement. The method according to claim 3, further comprising the step of confirming the requirements for the cluster of the first BS or the adjacent BS.

9. The step of confirming the aforementioned requirements is, Determining whether the average SINR from the data of the cluster exceeds the average limit value or falls below the lowest requirement of the cluster, To evaluate whether to divide the aforementioned cluster into two or more groups. The method according to claim 8, further comprising:

10. The method according to claim 8, wherein the MR includes servRSRP, neigRSRP, signal power minus interference and noise power (SINR), and the power value.

11. The method according to claim 8, wherein the limit value per cluster (Limit(A_C, ~A)) is based on at least one adjacent cell and serving cell and each RSRP value related to the UE in the cluster of the first BS and the UE in the adjacent BS.

12. The limit value per cluster (Limit(A_C, ~A)) is given by the formula Limit (A_C,~A)=Σ(|neigRSRP_(A_C→~A)-servRSRP_(A_C)|+|neigRSRP_(~A→A)-servRSRP_(~A)|) Calculated based on, neigRSRP_(A_C→~A) is the adjacent RSRP value from UE in cluster C of the first BS to the adjacent BS, servRSRP_(A_C) is the serving RSRP value from UE in cluster C of the first BS to the first BS, neigRSRP_(~A→A) is the adjacent RSRP value from UE in the adjacent BS to the first BS, The method according to claim 8, wherein serving RSRP_(~A) is the serving RSRP value from UE to the adjacent BS in the adjacent BS.

13. The step of evaluating whether to divide the cluster into two or more groups is: Determine that the cluster covers two or more unique servRSRP values, and divide the cluster into two new clusters having different servRSRP values ​​within the range of the originally covered servRSRP. Determine that the cluster covers two or more unique neigRSRP values, and divide the cluster into two new clusters having different neigRSRP values ​​within the range of the neigRSRP values ​​that were originally covered, or Determine if additional data is available to distinguish UEs within the cluster, and divide the cluster into two or more new clusters based on the values ​​of the additional data. The method according to claim 9, including the method described in claim 9.

14. The values ​​of the aforementioned additional data are Next, the RSRP value of the strong adjacent BS, The s_TMSI value of the aforementioned UE, or The latitude and longitude data of the aforementioned UE, or the unique identifier number of the aforementioned UE The method according to claim 12, including the method described in claim 12.

15. When evaluating whether to divide a cluster into two or more groups, It is determined that the cluster does not cover two or more unique servRSRP values, nor two or more unique neigRSRP values, and that no additional data is available to distinguish UEs within the cluster. The method according to claim 9, which improves the collection of measured values ​​or data from the cluster.

16. The step of updating the power allocation is, Receiving past measurement reports (MR) from BS, If the SINR of the BS cluster exceeds the highest requirement, the UE transmit power of the cluster shall be updated according to the following formula: Updated P_(C,A) = Current P_(C,A) - (SINR_C - Highest requirement) If the SINR of the cluster falls below the lowest requirement, the UE transmission power of the cluster shall be updated according to the following formula: Updated P_(C,A) = Current P_(C,A) + (Lowest requirement - SINR_C), and, If the SINR of the cluster is between the lowest requirement and the highest requirement, maintain the current UE transmit power of the cluster. The method according to claim 3, including the method described in claim 3.

17. The step of rounding the UE transmission power of the cluster to the nearest integer value. The method according to claim 16, further comprising:

18. A device comprising one or more processors, wherein the processors are This involves running a power control algorithm over multiple iterations until the signal-to-interference plus noise ratio (SINR) falls within an acceptable level from the target SINR, with each iteration being performed for each cell in one or more sets of cells. To obtain the SINR associated with the user device (UE) in each of the aforementioned cells, If it is determined that the SINR exceeds the target SINR, the transmission power of the UE in each cell is reduced, and If it is determined that the SINR falls below the target SINR, the transmission power is increased. This includes performing, To update the power allocation between UEs within each of the aforementioned cells. A device configured to perform operations including those mentioned above.

19. Updating the aforementioned power allocation Receiving past measurement reports (MR) from BS, If the SINR of the BS cluster exceeds the highest requirement, the power of the cluster shall be updated according to the following formula: Updated P_(C,A) = Current P_(C,A) - (SINR_C - Highest requirement) If the SINR of the cluster falls below the lowest requirement, the power of the cluster shall be updated according to the following formula: Updated P_(C,A) = Current P_(C,A) + (Lowest requirement - SINR_C), and, If the SINR of the cluster is between the lowest requirement and the highest requirement, maintain the current power of the cluster. The apparatus according to claim 18, including the following:

20. A non-temporary machine-readable medium having executable instructions, wherein the instructions are configured in one or more processing units. The power control algorithm is executed over multiple iterations until the signal-to-interference plus noise ratio (SINR) falls within an acceptable level from the target SINR, with each iteration being performed for each cell in one or more sets of cells. To obtain the SINR associated with the user device (UE) in each of the aforementioned cells, If it is determined that the SINR exceeds the target SINR, the transmission power of the UE in each cell is reduced, and If it is determined that the SINR falls below the target SINR, the transmission power is increased. This includes performing, To update the power allocation between UEs within each of the aforementioned cells. A non-temporary machine-readable medium that enables the execution of a method including [a specific method].