文獻標識碼: A
文章編號: 0258-7998(2012)03-0041-03
在TD-LTE系統中,Zadoff-Chu(ZC)序列主要應用于上行RS序列生成、PRACH前導序列生成以及主同步信號生成等[3],它在整個TD-LTE系統中扮演著重要的角色,是建立上下行鏈路同步以及信道估計中不可或缺的一部分。Zadoff-Chu序列具有良好的自相關性和互相關性,這有利于減少不同前導之間的相互干擾,而且其本身具有對稱性,這有利于減少序列生成的復雜度。同時LTE系統選擇了素數長度的Zadoff-Chu序列,保證序列檢測性能的提高。
本文通過對ZC序列生成的分析以及自身的特性,結合理論推導,提出了一種簡化的ZC生成算法的DSP實現方案,并通過仿真與比較,驗證了該方案的可行性,能夠滿足LTE系統性能的要求。
1 Zadoff-Chu算法分析
參數為u,序列長度為Nzc的ZC序列定義為:
每計算一次Xu(n)的值,在求x的計算上就需要3次乘法和一次除法運算。對于長度為Nzc的序列而言,計算所有Xu(n)的指數x需要3×Nzc次的乘法和Nzc次的除法運算,然后利用式(2)計算每一個Xu(n)的值。
用式(2)計算Zadoff-Chu序列的生成存在兩點不足:(1)余弦和正弦運算屬于一種非線性的運算,多次運算的復雜度很高,耗時很長,不利于滿足LTE系統實時性的要求;(2)MS320C6000系列DSP在軟件的實現中只能處理定點數運算,無法直接對浮點數進行處理。因而要利用式(2)計算必須對正弦和余弦進行量化處理。
在定點DSP芯片中,采用定點數進行數值運算,其操作數一般采用整型數表示。一個整型數的最大表示范圍取決于DSP芯片所給定的字長,一般為16 bit或32 bit。對DSP芯片而言,參與數值運算的數就是16 bit的整型數。通過設定小數點在16 bit數中的不同位置,就可以表示不同大小和不同精度的小數。數的定標有Q表示法和S表示法兩種,如表1所示。
從表1可以看出,不同的Q所表示的數不僅范圍不同,而且精度也不相同。Q越大,數值范圍越小,但精度越高;相反,Q越小,數值范圍越大,但精度就越低。本文采用Q量化方法,浮點數與定點數的轉換關系可表示為:浮點數(x)轉換為定點數(xq):xq=(int)x×2q
式中int表示下取整。由正弦和余弦的范圍,結合表1可知,可以采用Q15進行浮點數到定點數的轉化。為了減少正弦和余弦由于非線性造成的復雜運算,可以采用查表的方法。首先對sin(x)的0~π的值進行量化處理,根據sin(x)本身的對稱性可以通過0~π的量化值取反得到;其次,根據正弦和余弦之間的關系cos(x)=sin(x+π/2),可以將余弦值的求法轉化到求正弦上。由于量化存在著誤差,因而量化的點數越多,所求的值越接近理論上的值,但量化點數越大占用的內存空間也越大。在0~?仔在之間進行2 048點量化時,已十分接近理論值。因此采用0~π在之間進行2 048點量化。
進一步對式(1)推導發現:
由式(4)可知,對于給定的參數u,A(n)/A(n-1)為定值,對于初始值A(0)=1,XU(0)=1。通過式(3)和式(4)的遞推關系就可以只通過乘法運算計算出ZC序列,在計算時只需要計算一次正弦和余弦即可。用這種方法將正弦和余弦轉化成復數的乘法運算,減少了正弦和余弦歸一化和量化查表的時間,進一步降低運算的復雜度。
由ZC序列本身所具有的性質可知:
首先把遞推公式的初始值A(0)=1和Xu(0)=1分別用MVK指令賦值到相應的寄存器中。由遞推關系式,首先計算出A(n),由于A(n-1)和計算出的旋轉因子M均為復數,不能直接進行相應的乘法運算,只能采用復數相乘的法則。即A(n)的實部等于A(n-1)和M的實部與虛部分別相乘后再進行相減。為了減少指令的開銷,可以采用DOTPN2指令,該條指令可以直接完成A(n-1)的實部和虛部與M的實部和虛部相乘之后相減,把得到的實部用SHR指令進行右移16 bit,保證得到的結果為半字。同樣A(n)的虛部的計算,先用匯編指令PACK2交換M的實部和虛部,再用DOTP2指令完成A(n-1)和M的高16 bit和低16 bit的相乘以及A(n-1)和M的低16 bit和高16 bit的相乘之后再相加,同樣用SHR指令對虛部的計算結果右移16 bit,保證虛部在半字的范圍內。計算完成A(n)后,再把A(n)和Xu(n-1)進行復數相乘,從而得到Xu(n)的計算結果。由ZC序列本身所具有的對稱性,分別將計算出的Xu(n)的實部和虛部用STH指令分別壓棧到輸出結果的第n個字和第Nzc-n-1個字中,至此ZC序列的計算全部完成。
3 性能分析與總結
通過DSP軟件實現得到的結果與用MATLAB搭建的鏈路得到的理論數據進行比較,如圖2所示。圖2雖然只是長度Nzc=139點,但不失一般性。從圖中可以看出,雖然量化誤差的存在,但是在2 048點對sin在(0,π)區間進行量化時,得到的結果與理論數據的值相差在0.1%左右。同時在應用DSP軟件實現中,盡量對程序進行優化,通過指令并行,操作碼的合理設計以及減少或消除程序中的’NOP’指令[6]等方法進行優化。當運用TMS320C64×DSP芯片實現時,由于處理器的超高主頻一般為1 GHz,所以一個指令周期耗時為1 ns,其運算速率非常快,如表2所示,與直接進行ZC序列的生成相比較大大降低了運算時間,可以滿足LTE系統的快速有效性。
本文從理論分析出發,根據TD-LTE系統特性以及Zadoff-Chu序列本身的性質,提出了一種簡單有效的Zadoff-Chu算法實現方案,并將該算法在TMS320C64×芯片上實現。程序運行結果表明,提出的算法具有可行性和高效性,能夠滿足TD-LTE系統的需求。該方案已在LTE-TDD無線綜合測試儀表的開發中得到了應用。
參考文獻
[1] 丁玉美.數字信號處理[M].西安:西安電子科技大學出版社,2002.
[2] 何方白,張德民.數字信號處理[M].北京:高等教育出版社,2009.
[3] 3GPP TS 36.211 v9.0.0 Evolved universal terrest-rial radio access(E-UTRA) physical channels and modulation (release 9)[S].2009-12.
[4] SAIDI A.Decimation-in-time-frequency FFT algorithm, Manuscript,To be published.1993(8).
[5] Texas Instruments Incorporated.TMS320C64x/C6-4x+DSP. CPU.and.Instruction.Set.Reference.Guide[E-B/OL].Http://www.ti.com.cn,2008.
[6] Texas Instruments Incorporated.TMS320C6000系列DSP編程工具與指南[M].田黎育,何佩琨,朱夢宇,譯.北京:清華大學出版社,2006:32-50.
[7] 馮僑,鄧娟,沈靜,等.LTE系統中ZC序列的實現方法[P]:CN 101826890 A.2010.09.08.