【Wi-Fi】WiFi中QAM及16-QAM、64-QAM、512-QAM、1024-QAM、2048-QAM、4096-QAM整理

参考链接

什么是QAM?QAM是如何工作的? - 华为

不同阶QAM调制星座图中,符号能量的归一化计算原理 - 知乎 

16 QAM modulation vs 64 QAM modulation vs 256 QAM modulation 

512 QAM vs 1024 QAM vs 2048 QAM vs 4096 QAM modulation types 

QAM(Quadrature Amplitude Modulation)

         正交幅度调制QAM(Quadrature Amplitude Modulation)是Wi-Fi中一种常用的数字信号调制,是相位调制和幅度调制的组合。

QAM在用于Wi-Fi数字信号调制时,与普通幅度调制和相位调制相比能得到更高的速率。因为幅度调制和相位调制仅有2种符号(symbol)来区分0或1。

  • 幅度调制:通过改变载波的振幅来区分0和1。
  • 相位调制:通过改变载波的相位来区分0和1。例如我们常见的BPSK,就是使用0°和180°共2个相位表示0和1,即2种符号;QPSK则是使用0°、90°、180°和270°共4个相位,能够表示00、01、10和11共4种符号,传递2 bit的信息。其实QPSK就是一种特殊的QAM,即4-QAM。

而QAM则有更多的符号,每个符号都有相应的相位和幅度值。

以16-QAM为例,通过QAM调制可得到16个不同的波形,分别代表0000,0001....这也意味着一共有16种符号,一个符号可以传递4 bit信息。

QAM是如何工作的?

        QAM是将信号加载到2个正交的载波上(通常是正弦和余弦),通过对这两个载波幅度调整并叠加,最终得到相位和幅度都调制过的信号。这两个载波通常被称为I信号,另一个被称为Q信号,所以这种调制方式也被称为IQ调制

IQ调制

由于QAM最终调制后的信号包含了相位和幅度的变换,因此QAM也被认为相位调制和幅度调制的组合。

QAM的星座图

       在数字信号调制中,星座图通常用于表示QAM调制二维图形。星座图相对于IQ调制而言,将数据调制信息映射到极坐标中,这些信息包含了信号的幅度信息和相位信息。

        星座图上的每一个点,都表示一个符号。该点I轴和Q轴的分量分别代表着正交的载波上的幅度调整。该点到原点的距离A就是调制后的幅度,夹角φ就是调制后的相位。


QAM的星座图

而星座图上点的数量,决定了每个符号传输的比特数。例如:

  • 256-QAM,256是2的8次方,每个符号能传输8bit的数据。
  • 1024-QAM,1024是2的10次方,每个符号能传输10bit的数据。

因此,作为比256-QAM更高阶的1024-QAM,数据传输的峰值速率进一步提高25%。

16-QAM

     16-QAM。 每个符号的 16 个 qam 位为 4 (四)。这意味着在 16-QAM 中,每个符号代表 4 位,如上面的 16-QAM 星座图中所述。
例如,如果输入为 1010,则输出为 (-3-j*3)*KMOD。
通常,对于 16-QAM,KMOD 为 1/根 (10)。 

 64-QAM

64-QAM 映射和解映射 

64-QAM 或任何其他调制应用于输入二进制位。
• QAM 调制将输入位转换为复数符号,这些符号通过 时域波形的幅度/相位。64QAM 在发射器处将 6 位转换为 1 个符号。
• 位到符号的转换发生在发射器上,而反向(即符号到位) 发生在接收器处。在接收器处,一个符号给出 6 位作为 demapper 的输出。
• 图描述了 QAM 映射器和 QAM 解映射器在基带发射机中的位置,以及 接收器。解映射是在前端同步之后完成的,即在通道和其他损伤之后 从接收到的受损基带符号中校正。
• 数据映射或调制过程在发射机和 PA 中的射频上变频 (U/C) 之前完成。 因此,高阶调制需要在发射端使用高线性度的 PA (功率放大器)。

64-QAM 映射过程

 

 64-QAM 映射过程

在 64-QAM 中,数字 64 指的是 2^6。
这里 6 表示位数/符号,在 64-QAM 中为 6。

下表提到了 64-QAM 编码规则。检查相应无线标准中的编码规则。的 KMOD 值 64-QAM 为 1/SQRT(42)。

Input bits (b5, b4, b3)I-OutInput bits (b2, b1, b0)Q-Out
01170117
01050105
00030003
00110011
101-1101-1
100-3100-3
110-5110-5
111-7111-7

QAM 映射器 输入参数 : 二进制位
QAM 映射器 输出参数 : 复数数据

         64-QAM 映射器采用二进制输入并生成复数数据符号 输出。它使用上述编码表来进行转换过程。 在转换过程之前,数据被分组为 6 位对。 其中,(b5, b4, b3) 确定 I 值,(b2, b1, b0) 确定 Q 值。

