5G NR调制阶数与EVM关系以及对系统SNR要求分析
移动通信技术对数据传输速率要求越来越高。一种提高传输速率的思路是使用更高阶的QAM 调制方式,例如5G NR 的256QAM PDSCH,微波的1024QAM,2048QAM和4096QAM 调制。更高阶的QAM 调制方式对系统也提出了更高的要求。例如某个系统的EVM 测试结果为3%,这个EVM 算好还是不好,单纯从数值看似乎很好,但是EVM 的好坏与否不仅要看数值,还要看其调制阶数,不同调制阶数对EVM要求不同。直观来看,更高阶QAM 调制方式对EVM 有更高要求,但是具体要求是多少?例如对1024QAM 调制,EVM 要小于多少才能实现正常通信?本文主要讨论这个问题。EVM确定了,就可以指导系统信噪比SNR(SIGNAL NOISE RATIO)的指标分解和预算。
例如3GPP TS38.141对5G NR 不同调制方式的PDSCH EVM 要求如下表,从表中也可以看到随着调制阶数的提高,EVM 的要求在不断提高,这些EVM 是怎么定出来的?目前已经有客户开始测试1024QAM 的PDSCH,TS38.141 没有给出1024QAM 的EVM 要求,在测试的时候1024QAM EVM多少才算通过?本文将会给出答案。
表1、TS38.141对不同阶QAM EVM指标要求
| Modulation scheme for PDSCH | Required EVM (%) |
| QPSK | 18.50% |
| 16QAM | 13.50% |
| 64QAM | 9% |
| 256QAM | 4.50% |
1、QAM 调制及EVM 以及EVM 与SNR 的关系
图1、EVM定义
QAM 调制信号通常用其EVM 来衡量信号质量,EVM是英文Error Vector Magnitude缩写,意为误差向量幅度,其定义为误差矢量Error Vector 的幅度与参考信号Reference Signal 幅度的比值,有时候用百分比比表示,有时候用dB 表示。通常测量的EVM为其RMS 值,计算公式如下:
EVM 可以与信噪比SNR 相互换算,在星座图中,EVM 是以电压表示的,因而二者之间的换算公式如下,当然如果有编码增益,要在该公式中考虑编码增益,例如扩频增益。
2、不同阶QAM 信号对EVM 的要求
不同阶QAM 对信号的抗干扰能力是不一样的,数字调制信号调制方式越复杂,频率带宽利用率越高,调制方式越复杂,抗干扰能力越差,功率利用率低,也就是说接收时需要较高的C/N比,才能达到相同传输质量,选择调制方式需要根据通信系统在这两个方面折衷256QAM 的符号点间距离比BPSK 调制近的多,这意味256QAM 和BPSK 相比容易被干扰而造成误码。
图2、不同调制方式抗干扰能力
从EVM 的含义看,结合几种调制方式的星座图拿来看,如果要保证通信正常,也就是星座点不发生误判,则要求每个星座点的误差矢量幅度最大为0.5a(其中a 为相邻星座点之间的间距),即|E|max<0.5a,因而每个星座点需要落在以参考信号为中心,半径为0.5a 的圆内。由于不同星座点的参考信号幅度是不一样的,离原点最远的那个星座点对应的参考信号幅度最大,记为|R|max,则其可容忍的EVM 最小,即EVM_thre=0.5a/|R|max,只要所有星座点的EVM小于EVM_thre,就不会发生误判,即总的EVM 小于EVM_thre。下图中的A=0.5a,表示相邻星座点间距的一半。
图3、64QAM EVM_thre 示意图
比如64QAM,星座图可以看作是间距为a 的8x8 阵列,那么距离原点最远的那个星座点坐标就是(3.5a,3.5a),矢量长度为1.414x3.5a,为了不发生误判,允许的矢量误差要小于半个星座间距(0.5a),这时的EVM<0.5a/(1.414x3.5a)=10.10%,为了保证接收机正常解调,留有一定的余量,5G NR 协议TS38.141 将64QAM 的EVM 限值设定在9%,是合理的。
当然这种估算方法保证了所有星座点的都不会发生误判,由于距离原点近一点的星座点参考信号幅度会小些,其EVM 会大些也不会发生误判,假设所有星座点同时达到最大误差矢量|E|max=0.5a,同时所有星座点等概率出现,此时系统的EVM 达到容忍上限,EVM 再大就会误判。此时系统的EVM RMS 值成为EVMRMS_thre,只要EVM 小于改值EVMRMS_thre,则系统一定不会发生误判。
图4、计算不同QAM 调制方式下对系统EVM 和SNR 要求门限
通过图4 Matlab 代码就可以计算出EVMRMS_thre 和EVM_thre,并计算出了其对系统SNR 的要求值。不同调制方式下对系统要求的EVM 和SNR 门限如表2 所示。从表中可看出,调制阶数越高,对系统的EVM 和SNR 要求就越高。
表2、不同QAM 调制方式对系统EVM 和SNR 要求
以目前已经使用的最高调制阶数4096QAM 为例,其对系统的EVM 的RMS值要求小于1.91%,如果以最远点计算EVM 要求小于1.12%。如果将信号源和频谱仪直接相连,相当于在没有衰落的静态信道条件下,EVM RMS 值最好一般在0.2%左右,所以4096QAM 对EVM 的要求已经接近于硬件的极限水平。
3、实验验证
使用信号源产生一个4096QAM 信号,使用频谱分析仪进行解调。
图5、生成4096QAM 调制信号
在不额外增加噪声的条件下,FSW 的解调结果如图6,其EVM 很好,星座图清晰可见。

