目录
写在前面:本文适合已经对SVD信道矩阵分解有一定了解的同学,希望进一步深入将SVD应用于大规模多用户MIMO系统的预编码设计。
可参照:
超详细解释奇异值分解(SVD)【附例题和分析】_svd 发现矩阵左零空间-CSDN博客
一.介绍
SVD全称 singular value decomposition,翻译为奇异值分解。基于奇异值分解的预编码算法,可以提高多用户毫米波大规模MIMO系统的频谱效率。可以将该预编码分成两步:
(1)模拟域预编码,目的:最大化等效信道矩阵增益;
(2)数字域预编码,目的:抑制用户间的干扰;
几个专有名词的解释:
毫米波:频段在30~300GHz。
优势:毫米波频率更高,波长更短,可使得天线尺寸更小,可在有限空间内部署更多的天线;
缺点:由于信号的波长较短,会导致路径损耗较大;
Massive MIMO:Massive Multi-input multi-output,大规模多输入多输出,为系统提供更多的空间增益
频谱效率:
系统传输的有效信息速率R除以信道带宽B,即单位带宽传输频道上每秒可传输的比特数,代表了系统对频谱资源的利用效率。单位是bit/s/Hz。
二. 系统模型
先上图:
左边基站,根发射天线, 个射频链路,个数据流。根据毫米波MIMO系统的特征,数据流少于射频链路数,射频链路数少于发射天线数,也就是:
K个单天线用户,合并到一起也可以看成多天线的用户。
信号s首先经过数字域预编码,也就是基带数字预编码器。接着经过模拟域预编码,也就是射频链路,最后发送端的发送信号为:
基带:base band 简称BB
射频:radio frequency 简称RF
理解如下:
如果未加特殊表示,讨论中的向量均为列向量。因为发射端有,相当于每个天线发送一个数据,所以发射信号x为维的列向量。
射频预编码使用模拟移相器实现的,只改变相位,不改变大小,所以中每个元素的模长为1。另外,由于发射机总功率的限制,这两个预编码满足:
用户k希望收到的消息为,其他的消息均可视为干扰,经过信道后,信号为:
后面为高斯白噪声。因为预编码之前有很多的数据流,只有一个数据流是用户k想要的,所以会出现干扰的情况。
利用有效信息 除以 干扰+噪声,可得到信干噪比(SINR)为:
其中代表数据流的个数,为第k个用户与基站之间的信道矩阵(实际上为向量),为高斯白噪声的方差。
累加所有K个用户的SINR,即可得到该系统的总频谱效率为:
其中E代表求均值。
接收信号,信干噪比,频谱效率,这三个参数的计算在通信领域是必须要会的。
三. 信道模型
此部分主要说明信道矩阵里面的元素究竟怎么取值。此处信道矩阵为一个的行向量(接收天线数为1,发射天线为)。
最常用Saleh-Valenzuela信道模型,如下:
理解成常数的部分:
:发射天线数
:族群数目
:每个族中的路径数
:第i个族中第l条路径的复合增益,看成复高斯分布
理解成 行向量的部分:
:用户k接收端的阵列响应向量
:基站发射端的阵列响应向量
括号里面的元素就是与方位角相关的,可以理解成具体天线应该怎么摆放。
四. SVD预编码设计
本节分析涉及到数学中的优化问题,我就省去了,重点研究SVD预编码是如何起作用的。
4.1 模拟域编码
不考虑用户间的干扰,该编码的目的是希望信道矩阵乘以预编码矩阵的F范数值最大(也就是我们通常所说的等效信道最大化),如下:
借助SVD分解理论,可化简如下:
我将分步骤详细解释,每个地方的等号是怎么得到的。
第一个等号怎么来的:
第二个等号怎么来的:
第三个等号怎么来的:
第四个等号怎么来的:
后续利用数学工具进行优化求最大值即可,当然不要忘记前面谈到过中每个元素的模长为1,这个限制条件也要加进去(在优化中表现为求最小欧式距离),然后将非凸优化转化为凸优化即可,此处纯数学最优分析,暂时省去。
只要求出能让该值最大时,的取值即为该处的预编码方案。
4.2 数字预编码设计
此处预编码的目的为消除用户间的干扰,与块对角化(BD)结合SVD进行举例。
用BD预编码设计数字域预编码,首先构建第k个用户外的其他所有用户的信道矩阵,如下:
相等于构建了K-1个信道矩阵。
对进行SVD分解,如下:
: 的非零奇异值对应的右奇异向量构成的矩阵;
:零奇异值对应的右奇异值构成的矩阵;
我们希望干扰信号落在对应零空间上,这样就产生不了干扰,所以更加关心
当然如果需要进一步抑制同一用户不同数据之间的干扰,需要对进一步SVD分解,如下:
利用代表每个用户接收的数据流数,最终该数字域预编码为:
到此,完整结束。
五. 总结
本算法分成两个阶段:
- 通过提取信道的右奇异矩阵设计模拟域预编码,避免了复杂的迭代;
- 基于等效信道,设计数字域预编码,消除用户间的干扰(SVD预编码的主要目的);