示例:二进制输入:(b5,b4,b3,b2,b1,b0) = (011011)
复数输出:(1/sqrt(42))* (7+j*7)

       正如我们所知道的,在数字调制中,基带分为相位 (I) 和正交相位 (Q) 分量。 I 和 Q 的组合称为基带调制信号。它也被称为 IQ 图。 星座图表示所有可能的调制符号,这些符号将被 调制技术来映射信息位。 这些不同的符号在复平面中通过其振幅和相位信息表示。

256-QAM

512-QAM

图描绘了 512-QAM 星座图。 四个象限中的每一个象限中都不存在大约 16 个点来总计 512 个点,在此调制类型中每个象限 128 个点。 在 512-QAM 中,每个符号也可以有 9 位。 与 50-QAM 调制类型相比,64QAM 的容量增加了 64%。 

1024-QAM

 该图描绘了 1024-QAM 星座图。
每个符号的位数:10
符号速率:比特率的 1/10 与 64-QAM 相比容量
增加:约 66.66%

2048-QAM

以下是 2048-QAM 调制的特性。
每个符号的位数:11
符号速率:比特率的 1/11 与 64-QAM 相比容量
增加:约 83.33%
一个象限中的星座点总数:512 

4096-QAM

以下是 4096-QAM 调制的特性。
每个符号的位数:12
符号速率:比特率的 1/12 与 64-QAM 相比容量
增加:约 100%
一个象限中的星座总数:1024

16-QAM vs 64-QAM vs 256-QAM

Specifications16-QAM modulation64-QAM modulation256-QAM modulation
Number of bits per symbol468
Symbol rate(1/4) of bit rate(1/6) of bit rate(1/8) of bit rate
KMOD1/SQRT(10)1/SQRT(42)1/SQRT(170)

 512-QAM vs 1024-QAM vs 2048-QAM vs 4096-QAM

Specifications512 QAM1024 QAM2048 QAM4096 QAM
Number of bits per symbol9101112
Symbol rate1/9 th of bit rate1/10 th of bit rate1/11 th of bit rate1/12 th of bit rate
Total points in constellation diagram512102420484096
Increase in capacity compare to 64-QAM50 %66.66 %83.33 %100 %

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/59247.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

EHOME视频平台EasyCVR萤石设备视频接入平台视频诊断技术可以识别哪些视频质量问题?

EasyCVR视频监控汇聚管理平台是一款针对大中型项目设计的跨区域网络化视频监控集中管理平台。萤石设备视频接入平台EasyCVR不仅具备视频资源管理、设备管理、用户管理、运维管理和安全管理等功能,还支持多种主流标准协议,如GB28181、GB35114、RTSP/Onvif…

42python数据分析numpy基础之trace计算对角线元素的和

python的numpy库的trace()函数,计算对角线元素的和。 用法 numpy.trace(a, offset0, axis10, axis21, dtypeNone, outNone)描述 numpy.trace(a),返回数组a的对角线元素的和。 入参 a:必选,数组,列表,元…

arm64-v8a 和 armeabi-v7a 有啥区别?

ARM64-v8a 和 ARMEABI-v7a 是 Android 平台上两种不同的 ARM 架构,用于支持应用程序的运行。它们之间有几个关键的区别: 1. 架构类型 ARM64-v8a:代表的是 64 位的 ARM 架构(ARMv8-A)。它能够处理更大范围的地址空间和…

DCN网络进行新冠肺炎影像分类

项目源码获取方式见文章末尾! 600多个深度学习项目资料,快来加入社群一起学习吧。 《------往期经典推荐------》 项目名称 1.【BiLSTM模型实现电力数据预测】 2.【卫星图像道路检测DeepLabV3Plus模型】 3.【GAN模型实现二次元头像生成】 4.【CNN模型实现mnist手写数字识别】…

[代码随想录打卡Day6] 哈希表理论基础 242.有效的字母异位词 349. 两个数组的交集 349. 两个数组的交集 1. 两数之和

之后补充Python的 哈希表理论基础 首先什么是哈希表,哈希表(英文名字为Hash table,国内也有一些算法书籍翻译为散列表,大家看到这两个名称知道都是指hash table就可以了)。 哈希表是根据关键码的值而直接进行访问的数…

WPF+MVVM案例实战(二十三)- 阴影效果详解

文章目录 1、案例效果2、阴影属性参数说明3、阴影效果实现1、案例效果 2、阴影属性参数说明 WPF 中,控件的阴影效果是通过附加属性 Effect 来实现的。这里详细说明以下阴影效果的各个参数。 属性描述BlurRadius阴影模糊程度,值越大越模糊Color阴影颜色Opacity阴影透明度,默…

学习笔记:黑马程序员JavaWeb开发教程(2024.11.4)

5.8 请求响应-请求-案例 数据保存在emp.xml文件中,解析XML的工具类XMLParserUtils,其中使用了dom4j的接口,因此要在pom.xml文件中引入dom4j的依赖,用于解析XML文件,实体类Emp用于封装服务器解析的数据 前端页面文件…

