陳朝廷,冷 文,王安國
(天津大學(xué)電子信息工程學(xué)院,天津300072)
一種新的頻偏估計(jì)算法FPGA實(shí)現(xiàn)方案
陳朝廷,冷 文,王安國
(天津大學(xué)電子信息工程學(xué)院,天津300072)
基于IEEE 802.15.4協(xié)議信號(hào)模型,采用簡化頻偏估計(jì)算法,提出一種適用于突發(fā)通信模式,基于頻偏估計(jì)算法的現(xiàn)場可編程門陣列(FPGA)實(shí)現(xiàn)方案。該方案包括定時(shí)恢復(fù)、頻偏估計(jì)及頻偏糾正模塊,通過串行運(yùn)算等方法解決并行算法資源消耗較大的問題,使用下采樣以及雙口RAM減小延遲,提高運(yùn)算速度。采用優(yōu)化結(jié)構(gòu)的方式,在保證低資源占用率的基礎(chǔ)上,使該FPGA硬件實(shí)現(xiàn)方案具有較大的頻偏估計(jì)范圍以及較高的頻偏估計(jì)精度。分析結(jié)果證明了其有效性。
頻偏估計(jì);現(xiàn)場可編程門陣列;采樣信號(hào);資源占用率;IEEE 802.15.4協(xié)議
通信系統(tǒng)中收發(fā)兩端頻偏的存在會(huì)導(dǎo)致誤碼率上升,影響接收機(jī)的性能。目前處理頻偏的經(jīng)典算法主要有2類:(1)通過鎖相環(huán)調(diào)整接收端振蕩頻率,使之與發(fā)送端同步;(2)通過對(duì)基帶信號(hào)進(jìn)行處理,估計(jì)出頻偏值并進(jìn)行頻偏糾正。鎖相環(huán)結(jié)構(gòu)往往不適用于突發(fā)模式(如IEEE 802.15.4協(xié)議等)中信號(hào)的快速同步,因此,提出了一系列基于基帶信號(hào)處理算法進(jìn)行頻偏估計(jì)的算法[1]。
現(xiàn)有的同步算法大多是基于最大似然估計(jì)理論[2],為了彌補(bǔ)該算法復(fù)雜度高、不易實(shí)現(xiàn)的不足,提出基于相位差分的Kay算法[3]、基于自相關(guān)運(yùn)算的Fitz算法[4]和L&R算法[5]以及相位差分與自相關(guān)結(jié)合的M&M算法[6]等近似最大似然的一些低復(fù)雜度估計(jì)算法。除此之外,也有一些基于其他原理的頻偏估計(jì)算法,如適用于IEEE 802.15.4協(xié)議的基于最小二乘法的估計(jì)算法[7]。以上這些算法均采用了相關(guān)或者相位差分運(yùn)算,算法中的相關(guān)運(yùn)算計(jì)算復(fù)雜度較高、運(yùn)算時(shí)間長,算法實(shí)現(xiàn)的硬件資源消耗較大。為解決這些問題,需要對(duì)這些經(jīng)典算法的實(shí)現(xiàn)進(jìn)行優(yōu)化,在滿足應(yīng)用需求的前提下獲得復(fù)雜度與處理速度的平衡。
現(xiàn)場可編程門陣列(Field Programmable Gate Array,F(xiàn)PGA)具有運(yùn)算速度快、并行處理能力強(qiáng)以及實(shí)時(shí)性好等優(yōu)點(diǎn),在通信及高速信號(hào)處理方面應(yīng)用廣泛。本文針對(duì)IEEE 802.15.4協(xié)議信號(hào)模型,提出包括數(shù)據(jù)對(duì)齊、頻偏估計(jì)以及頻偏糾正的FPGA實(shí)現(xiàn)方案,對(duì)各模塊中資源占用較大的部分進(jìn)行優(yōu)化設(shè)計(jì),采用延遲雙相關(guān)的定時(shí)恢復(fù)算法,減小頻偏對(duì)于數(shù)據(jù)對(duì)齊的影響,通過并行處理向串行處理的轉(zhuǎn)換,減少頻偏估計(jì)模塊的資源占用率,使用查表法實(shí)現(xiàn)數(shù)控振蕩器(Numerically Controlled Oscillator,NCO),降低計(jì)算延遲,并給出時(shí)序仿真結(jié)果和實(shí)際采樣的實(shí)驗(yàn)結(jié)果。
IEEE 802.15.4協(xié)議采用偏移正交相移鍵控(Quadrature Phase Shift Keying,OQPSK)調(diào)制,不會(huì)出現(xiàn)180°的相位跳變,從而減小了傳輸帶寬,提高了頻譜效率[8]。式(1)為發(fā)送端信號(hào)表達(dá)式,發(fā)送的二進(jìn)制碼元由單極性變成雙極性an,bn,S(t)為經(jīng)過成型函數(shù)g(t)后形成的復(fù)基帶信號(hào):
S(t)通過AWGN信道到達(dá)接收端,經(jīng)過低噪放大器(Low Noise Amplifier,LNA)放大、正交下變頻以及AD采樣后可以表示為:
其中,fd代表接收端與發(fā)射端的頻偏;Ts為采樣周期;θ為初始相偏;n(k)為高斯隨機(jī)噪聲。頻偏估計(jì)就是要從式(2)中提取出頻偏fd的大小。
根據(jù)是否采用反饋來進(jìn)行頻偏估計(jì),頻偏估計(jì)分為前向型和反饋型。IEEE 802.15.4協(xié)議為突發(fā)模式通信,反饋型算法需要一定的收斂時(shí)間,而前向型算法則實(shí)時(shí)性較好,故選擇前向型是合適的。在前向估計(jì)算法中,Kay算法具有很寬的估計(jì)范圍和較低的復(fù)雜度,但精度較低。Fitz、L&R算法在低信噪比條件下能保持較高精度,但其估計(jì)范圍遠(yuǎn)低于IEEE 802.15.4協(xié)議的要求。M&M算法同時(shí)具有精度高和估計(jì)范圍寬的優(yōu)點(diǎn),但其硬件實(shí)現(xiàn)復(fù)雜度高,有數(shù)據(jù)輔助前向型簡化算法降低了M&M算法實(shí)現(xiàn)復(fù)雜度[9],其算法推導(dǎo)如下:
式(3)表示數(shù)據(jù)對(duì)齊后將接收采樣信號(hào)與本地碼相乘以去除調(diào)制信息,并將其結(jié)果根據(jù)式(4)進(jìn)行自相關(guān)運(yùn)算,其中,L為觀察窗口長度;N為小于等于L/2的常量參數(shù);*是共軛符號(hào)。得到:
由于在信噪比較高時(shí),ρ(m)中的乘積項(xiàng)可以忽略,簡化為:
將R(m)前后項(xiàng)做相位差分,即前項(xiàng)與后項(xiàng)的共軛相乘,如下式:
進(jìn)一步忽略其中的乘積項(xiàng)得到:
將上式做平滑處理,得到:
為累加和為1的平滑系數(shù)。由于最后需對(duì)頻偏進(jìn)行補(bǔ)償,因此不必求出fd的具體值,只需求得式(7)中指數(shù)中的角度即可。
4.1 有數(shù)據(jù)輔助頻偏估計(jì)的數(shù)據(jù)對(duì)齊
IEEE 802.15.4協(xié)議中具有8個(gè)偽隨機(jī)m序列的前導(dǎo)碼,為此,采用有數(shù)據(jù)輔助算法可以簡化設(shè)計(jì)并提高估計(jì)精度。本文所采用的有數(shù)據(jù)輔助頻偏估計(jì)算法需要在頻偏糾正之前進(jìn)行時(shí)鐘恢復(fù),即進(jìn)行本地信號(hào)與接收信號(hào)碼元的對(duì)齊。利用IEEE 802.15.4協(xié)議的幀頭m序列較好的相關(guān)特性,與本地碼互相關(guān)可以得到相關(guān)尖峰,第一個(gè)尖峰即為數(shù)據(jù)的起始位置,從而實(shí)現(xiàn)了幀的對(duì)齊。但根據(jù)IEEE 802.15.4的協(xié)議要求,收發(fā)兩端允許最大頻偏為80 ppm= 198.4 kHz[10],頻偏會(huì)導(dǎo)致相關(guān)尖峰峰旁瓣較大,很難判別出峰值的準(zhǔn)確位置。為此,本文采用延遲雙相關(guān)(double correlation)的算法實(shí)現(xiàn)相關(guān)峰的檢測。
設(shè)采樣序列為:
將式(8)與本地碼c(k)進(jìn)行互相關(guān)運(yùn)算并忽略噪聲項(xiàng)可得:
其中,λ(m)=exp(j2πfdmTs)。式(9)中相偏部分與幅度無關(guān);而頻偏存在時(shí),m的變化會(huì)影響λ(m),從而對(duì)相關(guān)結(jié)果的幅度造成不利影響。
采用延遲雙相關(guān)的算法并忽略噪聲后,有:
其中,D為延遲常數(shù)(在此設(shè)置為2個(gè)碼元采樣點(diǎn)的長度);η=exp(j2πfdDTs),為與m無關(guān)的常數(shù),與式(9)相比,降低了旁瓣的影響。
根據(jù)IEEE 802.15.4協(xié)議幀頭m0的相關(guān)性,每個(gè)m0相關(guān)得出一個(gè)尖峰。圖1給出了Matlab的仿真結(jié)果,圖中每個(gè)尖峰各對(duì)應(yīng)IEEE 802.15.4協(xié)議幀頭的一個(gè)m0,對(duì)于定時(shí)恢復(fù),只需求得第一個(gè)尖峰位置即可。
圖1 延遲雙相關(guān)尖峰
結(jié)合FPGA硬件實(shí)現(xiàn),本地碼元自相關(guān)結(jié)果p(k)=c(k)c*(k+D)可存儲(chǔ)在ROM中,采樣數(shù)據(jù)地址與延遲采樣數(shù)據(jù)地址由地址產(chǎn)生模塊給出,根據(jù)以上地址讀取的數(shù)據(jù)與ROM中的數(shù)據(jù)進(jìn)行乘累加運(yùn)算,從而得到一個(gè)相關(guān)值cor-d(m)。
圖2為獲取第一個(gè)尖峰位置的FPGA仿真,圖中M ag-Index為最大值的位置,是通過對(duì)不同的cor-d進(jìn)行累計(jì)最大值搜索獲得,當(dāng)搜索個(gè)數(shù)m超過一個(gè)符號(hào)的長度以后,搜索到的最大值位置即為本幀數(shù)據(jù)的起始位置,此時(shí)輸出一個(gè)高電平脈沖信號(hào)(Peak-Valid)通知下一級(jí)模塊定時(shí)已恢復(fù)。然后由第一個(gè)尖峰位置M ag-Index開始進(jìn)行下采樣,并將下采樣數(shù)據(jù)與本地碼做共軛相乘運(yùn)算后存入RAM中,供下一級(jí)運(yùn)算使用。
圖2 第一尖峰FPGA的仿真結(jié)果
4.2 頻偏估計(jì)
本文在文獻(xiàn)[9]提出頻偏估計(jì)實(shí)現(xiàn)方案的基礎(chǔ)上,給出了改進(jìn)方案,相比于文獻(xiàn)[9]實(shí)現(xiàn)方案,本文給出的方案既能取得較高的頻偏估計(jì)精度,又大幅度減少了FPGA的資源開銷。
文獻(xiàn)[9]提出的實(shí)現(xiàn)方案如圖3所示,其中,圓圈叉表示乘法。
圖3 文獻(xiàn)[9]頻偏估計(jì)實(shí)現(xiàn)方案
該方案采用的是并行處理,需要大量的乘法器及累加器,資源占用較多,而IEEE 802.15.4協(xié)議是為了實(shí)現(xiàn)低成本近距離無線通信所提出的[11],該方案不能滿足低復(fù)雜度的要求。
本文采用方案的實(shí)現(xiàn)結(jié)構(gòu)如圖4所示。
圖4 改進(jìn)的頻偏估計(jì)實(shí)現(xiàn)方案
圖4 所示的實(shí)現(xiàn)方案中,Ts2為下采樣后的時(shí)間間隔,由于頻偏估計(jì)采用的是下采樣的數(shù)據(jù),其采樣間隔變?yōu)樵瓉淼腒倍(K為抽取系數(shù)),因此輸出的頻偏估計(jì)結(jié)果不能直接用于頻偏糾正,這個(gè)問題可以通過在頻偏糾正時(shí)對(duì)相位累加量進(jìn)行歸一化處理來解決[12]。
為了實(shí)現(xiàn)乘法器復(fù)用,減小FPGA資源占用,頻偏估計(jì)模塊通過控制下采樣RAM讀地址的方式來進(jìn)行相關(guān)運(yùn)算,每次相關(guān)運(yùn)算讀地址A與讀地址B的間隔不同,從而得到不同延遲的自相關(guān),并且每次相關(guān)運(yùn)算的累加次數(shù)不同,在狀態(tài)機(jī)控制下,一次相關(guān)運(yùn)算完成之后鎖存結(jié)果,將本次與上一次的相關(guān)結(jié)果進(jìn)行共軛乘,然后與平滑系數(shù)ROM中取出的系數(shù)做乘累加運(yùn)算,最后得到包含頻偏信息的復(fù)數(shù)結(jié)果。
表1比較了常量參數(shù)為N時(shí),本文所提方案與文獻(xiàn)[9]提出方案的資源使用對(duì)比。復(fù)數(shù)乘法運(yùn)算在FPGA設(shè)計(jì)中資源占用量很大,如采用并行算法,F(xiàn)PGA中的乘法器將被完全占用,無法滿足IEEE 802.15.4協(xié)議設(shè)計(jì)的低復(fù)雜度和低成本的要求。
表1 并/串行實(shí)現(xiàn)方案硬件資源使用個(gè)數(shù)對(duì)比
而此時(shí)作為頻偏估計(jì)算法的輸入為下采樣后的數(shù)據(jù),數(shù)據(jù)長度短,采用串行計(jì)算方式雖然需要更多的時(shí)鐘周期來完成,然而前面雙端口RAM及下采樣的應(yīng)用縮短了運(yùn)算時(shí)間,提高了運(yùn)算速度。且在IEEE 802.15.4協(xié)議的數(shù)據(jù)幀頭有8個(gè)符號(hào)用于同步,足以在這個(gè)時(shí)間內(nèi)通過串行計(jì)算來完成頻偏估計(jì)。
本文最終FPGA硬件實(shí)現(xiàn)資源使用情況對(duì)比如表2所示,采用的是觀察窗口長度L=200,N=100,文獻(xiàn)[9]的方案實(shí)現(xiàn)幾乎占用本文所用A ltera EP2 S90F1020 FPGA全部的乘法器資源,資源消耗巨大,從而導(dǎo)致后續(xù)模塊難以實(shí)現(xiàn),而采用本文提出的串行算法則很好地解決這一問題,減小了頻偏估計(jì)模塊的資源使用。
表2 并/串行實(shí)現(xiàn)方案FPGA資源使用情況對(duì)比
4.3 頻偏糾正模塊
為了補(bǔ)償采樣點(diǎn),需要將頻偏估計(jì)模塊輸出復(fù)數(shù)值的相位求出,求相位可以使用查找表、多項(xiàng)式逼近以及坐標(biāo)旋轉(zhuǎn)數(shù)字計(jì)算機(jī)(Coordinate Rotation Digital Computer,CORDIC)迭代等算法實(shí)現(xiàn)。其中CORDIC算法只需要進(jìn)行移位與加減運(yùn)算,資源開銷小,為此本文模塊使用CORDIC算法獲得復(fù)數(shù)的相位。在CORDIC算法計(jì)算出相位后,根據(jù)下采樣抽取系數(shù)以及相位累加器的位寬對(duì)這個(gè)角度做歸一化處理,將相位累加器的輸出映射到0~2π的范圍,然后通過累加器的輸出進(jìn)行查表,得到頻偏糾正項(xiàng)exp(-j2πfdkTs)的實(shí)部與虛部。
圖5為頻偏糾正模塊的實(shí)現(xiàn)框圖,其中,AccBitWidth為相位累加器的位寬;查找表(Look Up Table,LUT)采用雙口ROM實(shí)現(xiàn),4K字存儲(chǔ)深度的ROM查找表用于存儲(chǔ)正弦函數(shù)。由于余弦函數(shù)與正弦函數(shù)具有對(duì)應(yīng)關(guān)系,通過對(duì)正弦表地址進(jìn)行調(diào)整可以得到余弦表,因此可以直接從ROM中讀出頻偏補(bǔ)償項(xiàng)的實(shí)部與虛部。調(diào)用復(fù)數(shù)乘法器令頻偏補(bǔ)償項(xiàng)和輸入的采樣信號(hào)做復(fù)數(shù)乘法,得到的結(jié)果即為糾正頻偏后的采樣信號(hào)。
圖5 頻偏糾正模塊實(shí)現(xiàn)框圖
4.4 頻偏估計(jì)與糾正模塊FPGA實(shí)現(xiàn)性能分析
由于CORDIC的精度有限,導(dǎo)致頻偏補(bǔ)償中相位累加器的歸一化相位增量存在一定誤差,但突發(fā)模式數(shù)據(jù)幀長度有限,即誤差的時(shí)間累積短,因此最終的累積誤差不會(huì)對(duì)結(jié)果造成很大影響。同時(shí)為了節(jié)省資源,F(xiàn)PGA實(shí)現(xiàn)采用定點(diǎn)數(shù)計(jì)算,必然產(chǎn)生一定的量化誤差,也會(huì)影響頻偏估計(jì)的精度。
為了評(píng)估本文方案性能,利用SignalTap工具將采樣數(shù)據(jù)導(dǎo)入M atlab中進(jìn)行浮點(diǎn)頻偏估計(jì),再與FPGA實(shí)現(xiàn)輸出結(jié)果比對(duì),結(jié)果見表3。從表3可以看出,F(xiàn)PGA頻偏估計(jì)的定點(diǎn)運(yùn)算結(jié)果與Matlab浮點(diǎn)運(yùn)算結(jié)果相比誤差很小,這說明頻偏模塊能夠達(dá)到預(yù)期的精度。表中較大的頻偏已經(jīng)遠(yuǎn)超過了IEEE 802.15.4協(xié)議的所要求的80 ppm的頻偏范圍,此時(shí),估計(jì)結(jié)果仍具有較小的誤差。為了驗(yàn)證本文方案的可行性與有效性,采用實(shí)際信號(hào)源(CC2430模塊)對(duì)本文方案進(jìn)行了實(shí)際測試。
表3 M atlab浮點(diǎn)頻偏估計(jì)與FPGA輸出誤差比較
圖6為信號(hào)頻偏糾正前后的星座圖,頻偏估計(jì)的結(jié)果為120 kHz,糾正頻偏后的信號(hào)星座圖很好地抑制了星座圖相位旋轉(zhuǎn),能夠與標(biāo)準(zhǔn)IEEE 802.15.4協(xié)議星座映射點(diǎn)對(duì)應(yīng)。
圖6 頻偏糾正前后信號(hào)星座圖比較
表4給出了本文方案在A ltera EP2S90F1020上進(jìn)行綜合后資源的使用情況,可以看出資源占用較少,滿足低復(fù)雜度的要求。
表4 本文方案資源使用情況
本文通過對(duì)頻偏估計(jì)算法硬件實(shí)現(xiàn)的改進(jìn),提出了包括定時(shí)恢復(fù)、頻偏估計(jì)及頻偏糾正在內(nèi)的FPGA載波同步實(shí)現(xiàn)方案。為了降低頻偏對(duì)于定時(shí)恢復(fù)的影響,采用了改進(jìn)的延遲雙相關(guān)定時(shí)恢復(fù)算法。針對(duì)并行互相關(guān)運(yùn)算資源占用較大的問題,頻偏估計(jì)部分使用RAM的2個(gè)讀地址接口實(shí)現(xiàn)串行相關(guān)運(yùn)算,通過下采樣運(yùn)算提高了運(yùn)算速度,降低了運(yùn)算量。實(shí)驗(yàn)結(jié)果表明,本文方案有效地降低了FPGA硬件資源占用,在大頻偏條件下仍具有較小的誤差,從而證明了其具有較大的估計(jì)范圍及較高的精度。在研究過程中,頻偏估計(jì)模塊與數(shù)據(jù)起始檢測中的互相關(guān)運(yùn)算較為復(fù)雜,如何在保證頻偏估計(jì)精度及范圍的條件下進(jìn)一步降低資源開銷及減小計(jì)算量是今后的研究方向。
[1] Mengali U,Andrea A D.Synchronization Techniques for Digital Receivers[M].New York,USA:Plenum Press,1997.
[2] Mohamm ad E H,Erik P.Timing,Carrier,and Frame Synchronization of Burst-mode CPM[J].IEEE Transactions on Communications,2013,61(12):5125-5138.
[3] Kay S.A Fast and Accurate Single Frequency Estimator[J]. IEEE Transactions on Acoustics,Speech,and Signal Processing,1989,37(12):1987-1990.
[4] Fitz M.Planar Filtered Techniques for Burst M ode Carrier Synchronization[C]//Proceedings of Global Telecommunications Conference.Washington D.C.,USA:IEEE Press,1991:365-369.
[5] Luise M,Reggiannini R.Carrier Frequency Recovery in A ll-digital Modem s for Burst-modetrans missions[J]. IEEE Transactions on Communications,1995,43(2):1169-1178.
[6] Mengali U,M orelli M.Data-aided Frequency Estimation for Burst Digital Transmissions[J].IEEE Transactions on Communications,1997,45(1):23-25.
[7] 劉述鋼,劉宏立,王 彥.基于ZigBee的LS頻偏估計(jì)改進(jìn)算法[J].信息與控制,2011,40(4):472-476.
[8] Ahmad R,Sidek O,Hassin W,et al.Implementation of IEEE 802.15.4-based OQPSK-pulse-shaping Block on FPGA[C]//Proceedings of IEEE International Conference on Computer Applications and Industrial Elec-tronics. Washington D.C.,USA:IEEE Press,2011:459-464.
[9] Deirdre O,Verdin D,Tim C.Feedforward Data Aided Frequency Estimator for Burst Mode Digital-transmission[J].Wireless Personal Communications,1998,8(2):131-149.
[10] Chen Kai-Hsin,Ma Hsi-Pin.A Low Power ZigBee Baseband Processor[C]//Proceedings of International SoC Design Conference.Washington D.C.,USA:IEEE Press,2008.
[11] 王太峰,林 珂,范樂昊.IEEE802.15.4標(biāo)準(zhǔn)的無線傳感器網(wǎng)絡(luò)自組網(wǎng)方案[J].信息技術(shù),2009,2(4):30-35.
[12] Meyr H,Moeneclaey M.Digital Communication Receivers:Synchronization,Channel Estimation,and Signal Processing[M].New York,USA:John Wiley&Sons,1998.
編輯 劉 冰
A Novel FPGA Implementation Scheme of Frequency Offset Estimation Algorithm
CHEN Zhaoting,LENG Wen,WANG Anguo
(School of Electronic Information Engineering,Tianjin University,Tianjin 300072,China)
Based on IEEE 802.15.4 signal model,by adopting the simplified frequency offset estimation algorithm,a novel Field Programmable Gate Array(FPGA)implementation scheme of frequency offset estimation algorithm is proposed in this paper,which saves hardware resources and is suitable for burstmode communication.The proposed scheme in the paper includes timing recovery,frequency offset estimation and frequency offset correction modules.By transforming parallel to serial calculation,the hardware resource occupation is reduced greatly.Using down-sample and dual-port RAM,the computing speed is improved effectively.By optimizing architecture,the FPGA implementation of frequency offset estimation and correction algorithm proposed in the paper is with large frequency offset estimation range,high frequency accuracy performance and low ratio in hardware resource utilization.Analysis results show the validity of it.
frequency offset estimation;Field Programmable Gate Array(FPGA);sampled signal;resource occupancy rate;IEEE 802.15.4 protocol
陳朝廷,冷 文,王安國.一種新的頻偏估計(jì)算法FPGA實(shí)現(xiàn)方案[J].計(jì)算機(jī)工程,2015,41(11):160-164,169.
英文引用格式:Chen Zhaoting,Leng W en,Wang Anguo.A Novel FPGA Implementation Scheme of Frequency Offset Estimation Algorithm[J].Computer Engineering,2015,41(11):160-164,169.
1000-3428(2015)11-0160-05
A
TP393
10.3969/j.issn.1000-3428.2015.11.028
毫米波國家重點(diǎn)實(shí)驗(yàn)室開放課題基金資助項(xiàng)目(K 201314)。
陳朝廷(1988-),男,碩士研究生,主研方向:無線通信信號(hào)處理;冷 文,講師;王安國,教授。
2014-11-26
2014-12-23 E-m ail:chenzhaoting456@sina.com