OFDM系統(tǒng)中頻域同步技術(shù)及FPGA實(shí)現(xiàn)
掃描二維碼
隨時隨地手機(jī)看文章
摘要:針對OFDM系統(tǒng)頻域中的整數(shù)倍頻率偏移、小數(shù)倍頻率偏移、采樣鐘頻率偏移和定時偏移等問題,本文提出了相應(yīng)的解決方案,并采用FPGA對各方法進(jìn)行硬件電路實(shí)現(xiàn)。這些硬件實(shí)現(xiàn)方法巧妙,估計(jì)精確,能節(jié)省大量硬件資源。通過實(shí)際的電路時序波形仿真驗(yàn)證,證明了這些方法的實(shí)用性。
關(guān)鍵詞:正交頻分復(fù)用(OFDM);正數(shù)倍頻率偏移;小數(shù)倍頻率偏移;采樣鐘頻率偏移;定時偏移
同步部分概述
正交頻分復(fù)用(OFDM)系統(tǒng)的一個重要問題是對頻率偏移非常敏感,很小的頻率偏移都會造成系統(tǒng)性能的嚴(yán)重下降。另外收發(fā)端采樣鐘不匹配,也會導(dǎo)致有用數(shù)據(jù)信號相位旋轉(zhuǎn)和幅度衰減,破壞了OFDM子載波間的正交性,降低系統(tǒng)性能。因此在OFDM系統(tǒng)中,頻率偏移和采樣鐘偏移估計(jì)的準(zhǔn)確度至關(guān)重要。
OFDM接收系統(tǒng)的同步部分主要包括以下幾方面:頻率同步、采樣鐘同步和符號定時同步。載波頻率偏移和采樣鐘頻率偏移的存在導(dǎo)致了載波間干擾(ICI)和采樣點(diǎn)增減現(xiàn)象,這就需要頻率同步和采樣鐘同步。同時在解調(diào)過程中,接收機(jī)是在時域上的任意點(diǎn)開始接收數(shù)據(jù)的,而OFDM是基于符號的,這就需要檢測到符號的起始位置,否則會因?yàn)榉柕钠鹗嘉恢玫牟缓侠恚鴮?dǎo)致符號間的干擾(ISI),這就是符號定時同步。
頻域同步估計(jì)方法
整數(shù)倍頻率偏移估計(jì)算法
頻率偏移△f0分成兩部分:整數(shù)倍和小數(shù)倍子載波間隔頻偏。由于在時域上已經(jīng)對小數(shù)倍頻偏有一個粗略估計(jì)和校正,因此頻域內(nèi)是利用內(nèi)插導(dǎo)頻信息對整數(shù)倍頻偏和剩余小數(shù)倍頻偏進(jìn)行估計(jì)校正的。
(1)
式(1)是整數(shù)倍頻率偏移估計(jì)算法表達(dá)式,它是利用連續(xù)導(dǎo)頻在發(fā)射端為已知固定相位的特性,使用一個長為S的滑動窗作為頻域上一個OFDM符號有效載波起始位置的估計(jì)范圍,以窗內(nèi)的每一個數(shù)據(jù)作為OFDM符號有效載波的的起始位置,對前后兩個符號在假設(shè)的連續(xù)導(dǎo)頻位置上的復(fù)數(shù)據(jù)做相關(guān)求和,這樣就得到了S個相關(guān)值,其中最大值所對應(yīng)的s即為頻域上一個OFDM符號有效載波起始位置的估計(jì)值,也即為整數(shù)倍頻偏估計(jì)值。
其中L是連續(xù)導(dǎo)頻個數(shù);ak是一個符號內(nèi)第k個連續(xù)導(dǎo)頻的序號;Yl,ak是FFT輸出的第l個符號的假設(shè)第k個連續(xù)導(dǎo)頻位置上的復(fù)數(shù)值;S是整數(shù)倍頻偏的估計(jì)范圍,也即為滑動窗長,s是窗口移動值,s∈S;
是S路相關(guān)和的最大值,其對應(yīng)的s即為整數(shù)倍頻偏的估計(jì)值。
小數(shù)倍頻率偏移和采樣鐘頻率偏移估計(jì)算法
在OFDM系統(tǒng)的接收端,實(shí)際的第m個子載波的實(shí)際解調(diào)頻率為f'm=f'0+mF',這里,f'0為本地解調(diào)載波頻率,F(xiàn))=F'0N,N為子載波個數(shù),F(xiàn)'0為接收機(jī)壓控晶振輸出的采樣頻率。由此可以看出,在第m個子載波上,載波頻偏和采樣鐘偏移的聯(lián)合效應(yīng)是大小等于△fm的子載波頻偏,這里△fm=△f0+m•△F0N,△f0=f'0-f0,△F0=F'0-F0,f0和F0分別為發(fā)射端的中心載波頻率和采用頻率。當(dāng)將整偏校掉后,這里的△f0僅為小數(shù)倍的子載波間隔。
設(shè)pi為導(dǎo)頻點(diǎn)位置,pi∈P,P為導(dǎo)頻點(diǎn)位置集合;i=0,1,…,K-1,K是P的基數(shù);△fpi為第pi個導(dǎo)頻點(diǎn)上相關(guān)結(jié)果的頻率部分,這個值以下用
表示為估計(jì)結(jié)果。定義
,同時考慮到在第pi個子載波上的估計(jì)誤差ei,則:
(2)
其中,△fpi為在第pi個導(dǎo)頻點(diǎn)上的頻率偏移和采樣鐘偏移之和,現(xiàn)令
為所需估計(jì)的向量參數(shù),式(2)就可以寫作:
(3)
其中,
由于估計(jì)是基于
的,因此將向量V稱為觀察向量,方程式(3)稱為觀察方程。線性最小平方估計(jì)就是在觀察向量給定的條件下,根據(jù)觀察方程估計(jì)向量
。根據(jù)最大似然估計(jì)原理,使得向量V的線性函數(shù)
取得最小值時,得出
的估計(jì)值
。對式
求導(dǎo)并使之為零,可得:
(4)
公式(3)是在先得出
,i=0,...,K-1的基礎(chǔ)上求得的,而
可以通過在導(dǎo)頻位置對前后兩個OFDM符號做相關(guān)運(yùn)算來求。
頻域符號定時偏移估計(jì)算法
時域定時的不準(zhǔn)確就要求頻域內(nèi)進(jìn)一步對OFDM符號定時進(jìn)行校正。由于時域內(nèi)保護(hù)間隔是數(shù)據(jù)信號最后L個采樣點(diǎn)的完全復(fù)制,所以由FFT循環(huán)移位定理可知:符號定時的偏移所引起的子載波上相位旋轉(zhuǎn)和子載波序號k成正比。由于導(dǎo)頻信號插入位置已知,且其具有相位已知特性,這使得我們可以利用符號內(nèi)插導(dǎo)頻載波間相位變化來做細(xì)符號定時同步,并與粗符號定時同步結(jié)合起來,得到一個準(zhǔn)確的符號起始位置。
設(shè)
是第j個OFDM符號定時偏移在相鄰導(dǎo)頻點(diǎn)上所引起的相位偏移之差,
為第j個OFDM符號所估計(jì)出來的細(xì)定時。則
和
可表示為:
(5)
(6)
其中,L為散布導(dǎo)頻個數(shù);N為一個OFDM符號中有效子載波的個數(shù);Xj,k是第j個符號的第k個散布導(dǎo)頻復(fù)值;△k為兩個相鄰的子載波序號的差值。
頻域同步部分的FPGA電路實(shí)現(xiàn)模塊
頻域同步電路模塊各單元的工作原理如圖3.1所示。這里使用Altera公司生產(chǎn)的STratixⅡEP2S60的FPGA芯片來實(shí)現(xiàn)。
圖3.1 FFT后同步塊方框圖
FFT模塊輸出復(fù)數(shù)據(jù)經(jīng)過一個OFDM符號的FIFO模塊延遲后,和當(dāng)前的OFDM復(fù)數(shù)據(jù)進(jìn)行相關(guān),以實(shí)現(xiàn)在整數(shù)倍頻偏估計(jì)和小數(shù)倍頻率偏移算法中所需要的前后兩個符號的對應(yīng)導(dǎo)頻相關(guān)運(yùn)算,其相關(guān)結(jié)果為32位的復(fù)數(shù)據(jù)。
整數(shù)倍頻率偏移估計(jì)模塊
將相關(guān)單元輸出的復(fù)數(shù)據(jù)的實(shí)虛部符號位送到整數(shù)倍頻偏估計(jì)單元中進(jìn)行整數(shù)倍頻偏估計(jì)。為了節(jié)省芯片資源,這里我們將估計(jì)整數(shù)倍頻偏的算法加以簡化,用相關(guān)后的復(fù)數(shù)據(jù)在導(dǎo)頻位置上的實(shí)虛部的符號位來估計(jì)整數(shù)倍頻偏值。下面的仿真的電路波形圖證明這樣實(shí)現(xiàn)整偏估計(jì)算法是可行的。它的輸入為相關(guān)單元輸出的復(fù)數(shù)據(jù)實(shí)虛部的符號位和此復(fù)數(shù)據(jù)的載波同步位置,輸出為整數(shù)倍頻偏估計(jì)值。
小數(shù)倍頻率偏移和采樣鐘頻率偏移模塊
首先對相關(guān)單元模塊輸出的復(fù)數(shù)據(jù)的實(shí)虛部進(jìn)行歸一化,然后求歸一化單元輸出的16位復(fù)數(shù)據(jù)的相角,同時用RAM的讀地址和讀使能信號分別控制讀取存有矢量A和矢量B數(shù)據(jù)的ROM表中的數(shù)據(jù)。其中矢量A和B分別為線性最小平方估計(jì)算法中矩陣AT的第一行和第二行矢量,用此相角分別和讀出的矢量A和矢量B在一個符號內(nèi)進(jìn)行相乘累加,再根據(jù)保護(hù)間隔的不同,乘以相應(yīng)的系數(shù),便可分別得到小數(shù)倍頻偏和采樣鐘頻率偏移的估計(jì)值。
細(xì)定時估計(jì)模塊
考慮到定時估計(jì)范圍的問題,該模塊利用四個符號的散布導(dǎo)頻進(jìn)行定時估計(jì)。將當(dāng)前符號的散布導(dǎo)頻值及從RAM中讀出的前三個符號的散布導(dǎo)頻值按一定順序排列,并做相鄰導(dǎo)頻相關(guān)。將相關(guān)后的復(fù)數(shù)據(jù)的實(shí)虛部分別取絕對值累加,并將二者的累加和進(jìn)行歸一化處理后進(jìn)行查表,從而得出復(fù)數(shù)的相位值。這個相位即為符號定時偏移所引起的旋轉(zhuǎn)相位。再對此相位做如公式(6)的運(yùn)算,這樣就得到了符號定時偏移的整數(shù)和小數(shù)部分的和,然后將其送到求整函數(shù)中,從而得到符號定時偏移的整數(shù)部分。將這個值經(jīng)過并/串變換后送到前端時域同步部分,去調(diào)整FFT窗位。
電路仿真
其仿真條件為:瑞利信道,SNR為15dB,載波頻偏設(shè)為-14.9倍子載波間隔(即整數(shù)倍頻偏值為-15,小數(shù)倍頻偏值為0.1倍子載波間隔),采樣鐘偏移為50ppm,保護(hù)間隔長為512,定時符號偏移為-100個采樣點(diǎn)。此電路工作頻率為10MHz。輸入的16位復(fù)數(shù)據(jù)由MATLAB仿真程序產(chǎn)生的。
整數(shù)倍頻率偏移電路仿真
由于電路波形中無法表示小數(shù),因此將各小數(shù)進(jìn)行“擴(kuò)展”,其表示皆為二進(jìn)制數(shù)據(jù),以下同。在圖4.1中,out_re[31]和out_im[31]分別是前后兩個OFDM符號中對應(yīng)子載波相關(guān)結(jié)果的實(shí)虛部的符號位,int_freqoffset[5..0]和syn_int分別是整數(shù)倍頻偏估值和其有效起始位置脈沖。
圖4.1 整數(shù)倍頻偏估計(jì)部分的電路仿真波形圖
由于整數(shù)倍頻偏在每一符號的結(jié)束處才能估計(jì)出來,所以syn_int在每一個符號的結(jié)束處出現(xiàn),其后即為當(dāng)前符號的整數(shù)倍頻偏值。由于本算法利用了4個符號的連續(xù)導(dǎo)頻,故圖4.1中,從第四個syn_int后的int_freqoffset[5..0]才是當(dāng)前符號的整數(shù)倍頻偏估計(jì)值。由仿真波形可看出,估出的整數(shù)倍頻偏與仿真數(shù)據(jù)中所假設(shè)的一致。故用此算法的簡化形式可以準(zhǔn)確地估計(jì)出整數(shù)倍頻偏值。
小數(shù)倍頻率偏移及采樣鐘頻率偏移估計(jì)的電路仿真
sernum[1..0]表示前級輸入的符號類型;syn為輸入復(fù)數(shù)據(jù)中的有用數(shù)據(jù)起始脈沖;rein[15..0]和imin[15..0]分別為FIFO模塊輸出復(fù)數(shù)據(jù)的實(shí)虛部;syn_offset為小數(shù)倍頻偏和采樣鐘偏移估計(jì)結(jié)果的起始位置;fri[14..0]和qdelt[14..0]為小數(shù)倍頻偏估計(jì)值和采樣鐘偏移估計(jì)值,它們由1位符號位和14位小數(shù)位組成。這里的小數(shù)位數(shù)是根據(jù)其估計(jì)范圍和估計(jì)精度要求來確定的。
在圖4.2中,小數(shù)倍頻率偏移和采樣鐘頻率偏移估計(jì)模塊使用連續(xù)導(dǎo)頻進(jìn)行估計(jì)。在每個符號末,syn_offset高電平有效時,fri[14..0]和qdelt[14..0]才是當(dāng)前符號的小數(shù)倍頻率偏移和采樣鐘頻率偏移估計(jì)值。波形中的估值與實(shí)際數(shù)據(jù)的對應(yīng)關(guān)系如表4.1所示。
圖4.2 小數(shù)倍頻偏和采樣鐘偏移估計(jì)單元的電路仿真波形圖
表4.1 波形圖中數(shù)據(jù)與實(shí)際數(shù)據(jù)對照表
小數(shù)倍頻率偏移和采樣鐘頻率偏移模塊是在整偏校完之后才有效,此時的小數(shù)倍頻率偏移是經(jīng)過時域粗偏估計(jì)校正后的剩余部分。表4.1列出波形中的估值與實(shí)際數(shù)據(jù)的對應(yīng)關(guān)系。從表中的數(shù)字對應(yīng)關(guān)系可以看出,電路中估計(jì)的小數(shù)倍頻偏與實(shí)際頻偏的差在0.1%以內(nèi)。采樣鐘偏移估計(jì)值與實(shí)際偏移誤差為1ppm左右,這已滿足了采樣鐘的粗調(diào)精度;相位輸出為前后符號的小數(shù)倍偏頻所引起的相位旋轉(zhuǎn)。由此單元電路,可以準(zhǔn)確地估計(jì)出小數(shù)倍頻偏和采樣鐘偏移及其相位。
細(xì)定時同步估計(jì)的電路仿真
圖中的data_re_in[15..0]和data_im_in[15..0]表示經(jīng)公共相位校正后的復(fù)數(shù)據(jù)實(shí)虛部;syn_in是輸入有用數(shù)據(jù)的起始位置脈沖;sym_type[1..0]是前端輸入的符號類型;taok[22..0]和td[9..0]分別為估計(jì)的符號定時偏移和其整數(shù)部分;syn_tao是taok[22..0]的有效數(shù)據(jù)起始脈沖信號。
圖4.3 符號定時偏移估計(jì)單元的電路波形圖
圖4.3中共有9個符號。由于本算法利用了4個符號的散布導(dǎo)頻,故圖4.3中,從第四個符號的結(jié)束處開始,在syn_tao后的taok[22..0]才是當(dāng)前符號的定時偏移估計(jì)值。波形中的估值與實(shí)際數(shù)據(jù)的對應(yīng)關(guān)系如表4.2所示。
表4.2 波形圖中數(shù)據(jù)與實(shí)際數(shù)據(jù)對照表
表4.2中的定時實(shí)際偏移為-112,而不是仿真條件中的-100,這是由于在瑞利信道的仿真模型中,符號定時同步頭位置(重心位置)是在第一條徑之后12個采樣點(diǎn)出現(xiàn)的。由表中數(shù)據(jù)對應(yīng)關(guān)系可知,符號定時偏移估計(jì)單元可準(zhǔn)確地估出符號定時偏移的整數(shù)部分。由于采樣鐘偏移、算法估計(jì)誤差及電路運(yùn)算誤差的影響,其小數(shù)部分不為零,這與電路的仿真結(jié)果一致。
改進(jìn)前后占用硬件資源比較
表4.3給出了改進(jìn)前后,頻域同步所占用的硬件資源比較,其中ALUTS、Registers、Memorybits、DSPblock9-bitelements分別為自適應(yīng)查找表、寄存器、存儲器和9字節(jié)DSP處理塊。通過比較可以發(fā)現(xiàn),改進(jìn)后的方案可以節(jié)省大量的硬件資源。
表4.3 改進(jìn)前后的硬件資源對比
結(jié)束語
頻率偏移估計(jì)可以分為整數(shù)倍頻偏估計(jì)單元、小數(shù)倍頻偏、采樣鐘偏移估計(jì)單元和符號定時偏移估計(jì)單元。本文主要介紹各部分的算法方案及電路實(shí)現(xiàn)時所用的FPGA元件的基本結(jié)構(gòu)、設(shè)計(jì)思路。最后通過對電路的仿真波形可以看出,這些頻域同步算法和FPGA電路能夠滿足多載波傳輸系統(tǒng)的同步要求。