《1   引言》

1   引言    

近些年来 , 人们逐渐将目光越来越多地投向后 3G(Beyond 3G) 的移动通信系统 , 该系统可以容纳更大的用户数 ,改善现有的通信质量 , 达到高速数据传输的要求。

CDMA 是第三代移动通信的核心技术 , 具有很多吸引 人的 特性 , 但它 的容 量受 限于 多址 干扰 (MAI) 。在未来的宽带移动通信系统中 , 单载波 CDMA 系统将存在严重符号间干扰 (ISI) 。 OFDM 是抗码间串扰的高速传输技术 , 很自然地想到将两者结合起来 ,以求达到更好的传输效果 ,称为多载波 CDMA (MC - CDMA) , 它最显著的特点是能够降低每个子载波上的符号速率 , 使得符号持续时间加长 , 从而能够有效地对抗高速数据通信中的 ISI。

MIMO 技术包括发射分集技术、 波束成形技术和空间复用技术。 相对于单天线的 MC - CDMA 而言 , 将空间复用的 V - BLAST 技术与 MC - CDMA 相结合可以提高系统容量。 由于 V - BLAST 中每接收天线收到的信号是各发送天线所发不同码元经传输的和信号 , 存在严重的 ISI , 因此检测算法成为影响 V - BLAST 系统性能的关键。

文献[1 ~ 3]中提出了单载波下 V - BLAST 系统的非线性检测算法 (即串行干扰抵消) 。文献[4]中研究了 MIMO MC - CDMA 下行系统 V - BLAST 线性检测算法。 非线性检测算法复杂度要比线性检测算法高 , 但性能优于线性检测算法。

研究的 MC - CDMA 系统首先用给定的扩频序列对原始数据流扩频 , 用扩频序列中对应的每个码片将数据调制到不同的子载波上 , 称为频域扩展的 MC - CDMA 。笔者主要研究 MIMO MC - CDMA 下行系统中的 V - BLAST 非线性检测算法。

《2   MIMO MC - CDMA 下行系统  》

2   MIMO MC - CDMA 下行系统    

图 1 是 MIMO MC - CDMA 下行系统的基本结构 。图 1 中用户 k 的数据为 ,经过映射后的符号记为 ,其中 表示第 用户 , 表示第 符号 , 在频域内将映射后的符号分成 Nt 个子流(如图 1(a) 中每个天线发送的 , … ,P 为每天线发送一帧数据的长度) ,每个子流被复制到 N 个并行的子载波上 ,假定在第 i 子载波上与来自长度为 N 的 Walsh 码 相乘 (子载波数目等于扩频长度) , 然后经过 IFFT 变换和并串变换 ,加上循环前缀 CP (CP 的长度  信道的最大延迟) , 由天线送出 , 根据图 1 ,第 天线第 k 用户发送信号的等效低通形式为

其中 表示第 p 发送天线第 k 用户发送数据的等效低通形式 , 表示第 k 用户的第 i 扩频码字 , 表示第 k 用户第 p 发送天线发送的数据 , Tc 表示一路子载波上的码元持续时间 , 是最小的子载波间隔 ,Ts 是每个子载波上的符号周期 ,Tg 为保护间隔。 是矩形脉冲波形 , 表达式为

《图 1》

图 1 多用户 MIMO MC - CDMA 系统的下行传输框图

Fig.1 The block diagram of downlink MIMO MC - CDMA system

将所有用户的 进行叠加 ,得到天线 p 的发送数据 (如图 1a 所示) , 通过多径的 MIMO 信道 , 到达接收端。 在 MIMO - MC - CDMA 下行系统中 , 多用户信号到达某目标用户经历的 MIMO 信道相同。 假设每用户的信道衰落在同一数据帧内保持恒定 , 并假设接收端的符号和载波都已实现完全同步 ,第 q 接收天线接收信号记为 (如图 1b 所示) , 则

其中 表示第 p 发送天线和第 q 接收天线在对应 i 路子载波上的信道冲击函数 , 是均值为零、 方差为 的高斯白噪声。

接收端的信号 经过抽样 , 去循环前缀 CP , 串并变换 , FFT 变换后第 q 接收天线第 i 路子载波的表达式记为 (如图 1b 所示) , 则

其中 分别表示接收信号的复数基带表达式和第 抽样时刻复加性高斯白噪声 ; 为第 抽样时刻的第 q 接收天线的接收信号 ,由式 (3) 可得 ; 第 符号的表达式为

