你的手机每秒产生几十亿个0和1,它们是怎么"骑"上电磁波飞向基站的?答案藏在三个字母里——QAM。
想象你在指挥一支交响乐团,每个乐手只能听到你的指挥棒动作。如果你只有两种动作——"上"和"下"——那每次只能传递1比特信息(0或1)。这就像通信中最初的BPSK调制。
但如果你同时控制指挥棒的高度和左右角度呢?高度有4档,角度也有4档,组合起来就是16种不同的动作,一次就能传递4比特信息。这就是QAM(正交振幅调制)的核心思想:用两个维度同时编码信息。
在通信系统中,这两个维度就是I路(同相)和Q路(正交),它们分别对应电磁波的两个正交分量。通过同时改变这两个分量的幅度,我们可以在一个载波频率上传输大量数据。
flowchart TB
subgraph 从1比特到多比特的进化
A["BPSK<br/>1 bit/符号<br/>2个星座点"] --> B["QPSK/4-QAM<br/>2 bit/符号<br/>4个星座点"]
B --> C["16-QAM<br/>4 bit/符号<br/>16个星座点"]
C --> D["64-QAM<br/>6 bit/符号<br/>64个星座点"]
D --> E["256-QAM<br/>8 bit/符号<br/>256个星座点"]
E --> F["1024-QAM<br/>10 bit/符号<br/>1024个星座点"]
end
style A fill:#f9f,stroke:#333
style F fill:#ff9,stroke:#333
QAM的物理基础是一个优美的数学性质:cos(2πf_ct)和sin(2πf_ct)在一个周期内积分等于零,即它们是正交的。
这意味着,如果我们把两路独立信号分别"骑"在cos和sin上,发送出去后在接收端可以完美分离——互不干扰。这就是"正交"二字的由来。
发射信号的数学表达式:
$$s(t) = I(t) \cdot \cos(2\pi f_c t) - Q(t) \cdot \sin(2\pi f_c t)$$
其中: - $I(t)$ 是同相分量,乘以余弦载波 - $Q(t)$ 是正交分量,乘以正弦载波 - $f_c$ 是载波频率
也可以写成极坐标形式:
$$s(t) = A(t) \cdot \cos(2\pi f_c t + \phi(t))$$
这说明QAM信号同时编码了幅度A和相位φ两种信息。
flowchart LR
subgraph 发射端调制器
direction TB
BITS["比特序列<br/>10110100..."] --> S2P["串/并转换"]
S2P --> MAP["符号映射<br/>(查星座图)"]
MAP --> I_CH["I路信号"]
MAP --> Q_CH["Q路信号"]
I_CH --> SHAPE_I["脉冲成形滤波"]
Q_CH --> SHAPE_Q["脉冲成形滤波"]
SHAPE_I --> MIX_I["× cos(2πf<t>ct)"]
SHAPE_Q --> MIX_Q["× (-sin(2πf<t>ct))"]
MIX_I --> SUM["∑ 求和"]
MIX_Q --> SUM
SUM --> TX["s(t) 发射信号"]
end
subgraph 接收端解调器
direction TB
RX["接收信号 r(t)"] --> DMIX_I["× 2cos(2πf<t>ct)"]
RX --> DMIX_Q["× (-2sin(2πf<t>ct))"]
DMIX_I --> LPF_I["低通滤波"]
DMIX_Q --> LPF_Q["低通滤波"]
LPF_I --> SAMPLE_I["采样判决"]
LPF_Q --> SAMPLE_Q["采样判决"]
SAMPLE_I --> DEMAP["星座图判决<br/>→ 比特"]
SAMPLE_Q --> DEMAP
DEMAP --> P2S["并/串转换"]
P2S --> OUT["恢复比特序列"]
end
接收端的核心操作是乘以本地载波后低通滤波。数学推导如下:
将接收信号 $s(t) = I(t)\cos(2\pi f_ct) - Q(t)\sin(2\pi f_ct)$ 乘以 $2\cos(2\pi f_ct)$:
$$s(t) \cdot 2\cos(2\pi f_c t) = I(t) \cdot 2\cos^2(2\pi f_c t) - Q(t) \cdot 2\sin(2\pi f_c t)\cos(2\pi f_c t)$$
利用三角恒等式 $2\cos^2 x = 1 + \cos(2x)$ 和 $2\sin x \cos x = \sin(2x)$:
$$= I(t)[1 + \cos(4\pi f_c t)] - Q(t)\sin(4\pi f_c t)$$
经过低通滤波,高频分量 $\cos(4\pi f_ct)$ 和 $\sin(4\pi f_ct)$ 被滤除,只剩下I(t)。同理,乘以 $-2\sin(2\pi f_ct)$ 后低通滤波,只剩Q(t)。
这就是正交解调的精髓——利用数学上的正交性,用同一频率同时传两路信号,接收端互不干扰地恢复出来。
星座图是QAM最直观的可视化工具。横轴是I分量(同相),纵轴是Q分量(正交)。每一个"星星"(星座点)代表一个符号,对应一组特定的比特值。
以16-QAM为例,I和Q各自取4个电平值 ${-3d, -d, +d, +3d}$,组合出 $4 \times 4 = 16$ 个星座点,每个点携带 $\log_2(16) = 4$ 个比特。
Q轴
↑
0110 1110 │ 1010 0010
0111 1111 │ 1011 0011
─────────────┼─────────────→ I轴
0101 1101 │ 1001 0001
0100 1100 │ 1000 0000
仔细观察上面的星座图,你会发现任意两个相邻的星座点,只有1个比特不同。这不是巧合,而是刻意设计的Gray编码。
为什么? 信道噪声会导致接收信号偏移到相邻星座点。如果相邻点只差1比特,那么一次"误判"只会导致1个比特翻转,而不是多个比特同时出错。
| 映射方式 | 相邻点比特差异 | 一次误判的比特错误数 |
|---|---|---|
| 自然二进制 | 可能差多位 | 可能翻转多个比特 |
| Gray编码 | 始终差1位 | 最多翻转1个比特 |
这是通信系统设计中一个朴素但强大的思想:在最容易出错的地方,把损失降到最小。
从QPSK到256-QAM,星座点的数量指数级增长,但它们挤在同样大小的空间里。这意味着:
| 参数 | QPSK | 16-QAM | 64-QAM | 256-QAM |
|---|---|---|---|---|
| 星座点数 | 4 | 16 | 64 | 256 |
| 比特/符号 | 2 | 4 | 6 | 8 |
| 最小距离(归一化) | $2\sqrt{2}$ | $2/\sqrt{10}$ | $2/\sqrt{42}$ | $2/\sqrt{170}$ |
| 所需SNR(约) | 10 dB | 16 dB | 22 dB | 28 dB |
| 典型应用 | 小区边缘 | 中等覆盖 | 5G/LTE主力 | 近基站/微蜂窝 |
最小距离越小,相邻星座点越"挤",噪声就越容易把信号"推"到错误的点上。 这就是为什么高阶QAM需要更好的信道条件。
flowchart TB
A["原始数据<br/>11001011 10100110"] --> B["信道编码<br/>添加冗余比特"]
B --> C["扰码<br/>避免长连0/1"]
C --> D["串/并转换<br/>将串行比特分成I/Q两路"]
D --> E["符号映射<br/>每N比特→1个星座点<br/>16-QAM: 4bit/点<br/>64-QAM: 6bit/点"]
E --> F["I/Q基带信号<br/>I路: ±d, ±3d, ±5d...<br/>Q路: ±d, ±3d, ±5d..."]
F --> G["脉冲成形<br/>限制带宽(升余弦滤波)"]
G --> H["上变频<br/>I×cos - Q×sin"]
H --> I["射频信号 s(t)<br/>通过天线发射"]
style A fill:#e1f5fe
style E fill:#fff9c4
style I fill:#c8e6c9
假设输入比特流为 10 0101(6比特)。
第一步:确定I路和Q路电平
64-QAM的星座图是 $8 \times 8$ 网格。前3比特 100 决定I路的电平,后3比特 101 决定Q路的电平:
| I路比特 | 电平值 | Q路比特 | 电平值 |
|---|---|---|---|
| 000 | -7d | 000 | -7d |
| 001 | -5d | 001 | -5d |
| 010 | -3d | 010 | -3d |
| 011 | -d | 011 | -d |
| 100 | +d | 100 | +d |
| 101 | +3d | 101 | +3d |
| 110 | +5d | 110 | +5d |
| 111 | +7d | 111 | +7d |
所以 100 → I = +d,101 → Q = +3d,对应星座点 (d, 3d)。
第二步:生成模拟信号
$$s(t) = d \cdot \cos(2\pi f_c t) - 3d \cdot \sin(2\pi f_c t)$$
这个信号同时包含了幅度信息和相位信息,通过天线发射出去。
第三步:接收端解调
接收端乘以本地载波,低通滤波后恢复出 (I, Q) = (d, 3d),在星座图上找到最近的标准点 (d, 3d),查表映射回比特 100101。
现实中的无线信道千变万化:基站附近信号强,小区边缘信号弱。如果始终用256-QAM,小区边缘的用户根本解调不出来;如果始终用QPSK,基站附近的用户又浪费了好的信道条件。
解决方案:自适应调制编码(AMC)——基站根据终端上报的信道质量指示(CQI),动态选择最合适的调制阶数和编码速率。
flowchart LR
subgraph 自适应调制编码 AMC
UE["终端UE"] -->|"上报CQI/SINR"| BS["基站gNB"]
BS -->|"查MCS表"| MCS["选择MCS<br/>Modulation + Code Rate"]
MCS -->|"低CQI"| LOW["QPSK + 低码率<br/>牺牲速度保可靠"]
MCS -->|"中CQI"| MID["16/64-QAM + 中码率<br/>平衡速度与可靠"]
MCS -->|"高CQI"| HIGH["256-QAM + 高码率<br/>最大化吞吐量"]
end
style LOW fill:#ffcdd2
style MID fill:#fff9c4
style HIGH fill:#c8e6c9
5G NR定义了三张MCS表,网络根据终端能力选择使用哪张:
| MCS表 | 调制阶数范围 | 典型场景 |
|---|---|---|
| Table 1(默认) | QPSK / 16-QAM / 64-QAM | 普通终端,标准覆盖 |
| Table 2(高阶) | QPSK / 16-QAM / 64-QAM / 256-QAM | 高端终端,mmWave近站 |
| Table 3(低码率) | QPSK / 16-QAM / 64-QAM | URLLC低码率高可靠 |
MCS索引号对应了特定的调制方式和编码码率的组合。基站调度器在每个时隙动态选择MCS索引,终端无需预先知道——DCI(下行控制信息)中会携带当前调度的MCS索引。
| 信噪比(SNR)范围 | 可用调制 | 典型场景 |
|---|---|---|
| 0 ~ 5 dB | QPSK | 小区边缘、高速移动 |
| 5 ~ 15 dB | 16-QAM | 室内覆盖、中等距离 |
| 15 ~ 25 dB | 64-QAM | 近基站、室外良好覆盖 |
| 25 ~ 35 dB | 256-QAM | 微蜂窝、LOS场景 |
| > 35 dB | 1024-QAM | Wi-Fi 7近距离 |
工程师直觉:每次QAM阶数翻倍(如16→64),大约需要多6 dB的SNR才能维持相同的误码率。这就是频谱效率和所需信号质量之间的根本trade-off。
在实际系统中,发射机和信道的不理想会导致星座点偏离理想位置。误差向量幅度(EVM) 就是衡量这种偏离的指标。
$$\text{EVM}(\%) = \frac{\sqrt{\frac{1}{N}\sum_{k=1}^{N}|e_k|^2}}{\sqrt{\frac{1}{N}\sum_{k=1}^{N}|r_k|^2}} \times 100\%$$
其中 $e_k$ 是第k个符号的误差向量(实际位置与理想位置的差),$r_k$ 是理想星座点。
| 调制方式 | 典型EVM要求 | 为什么? |
|---|---|---|
| QPSK | ≤ 17.5% | 4个点距离远,容忍较大偏差 |
| 16-QAM | ≤ 12.5% | 点变密了,偏差容忍度降低 |
| 64-QAM | ≤ 8% | 64个点挤在一起,精度要求高 |
| 256-QAM | ≤ 3.5% | 非常密集,几乎不允许偏差 |
| 1024-QAM | ≤ 1.5% | 极端精度要求,通常只有实验室能达到 |
调试实战:如果路测仪显示64-QAM的EVM从5%突然跳到12%,常见原因包括: - 射频前端非线性:功放进入饱和区,信号被"削峰" - 本振相位噪声:锁相环失锁,载波频率抖动 - IQ不平衡:I路和Q路的增益不一致或相位偏移不是精确90° - 时钟偏差:采样时钟频率偏移导致判决时刻不对
理解QAM有一个更底层的视角:QAM本质上是两路PAM(脉冲幅度调制)的正交组合。
PAM是一维调制,信号只能在一条线上取不同的电平值。比如4-PAM取 ${-3d, -d, +d, +3d}$,携带2比特/符号。
QAM把两路独立的PAM分别放在I轴和Q轴上:
$$\text{16-QAM} = \text{4-PAM (I路)} \times \text{4-PAM (Q路)}$$
$$\text{64-QAM} = \text{8-PAM (I路)} \times \text{8-PAM (Q路)}$$
$$\text{256-QAM} = \text{16-PAM (I路)} \times \text{16-PAM (Q路)}$$
这个视角解释了为什么QAM的星座图总是方形的(至少是近似方形)——因为I路和Q路各自独立地做一维PAM。
flowchart TB
subgraph QAM的分解视角
PAM_I["I路 PAM<br/>一维幅度调制<br/>取 M₁ 个电平"]
PAM_Q["Q路 PAM<br/>一维幅度调制<br/>取 M₂ 个电平"]
PAM_I -->|"乘 cos(2πf<t>ct)"| COS_I["I路已调信号"]
PAM_Q -->|"乘 -sin(2πf<t>ct)"| SIN_Q["Q路已调信号"]
COS_I --> QAM_OUT["QAM输出信号<br/>M₁ × M₂ 个星座点"]
SIN_Q --> QAM_OUT
end
subgraph 等效极坐标视角
AMP["幅度 A = √(I² + Q²)"]
PHASE["相位 φ = arctan(Q/I)"]
AMP --> POLAR["极坐标表示<br/>A·cos(2πf<t>ct + φ)"]
PHASE --> POLAR
end
高阶QAM的星座点平均功率更高(为了保持最小距离不变,必须增大整个星座的功率)。这意味着发射机需要更大的功率,而移动终端的电池是有限的。
256-QAM要求EVM < 3.5%,这意味着本振的相位抖动必须极小。低成本晶振根本满足不了要求,必须用高精度温补晶振(TCXO)甚至原子钟。
多径效应会导致信号在时域和频域发生畸变。星座点越密集,对均衡器精度的要求越高。5G NR中的OFDM结合信道估计导频,就是为了给均衡器提供精确的信道信息。
| 限制因素 | 对QPSK | 对64-QAM | 对256-QAM |
|---|---|---|---|
| 功放线性度 | 要求低 | 要求中 | 要求极高 |
| 相位噪声 | 不敏感 | 中等敏感 | 极其敏感 |
| IQ不平衡 | 可容忍 | 需要校准 | 严格校准 |
| 频率偏移 | ±100ppm | ±10ppm | ±1ppm |
| 信道估计精度 | 宽松 | 较高 | 极高 |
路测软件(如TEMSPilot、Nemo、Probe)可以实时显示终端的接收星座图。正常情况下,64-QAM的星座点应该清晰地聚集成64个簇。如果看到: - 星座点扩散成"云团":噪声过大,可能需要降低调制阶数 - 星座图整体旋转:载波同步问题,锁相环可能失锁 - I/Q幅度不对称:IQ增益不平衡,硬件校准问题 - 星座点呈现规律性偏移:直流偏置或载波泄漏
在基站参数配置中,工程师可以设置MCS选择策略: - 固定MCS:强制使用特定调制方式(用于测试) - 开环AMC:基于路径损耗估计选择MCS - 闭环AMC:基于终端上报的CQI动态调整(实际网络中的默认方式)
| 调制类型 | 维度 | 携带信息方式 | 代表 |
|---|---|---|---|
| ASK | 一维 | 仅幅度 | OOK |
| PSK | 二维 | 仅相位 | BPSK, QPSK, 8-PSK |
| QAM | 二维 | 幅度+相位 | 16/64/256/1024-QAM |
| APSK | 二维 | 幅度+相位(环形) | DVB-S2的16/32-APSK |
QAM和PSK的区别在于:PSK的所有星座点在同一个圆上(等幅),QAM的星座点在不同半径上(变幅)。当星座点数较少时(如4点),QPSK和4-QAM完全等价。但当点数增多时,方形QAM比圆形PSK排列更紧凑、功率效率更高——这也是为什么现代通信系统几乎都选择QAM而非高阶PSK。
Q: QPSK和4-QAM有什么区别?
A: 从星座图上看,它们完全一样——都是4个点均匀分布在一个圆上。数学上,QPSK是4-PSK,只调相位;4-QAM是两路2-PAM的正交组合。在4个点的特殊情况下,两种表示等价。但在16个点以上时,PSK(等幅圆排列)和QAM(方形网格排列)就有明显差异了。
Q: 为什么Wi-Fi 7能用1024-QAM,而5G NR只用256-QAM?
A: 主要有两个原因。第一,Wi-Fi的覆盖距离短(通常几米到几十米),信道条件远好于蜂窝网络几公里的覆盖。第二,Wi-Fi的频段(2.4/5/6 GHz)通常在室内使用,多径环境相对简单。5G NR需要在高速移动、多径复杂、小区边缘等恶劣条件下工作,1024-QAM的容错空间太小。
Q: EVM不好一定是射频硬件问题吗?
A: 不一定。EVM是系统级指标,可能的原因很多:基带数字部分的滤波器设计、时钟同步精度、DAC/ADC量化噪声、本振相位噪声、功放非线性、IQ校准偏差等都可能影响EVM。定位EVM问题需要逐段排查,通常从基带输出开始,逐步加进射频链路,找到EVM恶化的环节。
Q: 星座图上的点为什么会"散开"?
A: 主要是三类原因:加性噪声(高斯白噪声让星座点随机扩散)、信道畸变(多径导致码间干扰,使相邻符号互相干扰)、硬件不理想(相位噪声让星座点呈环形扩散,IQ不平衡让方形变成矩形)。不同原因导致的星座图"散开"形态不同,有经验的工程师可以直接从星座图的形状判断问题来源。
Q: 5G为什么不用更高阶的QAM比如4096-QAM?
A: 4096-QAM每个符号携带12比特,理论上频谱效率极高。但它的EVM要求在0.5%以下,这意味着射频硬件的成本会急剧上升,而且在实际无线信道中几乎无法满足。目前4096-QAM主要用在有线通信(如DOCSIS 3.1有线电视)和短距光通信中,这些场景的信道远比无线信道稳定可控。
本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
