想象一家生意爆满的酒馆,一个服务员要同时端着好几杯酒,穿过人群分别送到不同桌的客人手上。难点不在于他一次能端几杯酒,而在于:怎么保证送到张三桌的那杯酒,不会被李四桌的客人顺手拿走?
服务员靠的是"认识每桌客人的位置"——他走路线时特意绕开、或者背对着不相关的桌子,让每一杯酒物理上只到达目标客人面前。
基站面对的是一模一样的难题。在一个 5G 小区里,成百上千部手机同时在上网。频谱是稀缺资源,运营商恨不得让尽可能多的手机在同一毫秒、同一小段频率上同时收发数据。可频率相同、时间相同,信号不就撞车了吗?
MU-MIMO(Multi-User MIMO,多用户多输入多输出)就是这道难题的答案:它让基站在同一块时频资源上,同时和好几个手机说话,而它们彼此听不见对方。 做到这件事的不是别的,正是"波束赋形"里一个常被一笔带过的关键招式——零陷(null steering)。
今天这一篇,我们就把"波束为什么不会串扰到别人"这件事,从直觉一直拆到数学公式。
很多工程师会把 MU-MIMO 和"空间复用"混为一谈,因为两者都依赖多天线、都叫 MIMO。但它们解决的根本不是同一个问题,搞混了,后面所有调试都会跑偏。
| 对比维度 | SU-MIMO(空间复用) | MU-MIMO(多用户波束赋形) |
|---|---|---|
| 服务对象 | 一个用户,多个数据流 | 多个用户,各自的数据流 |
| 接收端是否协作 | 同一用户的多根天线能联合处理 | 不同用户无法协作,各自独立解码 |
| 提升的是什么 | 单用户峰值速率 | 系统扇区容量(吞吐量) |
| 干扰由谁消除 | 接收端(多天线联合检测) | 发射端(基站预编码预先消除) |
| 对 CSI 的要求 | 接收端知道即可 | 基站必须精确知道所有用户的信道 |
| 典型前提 | 信道"富散射"、矩阵满秩 | 用户之间信道足够正交(远离) |
一句话总结:SU-MIMO 是"一个人多拿几份快递",MU-MIMO 是"快递员一趟车同时给不同的人送件、还互不送错"。
下图把两者的架构差异画出来,对比会非常直观:
flowchart LR
subgraph SU["SU-MIMO:一个用户,多流并行"]
direction TB
S1["基站 4 天线"] -->|"流1"| U1A["用户A 天线1"]
S1 -->|"流2"| U1B["用户A 天线2"]
S1 -->|"流3"| U1A
S1 -->|"流4"| U1B
NOTE1["接收端 = 同一用户,可联合解码<br/>提升:单用户峰值速率"]
end
subgraph MU["MU-MIMO:多个用户,同频同时"]
direction TB
S2["基站 64 天线"] -.->|"用户A的数据,主瓣对准A"| A1["用户A"]
S2 -.->|"用户B的数据,零陷避开A"| B1["用户B"]
S2 -.->|"用户C的数据,零陷避开A、B"| C1["用户C"]
NOTE2["接收端 = 不同用户,无法协作<br/>干扰必须基站预编码消除<br/>提升:系统容量"]
end
关键区别在"接收端能否协作"。SU-MIMO 里,张三的两根天线长在同一个手机上,它们可以把收到的混合信号拿来做矩阵求逆,把多流分开。但 MU-MIMO 里,张三的信号要送进李四的耳朵,这件事李四的手机根本帮不上忙——李四只想听自己的数据,他不会去帮张三"解码然后扔掉"。
所以 MU-MIMO 把消除干扰的重担,整个扛到了发射端(基站)肩上。这就引出了本文的主角——零陷预编码。
答案藏在"空间"这个维度里。
一根天线发出的电磁波,是朝四面八方均匀扩散的(全向)。但当你把多根天线排成一排、并且让它们发出的信号带上不同的相位加权时,它们的电磁场在某些方向会相长叠加(叠加增强)、在某些方向会相消叠加(彼此抵消)。这就是天线阵列能"拧出"一束方向性波束的物理本质。
波束赋形利用了"相长叠加"——把能量集中到目标方向,让目标用户收到强信号。
而零陷利用的是硬币的另一面——"相消叠加"。它故意在那些"不想让他听到"的用户所在方向上,让各天线的信号相位互相抵消,形成一个个深陷下去的"黑洞"(null)。在那个方向上,电磁能量近乎为零。
打个比方:波束赋形像是用聚光灯照亮台上某个演员(主瓣);零陷则像是同时给台下另外几个不该被照到的位置拉上黑布。一束光,既照得亮该亮的,又精确地避开了不该亮的——这就是 MU-MIMO 的全部魔法。
下面这张图展示一个基站同时服务 3 个用户时,针对用户 A 的那一路信号在空间上如何"既照 A,又躲 B、C":
flowchart LR
BS["📡 基站 64T 天线阵列<br/>正在发射用户A的数据流 s₁"]
BS ==>"主瓣(能量最强)<br/>对准用户A方向":::main --> A["👤 用户A<br/>收到强信号"]
BS -.->|"零陷①:能量≈0<br/>相消抵消"| B["👤 用户B<br/>几乎收不到A的信号"]
BS -.->|"零陷②:能量≈0<br/>相消抵消"| C["👤 用户C<br/>几乎收不到A的信号"]
classDef main fill:#ffd166,stroke:#d62828,stroke-width:3px;
注意:上图只是用户 A 这一路的"视角"。实际上基站同时对 A、B、C 三路数据各做一套这样的预编码。最终叠加后从天线发出去的是三路加权信号的合成。妙就妙在——经过精心的加权矩阵设计,A 的信号到了 A 那里强、到了 B/C 那里为零;B、C 同理。三路人马在同一块频率上各行其道、互不相扰。
现在我们把直觉翻译成公式。设基站有 $N_t$ 根天线,同时服务 $K$ 个单天线用户(为简化,先假设每用户单天线)。记所有用户的下行信道组成一个矩阵 $H \in \mathbb{C}^{K \times N_t}$,其中第 $k$ 行 $h_k$ 是用户 $k$ 的 $1 \times N_t$ 信道向量。
基站要发射的数据符号向量记为 $s = [s_1, s_2, \dots, s_K]^T$。基站用一个预编码矩阵 $W \in \mathbb{C}^{N_t \times K}$ 对 $s$ 加权,实际发射的信号是:
$$x = W s$$
用户 $k$ 收到的信号是:
$$y = H W s + n = H W s + n$$
理想的境界是什么?是 $H W = I$(单位阵)。那样的话,$y = s + n$,每个用户收到的就恰好是自己的数据,毫无串扰。这等价于要求:
$$H W = I \quad\Longrightarrow\quad W = H^{-1}\ \text{(如果 H 可逆)}$$
但问题来了:$H$ 是 $K \times N_t$ 的"矮胖"矩阵(用户数 $K$ 通常远小于天线数 $N_t$),没有逆矩阵。数学上,对一个"行满秩"的非方阵,最接近"逆"的东西叫伪逆(Moore-Penrose 伪逆):
$$W_{ZF} = H^{H}\left(H H^{H}\right)^{-1}$$
这里 $H^H$ 表示共轭转置。把它代回去验证:$H W_{ZF} = H H^H (H H^H)^{-1} = I$。完美命中——每个用户的干扰被"强行归零(Zero-Forcing)",这就是 ZF 预编码得名的由来。
理解 ZF,不必死记公式,记住三个直觉就行:
正因为 ZF 的这个毛病,工程上还会用它的"温和版" MMSE 预编码(也叫 RZF,正则化零陷),在"消干扰"和"压噪声"之间折中:
$$W_{MMSE} = H^{H}\left(H H^{H} + \alpha I\right)^{-1}$$
那个 $\alpha$ 是噪声相关的正则项。$\alpha \to 0$ 时退化为 ZF(彻底消干扰);$\alpha$ 大时趋向于 MRT(最大比发送,只管把信号加强、不管干扰)。三者各有适用场景:
| 预编码算法 | 核心目标 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|---|
| MRT(最大比发送) | 最大化目标用户信号 | 简单、低复杂度、阵列增益最大 | 不抑制用户间干扰 | 用户少、信噪比低 |
| ZF(迫零) | 彻底消除用户间干扰 | 干扰为零,高信噪比下吞吐量最优 | 放大噪声、浪费功率、对 CSI 极敏感 | 高信噪比、用户信道正交 |
| MMSE/RZF(正则化迫零) | 干扰与噪声折中 | 鲁棒性好,实际工程主流 | 仍有残余干扰 | 现网默认选择 |
| BD(块对角化) | 多天线用户的 ZF 推广 | 支持每用户多流 | 复杂度高 | 每用户多接收天线 |
有了 ZF 预编码,是不是随便挑几个用户塞进同一块资源就行了?绝对不是。 这是工程师最容易踩的坑。
回想上一节:当两个用户的信道向量 $h_1$、$h_2$ 几乎平行(空间方向接近、相关性高)时,$H H^H$ 接近奇异,伪逆会爆炸。这意味着——基站为了让用户 1 的信号在用户 2 方向归零,要付出天价的发射功率,结果两路信号都做不好。
所以 MU-MIMO 有一个比预编码本身更前置、也更关键的步骤:用户配对(User Pairing / Scheduling)。调度器的任务,是从成百上千个等待调度的用户里,挑出彼此空间信道尽量正交的几个,绑成一组同时调度。
sequenceDiagram
participant UE as 多个用户终端
participant BS as 基站(gNB)
participant SCH as 调度器
UE->>BS: 上报 CSI(PMI/CQI/RI,含空间信道特征)
BS->>SCH: 汇集所有待调度用户的信道
Note over SCH: ①计算两两用户信道相关性/正交性<br/>②挑选相关性最低的一组(例如 K=4)<br/>③对高相关用户降级为SU-MIMO或推迟
SCH->>BS: 输出配对用户组 + 资源分配
Note over BS: ④对该组计算 ZF/MMSE 预编码矩阵 W<br/>⑤加权后发射:x = W·s
BS->>UE: 同频同时下发各组数据(主瓣对准、零陷避让)
一个直观的经验法则:两个用户的方向角差得越开,配对效果越好。 比如一个在基站正北、一个在正东,它们的信道几乎正交,ZF 几乎不费力就能分开;而两个挤在同一栋楼同一层的用户,空间信道高度相关,强行配对反而拖累彼此。
这也是为什么 Massive MIMO(大规模天线)对 MU-MIMO 是革命性的——天线数 $N_t$ 越多,能同时容纳的正交用户数越多(理论上限随天线数增长),而且每个用户的信道在超高维空间里更容易"恰好"彼此正交(这正是"信道硬化"现象的功劳)。所以 Massive MIMO 的真正价值,不是单用户变快,而是能在同一块资源上同时服务几十个用户,把扇区容量成倍放大。
理解了上面这些,你就能解释现网里这些现象:
1. 为什么繁华商圈、体育场馆特别依赖 Massive MIMO? 这些场景用户密度极高,单用户速率反而不是首要矛盾——首要矛盾是"海量用户挤在小范围频谱上"。MU-MIMO 的多用户空分复用正好把容量维度打开:同一块 100MHz 带宽,原本只能喂饱 1 个用户的资源,现在可以同时喂 8 个、16 个甚至更多。这就是运营商在大型场馆部署 64T64R、128T128R Massive MIMO 的核心动机。
2. 工程师调试时的常见陷阱:
"配了 MU-MIMO,扇区吞吐量却没涨" → 第一反应不是怀疑预编码,而是去查用户配对策略。如果调度器为了公平性把相邻方向的两个用户硬配对,ZF 算出的预编码会把功率浪费在"互相抵消"上,吞吐量不升反降。看日志时要重点关注配对用户的空间相关性指标(如信道相关系数),而不是只看 CQI。
"上行 CQI 很好,下行 BLER 却偏高" → 在 TDD 系统里,下行预编码依赖上行 SRS 估计的信道(靠信道互易性)。如果SRS 加权或天线校准没做好,基站拿到的 CSI 就是"失真"的,ZF 在错误的方向上挖零陷,自然干扰消不干净。这是 Massive MIMO 调测最容易出问题、也最容易被忽视的一环。相关知识可以回顾[[信道互易性:海量MIMO的隐形基石]]。
"用户数一多,边缘用户体验急剧恶化" → 这往往是配对用户数 $K$ 设得太激进。$K$ 越接近 $N_t$,ZF 的"功率放大效应"越严重,留给每个用户的有效增益越小。现网通常会动态限制同时配对的用户数,在高负载时主动回退。
3. 一个常被误解的点:很多人以为"波束越窄、增益越高就是越好"。在 MU-MIMO 里,波束窄不等于零陷深。真正决定多用户性能的,是预编码在其他用户方向上挖出的零陷有多深、多精准,而不是主瓣有多尖。一个对准目标但零陷不到位的设计,照样会让邻用户遭殃。
最后,用三句话把 MU-MIMO 的设计哲学串起来:
从波束赋形只管"照亮目标"(MRT),到加上"还要躲开别人"(ZF/MMSE),多用户 MIMO 把天线阵列的潜力真正榨干。理解了零陷,你才理解为什么 Massive MIMO 是 5G 容量跃迁的根基,而不是单纯"天线多一些、信号强一些"那么简单。
Q1:MU-MIMO 和 SU-MIMO 能不能同时存在? A:能,而且现网天天在切换。基站每个调度时刻都会根据当前用户的信道状况做判断:如果某个用户信道"富散射"、矩阵满秩(适合多流),就给他单独开 SU-MIMO 拉峰值;如果有多个用户彼此正交、适合空分,就把它们配成 MU-MIMO 组提升容量。这就是"秩自适应"和"动态配对"在做的事——同一个基站、同一帧里,不同资源块上可以分别用 SU 和 MU。
Q2:为什么 ZF 预编码要把干扰"硬归零",不留一点余地? A:因为 ZF 只看干扰、不看噪声。在信噪比足够高时,干扰是主要矛盾,硬归零能换来最干净的多用户分离,吞吐量最优。但在低信噪比下,硬归零所需的极大加权会同时把噪声放大,得不偿失——这时 MMSE/RZF 留一点残余干扰、换噪声抑制,整体反而更好。工程上几乎清一色用 MMSE,ZF 更多是理论基准和教学样本。
Q3:零陷的方向是固定的吗?用户移动了怎么办? A:不是固定的。预编码矩阵 $W$ 是根据实时 CSI 每个调度周期重新计算的,零陷方向跟随用户移动而实时调整。但这也带来严格要求:CSI 必须足够"新"、足够"准"。在 FDD 系统里 CSI 靠终端反馈(PMI/CQI),存在量化误差和时延;TDD 系统靠 SRS + 互易性,时延更小但依赖校准。CSI 过期或失真,零陷就会"挖偏",这是移动场景下 MU-MIMO 性能下降的头号原因。
Q4:天线数越多,能同时服务的用户数就线性增长吗? A:基本是,但有上限和折中。理论上 MU-MIMO 可同时支持的用户数受限于基站天线数 $N_t$(线性增长),且 Massive MIMO 借助信道硬化让用户更易正交。但实际同时配对用户数 $K$ 不会无限逼近 $N_t$:一是用户空间分布随机,找到大量两两正交的用户本身就难;二是 $K$ 越接近 $N_t$,ZF 功率放大越严重。现网典型 64T 基站,下行 MU-MIMO 同时配对用户数多在 4~16 之间,远小于天线数。
Q5:上行能不能也用 MU-MIMO? A:能,叫"上行 MU-MIMO"或"多用户联合检测"。区别在于:下行是基站单点预编码(集中算 $W$),上行是多个手机各自独立发射、基站在接收端用多天线做联合检测(同样是 ZF/MMSE 思路,但作用在接收侧)。5G 上行尤其受益——手机发射功率小,靠基站多天线接收合并既提升信号又分离多用户,是 TDD 大规模天线的一大收益点。
本文由「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 等场景全覆盖。