所有 Nr 个天线的第子载波第 符号组成矩阵向量 ,则

 

其中

     

其中 为第 m 发送天线对应第 i 路子载波用户 k 的映射后的数据 , 是第 i 子载波的噪声向量。

在接收端的目的是求解出式 (4) 的 或式(5) 中的 ,即每路子载波 乘上转移函数 , 在求解过程中忽略信道噪声 ,得

由式 (9) 可得 = 1 ,即 的逆矩阵 。随后对 进行解扩 ,即可得 ,所以在求解时只需求 即可。 从理论上来讲 , 最大似然法检测是最佳检测算法 , 但是实现起来的复杂性较高 , 计算量较大。 通常采用基于 ZF 或 MMSE 的线性算法或非线性算法 , 线性算法也就是直接求出信道转移矩阵 H 的逆 G , 非线性算法也称串行干扰抵消算法 , 其复杂性比线性算法略高 , 但性能比线性算法好 , 下面提出一种基于 MIMO MC - CDMA 的串行干扰抵消算法。

《3   MIMO MC - CDMA 下行系统的译码非线性检测算法》

3   MIMO MC - CDMA 下行系统的译码非线性检测算法

单载波 V - BLAST 系统下的 G . D . Golden 算法 [5] 采用逐步检测相消实现子流的区分和检测。 方法是首先检测一个子流 , 然后将此子流从接收信号中消去 , 得到修正的接收矢量 , 再在修正的接收矢量中检测下一个子流 , 依此类推 , 直到所有发射的符号都被检测完为止。 在此算法中 , 子流检测次序则显得很重要。 理论上 , 首先检测出信噪比最大的子流 , 可以减小它对其他子流的影响。 在具体实现时是选择迫零向量中范数最小的先检测。

提出一种在 MIMO V - BLAST 系统下的非线性译码检测算法 , 将 V - BLAST 译码的串行干扰抵消与多用户检测结合起来。 在 Golden 算法中 , 为了求得子流检测次序 , 对 Nr × Nt 的信道矩阵 H 求广义逆 GG = H + ) ,随后比较 G 中行向量范数的大小 ,其中行向量范数最小的先检测 ,随后对 H 进行更新 ,将范数最小的行向量所对应的那一列置零 ,得到新的信道矩阵 ,再对其求广义逆 , 对行向量范数最小的先检测 , 依次进行 , 直到所有的发送天线的信号都被检测出 , 在整个循环迭代过程中对信道矩阵需求 Nt 次广义逆 , 且每求一次广义逆 , 都要根据逆矩阵的行向量范数的大小进行排序 , 求得范数最小的值。 这样运算量非常大。

为了简化算法 , 对某一子载波的信道转移函数 求一次广义逆 , 然后对其行向量按范数大小进行排序 , 小的在先 , 大的在后 , 得到检测次序 , 其他子载波也都按照此检测次序进行检测。 然后再结合多用户检测译码。 这样运算量由对矩阵求 Nt 次广义逆降为只需对矩阵求一次广义逆。

首先是按检测次序计算每个子载波中对应的码元 , 然后进行解扩 , 再对解扩的信号进行再造 (扩频及通过信道) , 从每个子载波接收信号中减去此再造信号 , 随后依次进行迭代译码 , 直到译出所有发送天线的信号为止 , 具体步骤如下 :

Step 1   先对其中某一子载波的信道转移函数 求广义逆 , 得到总的检测次序 ,

的行向量按范数从小到大排列 ,得到检测次序 是整数 1 ,2 , … , Nt 的一个排列) ,其中 对应的是范数最小的行 ,先检测 ,而 对应的是范数最大的行 , 最后检测。

Step 2   初始化,对每路子载波信道转移函数求广义逆 :

Step 3   求出每路子载波对应检测次序 的迫零向量

其中 表示 的第 行。

Step 4   利用迫零向量 以及期望用户 k 的扩频码字 计算判决量 ,将每路子载波的接收向量 与迫零向量 相乘可得每个码片所对应的信息符号 ,因为这里扩频码的长度等于子载波数 ,通过计算 N ,得到 N 个码片上的发送信息符号 ,随后在进行解扩(乘上用户 k 所对应的扩频码) 得到用户 k 发送 信号 的估 计量 。整个过程可概括为