图6、不加噪声下FSW 对4096QAM 信号解调结果
根据表1 计算结果,4096QAM 对系统的EVM 要求必须小于1.91%,对应的SNR 为34.36dB。在上述信号基础上增加-34dB 的AWGN 噪声,此时加噪声后信号的解调结果如图8 所示,星座图已经接近于模糊和误判,对应的EVM 测试结果为1.56%,与理论计算1.91%还是比较接近。
图7、4096QAM 信号增加-34dB 的AWGN 噪声

图8、加-34dB 噪声下FSW 对4096QAM 信号解调结果
4、结论
更高阶的QAM 调制方式对系统EVM 和SNR 提出了更高的要求,系统的EVM 测试结果算好还是不好,不能只单纯看EVM 数值,还要看其调制阶数。本文计算了不同调制阶数下星座点不发生误判时对系统的EVM 和SNR 要求,具体结果参考表2,该结论可以理解调制阶数与EVM的关系以及对系统SNR的要求,可以用来指导系统设计和器件选型。
来源:5G NR调制阶数与EVM关系以及对系统SNR要求分析
关于RFASK射频问问
射频问问是在"微波射频网”系列原创技术专栏基础上升级打造的技术问答学习平台,主要围绕射频芯片、微波电路、天线、雷达、卫星等相关技术领域,致力于为无线通信、微波射频、天线、雷达等行业的工程师,提供优质、原创的技术问答、专栏文章、射频课程等学习内容。更多请访问:RFASK射频问问 - 射频技术研发服务平台 | 技术问答、专栏文章、射频课程
相关文章:
5G NR调制阶数与EVM关系以及对系统SNR要求分析
移动通信技术对数据传输速率要求越来越高。一种提高传输速率的思路是使用更高阶的QAM 调制方式,例如5G NR 的256QAM PDSCH,微波的1024QAM,2048QAM和4096QAM 调制。更高阶的QAM 调制方式对系统也提出了更高的要求。例如某个系统的EVM 测试结果…...
【NAS群晖drive异地访问】远程连接drive挂载电脑硬盘「内网穿透」
文章目录前言1.群晖Synology Drive套件的安装1.1 安装Synology Drive套件1.2 设置Synology Drive套件1.3 局域网内电脑测试和使用2.使用cpolar远程访问内网Synology Drive2.1 Cpolar云端设置2.2 Cpolar本地设置2.3 测试和使用3. 结语转发自CSDN远程穿透的文章:【群晖…...
react:hooks为什么不能写在条件语句里
背景 最近朋友在面试,说面试官问到了一个问题不会,说为什么 react hooks为什么不能写在条件语句里,今天我们来研究一下这个问题。 我们在来简单实现一个 useState: const reRender () > {stateIndex -1 ReactDOM.render(&…...
模型优势缺陷整理
(1)BERT 1. 计算资源消耗:bert模型是一个相对较大的模型,具有数亿个参数。因此,为了训练和使用bert模型,需要大量的计算资源和时间。 2. 学习不足问题:尽管bert模型在大规模语料库上进行了预训…...
编写猫咪相册应用 HTML
文章目录1. 标题元素标签2. p元素用于在网站上创建一段文本3. 注释4. 页面主要部分标识标签5. 通过使用img元素来为你的网站添加图片6. 使用锚点元素(a)链接到另一个页面7. 使用 section 元素将照片内容与未来的内容分开8. 无序列表(ul)元素,列表项(li)元素在列表中…...
基于Arduino与LabVIEW的远程家庭监控系统
在基于Arduino与LabVIEW的远程家庭监控系统中,Arduino Uno控制器需要完成以下功能:1)通过W5100网络模块接收并判断命令,采集和传输温度、煤气浓度、热释电传感器的数据,并通过W5100网络模块上传给LabVIEW软件。2&#…...
使用FRP(快速反向代理)实现内网穿透——以腾讯云服务器为例
一、FRP简介 FRP,即快速反向代理技术(fast reverse proxy)。本文的FRP程序是基于github开源项目GitHub - fatedier/frp。当前,该程序可实现:“将位于 NAT 或防火墙后面的本地服务器暴露给互联网”。它目前支持 TCP 和…...
d跨语言链接优化
原文 使用LDC的(LTO)链接时优化的简短文章,包含演示了如何提高程序性能的简单示例.因为LTO在LLVMIR级别工作,因此可跨越C/D语言优化! 重要提示:LDC/LLVM的LTO在窗口上不可用. 链接时优化 (LTO)链接时优化是指链接时的程序优化.链接器提取所有目标文件在一起,并合并到一个程序…...
【Linux】-- 进程概念的引入
目录 硬件 冯诺依曼体系结构 冯诺依曼体系结构推导 重点概念 网络数据流向 软件 操作系统(Operator System - OS) 概念 定位 进程内核数据结构PCB(task_struct) 通过系统调用创建进程-fork初始 fork基本用法 使用if进行分流 查看运行效果 …...
一文看懂“低代码、零代码”是什么?有什么区别?
低代码和零代码近几年热度一直居高不下,乍一看,很容易混淆低代码和零代码开发平台—— 因为它们都是传统开发的替代方案,旨在通过类似于可视化编程的功能加速软件开发过程。 但二者根本不是一回事。从开发人员经验 、目标角色到使用场景&…...
【华为OD机试真题】去除多余的空格(java)
去除多余空格 知识点字符串数组Q队列时间限制:2s空间限制:256MB限定语言:不限 题目描述: 去除文本多余空格,但不去除配对单引号之间的多余空格。给出关键词的起始和结束 下标,去除多余空格后刷新关键词的起始和结束下标。 输入: Life is painting a picture, not …...
【SQL 必知必会】- 第十三课 创建高级联结
目录 使用表别名 Oracle 中没有AS 使用不同类型的联结 自联结 用自联结而不用子查询 自然联结 外联结 全外联结 使用带聚集函数的联结 使用联结和联结条件 使用表别名 SQL 除了可以对列名和计算字段使用别名,还允许给表名起别名。这样做有两个主要理由ÿ…...
ios逆向工具有那些
以下是一些常用的 iOS 逆向工具: Cycript:一种用于在运行时动态分析和修改 iOS 应用程序的强大工具,可以与应用程序进行交互式调试和注入代码。 Frida:一个强大的动态二进制插桩工具,可以在运行时修改应用程序的行为&…...
【软件设计师14】UML建模
UML建模 稳定出一个,但是由于UML的图比较多,所以这种题比数据流图和数据库难度高 一般都会考用例图和类图,再附加其他的图 1. 用例图 包含关系include:比如登记外借信息必须先有用户登录 扩展关系extend:修改书籍…...
容器镜像的设计原理
1 概述: 1.1 历史概要 2016年,Docker制定了镜像规范v2,并在Docker 1.10中实现了这个规范。镜像规范v2分为Schema 1和Schema 2。 Schema 1主要兼容使用v1规范的Docker客户端(从2017年2月起,镜像规范v1不再被Registry支…...
arm64异常向量表
arm64异常向量表1 arm64异常向量表2 linux arm64异常向量表3 kernel_ventry宏4 异常向量表的保存4. VBAR_ELx寄存器4.2 __primary_switched4.3 __primary_switched1 arm64异常向量表 When an exception occurs, the processor must execute handler code which corresponds to …...
【测试面试】吐血整理,大厂测试开发岗面试题(1~4面),拿下年40w...
目录:导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜)前言 自动化测试面试题&am…...
SpringSecurity之权限模块设计
目录 前言 实现思路 代码结构 使用说明 前言 前面我们了解了关于微服务权限设计方案以及J W T的相关介绍,今天我们来聊一下,如何避免自己重复的写相同的代码,一次代码实现,即可完美复制到任何项目中实现权限相关的功能。 实现…...
002_双指针法
1.移除元素 目标:移除数组中的某一个元素 数组的元素在内存地址中是连续的,不能单独删除数组中的某个元素,只能覆盖。 1.1暴力解法 建立两个for循环,当查找到某个元素以后,将此元素后面的元素全部往前移动 时间复…...
超实用的 Linux 高级命令,程序员一定要懂
前言 在运维的坑里摸爬滚打好几年了,我还记得我刚开始的时候,我只会使用一些简单的命令,写脚本的时候,也是要多简单有多简单,所以有时候写出来的脚本又长又臭。 像一些高级点的命令,比如说 Xargs 命令、管…...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...
CMake基础:构建流程详解
目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
Mac软件卸载指南,简单易懂!
刚和Adobe分手,它却总在Library里给你写"回忆录"?卸载的Final Cut Pro像电子幽灵般阴魂不散?总是会有残留文件,别慌!这份Mac软件卸载指南,将用最硬核的方式教你"数字分手术"࿰…...
C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
【HTML-16】深入理解HTML中的块元素与行内元素
HTML元素根据其显示特性可以分为两大类:块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...
C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
