一种基于DSP的MIMO系统空时编码盲识别方法
码达到提高系统传输性能的目的,因此在不同时刻从不同天线发送的数据具有一定的相关性,而不同空时编码之间的相关度并不同,因此可利用该相关度来区分不同的码型,从而将空时编码的模式识别出来。
2.2空时编码盲识别方法
(1)预白化。预白化的目的是去除信道对接收信号相关性的影响。白化矩阵W通过对分时相关矩阵P做特征值分解得到
,其中A-1为特征值矩阵Λ的广义逆。W与原数据相乘便可得到解相关矩阵Y.(2)计算时滞相关度。利用接收信号预白化后得到的解相关矩阵Y,依据统计学公式计算时滞相关范数
空时编码矩阵的理论时滞相关特性仅与编码矩阵本身有关。因此,应用与式(1)相同的形式,可将编码矩阵不同的列进行矩阵乘加运算,并取F范数来表征。
由此得出计算空时编码的时滞相关矩阵R(τ)
其中,空时编码矩阵的每一列代表不同的发射时刻,A(u)是码型A编码矩阵的第u列,l为码型分组长度。已预白化后的接收信号矩阵与发送端编码矩阵,在时滞相关函数F范数上有如下关系
(3)判决码型。遍历候选码集,计算出接收信号与候选码集中每一种空时码的相关度,取其中最相关的码型便为判决码型。
2.3软件设计
软件系统采用模块化结构软件系统采用模块化结构设计,程序流程如图5所示。包括系统启动、配置系统寄存器、设置全局变量和开启中断控制等。当ADC模块将采样数据全部写入SDRAM后,CPLD通知DSP触发DMA中断1,将SDRAM中的数据读入DSP,读取结束后DMA触发中断2,并对ADC采样数据进行处理:(1)预白化,去除新到对采样数据相关性的影响。(2)计算采样数据与候选集中每种码字的时滞相关度。(3)根据上述计算结果,选取使时滞相关度最小的码型为判决码型。
图5 软件系统采用模块化结构
通过对DMAC寄存器的设置,可控制DMA的流向、通道和方式,典型的数据读取关键代码如下:
数据处理部分的关键函数包括白化和时滞相关量计算,数据传递采用了单维读入与多维传递的方式,即将多天线的数据按照天线顺序依次读入,但在DSP内部数据传递时,多根天线的数据按照时间顺序传递,在函数内部手动寻址,即符合算法要求,又加快了数据处理的速度。数据处理时包括大量的矩阵转置和乘加操作,在计算时优化为内积计算模式,使用ALU运算块X和Y,每个周期并行计算时滞矩阵两列之间的相关范数,这便节省了内存资源,减少了寻址次数,且加快了计算速度。
本算法在不同参数下的Matlab性能仿真如图6所示,采样数据越长,接收天线数越多,识别性能也越好。实际测试证明与期望相一致,验证了设计的合理性和正确性。
图6 算法在不同参数下的Matlab性能仿真
3结束语
DSP芯片具有的特殊软硬件结构和指令系统,使其能高速处理各种数字信号处理算法。基于此设计的空时编码盲识别方法具有速度快、精度高的特点。同时该系统依靠简洁的外部硬件电路设计和合理的软件程序设计,能够实现对常用空时编码模式的正确识别。且该系统的可扩展性良好,当需要识别最新的空时编码时,只需将其放入编码方式候选集中,为其分配显示接口即可,而无需过多更改硬件设置及软件程序。
- 跳频电台射频前端电路设计攻略(04-15)
- DSP硬件设计的几个注意事项(06-04)
- LEON2应用于DCPU的FPGA仿真(05-11)
- 数字对讲机工作原理及数字对讲机关键器件的构成(07-28)
- 浅析雷达技术新应用(08-23)
- 基于DSP的机载选呼解码器设计 (03-29)