波束空间 MIMO (一)
A. 传统的 MIMO 多径信道模型
无线通信系统中 MIMO 技术逐渐发展成熟,即发射端和接收端都存在多根天线。
首先考虑窄带 MIMO 的信道模型:
y
=
H
H
x
+
n
\mathbf y = \mathbf H^{\rm H} \mathbf x+ \mathbf n
y=HHx+n
其中
x
∈
C
n
t
×
1
y
∈
C
n
r
×
1
H
∈
C
n
t
×
n
r
n
∈
C
n
r
×
1
\begin{aligned} \mathbf x &\in \mathbb{C}^{n_t \times 1} \\ \mathbf y &\in \mathbb{C}^{n_r \times 1} \\ \mathbf H &\in \mathbb{C}^{n_t \times n_r}\\ \mathbf n &\in \mathbb{C}^{n_r \times 1} \end{aligned}
xyHn∈Cnt×1∈Cnr×1∈Cnt×nr∈Cnr×1
注意 n \mathbf n n 是循环对称复高斯随机向量。
def :循环对称复高斯随机向量(circularly symmetric complex Gaussian, CSCG),即如果存在非负定(特征值不都小于零)的海森 Hermitian 矩阵
Q
∈
C
n
×
n
\mathbf Q \in \mathbb{C}^{n \times n}
Q∈Cn×n,使得
n
n
n 维复随机列向量
x
\mathbf x
x 对应的
2
n
2n
2n 维实随机列向量
x
~
=
[
ℜ
(
x
T
)
,
ℑ
(
x
T
)
]
T
\widetilde{\mathbf x} = \left[\Re(\mathbf x^T), \Im(\mathbf x^T) \right]^T
x
=[ℜ(xT),ℑ(xT)]T 其协方差满足
E
[
(
x
~
−
E
{
x
~
}
)
(
x
~
−
E
{
x
~
}
)
H
]
=
1
2
[
ℜ
(
Q
)
−
ℑ
(
Q
)
ℑ
(
Q
)
ℜ
(
Q
)
]
\mathbb{E}\left[ (\widetilde{\mathbf x}-\mathbb{E}\{\widetilde{\mathbf x}\}) (\widetilde{\mathbf x}-\mathbb{E}\{\widetilde{\mathbf x}\})^{\rm H}\right] = \frac{1}{2} \begin{bmatrix} \Re(\mathbf Q) & -\Im(\mathbf Q) \\ \Im(\mathbf Q) & \Re(\mathbf Q) \end{bmatrix}
E[(x
−E{x
})(x
−E{x
})H]=21[ℜ(Q)ℑ(Q)−ℑ(Q)ℜ(Q)]
则称复随机列向量
x
\mathbf x
x 是循环对称复高斯随机向量。
其实,在通信信道仿真中,我们常用的复高斯分布实际上是一种 CSCG。而从数学的角度来讲,复高斯远比我们认为的复高斯要广义复杂得多。
实现 CSCG 的代码和之前的复高斯并没有什么区别:
% 第一种方法
y=(1/sqrt(2))*(randn(1, k)+j*randn(1, k));
% 另一种方法
y=wgn(1, k, 0, 'complex');
假设接收天线是有
n
r
{n_r}
nr 个阵元的 ULA,发送天线是有
n
t
{n_t}
nt 个阵元的 ULA。对应的阵元间距分别为
d
r
{d_r}
dr 和
d
t
{d_t}
dt,以载波波长
λ
{\lambda}
λ 归一化,即
Δ
r
=
d
r
/
λ
\Delta_r = {d_r}/\lambda
Δr=dr/λ 和
Δ
t
=
d
t
/
λ
\Delta_t ={d_t}/\lambda
Δt=dt/λ。假设接收端 RX 和发送端 TX 之间存在任意条路径,则信道矩阵应为
H
=
∑
i
a
ˉ
i
e
r
(
Ω
r
i
)
e
t
(
Ω
t
i
)
H
\mathbf H = \sum_i \bar{a}_i \mathbf e_r(\Omega_{ri}) \mathbf e_t(\Omega_{ti})^{\rm H}
H=i∑aˉier(Ωri)et(Ωti)H
其中
a
ˉ
i
=
a
i
n
t
n
r
exp
(
−
j
2
π
δ
i
λ
)
\bar{a}_i =a_i \sqrt{n_t n_r} \exp\left(-j \frac{2\pi \delta_i}{\lambda}\right)
aˉi=aintnrexp(−jλ2πδi)
这里,对于第
i
i
i 条路径,
a
i
a_i
ai 是路径衰减,
δ
i
\delta_i
δi 是该路径下的总距离。另外还有
e
r
(
Ω
r
i
)
=
1
n
r
[
1
exp
(
−
j
2
π
Δ
r
Ω
r
i
)
⋮
exp
(
−
j
2
π
(
n
r
−
1
)
Δ
r
Ω
r
i
)
]
e
t
(
Ω
t
i
)
=
1
n
t
[
1
exp
(
−
j
2
π
Δ
t
Ω
t
i
)
⋮
exp
(
−
j
2
π
(
n
t
−
1
)
Δ
t
Ω
t
i
)
]
\begin{aligned} \mathbf e_r(\Omega_{ri})&= \sqrt{\frac{1}{n_r}} \begin{bmatrix} 1\\ \exp(-j2\pi\Delta_r\Omega_{ri}) \\ \vdots \\ \exp(-j2\pi(n_r-1)\Delta_r\Omega_{ri}) \end{bmatrix} \\ \\ \mathbf e_t(\Omega_{ti}) &=\sqrt{\frac{1}{n_t}} \begin{bmatrix} 1\\ \exp(-j2\pi\Delta_t\Omega_{ti}) \\ \vdots \\ \exp(-j2\pi(n_t-1)\Delta_t\Omega_{ti}) \end{bmatrix} \end{aligned}
er(Ωri)et(Ωti)=nr1⎣⎢⎢⎢⎡1exp(−j2πΔrΩri)⋮exp(−j2π(nr−1)ΔrΩri)⎦⎥⎥⎥⎤=nt1⎣⎢⎢⎢⎡1exp(−j2πΔtΩti)⋮exp(−j2π(nt−1)ΔtΩti)⎦⎥⎥⎥⎤
这里
Ω
r
i
\Omega_{ri}
Ωri 为第
i
i
i 条接收路径与接收阵列的夹角余弦值,同理有
Ω
t
i
\Omega_{ti}
Ωti 的定义。
B. 波束空间下的信道表示
通过采用只会引起部分可忽略性能损失的 DLA(Discrete Lens Array),可以将传统的物理空间信道模型转换到角度域的波束空间信道模型,此时便可以利用信道矩阵稀疏性,通过仅仅选择小部分的波束,在不对整体系统性能造成过多损失的情况下,完成通信过程,这种选择最终进一步降低了射频(RF)链路的数量。
根据上一节中 MIMO 信道模型,通过两组正交基(也是酉矩阵),分别在发射端和接收端:
- 接收: U r = { e r ( 0 ) , e r ( λ N r d r ) , ⋯ , e r ( ( n r − 1 ) λ N r d r ) } \mathbf U_r = \left\{ \mathbf e_r(0),\mathbf e_r\left(\frac{\lambda}{N_r d_r}\right),\cdots,\mathbf e_r\left(\frac{(n_r-1)\lambda}{N_r d_r}\right) \right\} Ur={er(0),er(Nrdrλ),⋯,er(Nrdr(nr−1)λ)}
- 发送: U t = { e t ( 0 ) , e t ( λ N t d t ) , ⋯ , e t ( ( n t − 1 ) λ N t d t ) } \mathbf U_t = \left\{ \mathbf e_t(0),\mathbf e_t\left(\frac{\lambda}{N_t d_t}\right),\cdots,\mathbf e_t\left(\frac{(n_t-1)\lambda}{N_t d_t}\right) \right\} Ut={et(0),et(Ntdtλ),⋯,et(Ntdt(nt−1)λ)}
以
U
t
\mathbf U_t
Ut 为例,可知酉矩阵中任意元素可表示为
[
U
t
]
k
,
l
=
1
n
t
exp
[
−
j
2
π
k
l
N
t
]
,
k
,
l
∈
{
0
,
1
,
2
,
⋯
,
N
t
}
\left[\mathbf U_t\right]_{k,l} = \sqrt{\frac{1}{n_t}}\exp\left[-j2\pi \frac{kl}{N_t}\right], \quad k,l\in\{0,1,2,\cdots, N_t\}
[Ut]k,l=nt1exp[−j2πNtkl],k,l∈{0,1,2,⋯,Nt}
采用离散透镜天线阵列,将传统的空间信道转换为波束域信道。 将信号和信道都转换到了角度域中,也就是波束空间下。表示如下:
U
r
H
y
=
U
r
H
H
H
(
U
t
U
t
H
)
x
+
U
r
H
n
⟹
y
b
=
U
r
H
H
H
U
t
x
b
+
n
b
\begin{aligned} \mathbf U_r^{\rm H} \mathbf y &= \mathbf U_r^{\rm H} \mathbf H^{\rm H} (\mathbf U_t \mathbf U_t^{\rm H})\mathbf x+ \mathbf U_r^{\rm H} \mathbf n \\ \\ \Longrightarrow \mathbf y_b &= \mathbf U_r^{\rm H} \mathbf H^{\rm H} \mathbf U_t \mathbf x_b+ \mathbf n_b \end{aligned}
UrHy⟹yb=UrHHH(UtUtH)x+UrHn=UrHHHUtxb+nb
其中令
y
b
=
U
r
H
y
\mathbf y_b=\mathbf U_r^{\rm H} \mathbf y
yb=UrHy,
x
b
=
U
t
H
x
\mathbf x_b=\mathbf U_t^{\rm H}\mathbf x
xb=UtHx,
n
b
=
U
r
H
n
\mathbf n_b=\mathbf U_r^{\rm H}\mathbf n
nb=UrHn。
C. 波束域 MIMO 系统模型
-
传统 MIMO 系统模型
-
波束域 MIMO 系统模型
由上图可知,传统 MIMO 所需 RF 链路数目与基站端的天线数目是相等的,即 N R F = N N_{RF}=N NRF=N,随着系统天线数量的增加,系统的实现成本及能量消耗也随之增大,阻碍了毫米波大规模 MIMO 技术的推广应用。为降低 RF 链路数量,文中采用离散透镜天线阵列,将传统的空间信道转换为波束域信道。
为什么基于离散透镜天线阵列的波束空间技术可以降低 RF 链路数量呢?下面给出分析。
考虑一个多用户下行通信链路。基站与
K
K
K 个采用全向单天线的用户进行通信。基站端主要包括数字预编码器、DSP(Digital
Signal Processing)、DAC(Digital-to-Analog Converter)、混频器、滤波器及 DLA。
本文模型中的模数混合波束成形由数字预编码和波束选择网络二者体现。
假设发射端发送的原始信号 s ∈ C K × 1 \mathbf s \in \mathbb C^{K\times 1} s∈CK×1 满足 E ( s s H ) = I K \mathbb E(\mathbf s\mathbf s^H)=\mathbf I_K E(ssH)=IK,经过预编码器得到预编码后的信号向量 x ∈ C M × 1 \mathbf x \in \mathbb C^{M \times 1} x∈CM×1, M M M 即为 RF 链路条数,也是选择的波束数。然后通过 DSP 模块将预编码后的信号向量转换到波束空间下,再经过由 DAC、混频器、滤波器等组成的 RF 链路后到达选择网络模块。因此可以看出,具体选择的波束条数以及选择的波束序号在预编码时就已经确定了,选择网络只负责执行选择波束的任务。
我们可以将 DLA 看作是一种特殊的 ULA,其阵元数为 N N N,阵元间距为半波长即 d = λ / 2 d = \lambda/2 d=λ/2,其中 N = 2 L λ − 1 N=\frac{2L}{ \lambda}-1 N=λ2L−1,这里 ULA 的长度为 L L L,注意 N N N 决定了 DLA 能够发射的最大波束数目。
在传统 MIMO 系统模型中,接收信号向量
y
=
[
y
1
,
y
2
,
⋯
,
y
K
]
T
\mathbf y = \left[ y_1, y_2, \cdots, y_K\right]^T
y=[y1,y2,⋯,yK]T 表示为
y
=
H
H
W
s
+
n
\mathbf y = \mathbf H^{\rm H} \mathbf W \mathbf s+ \mathbf n
y=HHWs+n
其中
H
=
[
h
1
,
h
2
,
⋯
,
h
K
]
∈
C
N
×
K
\mathbf H =\left[\mathbf h_1,\mathbf h_2,\cdots,\mathbf h_K\right] \in \mathbb C^{N\times K}
H=[h1,h2,⋯,hK]∈CN×K 是信道矩阵,这里的每一列
h
k
∈
C
N
×
1
\mathbf h_k \in\mathbb C^{N\times 1}
hk∈CN×1 表示基站端与移动用户
k
k
k 之间的信道向量。
预编码矩阵
W
=
[
w
1
,
w
2
,
⋯
,
w
K
]
∈
C
N
×
K
\mathbf W =\left[\mathbf w_1,\mathbf w_2,\cdots,\mathbf w_K\right] \in \mathbb C^{N\times K}
W=[w1,w2,⋯,wK]∈CN×K 和信道矩阵
H
\mathbf H
H 的维度相同。
根据前一节原理将 MIMO 模型变换到波束空间下
y
=
H
H
U
U
H
W
s
+
n
⟹
y
b
=
H
b
H
x
b
+
n
b
\begin{aligned} \mathbf y &= \mathbf H^{\rm H} \mathbf U \mathbf U^{\rm H} \mathbf W \mathbf s+ \mathbf n \\ \\ \Longrightarrow \mathbf y_b &= \mathbf H_b^{\rm H} \mathbf x_b+ \mathbf n_b \end{aligned}
y⟹yb=HHUUHWs+n=HbHxb+nb
因此这里
U
∈
C
N
×
N
\mathbf U \in \mathbb C^{N\times N}
U∈CN×N,存在
U
=
{
e
(
0
)
,
e
(
λ
N
d
)
,
⋯
,
e
(
(
N
−
1
)
λ
N
d
)
}
y
b
=
y
H
b
=
U
H
H
∈
C
N
×
K
x
b
=
U
H
W
s
∈
C
N
×
1
n
b
=
n
\begin{aligned} \mathbf U &= \left\{ \mathbf e(0),\mathbf e\left(\frac{\lambda}{N d}\right),\cdots,\mathbf e\left(\frac{(N-1)\lambda}{Nd}\right) \right\} \\ \mathbf y_b &= \mathbf y \\ \mathbf H_b &= \mathbf U^{\rm H}\mathbf H \in \mathbb C^{N\times K} \\ \mathbf x_b &= \mathbf U^{\rm H} \mathbf W \mathbf s \in \mathbb C^{N\times 1} \\ \mathbf n_b &= \mathbf n \end{aligned}
UybHbxbnb={e(0),e(Ndλ),⋯,e(Nd(N−1)λ)}=y=UHH∈CN×K=UHWs∈CN×1=n
可以看出波束空间下信道矩阵的每一列
h
b
k
\mathbf h_{bk}
hbk 为物理空间信道向量
h
k
\mathbf h_{k}
hk 的离散傅里叶变换,这使得在仿真实现中可以降低运算复杂度。这个结论怎么理解呢?为什么说是空间域的离散傅里叶变换(SDFT)呢?
注意这里的矩阵
U
\mathbf U
U 其形式为
U
=
1
N
[
1
1
1
⋯
1
1
e
−
j
2
π
1
N
e
−
j
2
π
2
N
⋯
e
−
j
2
π
N
−
1
N
⋮
⋮
⋮
⋱
⋮
1
e
−
j
2
π
(
N
−
1
)
1
N
e
−
j
2
π
(
N
−
1
)
2
N
⋯
e
−
j
2
π
(
N
−
1
)
N
−
1
N
]
\mathbf U = \frac{1}{\sqrt{N}} \begin{bmatrix} 1&1&1& \cdots &1\\ 1&e^{ - j2\pi \frac{1}{N}}&e^{ - j2\pi \frac{2}{N}}&\cdots &e^{ - j2\pi \frac{N - 1}{N}}\\ \vdots &\vdots & \vdots & \ddots & \vdots \\ 1&e^{ - j2\pi (N - 1)\frac{1}{N}}&e^{ - j2\pi ({N} - 1)\frac{2}{N}}& \cdots &e^{ - j2\pi ({N} - 1)\frac{N - 1}{N}} \end{bmatrix}
U=N1⎣⎢⎢⎢⎡11⋮11e−j2πN1⋮e−j2π(N−1)N11e−j2πN2⋮e−j2π(N−1)N2⋯⋯⋱⋯1e−j2πNN−1⋮e−j2π(N−1)NN−1⎦⎥⎥⎥⎤
上述式子右边的矩阵就是 DFT (离散傅里叶变换)矩阵,DFT 矩阵是一个
N
×
N
N\times N
N×N 的矩阵,称为 SDFT matrix。假设信号
h
(
n
)
\mathbf h(n)
h(n) 是周期函数,那么信号应该限制在一个周期之内,在变换前后的序列长度是一样的都为
[
0
,
N
−
1
]
[0,N-1]
[0,N−1]。于是可知
h
ˉ
(
n
)
=
DFT
[
h
(
n
)
]
\bar{\mathbf h}(n) = \text{DFT}[\mathbf h(n)]
hˉ(n)=DFT[h(n)]
参考,用 matlab 实现有两种方式:
clear;close all;clc;
N = 3;
% 第一种
h = (0:N-1)'*(0:N-1);
mtx_dft = exp(-1i*2*pi*h/N);
disp(h);
disp(mtx_dft);
% 第二种,直接调用函数,方便
mtx_dft2 = dftmtx(N);
disp(mtx_dft2);
===============================================================
0 0 0
0 1 2
0 2 4
1.0000 + 0.0000i 1.0000 + 0.0000i 1.0000 + 0.0000i
1.0000 + 0.0000i -0.5000 - 0.8660i -0.5000 + 0.8660i
1.0000 + 0.0000i -0.5000 + 0.8660i -0.5000 - 0.8660i
1.0000 + 0.0000i 1.0000 + 0.0000i 1.0000 + 0.0000i
1.0000 + 0.0000i -0.5000 - 0.8660i -0.5000 + 0.8660i
1.0000 + 0.0000i -0.5000 + 0.8660i -0.5000 - 0.8660i
学习到这里,回头看 H b = [ h b 1 , h b 2 , ⋯ , h b K ] = [ U H h 1 , U H h 2 , ⋯ , U H h K ] \mathbf H_b = [\mathbf h_{b1},\mathbf h_{b2},\cdots,\mathbf h_{bK}] = \left[\mathbf U^{\rm H}\mathbf h_1,\mathbf U^{\rm H}\mathbf h_2,\cdots,\mathbf U^{\rm H}\mathbf h_K\right] Hb=[hb1,hb2,⋯,hbK]=[UHh1,UHh2,⋯,UHhK] 的每一行对应一个波束,其所有 N N N 行分别对应了空间角度 θ 1 , θ 2 , ⋯ , θ N \theta_1,\theta_2,\cdots,\theta_N θ1,θ2,⋯,θN。事实上,波束选择的依据是波束空间下信道矩阵 H b \mathbf H_b Hb 的稀疏性,这种稀疏性是因为在毫米波通信中,非直射路径的数量远远小于波束的总数量,也就意味着 H b \mathbf H_b Hb 的每一列 h b k \mathbf h_{bk} hbk 所表示的波束空间下的信道向量中,占主要地位的波束数量是远远小于 N N N 的。