Vue项目开发:Vuex使用,表单验证配置,ESLint关闭与常见问题解决方案

文章目录 vuexvue配置form表单验证移除vue中表单验证的两种方法关闭vue项目的eslint代码校验做vue项目出现的问题 vuex Vue提供的状态管理工具,用于统一管理我们项目中各种数据的交互和重用,存储我们需要用到的数据对象属性 state:vuex的基本…

HTTP、WebSocket、gRPC 或 WebRTC:各种协议的区别

在为您的应用程序选择通信协议时,有很多不同的选择。 本文将了解四种流行的解决方案:HTTP、WebSocket、gRPC 和 WebRTC。 我们将通过深入学习其背后原理、最佳用途及其优缺点来探索每个协议。 通信方式在不断改进:变得更快、更方便、更可靠&…

Spring Boot 中实现多数据源连接和切换的方案

在现代企业级应用开发中,常常会遇到需要连接多个数据源的情况。例如,一个应用可能需要同时访问不同的数据库以获取不同类型的数据,或者在不同的环境下切换数据源以满足特定的需求。Spring Boot 作为一个流行的 Java 开发框架,提供了多种方式来实现多数据源连接和切换。 一、…

24.11.3

星期一: 补24武汉高校联合程序设计新生赛 C cf传送门 最开始用倍增树链刨分,稳定T 思路:处理出树链刨分的dfn序和重链等前置信息,然后对每条重链开个set(常见方法,用于存断开的边&…

嵌入式开发之文件I/O-函数

Read函数 read函数用来从文件中读取数据: #include <unistd.h> ssize_t read(int fd,void *buf,size_t count); fd:文件描述符buf:缓冲区的首地址,接收从文件中读取的内容count:指定读取字节数,不能超过buf的大小。习惯指定成缓冲区大小成功时返回实际读取的字节数…

Nop入门:极简数据访问层实现

Nop平台的数据访问层使用NopORM引擎&#xff0c;它的功能相当于JPA MyBatis SpringData&#xff0c;并且内置了多租户、逻辑删除、动态扩展字段、字段加密等业务常用功能。 NopGraphQL服务框架会自动自动识别ORM的实体对象&#xff0c;自动使用ORM引擎去实现实体关联属性的批…

大端存储和小端存储

大端存储和小端存储 在计算机系统中&#xff0c;数据在内存中的存储方式并不是唯一的。对于多字节的数据类型&#xff08;如 int、float 等&#xff09;&#xff0c;计算机可以以不同的方式在内存中存储它们。这些存储方式通常分为两种&#xff1a;大端存储&#xff08;Big-En…

如何使用RabbitMQ和Python实现广播消息

使用 RabbitMQ 和 Python 实现广播消息的过程涉及设置一个消息队列和多个消费者&#xff0c;以便接收相同的消息。RabbitMQ 的 “fanout” 交换机允许你将消息广播到所有绑定的队列。以下是如何实现这一过程的详细步骤。 1、问题背景 在将系统从Morbid迁移到RabbitMQ时&#x…

C#-类:成员变量

声明在类语句块中&#xff0c;描述对象的特征&#xff0c;可为任意变量类型 可包含&#xff1a;枚举、结构体、类、其他 1. 类成员的详细定义 特征->成员变量&#xff1a;包括类的数据&#xff1a;变量、常量、事件的成员行为->成员方法&#xff1a;普通方法、属性、构…

PAT甲级-1133 Splitting A Linked List

题目 题目大意 给定一个链表的首节点地址和节点个数&#xff0c;以及一个数k。要求重新排列该链表&#xff0c;使其按<0 &#xff0c;> 0 && < k&#xff0c;>k 的顺序排序。但是不改变原有顺序&#xff0c;比如-4 -> -6 -> -2&#xff0c;不需要再…

【spark的集群模式搭建】spark集群之Yarn集群模式搭建(清晰明了的搭建流程)

文章目录 1、使用Anaconda部署Python2、上传、解压、重命名3、创建软连接&#xff08;如果在Standalone模式中创建有就删除&#xff09;4、配置spark环境变量5、修改spark-env.sh配置文件6、修改spark-defaults.conf 配置文件7、修改log4j.properties配置文件8、上传spark jar包…

Android IPC机制(三)进程间通信方式

在Android中有以下几种进程间通信方式: 目录 1.Bundle 2.文件共享 3.Messenger 4.ContentProvider 5.AIDL 1.Bundle Bundle是Android中用于存储一组键值对的类&#xff0c;它实现了Parcelable接口。这使得Bundle能够在不同的进程之间传递数据。当我们通过Intent启动其他应…

ubuntu系统安装升级jdk到17

百度安全验证 https://blog.csdn.net/qq_44866828/article/details/130557027 然后修改一下配置路径 试下java --version命令