Amarisoft

NR SA Power Control

This tutorial is about how to configure UL power control parameter and verify whether the power control works. The type of power control being configured in this tutorial is for closed loop power control. The way this power control works with Amarisoft gNB is as follows.

NOTE : You may use this feature to let UE to transmit max power.  If you set dpc_snr_target very high (e.g, 40) which can never been met, gNB would always send TPC UP and UE Tx power would eventually reach the p_max power set in SIB.

NOTE : Amarisoft Callbox does not support feature to set a specific UL power value or directly set UL max power or set a specific TPC pattern (e.g, All 0, All1, alternating).

Table of Contents

Introduction

Uplink (UL) power control is a critical aspect of radio access network configuration, ensuring optimal transmission power from user equipment (UE) to the base station (gNB) to maintain link quality, minimize interference, and optimize overall system performance. In 5G and advanced LTE networks, closed loop power control mechanisms dynamically adjust UE transmit power based on real-time measurements and feedback, allowing adaptation to varying radio conditions. Amarisoft gNB provides a flexible software environment for experimenting with and configuring these power control parameters, specifically through the adjustment of SNR (Signal-to-Noise Ratio) targets for Physical Uplink Control Channel (PUCCH) and Physical Uplink Shared Channel (PUSCH). By setting these targets, the gNB can instruct the UE to increase or decrease its transmit power via Transmit Power Control (TPC) commands embedded in Downlink Control Information (DCI) messages. This process is integral to maintaining reliable uplink communication, particularly in dense deployments or challenging RF environments. Understanding and effectively configuring UL power control is essential for network engineers and researchers aiming to fine-tune network performance, troubleshoot uplink issues, or explore the behavior of power control algorithms in a controlled testbed.

Summary of the Tutorial

This tutorial outlines the procedures for testing Uplink Power Control in a 5G NR Standalone (SA) setup using a callbox and UE. The focus is on validating the power control mechanism for PUCCH and PUSCH channels based on SNR thresholds configured at the gNB.

The methodology outlined ensures thorough validation of uplink power control by dynamically adjusting receiver gain and analyzing both real-time and logged data to confirm proper TPC operation based on SNR measurements.

Test Setup

Test setup for this tutorial is as shown below.  This is just for low layer testing, you may not need any complicated IP layer setup.

TestSetup Callbox UE 1sdr 01

Key Configuration Parameters

Followings are important configuration parameters for this tutorial. You may click on the items for the descriptions from Amarisoft documents.

Configuration

I have used gnb-sa-powercontrol-cl.cfg which is copied and modified from gnb-sa.cfg.

NR SA PowerControl Config 01

I am using the default mme (mme-ims.cfg), ims config as shown below.

NR SA PowerControl Config 02

Following is the configuration in gnb-sa-powercontrol-cl.cfg. dpc_snr_target is the important parameter for UL power control. This parameter is configured separately for PUCCH and PUSCH so that we can set the criteria independently for PUSCH and PUCCH.

If PUCCH SNR estimated by gNB is lower than dpc_snr_target value, gNB send TPC UP via DCI and if the SNR is greater than the value, gNB send TPC down via DCI.

NR SA PowerControl Config 03

NR SA PowerControl Config 04

If PUSCH SNR estimated by gNB is lower than dpc_snr_target value, gNB send TPC UP via DCI and if the SNR is greater than the value, gNB send TPC down via DCI.

NR SA PowerControl Config 05

Perform the Test

Check the cell configuration and see if it is configured as intended.

NR SA PowerControl Run 01

Power on UE and get it attached.

NR SA PowerControl Run 02

Confirm that the attach is complete and UE get the IP address.

NR SA PowerControl Run 03

Try continuous ping from callbox to UE.  Power Control is for Uplink channel power. So we need UE to generate UL channel traffic continuously. Ping would be the simplest way to do it.

NR SA PowerControl Run 04

Tweak rx_gain until it hits snr threshold that you specified in the configuration. Usually the snr would goes under the threshold temperarily and recover quickly as power control works.

NR SA PowerControl Run 05

NR SA PowerControl Run 06

NR SA PowerControl Run 07

Log Analysis

Sample Log

Check UL power profile and see if there is any points where the power control threshold are met. Hit [Analysis] button and then select [SNR] tab and pick the UE ID that you want to check.

NR SA PowerControl Log 01

Check TPC plot and see if how much  and where TPC comments were sent. For this plot, you need to select a specific UE in 'UE ID' pannel. 'Global' would not produce any plot.

NOTE : The plot shown below is the average value of TPC value over a certain time period. If you are using the latest version of callbox software, you can plot the average value and instantaneous value simultaneously as shown in this tutorial.

NR SA PowerControl Log 02

Filter the channels that help you check out TPC operation. I selected BCCH,CCCH,DCCH to display RRC message and selected PDCCH to check TPC value contained in DCI.

NR SA PowerControl Log 03

See if the tpc_comman field in DCI carries the proper values as you intended. tpc_command=2 indicates "increase the power", 1 indicates "stay same" and 0 indicates 'decrease the power'.

NR SA PowerControl Log 04