news 2026/4/17 23:53:24

5G NR功率控制实战:手把手教你用Wireshark和UE Log分析PRACH与PUSCH发射功率

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
5G NR功率控制实战:手把手教你用Wireshark和UE Log分析PRACH与PUSCH发射功率

5G NR功率控制实战:从信令解析到问题定位的全流程指南

当基站侧监控到某小区边缘用户上行速率骤降50%时,我们首先在网管系统发现该区域UE的PUSCH发射功率普遍达到23dBm上限。这种典型的上行受限场景,往往需要网络优化工程师同时分析空口信令和终端日志才能准确定位。本文将演示如何通过Wireshark抓包解析SIB1关键参数,结合UE内部测量报告,逐步还原PRACH与PUSCH的功率计算全流程。

1. 问题定位与环境准备

在开始分析前,需要准备以下工具和环境配置:

  • Wireshark 4.0+:安装3GPP NR协议解析插件,建议配置显示过滤器mac-nr && !(mac-nr.direction == 1)专注下行信令
  • 商用终端工程模式:开启QXDM日志记录功能,重点关注以下日志类型:
    • NR5G RRC OTA Messages(原始信令解码)
    • NR5G PHY Measurements(RSRP/SNR实时测量)
    • NR5G MAC UL Power Control(发射功率决策过程)
  • 测试终端配置
    # 高通芯片终端ADB命令 adb shell setprop persist.vendor.radio.enable_engineering 1 adb shell am broadcast -a com.qualcomm.intent.action.ENGINEERING_MODE_ENABLE

注意:现场测试时建议关闭NSA锚点切换功能,避免4G B1事件干扰5G功率控制过程

典型的问题定位流程可分为三个阶段:

  1. 现象确认阶段:通过网管KPI统计锁定问题小区与时隙
  2. 数据采集阶段:同步抓取空口信令和终端内部日志
  3. 关联分析阶段:交叉验证理论公式与实际测量值

2. PRACH功率计算深度解析

PRACH作为随机接入的"敲门砖",其功率设置直接影响接入成功率。我们从一个实际案例出发:某厂站点的prach-ConfigurationIndex配置为202时,UE计算出的发射功率与协议预期存在5dB偏差。

2.1 关键参数提取流程

通过Wireshark解析SIB1中的RACH-ConfigGeneric信元:

RACH-ConfigGeneric ::= { prach-ConfigurationIndex 202, msg1-SubcarrierSpacing kHz15, preambleReceivedTargetPower -100, powerRampingStep dB2, ss-PBCH-BlockPower -6 }

按照协议TS 38.211 Table 6.3.3.2-2,prach-ConfigurationIndex 202对应的Preamble format应为B4。但终端日志显示实际按C2格式计算:

# 功率计算差异示例 delta_preamble_b4 = 3 * 0 # μ=0 for 15kHz delta_preamble_c2 = 8 # 查表TS 38.321 7.3-1 power_diff = delta_preamble_c2 - delta_preamble_b4 # 5dB差异

2.2 常见配置错误排查

下表列举了PRACH功率计算中的典型配置问题:

问题类型检测方法修正方案
前导格式映射错误对比TS 38.211与终端log更新基站prach-ConfigurationIndex
msg1-SubcarrierSpacing未配置检查SIB1是否存在该参数显式配置SCS参数
DELTA_PREAMBLE计算错误验证μ值与格式对应表核对TS 38.321最新版本

在路损计算环节,需要特别注意:

  1. 参考信号功率基准:部分厂商设备将ss-PBCH-BlockPower定义为SSB总功率而非单RE功率
  2. RSRP滤波方式:终端可能采用Layer 3滤波而非物理层测量原始值

3. PUSCH功率控制实战分析

PUSCH功率控制涉及多参数动态调整,我们以Msg3和业务信道为例,拆解计算过程。

3.1 Msg3功率计算要点

Msg3作为首次调度的PUSCH传输,其特殊之处在于:

  • 采用j=0配置集
  • 功率调整量与PRACH尝试次数相关
  • msg3-DeltaPreamble存在2倍换算关系

从终端日志提取的关键参数:

{ "frame": 754, "slot": 8, "p0_nominal": -100, "msg3_delta": 8, "rb_count": 3, "pathloss": 105, "power_ramping": 6 }

实际计算公式展开:

P_Msg3 = (P0 + ΔMsg3) + 10log(2*RB) + α*PL + ΔTF + ΔRAM = (-100 + 8) + 10log6 + 1*105 + 0 + 2 = 23dBm

