MIMO系统中的线性处理: 匹配滤波、迫零滤波与维纳滤波
前言
这篇博客是对经典论文 Linear Transmit Processing in MIMO Communications Systems
的摘记。这篇文章考虑的是收发端的各自独立信号处理设计,而非联合设计。继而,给出了匹配滤波、迫零滤波与维纳滤波这三种常见滤波方式的具体数学形式。
系统模型
考虑如图所示的一个线性系统模型, 有:
y=Ps∈CNs~=G(HPs+η)∈CB\boldsymbol{y}=\boldsymbol{P} \boldsymbol{s} \in \mathbb{C}^{N}\\ \tilde{\boldsymbol{s}}=\boldsymbol{G}(\boldsymbol{H P s}+\boldsymbol{\eta}) \in \mathbb{C}^{B} y=Ps∈CNs~=G(HPs+η)∈CB
BBB代表了数据流数。NNN代表发送天线数,MMM代表接收天线数。需要解释的是, 最后的方框中的α1B\alpha\mathbf{1}_Bα1B是指将s~\tilde{\boldsymbol{s}}s~乘上一个标量实数α\alphaα,这对系统性能并不会有任何影响,但会影响发射机的设计,后面将会揭示。
同时,定义平均发送能量为:
E[∥y∥22]=E[∥Ps∥22]=tr(PRsPH)=Etr⋅\mathrm{E}\left[\|\boldsymbol{y}\|_{2}^{2}\right]=\mathrm{E}\left[\|\boldsymbol{P} \boldsymbol{s}\|_{2}^{2}\right]=\operatorname{tr}\left(\boldsymbol{P} \boldsymbol{R}_{\boldsymbol{s}} \boldsymbol{P}^{\mathrm{H}}\right)=E_{\mathrm{tr}} \cdot E[∥y∥22]=E[∥Ps∥22]=tr(PRsPH)=Etr⋅
信噪比可以定义为 (平均了流数与接收天线数):
γ=Etr/Btr(Rη)/M\gamma=\frac{E_{\mathrm{tr}} / B}{\operatorname{tr}\left(\boldsymbol{R}_{\boldsymbol{\eta}}\right) / M} γ=tr(Rη)/MEtr/B
其中Rη\boldsymbol{R}_{\boldsymbol{\eta}}Rη代表噪声的协方差矩阵。
接收滤波
接收匹配滤波
Receive matched filter (RxMF)
RxMF 旨在最大化滤波器GGG的输出信噪比,这在噪声极大的场景下是最优的。具体地:
GMF=argmaxG∣E[sHs~]∣2E[∥Gη∣22]\boldsymbol{G}_{\mathrm{MF}}=\operatorname{argmax}_{G} \frac{\left|\mathrm{E}\left[\boldsymbol{s}^{\mathrm{H}} \tilde{\boldsymbol{s}}\right]\right|^{2}}{\mathrm{E}\left[\|\left.\boldsymbol{G} \boldsymbol{\eta}\right|_{2} ^{2}\right]} GMF=argmaxGE[∥Gη∣22]∣∣E[sHs~]∣∣2
分子中,通过作相关,提取出处理后信号中包含真实信号信息的能量值,去除掉噪声。 分母则是经过滤波后的噪声能量。因此通过对上式求导置0,得到:
GMF=α′RsPHHHRη−1∈CB×M\boldsymbol{G}_{\mathrm{MF}}=\alpha^{\prime} \boldsymbol{R}_{\boldsymbol{s}} \boldsymbol{P}^{\mathrm{H}} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{R}_{\boldsymbol{\eta}}^{-1} \in \mathbb{C}^{B \times M} GMF=α′RsPHHHRη−1∈CB×M
其中,α′\alpha^{\prime}α′为标量可以任意选取,并不影响接收信噪比, 因此后文中可置为1. 相关简要推导放在了附录中。观察可以看到, 接收信号抵达接收端时经历了HPHPHP,则对其的处理就是其转置PHHHP^HH^HPHHH。
接收迫零滤波
Receive Zero-Forcing Filter (RxZF)
迫零均衡的思路很简单,假定没有噪声,令处理后信号与原信号相等。也即:
s~∣η=0M=GHPs≡s\left.\tilde{\boldsymbol{s}}\right|_{\eta=\mathbf{0}_{M}}=\boldsymbol{G H P} \boldsymbol{s} \equiv \boldsymbol{s} s~∣η=0M=GHPs≡s
因此,GHPG H PGHP应为单位阵。
E[∥s−s~∥22]=E[∥Gη∥22]\mathrm{E}\left[\|\boldsymbol{s}-\tilde{\boldsymbol{s}}\|_{2}^{2}\right]=\mathrm{E}\left[\|G \boldsymbol{\eta}\|_{2}^{2}\right] E[∥s−s~∥22]=E[∥Gη∥22]
因此,RxZF的推导可以通过求解如下问题:
GZF=argminGE[∥Gη∥22]s.t.: GHP=1B\boldsymbol{G}_{\mathrm{ZF}}=\operatorname{argmin}_{\boldsymbol{G}} \mathrm{E}\left[\|\boldsymbol{G} \boldsymbol{\eta}\|_{2}^{2}\right] \quad \text { s.t.: } \boldsymbol{G H} \boldsymbol{P}=\mathbf{1}_{B} GZF=argminGE[∥Gη∥22] s.t.: GHP=1B
1B\mathbf{1}_{B}1B就是单位阵。该问题可以通过拉格朗日乘子法求解,过程也放在了附录之中。最优解为:
GZF=(PHHHRη−1HP)−1PHHHRη−1∈CB×M.\boldsymbol{G}_{\mathrm{ZF}}=\left(\boldsymbol{P}^{\mathrm{H}} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{R}_{\boldsymbol{\eta}}^{-1} \boldsymbol{H} \boldsymbol{P}\right)^{-1} \boldsymbol{P}^{\mathrm{H}} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{R}_{\boldsymbol{\eta}}^{-1} \in \mathbb{C}^{B \times M} . GZF=(PHHHRη−1HP)−1PHHHRη−1∈CB×M.
相较于匹配滤波,这里多了一项GZF=(PHHHRη−1HP)−1\boldsymbol{G}_{\mathrm{ZF}}=\left(\boldsymbol{P}^{\mathrm{H}} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{R}_{\boldsymbol{\eta}}^{-1} \boldsymbol{H} \boldsymbol{P}\right)^{-1}GZF=(PHHHRη−1HP)−1,因此迫零滤波可以理解为是匹配滤波后再做了一步干扰消除。当Rη\boldsymbol{R}_{\boldsymbol{\eta}}Rη为单位阵 (或单位阵乘上标量)时,原式就退化为GZF=(PHHHHP)−1PHHH\boldsymbol{G}_{\mathrm{ZF}}=\left(\boldsymbol{P}^{\mathrm{H}} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{H} \boldsymbol{P}\right)^{-1} \boldsymbol{P}^{\mathrm{H}} \boldsymbol{H}^{\mathrm{H}}GZF=(PHHHHP)−1PHHH。
接收维纳滤波
Receive Wiener Filter (RxWF)
维纳滤波器旨在最小化MSE值,也即:
GWF=argminGE[∥s−s~∥22]\boldsymbol{G}_{\mathrm{WF}}=\operatorname{argmin}_{\boldsymbol{G}} \mathrm{E}\left[\|\boldsymbol{s}-\tilde{\boldsymbol{s}}\|_{2}^{2}\right] GWF=argminGE[∥s−s~∥22]
令导数为0,可以得到:
GWF=(PHHHRη−1HP+Rs−1)−1PHHHRη−1\boldsymbol{G}_{\mathrm{WF}}=\left(\boldsymbol{P}^{\mathrm{H}} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{R}_{\boldsymbol{\eta}}^{-1} \boldsymbol{H} \boldsymbol{P}+\boldsymbol{R}_{\boldsymbol{s}}^{-1}\right)^{-1} \boldsymbol{P}^{\mathrm{H}} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{R}_{\boldsymbol{\eta}}^{-1} GWF=(PHHHRη−1HP+Rs−1)−1PHHHRη−1
这里运用到了矩阵求逆引理,详见附录。注意到, 当信噪比较低时,(PHHHRη−1HP+Rs−1)−1\left(\boldsymbol{P}^{\mathrm{H}} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{R}_{\boldsymbol{\eta}}^{-1} \boldsymbol{H} \boldsymbol{P}+\boldsymbol{R}_{\boldsymbol{s}}^{-1}\right)^{-1}(PHHHRη−1HP+Rs−1)−1退化为Rs\boldsymbol{R}_{\boldsymbol{s}}Rs,维纳滤波器退化为匹配滤波。当信噪比较高时,退化为迫零滤波。
发送滤波
发送匹配滤波
类似地,可以通过如下优化问题求解:
PMF=argmaxP∣E[sHs~]∣2E[∥Gη∣∣22]s.t.: E[∥Ps∥22]=Etr\boldsymbol{P}_{\mathrm{MF}}=\operatorname{argmax}_{\boldsymbol{P}} \frac{\left|\mathrm{E}\left[\boldsymbol{s}^{\mathrm{H}} \tilde{\boldsymbol{s}}\right]\right|^{2}}{\mathrm{E}\left[\| \boldsymbol{G} \boldsymbol{\eta}||_{2}^{2}\right]} \quad \text { s.t.: } \mathrm{E}\left[\|\boldsymbol{P} \boldsymbol{s}\|_{2}^{2}\right]=E_{\mathrm{tr}} PMF=argmaxPE[∥Gη∣∣22]∣∣E[sHs~]∣∣2 s.t.: E[∥Ps∥22]=Etr
这比接收滤波要容易求解因为分母是一个常数,直接通过拉格朗日乘子法可以得到:
PMF=βTxMFHHGH∈CN×BβTxMF=Etrtr(HHGHRsGH)\begin{aligned} \boldsymbol{P}_{\mathrm{MF}} &=\beta_{\mathrm{TxMF}} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}} \in \mathbb{C}^{N \times B} \\ \beta_{\mathrm{TxMF}} &=\sqrt{\frac{E_{\mathrm{tr}}}{\operatorname{tr}\left(\boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}} \boldsymbol{R}_{\mathbf{s}} \boldsymbol{G H}\right)}} \end{aligned} PMFβTxMF=βTxMFHHGH∈CN×B=tr(HHGHRsGH)Etr
可以看到,发送匹配滤波和接收匹配滤波一样,都是信号接下来要经过的线性变换的共轭转置。
发送迫零滤波
与接收迫零滤波不同的时,此时除了令GHPGHPGHP为单位阵外,也期望最小化发送功率,因此优化问题可以表示为:
P~ZF=argminPE[∥Ps∥22]s.t.: GHP=1B\widetilde{\boldsymbol{P}}_{\mathrm{ZF}}=\operatorname{argmin}_{\boldsymbol{P}} \mathrm{E}\left[\|\boldsymbol{P s}\|_{2}^{2}\right] \quad \text { s.t.: } \boldsymbol{G H} \boldsymbol{P}=\mathbf{1}_{B} PZF=argminPE[∥Ps∥22] s.t.: GHP=1B
通过拉格朗日乘子法可以得到:
P~ZF=HHGH(GHHHGH)−1∈CN×B.\tilde{\boldsymbol{P}}_{\mathrm{ZF}}=\boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}}\left(\boldsymbol{G} \boldsymbol{H} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}}\right)^{-1} \in \mathbb{C}^{N \times B} . P~ZF=HHGH(GHHHGH)−1∈CN×B.
然而这一解并不一定能满足功率约束。因此一种直觉的做法就是引入一个常数标量进行归一化。即:
PZF=βTxZFHHGH(GHHHGH)−1∈CN×B\boldsymbol{P}_{\mathrm{ZF}}=\beta_{\mathrm{TxZF}} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}}\left(\boldsymbol{G} \boldsymbol{H} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}}\right)^{-1} \in \mathbb{C}^{N \times B} PZF=βTxZFHHGH(GHHHGH)−1∈CN×B
其中,
βTxZF=Etrtr((GHHHGH)−1Rs)\beta_{\mathrm{TxZF}}=\sqrt{\frac{E_{\mathrm{tr}}}{\operatorname{tr}\left(\left(\boldsymbol{G H \boldsymbol { H } ^ { \mathrm { H } } \boldsymbol { G } ^ { \mathrm { H } } ) ^ { - 1 } \boldsymbol { R } _ { \boldsymbol { s } } )}\right.\right.}} βTxZF=tr((GHHHGH)−1Rs)Etr
发送维纳滤波
假如仍以基本的MMSE为目标,维纳滤波的解由下式给出:
PCMMSE=argminPE[∥s−s~∥22]s.t.: E[∥Ps∥22]≤Etr⋅\boldsymbol{P}_{\mathrm{CMMSE}}=\operatorname{argmin}_{\boldsymbol{P}} \mathrm{E}\left[\|\boldsymbol{s}-\tilde{\boldsymbol{s}}\|_{2}^{2}\right] \quad \text { s.t.: } \mathrm{E}\left[\|\boldsymbol{P} \boldsymbol{s}\|_{2}^{2}\right] \leq E_{\mathrm{tr}} \cdot PCMMSE=argminPE[∥s−s~∥22] s.t.: E[∥Ps∥22]≤Etr⋅
其解为:
PCMMSE=(HHGHGH+λ1N)−1HHGH∈CN×B\boldsymbol{P}_{\mathrm{CMMSE}}=\left(\boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}} \boldsymbol{G} \boldsymbol{H}+\lambda \mathbf{1}_{N}\right)^{-1} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}} \in \mathbb{C}^{N \times B} PCMMSE=(HHGHGH+λ1N)−1HHGH∈CN×B
其中λ\lambdaλ为拉格朗日乘子,用以满足功率约束。然而问题来了,此时发现λ\lambdaλ只与发送功率有关。当发送功率较大但噪声功率更大的低信噪比情况下,维纳滤波器仍会迫近与迫零滤波。根据push-through公式,有:
(HHGHGH+λ1N)−1HHGH=HHGH(GHHHGH+λ1N)−1\left(\boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}} \boldsymbol{G} \boldsymbol{H}+\lambda \mathbf{1}_{N}\right)^{-1} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}} =\boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}}\left(\boldsymbol{G} \boldsymbol{H}\boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}} +\lambda \mathbf{1}_{N}\right)^{-1}(HHGHGH+λ1N)−1HHGH=HHGH(GHHHGH+λ1N)−1
也就是说,这样的滤波器并不具备考虑噪声的能力。
因此,进行改进,求解如下问题:
{PWF,βTxWF}=argmin{P,β}E[∥s−β−1s~∥22]s.t.: E[∥Ps∥22]=Etr.\begin{aligned} \left\{\boldsymbol{P}_{\mathrm{WF}}, \beta_{\mathrm{TxWF}}\right\} &=\operatorname{argmin}_{\{\boldsymbol{P}, \beta\}} \mathrm{E}\left[\left\|\boldsymbol{s}-\beta^{-1} \tilde{\boldsymbol{s}}\right\|_{2}^{2}\right] \\ \text { s.t.: } \mathrm{E}\left[\|\boldsymbol{P} \boldsymbol{s}\|_{2}^{2}\right] &=E_{\mathrm{tr}} . \end{aligned} {PWF,βTxWF} s.t.: E[∥Ps∥22]=argmin{P,β}E[∥∥s−β−1s~∥∥22]=Etr.
引入了标量因子β\betaβ,可以理解为接收机要将最后得到的信号除以β\betaβ。那么,β\betaβ将是越大越好的。因为如果发送滤波得到了更大的β\betaβ,意味着最后除掉时将噪声的能量也降低了。因此,问题成了寻找满足上述优化问题的PPP和最大的β\betaβ,通过拉格朗日乘子法,得到:
PWF=βTxWFF−1HHGH∈CN×B\boldsymbol{P}_{\mathrm{WF}}=\beta_{\mathrm{TxWF}} \boldsymbol{F}^{-1} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}} \in \mathbb{C}^{N \times B} PWF=βTxWFF−1HHGH∈CN×B
and
βTxWF=Etrtr(F−2HHGHRsGH)\beta_{\mathrm{TxWF}}=\sqrt{\frac{E_{\mathrm{tr}}}{\operatorname{tr}\left(\boldsymbol{F}^{-2} \boldsymbol{H}^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}} \boldsymbol{R}_{\boldsymbol{s}} \boldsymbol{G H}\right)}} βTxWF=tr(F−2HHGHRsGH)Etr
where we defined
F=HHGHGH+tr(GRηGH)Etr1N∈CN×N\boldsymbol{F}=H^{\mathrm{H}} \boldsymbol{G}^{\mathrm{H}} \boldsymbol{G} H+\frac{\operatorname{tr}\left(\boldsymbol{G} \boldsymbol{R}_{\eta} \boldsymbol{G}^{\mathrm{H}}\right)}{E_{\mathrm{tr}}} \mathbf{1}_{N} \in \mathbb{C}^{N \times N} F=HHGHGH+Etrtr(GRηGH)1N∈CN×N
可以看到,它与不引入β\betaβ时的维纳滤波的差别在于,此时没有了拉格朗日乘子,且解与信噪比直接相关。
性能结果
附录
接收匹配滤波推导
接收迫零滤波推导
接收维纳滤波推导
其中的求逆公式参照博客: https://zhuyulab.blog.csdn.net/article/details/118761178?spm=1001.2014.3001.5502
MIMO系统中的线性处理: 匹配滤波、迫零滤波与维纳滤波相关推荐
- matlab zf预编码,多用户MIMO系统中各种波束成型预编码性能比较(ZF,BD,MMSE,SLNR,MF,SVD)...
多用户MIMO系统中各种波束成型预编码性能比较(ZF,BD,MMSE,SLNR,MF,SVD) 关注次数: 905 下载次数: 155 文件大小: 207K 下载需要积分: 1 代码分类: 开发平台: ...
- 多用户MIMO系统中的天线选择技术和用户选择技术的MATLAB仿真
1.算法简介 MIMO系统不同于现有的单天线系统和智能天线系统,其在通信的发送端和接收端均使用多根天线.MIMO系统的基本原理是采用空时编码方式将用户的串行码流通过编码.调制.加权和映射等方式分成多路 ...
- 大规模MIMO系统中基于CSI的卷积神经网络定位
来源:投稿 作者:小灰灰 编辑:学姐 论文标题:CSI-based Positioning in Massive MIMO systems using Convolutional Neural Net ...
- (各种均衡算法在MIMO中的应用对比试验)最小均方误差(MMSE)原理推导以及在MIMO系统中对性能的改善。
文档和程序地址:下载地址 各种均衡算法在MIMO中的应用对比试验,内附原理推导,对比实验说明和结果等.包括MMSE,ZF,ZF-SIC等.代码附有原理推导小论文.仅供参考
- MMSE法用于MIMO系统
MMSE法用于MIMO系统 MMSE方法用于MIMO系统程序如下: 之前讲到过迫零响应法(ZF)在MIMO系统中的应用,而另外一种均衡方法也常常用在不理想传输信道中,这就是最小误差法(Minimum ...
- 【协作MIMO+非规则LDPC】协作MIMO系统上,中继协作解码转发策略和编码协作策略,采用非规则LDPC编码
1.软件版本 MATLAB2013b 2.本算法理论知识 做非规则LDPC码的以编码协作形式的中继协议,比较以下三种情况下的误码率图和中断概率图: 源节点一个(配置一根天线),中继节点4个(每个节点配 ...
- 【转载】MIMO技术杂谈(二):犹抱琵琶半遮面--MIMO信道中隐藏的秘密
犹抱琵琶半遮面--MIMO信道中隐藏的秘密 无线通信中,最让人难以捉摸的,就是那看不见,摸不着的无线信道了.但是,正因为它的变化莫测,才让无线通信具有了独特的魅力.正如Tse在他的大作<无线通信 ...
- 犹抱琵琶半遮面--MIMO信道中隐藏的秘密
[原创]MIMO技术杂谈(二):犹抱琵琶半遮面--MIMO信道中隐藏的秘密 - 通信原理与基础 - 通信人家园 - Powered by C114 无线通信中,最让人难以捉摸的,就是那看不见,摸不着 ...
- MIMO技术杂谈(二):犹抱琵琶半遮面--MIMO信道中隐藏的秘密
犹抱琵琶半遮面--MIMO信道中隐藏的秘密 经典MIMO原理介绍,原文地址: http://bbs.c114.net/thread-668750-1-1.html 无 ...
最新文章
- 如何让phpmyadmin输入密码再进入
- 【组队学习】【35期】李宏毅机器学习(含深度学习)
- 取消MySQL timestamp列默认ON UPDATE CURRENT_TIMESTAMP
- spring cloud 调用接口间歇性返回http 500 - Internal Server Error的错误
- XML与java的应用
- 数据库连接池为啥要用 ThreadLocal?不用会怎么样?
- 是运用计算机科学的基础知识进行问题求解,计算机基础-第一章计算机基础知识.ppt...
- html入门教程博客,HTML基础教程
- java时间轮定时器_基于时间轮的定时器
- 什么是软件安全性测试?安全测试有哪些测试方法和手段
- 如何写论文摘要和引言
- 自定义自己的iphone铃声
- matlab 三维立方体,使用matlab函数构建三维立方体的几种方法
- win10计算机网线直联,教你win10两台电脑网线直连传输文件的方法
- 192.168.8.1手机登陆_192.168.8.1登录入口上网设置
- eigen 列拼接_cufflinks
- 做母婴微商怎么线上引流?做母婴产品如何线上引流?
- LI雨骤Moku:Go M1初步体验
- [CentOS Python系列] 五.阿里云部署web环境及通过IP地址访问服务器网页
- SVD分解的推导,理解SVD分解及矩阵奇异值的几何意义
热门文章
- 『深度应用』OneFlow快速上手指南
- 【信息学奥数】—— 第一部分 C++语言 知识总结
- dns解析服务器原理,DNS解析过程及原理
- Java GridLayout(网格布局)布局管理器
- PhotoShop脚本指南
- egret php交互,egret 发送HTTP请求
- Springboot整合Elasticsearch 报错availableProcessors is already set to [4], rejecting [4]
- EFCore反向工程
- 宠物店微信小程序包含预约和拼团功能从零开始学习开发步骤简单
- 简单介绍程序的翻译环境和执行环境