文献标识码:A
文章编号: 0258-7998(2012)06-0051-03
在移动通信环境中,无线信道千变万化,接收机接收到的信号往往是信号经反射、折射以及散射的多条路径在不同时间点到达接收端的叠加。可见,要精确估计出信道响应值十分艰难。信道估计作为物理层的接收端算法,为信号检测提供条件,对影像数据恢复起着至关重要的作用。因此,在接收端进行正确可靠的信道估计研究以及应用十分关键[1]。一般而言,PUSCH信道估计多采用LS算法,除此之外最小低秩均方算法也比较常用,LS算法简单且易实现[2],故本文采用LS算法。对于插值的处理本文采用一阶线性插值[3],容易实现且能满足对功能的需求。FPGA在数据处理方面有着优越的性能且非常适合做并行运算,其芯片内部一般都含有大量的RAM和多达几百个乘加单元,利用FPGA进行数据处理能够提高数据的处理速度。因此用FPGA来实现信道估计和插值应用在LTE综合测试仪开发中是一个较好的方案。
LS算法可以简单地估计出参考信号输出的信道传输函数值,但是算法没有利用子载波的信道传输函数值的相关性,没有考虑噪声影响,无法消除噪声带来的估计误差。
1.2 线性插值算法
对于数据点位置的插值,一般都采用线性插值[5]。线性插值分为一阶线性插值和二阶线性插值。线性插值的思想是根据邻近子载波和待估计子载波的频域响应相关性,利用相邻导频子载波的估计获取数据子载波的估计,一阶线性插值实现起来比较简单,二阶线性插值实现起来要复杂些。
一阶线性插值就是利用前后相邻的两个导频子载波的信道响应,线性地计算出处于它们之间的数据子载波上的信道响应。以PUSCH 1a格式为例,如图1所示为其导频位置分布图,对于第k个子载波,采用线性插值算法,其信道的频域响应为:
2 信道估计及插值在FPGA中的实现
图2是PUSCH信道估计以及插值实现的整体流程图,整个实现过程是基于PUSCH的1a格式来实现的。在整个系统中每一步都会用到RAM来暂存数据,信道估计采用最小平方(LS)算法,插值过程采用一阶线性插值。整个过程采用流水线设计,很大程度上提高了数据的处理速度。
2.1 FPGA中信道估计的算法实现
在PUSHC中通常以每一个子帧作为处理单元。首先要提取出PUSCH资源块中存放DMRS的导频数据组成矩阵Rp,与发送端方法相同生成本地的DMRS导频数据Xp。则按照公式Hp(m,n)=Rp(m,n)/Xp(m,n)计算出存放导频位置资源元素处的信道频域响应,再按照插值方法估计出数据位置的信道频域响应。
最后,通过对握手信号的控制,把信道估计计算出的结果存储到RAM中,以备后面的插值算法使用。
图5、图6分别为一阶线性插值的Modelsim仿真图和板级实现的Chipscope截图。其仿真结果和实现结果是一致的,故已应用到项目中。
LS算法的Verliog[6]程序以及线性插值的Verliog程序已通过Xilinx ISE10[7]的编译、仿真验证及板级验证。其结果与理论值一致,精确度可以达到LTE系统的要求。该算法满足了硬件对算法的模块化、规则化要求,可以充分发挥硬件的优势,是实现硬件与算法相结合的一种优化方案。本文用硬件的思想实现LS算法和一阶线性插值,既满足算法的合理性要求,也满足了FPGA的设计要求。在FPGA设计中,追求的是速度与面积的平衡,故在此设计中采用流水线设计,每次调用4个乘法器,这样既提高了速度也节省了资源。该算法的FPGA实现在项目的联机调试中性能很稳定,该实现方案已经应用到LTE综合测试仪项目中。
参考文献
[1] 陈发堂,李小文,王丹,等.移动通信接收机设计理论与实现[M].北京:科学出版社,2011.
[2] J.J.van de Beek,EDFORS O,SANDELL M,et al.On channel estimation in OFDM systems[C].IEEE Vehicle. Technology.Conferenee.Chicago,1995,7:815-819.
[3] 耿煊,谢志远.OFDM系统中基于导频信道估计插值算法分析[J].电力系统通讯,2005,155(26):10-13.
[4] 3GPP TS 36.211 v8.5.0.Evolved Universal Terrestrial Radio Access(E-UTRA).Physical Channels and Modulation(Release 8).[EB/OL].[2009-03].http://www.3gpp.org.
[5] 沈嘉,索士强,金海洋,等.3GPP长期演进(LTE)技术原理与系统设计[M].北京:人民邮电出版社,2008.
[6] 夏宇闻.Verilog数字系统设计教程[M].2版.北京:北京航空航天大学出版社,2008.
[7] Xilinx Inc.Foundation series user guide.[EB/OL].[2010-01-03].http://china.xilinx.com/support/documentation/user_guides/ug071.pdf.