关键发现:当msg3-DeltaPreamble配置为4时,实际应用值应为8dB(4*2),这是协议明文规定但常被忽略的细节

3.2 业务信道功率控制

动态调度PUSCH的功率计算复杂度主要体现在:

  1. 配置集选择:根据调度类型自动切换j值
  2. 闭环调整机制:TPC指令的累积方式影响最终结果

典型问题排查案例:

# 终端日志显示异常功率波动 [897:18] PUSCH Power: 23dBm (Expected 18dBm) [897:22] PUSCH Power: 15dBm (Expected 20dBm)

经分析发现:

  • 首次调度使用j=2配置集(p0=-76, α=0.8)
  • 第二次调度因SRI触发切换至j=3配置集
  • 但p0-AlphaSets未正确配置导致参数继承异常

4. 工具链协同分析方法

高效的问题定位需要多工具协同:

  1. 信令关联分析

    graph LR Wireshark -->|SIB1参数| Excel模板 QXDM日志 -->|实时测量| Excel模板 Excel模板 --> 功率计算验证
  2. 关键参数追踪表

参数名信令来源终端日志位置协议章节
preambleReceivedTargetPowerSIB1RRC OTA Msg38.331
higher layer filtered RSRP-PHY Measurements38.133
PREAMBLE_POWER_RAMPING_COUNTER-MAC UL Power Control38.321
  1. 自动化校验脚本
def verify_prach_power(config_index, target_power): from nr_power_calc import get_preamble_format format = get_preamble_format(config_index) assert format in ['B4','C2'], f"Unexpected format {format}" # 后续计算逻辑...

5. 典型问题解决方案库

根据实际优化经验,总结高频问题应对策略:

  1. PRACH功率不足

    • 检查prach-ConfigurationIndex映射表版本
    • 确认msg1-FDM参数是否影响实际发送机会
    • 验证SSB波束与PRACH关联关系
  2. PUSCH功率震荡

    # 在基站侧检查RRC重配置消息 grep -A 10 "P0-PUSCH-AlphaSet" rrc_reconfig.log
    • 确认twoPUSCH-PC-AdjustmentStates配置一致性
    • 检查pathlossReferenceRS是否频繁切换
  3. Msg3功率异常

    • 抓取RAR消息中的UL Grant字段
    • 核对msg3-DeltaPreamble的2倍换算
    • 确认PREAMBLE_POWER_RAMPING_COUNTER统计逻辑

在最近某省会城市5G网络优化中,通过上述方法发现17%的站点存在msg3-DeltaPreamble配置偏差,修正后边缘用户接入成功率提升22%。实际操作中发现,不同芯片平台对powerRampingStep的处理存在细微差异,建议针对主流终端型号建立功率补偿值对照表。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 23:48:15

TC397以太网开发实战:从零配置GETH模块到RGMII引脚调试全流程

TC397以太网开发实战:从零配置GETH模块到RGMII引脚调试全流程 1. 开发环境搭建与硬件准备 在开始TC397的以太网功能开发前,需要做好以下准备工作: 硬件清单: KIT-A2G-TC397-5V-TFT开发板RTL8211F PHY芯片评估板(或兼容…

作者头像 李华
网站建设 2026/4/17 23:47:18

题解:洛谷 B2014 与圆相关的计算

本文分享的必刷题目是从蓝桥云课、洛谷、AcWing等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。 欢迎大家订阅我的专栏:算法…

作者头像 李华
网站建设 2026/4/17 23:44:14

如何快速上手Kaf:从零开始的Kafka集群管理教程

如何快速上手Kaf:从零开始的Kafka集群管理教程 【免费下载链接】kaf Modern CLI for Apache Kafka, written in Go. 项目地址: https://gitcode.com/gh_mirrors/ka/kaf Kaf是一款用Go语言编写的现代Apache Kafka命令行工具,它提供了简洁高效的方式…

作者头像 李华
网站建设 2026/4/17 23:42:15

如何用Bliss.js编写可维护的JavaScript代码:最佳实践与技巧

如何用Bliss.js编写可维护的JavaScript代码:最佳实践与技巧 【免费下载链接】bliss Blissful JavaScript 项目地址: https://gitcode.com/gh_mirrors/bl/bliss Bliss.js是一个轻量级的JavaScript库,旨在简化日常开发任务,帮助开发者编…

作者头像 李华