想象一个录音师,面前摆两支话筒,台上两位歌手同时开口。两路声音在空气里混成一片,两支话筒都收到了两位歌手的声音——只不过由于站位不同,两位歌手在每支话筒里的“音量配比”不一样。录音师拿到的是两轨混合录音,他手里的任务只有一个:把两位歌手的声音分开。
这就是空间复用接收端每天在干的事。
前面讲发射端的文章很多:波束怎么指向、预编码怎么让多路信号互不踩脚。但有一个环节很少被系统讲清楚——发射端把4条数据流同时扔进空中,它们在传播中叠加、缠绕,到达接收天线时早已难分难解。接收机凭什么能把它们一条条拆回来?
这个“拆”的动作,专业术语叫MIMO检测(MIMO Detection)。它是基带接收链路里最烧脑的一环,也是Massive MIMO之所以能工作的另一半秘密。发射端负责“把流分开送出去”,接收端负责“把混在一起的流捞回来”——两者是一对镜像问题。今天我们专讲这一半。
假设基站用2根发射天线发2条独立数据流,手机用2根接收天线收。每根接收天线收到的,都是两条流经过各自信道衰落后的线性叠加,再加上噪声:
$$y = Hs + n$$
别被公式吓到,逐个符号拆开看:
| 符号 | 含义 | 类比 |
|---|---|---|
| $s$ | 发射的两条流 $[s_1, s_2]^T$ | 两位歌手各自唱的内容 |
| $H$ | 2×2信道矩阵,$h_{ij}$表示第$j$条流漏到第$i$根接收天线的增益和相位 | 每位歌手到每支话筒的“音量配比” |
| $y$ | 两根接收天线收到的混合信号 | 两轨混合录音 |
| $n$ | 噪声 | 环境底噪 |
写成分量形式,每一根接收天线上的信号都是:
$$y_1 = h_{11}s_1 + h_{12}s_2 + n_1$$ $$y_2 = h_{21}s_1 + h_{22}s_2 + n_2$$
看清楚了吗?每根接收天线上都同时有$s_1$和$s_2$。这就是“缠住”的本质:空间复用并没有在物理上把流隔离到不同的天线上,它利用的是“两根天线看到的混合比例不同”这一点点差异。
flowchart TD
A["数据流s1"] --> B["发射天线1"]
A2["数据流s2"] --> B2["发射天线2"]
B -->|信道h11| C["接收天线1"]
B2 -->|信道h12| C
B -->|信道h21| C2["接收天线2"]
B2 -->|信道h22| C2
C --> D["混合信号y1"]
C2 --> D2["混合信号y2"]
D --> E["MIMO检测器<br/>把s1和s2拆开"]
D2 --> E
整张图的关键在于中间那四条交叉的箭头——如果交叉线不存在(每条流只到一根天线),分离就是水到渠成的事。MIMO检测的全部难度,都藏在这四条交叉路径里。
假如某一刻的信道矩阵是:
$$H = \begin{bmatrix} 0.9 & 0.8 \ 0.7 & 0.85 \end{bmatrix}$$
注意这个矩阵的特点:每一行的两个元素都很接近。也就是说,两根接收天线看到的“混合配方”几乎一样——第一根天线里$s_1$和$s_2$的比例是0.9:0.8,第二根是0.7:0.85,配方雷同。
配方雷同意味着什么?意味着你拿到两轨几乎相同的混合录音,却要还原出两个独立的人声——先天信息不足。这种情况在数学上叫矩阵“病态”(ill-conditioned),在工程上叫两条流的空间信道相关性高。它常常发生在:手机正对基站、没有反射路径、两根天线离得太近的时候。
反过来,如果信道矩阵是:
$$H = \begin{bmatrix} 0.95 & 0.1 \ 0.2 & 0.9 \end{bmatrix}$$
两根天线的配方截然不同,$s_1$在第一根天线上占绝对优势、$s_2$在第二根上占绝对优势——分离就容易得多。这就是为什么多流传输的效果极度依赖无线环境: rich scattering(多径丰富的环境)天然帮我们把信道矩阵变得“好拆”。
现在进入正题。拿到混合信号$y$和信道估计$\hat{H}$,怎么还原$s$?工程上有一条清晰的思路谱系,从“最笨但最准”到“最巧但最险”,一共四个流派。
最朴素的思路:既然知道信道$H$,那就把所有可能的发送组合都试一遍。
2条流,每条流是16QAM调制(16种取值),那么$s_1$和$s_2$的联合组合共有 $16 \times 16 = 256$ 种。对每一种组合,算出它“应该”收到的信号$Hs$,再和实际收到的$y$比距离,谁的候选组合离实际接收点最近,就判谁:
$$\hat{s}{ML} = \arg\min | y - Hs |^2$$}
这就是最大似然检测。它的检测错误率是理论下界,没有比它更准的了。
但代价一眼可见:组合数随流数指数爆炸。4条流×64QAM,组合数是 $64^4 \approx 1677$万——每收到一个符号就要穷举1677万次距离计算。硬件根本扛不住,所以纯ML只活在教科书和低阶调制的 demonstration 里。
工程师的第二直觉:既然$y = Hs + n$,那我直接“除以”$H$不就把$s$解出来了?矩阵的“除法”就是求逆:
$$\hat{s}_{ZF} = (H^H H)^{-1} H^H \, y$$
($H^H$是$H$的共轭转置,这个组合式叫伪逆,是处理非方阵的“除法”。)
它的效果立竿见影:流间串扰被彻底清零。$s_1$的估计值里不再混有$s_2$的成分,一刀两断。
但天底下没有免费的午餐。把解代回去看噪声发生了什么:
$$\hat{s}_{ZF} = s + (H^H H)^{-1} H^H n$$
噪声也被同一个矩阵“处理”了一遍。当$H$病态(两行配方雷同)时,$(H^HH)^{-1}$里的元素会非常大,噪声被成倍放大。用前面的病态矩阵算一下:
| 情形 | 信道矩阵 | ZF带来的噪声放大倍数 |
|---|---|---|
| 两根天线配方差异大 | [[0.95, 0.1], [0.2, 0.9]] |
约 1.1 倍,几乎无损 |
| 两根天线配方雷同 | [[0.9, 0.8], [0.7, 0.85]] |
约 18 倍,灾难性 |
串扰清零的代价,是噪声放大——这两个家伙是同一条跷跷板的两头。信道越差(相关性越高),ZF越接近“把串扰拆干净了,但把噪声也喊醒了”。
ZF的失败让人反思:我们真的需要串扰完全为零吗?
MMSE的回答是:不。目标是让“估计值与真实值之差”的整体功率最小——注意这个差里既包含串扰也包含噪声。于是它对ZF的公式只做了一处修改,加上一个正则项:
$$\hat{s}_{MMSE} = (H^H H + \sigma^2 I)^{-1} H^H \, y$$
多出来的$\sigma^2 I$就是噪声功率那一项。它的作用用一句话讲:当信道矩阵趋于病态时,正则项拉住了求逆的手,不许噪声被无限放大。代价是串扰不再严格为零,留了一小部分“残余串扰”。
可以用调音台类比:ZF是把串扰推子拉到最低、但底噪推子被顶到最大;MMSE是接受一点点串扰漏音,换取整体听感最干净。在信噪比不高的现实无线环境里,MMSE几乎总是赢ZF;只有在极高信噪比时两者才趋同(因为$\sigma^2$项变得可忽略,MMSE退化成ZF)。
前两个流派都是“一次性”线性求解。上世纪90年代末,贝尔实验室提出的BLAST系列结构给了一个巧思:既然一次性拆不开,那就像剥洋葱一样一层层来。以实验系统V-BLAST为代表的思路如下(据公开文献,贝尔实验室在90年代末用该架构在室内实验中做到了远超单天线的频谱效率):
flowchart TD
A["接收混合信号y"] --> B["按信噪比排序<br/>挑最强的一条流"]
B --> C["线性检测<br/>解出这条流"]
C --> D["判决得到符号"]
D --> E["从y中减去<br/>这条流的贡献"]
E --> F{还有剩余流吗}
F -->|有| B
F -->|没有| G["全部流解出"]
这个过程叫Ordered SIC(排序串行干扰消除),“排序”二字是灵魂:必须从最强的流拆起。原因很直觉——第一条流的判决错误会被减法环节“传染”给后面所有流(这叫误差传播),所以必须让第一条的错判概率最小,而信噪比最高的那条流错判概率最小。
SIC的性能介于线性检测和ML之间,复杂度只随流数线性增长,是性能与复杂度之间的经典折中。它还有一个致命软肋:第一条流拆错,满盘皆输。
| 检测器 | 核心动作 | 误码性能 | 复杂度 | 主要缺陷 |
|---|---|---|---|---|
| ML 最大似然 | 穷举所有组合找最近 | 最优(下界) | 指数级,不可用 | 组合爆炸 |
| ZF 迫零 | 伪逆一刀切,串扰清零 | 差(低信噪比下) | 低 | 噪声被放大,病态信道下崩溃 |
| MMSE | 加正则项,留残余串扰 | 中等偏好 | 低 | 高信噪比下逼近ML但仍不及 |
| SIC 串行消除 | 拆一层减一层,从强到弱 | 接近ML | 线性增长 | 误差传播,第一刀必须准 |
工程上还有介于ML和线性法之间的球形译码(把穷举范围限制在一个球壳内,大幅省计算)等流派,思路同源,不展开。
讲到这里,似乎MIMO检测是个“怎么都不完美”的将就活。但Massive MIMO的上行给了一个漂亮的反转。
考虑基站侧64根接收天线、同时接收8个用户的信号。这时的信道矩阵$H$是64×8的“高瘦”矩阵。发生了一件违反直觉的事:天线越多,检测反而越接近“傻办法”的最优效果。原因有二,都在大数定律的庇护之下:
其一,阵列增益抬高了第一条流的“强势”。64根天线上,同一个用户信号的能量可以做相干合并(能量按天线数平方级累积),而噪声不相干叠加(只按天线数线性累积)。每条有效流的信噪比都被天然抬得很高,检测的起点就远好于2×2时代。
其二,信道硬化让矩阵不再病态。8个用户到64根天线的8条信道向量,在维数充裕的空间里几乎必然相互正交——这是随机矩阵理论给出的结论:当接收天线数远大于流数时,$H^HH$趋近于对角阵。对角阵的求逆毫无难度,ZF检测的噪声放大问题自行消失。
也就是说,在2×2时代把ZF逼入绝境的“矩阵病态”,在大规模天线阵列下被概率论随手抹平了。多天线不改单个检测器的算法,它改变的是检测器面对的那个矩阵的“体质”。这也是为什么现网Massive MIMO的上行多用户接收,工程上普遍采用线性检测(ZF/MMSE及其IRC变体)就能工作得很好——大天线数替算法买了单。至于非线性ML类检测,在流数多、调制阶数高的场景,具体选择属于实现自由度,标准允许多种实现,具体算法以各厂家公开资料为准。
场景一:上行的多流与多用户分离。手机用2层或4层上行发射时,基带接收机要拆开这些层——用的就是上文MMSE或其变种。更常见的隐性场景是上行MU-MIMO:基站把信道足够“正交”的两个用户调度到相同的时频资源上,两个用户各自只发1~2层,基站靠接收检测器在空间维度把两人分开。注意方向性:下行的多用户分离靠发射端预编码,上行的多用户分离靠基站接收检测——用户终端只有1~4根天线,没有能力替别人做波束隔离,重担全在基站检测器肩上。
场景二:测试仪表里的“参考接收机”。你跑OTA测试或一致性测试时,仪表里内置的检测算法直接决定了测出来的吞吐。同一部手机在两台仪表上吞吐差一截,有时不是手机的问题,而是两台仪表的检测器流派不同。
陷阱一:信道估计误差在ZF下被毒刑放大。检测器吃的是$\hat{H}$(估计值)而不是真值$H$。估计误差本身不大,但经过求逆运算后被二次放大,尤其在矩阵病态时。现网症状:某几条流的BLER异常高于其他流,且集中在信道质量突变时刻(高速移动、波束切换后)。排查方向不是检测器本身,而是先看导频质量、信道估计的时域滤波窗长是否跟不上信道变化。
陷阱二:MU-MIMO配对翻车的表象是“两人同时掉”。配对的用户如果空间信道相关性高(比如两个用户在同一个方向、视距传播),检测器面对的等效矩阵病态,串扰拆不干净,两个用户同时掉速,而且互相甩锅——单看每个用户自己的CQI都“报得好好的”。这就是为什么配对算法要引入空间相关性判定:配对不是凑人头,是在为检测器挑一个好解的矩阵。
陷阱三:把流间干扰误诊为邻区干扰。SIC或MMSE没拆干净的残余流间串扰,在星座图上表现为围绕星座点的各向异性发散(朝特定方向拖尾,因为串扰来自另一条已知调制的流),而噪声和邻区干扰通常表现为各向同性的云团。看星座图时留意发散方向,能帮你把“自家流打架”和“邻居来捣乱”区分开——这两个问题的处方完全不同。
回顾全文的推理主线:
flowchart TD
A["空间复用<br/>多流同频同时发"] --> B["空中叠加<br/>每根天线收到混合信号"]
B --> C["接收机拿到y和信道估计"]
C --> D["线性派:ZF一刀切<br/>串扰清零但噪声放大"]
C --> E["线性派:MMSE<br/>留一点串扰换噪声安全"]
C --> F["序贯派:SIC剥洋葱<br/>拆一层减一层"]
C --> G["暴力派:ML穷举<br/>最优但不可实现"]
D --> H["天线够多时<br/>矩阵体质变好"]
E --> H
F --> H
H --> I["Massive MIMO上行<br/>线性检测就够用"]
一句话收束:空间复用的收益从来不是发射端单方面给的,它是“发射端制造纠缠、接收端解纠缠”这一对舞蹈的合奏。检测器谱系里每一次取舍——串扰与噪声、性能与复杂度、误差与传播——都在提醒我们:无线系统里没有免费的午餐,只有算得清的账。
Q: MIMO检测和信道均衡是一回事吗? A: 数学上高度同构——MMSE检测器和MMSE均衡器的公式长得几乎一样。但对付的敌人不同:均衡对付的是同一流内部的符号间串扰(时间维度的拖尾,多径引起),MIMO检测对付的是不同流之间的空间串扰(多天线并发引起)。现网宽带系统里两者是级联工作的,先空间检测拆流,再对每条流做均衡(实际实现顺序因架构而异)。
Q: 为什么不用性能最好的ML检测,反正芯片越来越快? A: 因为复杂度随“流数×调制阶数”指数增长,而这两者在5G里一个涨到8~16层、一个涨到256QAM以上。1677万次乘加每符号的耗电,与基站“每比特能耗”的考核直接冲突。工程上只在“层数少且调制阶数低”的角落里才有ML类算法的生存空间,球形译码这类“受限ML”是折中方向。
Q: ZF噪声放大和功率倒置是一回事吗? A: 不是。功率倒置说的是把阵列权值归一化后有用功率被压低的现象;ZF噪声放大说的是求逆矩阵的非线性“偏心”——它对病态方向上的分量不加甄别地狂乘放大系数。两者常同时出现容易被混淆,但机理一个在发射端权值设计、一个在接收端矩阵求逆。
Q: 上行MU-MIMO配对,检测器希望什么样的用户被配到一起? A: 两个用户到基站阵列的信道向量接近正交的——通俗说就是从基站看去“位置隔得开、多径特征不一样”的用户。这样等效信道矩阵条件数好,检测器拆得干净,两人都能跑满速率。同一扇区里方向接近、视距直达的两个用户是最差配对。
Q: 病态矩阵有数值化的衡量指标吗? A: 有,条件数——信道矩阵最大奇异值与最小奇异值之比。条件数接近1,ZF/MMSE都好使;条件数飙到几十上百,说明两条流的空间信道几乎重叠,再好的检测器也难为无米之炊,正确的动作是让调度器降层数或换配对,而不是死磕检测算法。
本文由「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 等场景全覆盖。
