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 命令、管…...
深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...
Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)
在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马(服务器方面的)的原理,连接,以及各种木马及连接工具的分享 文件木马:https://w…...
Angular微前端架构:Module Federation + ngx-build-plus (Webpack)
以下是一个完整的 Angular 微前端示例,其中使用的是 Module Federation 和 npx-build-plus 实现了主应用(Shell)与子应用(Remote)的集成。 🛠️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...
HashMap中的put方法执行流程(流程图)
1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中,其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下: 初始判断与哈希计算: 首先,putVal 方法会检查当前的 table(也就…...
Fabric V2.5 通用溯源系统——增加图片上传与下载功能
fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...
JVM虚拟机:内存结构、垃圾回收、性能优化
1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...