Step 5   量化 得到

Step 6   从接收向量中删除再造信号 , 形成新接收向量 , 设 ,对 进行扩频 ,得到每路子载波所对应的码元 , 然后从每路子载波接收向量中删除 扩频码元 , 形成新的接收向量 , 即

其中 表示 的第 列。

对式 (11b) 至式 (11f) 进行迭代运算 , 当 m = Nt + 1 时迭代结束 , 即可依次求解出发射符号。

这就是基于 ZF 的非线性算法。 同理还可得到基于 MMSE 的非线性算法。 它们之间的主要区别就是对信道转移函数求广义逆的表达式不同 , 基于 MMSE 的非线性算法的表达式为

其中 为 H i 的共轭转置 , 表示对矩阵求逆 。N0 为噪声功率。

《4   仿真和结果分析》

4   仿真和结果分析    

将上述 V - BLAST 检测算法应用于 MIMO MC - CDMA 下行链路仿真平台上进行数据仿真。 发送端用一个随机序列产生器产生 [ - 1,+ 1] 信号序列 , 每帧长 100 个符号 , 对 100 个帧进行仿真 , 此信源序 列经 过 BPSK 映射 , 再用 长度 G = 32 的 Walsh 码对数据进行扩频。 对扩频数据进行 Nc = 32 点的 IFFT , 循环前缀取整个帧长的 10 % (  信道最大延迟) 。

仿真采用 2 发 4 收的 MIMO 信道模型每对发送天线和接收天线间信道响应由 4 条独立的服从瑞利衰落的路径组成 , 冲击响应的相位都是由随机发生器产生的。

接收端则有 V - BLAST 译码器和解扩器组成。 假定信道转移函数已知。

从图 2 中可以看出随着发送天线数的增加 , V - BLAST 系统的性能将会有所下降。 这是因为在接收端所接收到的是发送信号的混叠信号 , 发送天线数越多 , 接收端接收到的信号混叠就越严重 , 从混叠信号中检测出某单个发送数据就越困难 , 所以性能下降。

《图 2》

图 2 天线数不同的性能比较

Fig.2 Varing number of transmit and receive antennas

从图 2 中还可得出 , 当发送天线数相同时 , 随着天线数的增加性能会有很大的提高 , 因为在接收端 , 用多个天线分集接收 , 随着天线数的增加 , 它的分集效果越好。 所以一般接收端天线数越多 , 其性能越好 , 但是计算复杂度相应增加。

图 3 是在 MIMO MC - CDMA 系统下的不同用户数的性能比较 , 采用线性 MMSE 、线性 ZF 及非线性 MMSE V - BLAST 检测算法 , 由图 3 可以看出 , 随着用户数的增加误符号率随之递增。 随着用户数的增加 , 每个接收天线所接收到的其他用户干扰也随之增加 , 这就会降低 V - BLAST 译码准确性 , 从而使误码率随之增加。

图 3 中仍可看出非线性 MMSE 的性能要比线性 MMSE 的性能好 , 线性 MMSE 的性能又要比线性 ZF 的性能略好一些。 这是因为在接收端每接收天线接收到的信号都是所有发送天线数据的混叠 , 为了从混叠信号中检测出某一个单一的数据 , 必须消除其他数据对它的影响。 若只采用线性算法 , 就没有从接收天线中消除其他数据的干扰 , 从而大大影响了其检测性能 , 而串行干扰抵销 , 是通过依次求出信噪比最大的子信号 , 然后进行抵消 , 准确性大大提高了。 MMSE 算法可以有效地控制噪声的干扰 , 所以其性能要比 ZF 略好。

《图 3》

图 3 MIMO 下的多载波 CDMA 的多用户性能比较

Fig.3 Performance of multiuser MIMO MC - CDMA system

《5   结论》

5   结论    

提出了 MIMO MC - CDMA 下行链路中的分层空时码的检测算法———多载波 V - BLAST 非线性检测算法 , 其基本思路是基于串行干扰抵消 , 从仿真结果可以看出 , 它的性能要优于线性 MMSE 和线性 ZF 检测算法。 从仿真结果还可看出随着发送天线数 、用户数的增加系统性能将会有所下降 , 而接受天线数的增加系统的性能会有所提高。 这就需要结合计算复杂度和系统性能 , 选择合适的发送和接收天线数。