文獻標識碼: 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.