基于PN序列幀的同步分析及FPGA實現(xiàn)
摘要:闡述了一種導頻疊加的OFDM同步方法,利用具有良好的自相關性PN序列實現(xiàn)時偏和頻偏估計。在多徑信道條件下,通過Matlab仿真能較好地實現(xiàn)同步。然后利用Altera公司的芯片在QuartusⅡ8.0工具平臺上實現(xiàn)了OFDM同步的硬件設計,最后進行了電路仿真。
關鍵詞:正交頻分復用;同步;現(xiàn)場可編程門陣列;仿真
0 引言
目前正交頻分復用(Orthogonal Frequency Division Multiplering,OFDM)技術已經成為第四代移動通信研究的熱點,同時OFDM同步又是OFDM的關鍵技術,研究OFDM同步技術的目的就是為了防止碼間干擾和載波干擾。當前OFDM同步的算法是根據OFDM原理提出的基于數據符號方法,它的優(yōu)點是捕獲快、精度高,適合分組數據通信,具體的實現(xiàn)是在分組數據包的包頭加一個專門用來做定時、頻偏的OFDM塊?;跀祿査惴ㄓ挚梢苑譃閮深悾夯谟柧毞?導頻碼)的方法和基于循環(huán)前綴(circle prefix,CP)的方法,其中基于PN序列同步算法又是基于訓練符號的一種。
1 基于PN序列的幀、符號定時與頻偏估計同步算法
文獻提出了一種導頻疊加的方法,即導頻和OFDM符號相加,利用導頻符號的相關性實現(xiàn)定時和頻偏估計。由于PN序列具有良好的自相關性,可以用PN序列作為導頻符號。
圖1顯示了PN序列的加入方法。同步被分為兩步:幀同步和符號同步。若干個OFDM符號組成一幀,在每幀的前面插入若干個相同的短符號(訓練符號)用于幀定時和粗頻偏估計。在每個OFDM符號上疊加一段與符號長度相同的PN序列來實現(xiàn)符號定時和精確的頻偏估計。由于PN序列不是直接插入在信息數據之間,因此節(jié)省了系統(tǒng)帶寬,但為了提高同步的效果,PN序列的能量就不能太小,否則會被噪聲和有用信號淹沒,所以這種導頻疊加方法是以增加發(fā)射功率為代價的。
以符號同步為例對算法進行分析,忽略CP的長度,則接收信號可表示為:
式(1)中c(n)表示PN序列,d(n)是數據序列,n(n)代表AWGN,εf是歸一化頻偏。若表示發(fā)送信號的平均功率,ρ代表功率分配系數,則PN序列和數據序列的功率比近似為,對于幀同步而言,由于符號中沒有數據序列,所以ρ=1。接收信號和接收端的PN序列求相關得:
[!--empirenews.page--]
由于PN序列和AWGN以及d(n)的相關性很小,所以上式中的最后兩項可以近似為0,從第一項可以看出,當PN序列和包含在每個符號中的PN序列求相關后在符號的邊界處會出現(xiàn)峰值,該峰值可用來實現(xiàn)符號或幀定時。為了實現(xiàn)頻偏估計還必須對相關值移位相乘,即:
式(4)中λ[n,0]表示符號起點的估計值,K表示PN序列的長度,一般而言PN序列的長度和符號的長度一致,但如果在一個符號內疊加k=N/K個相同的PN序列就可以得到更大的頻偏估計范圍,頻偏估計范圍可表示為:
圖2顯示了該算法的系統(tǒng)實現(xiàn)框圖。接收信號與已知的PN序列求相關,PN序列的長度假設為N,然后將求相關后的值存儲在長度為N+1的寄存器內,求其共軛值,并與后N位的值相乘。
在多徑信道下,用該算法也能較好地實現(xiàn)幀同步。這是由于用于幀同步的符號中沒有包括數據符號,不會對PN序列產生干擾;PN序列良好的自相關性使得用于幀起點判決的峰值非常尖銳,PN序列越長相關性越好,峰值的能量越大,抗AWGN的能力越強。
2 算法FPGA實現(xiàn)
FPGA實現(xiàn)框圖如圖3所示,數據序列通過讀寫寄存器與已知事先存儲的PN序列進行相關運算,讀寫寄存器是雙端的128×16位RAM,PN序列參考IEEE802.11a長訓練符號同步序列(N=52),這里采用128個采樣點,即
PN={1,1,-1,-1,1,1,-1,1,-1,1,1,1,1,1,1,-1,……1,1,1,1}
這128位相關性極強的一系列數據,按地址位編輯成后綴為*mif文件,一旦上電啟動就寫入ROM中,讀地址在讀取RAM的數據時同時也就能依次讀出ROM數據,然后做兩者的相關運算,兩路信號經過相關運算送到下一級求其共軛,共軛結果與后來的輸入延時128位的復數數據再一一相乘,然后進入求移位相關峰的最大值模塊。若連續(xù)出現(xiàn)若干個最大峰值,Controler的標志位置高,表明系統(tǒng)可以進行解調處理或者FFT。另外,系統(tǒng)的使能和清零信號也由Controler產生。
[!--empirenews.page--]
PN序列和包含在每個符號中的PN序列求相關后在符號的邊界處會出現(xiàn)第一次峰值,再經過和延時的數據相乘后出現(xiàn)更大的峰值,這個峰值進入移位相關峰的最大值模塊中,連續(xù)出現(xiàn)的峰值就能確定符號同步,虛部與實部比值得出的相位角數值可以查對應的表從而得到頻偏估計值,提供頻率補償的參考值。在實際的運用中選取長的PN序列能獲得精確的同步,但是這太浪費帶寬和發(fā)射功率,所以在選取一定長度的訓練符時既妻考慮同步的精確度也要考慮系統(tǒng)成本。經過QuartusⅡ8.0工具的設計、編譯、綜合等一系列步驟細同步系統(tǒng)融合成一塊整體模塊,如圖4所示。
圖5是截取部分的仿真波形,clk輸入時鐘周期是0.10ns,從系統(tǒng)執(zhí)行運算13.45ns開始到26.25 ns正好是128個時鐘周期,所以此間的comp輸出相關峰幅度的最大值即是數據解調的臨界點,ar8是對應輸出相關峰頻偏的數值。該電路的工作頻率為206.10MHz。
3 結論
上述FPGA實現(xiàn)的是基于數據符號的OFDM系統(tǒng)同步算法,采用Altera公司的芯片EP1S25F102015進行試驗仿真,該芯片有邏輯單元25 660個,存儲模塊單元1 944 576個,DSP模塊單元80個,I/O輸出引腳707個,其中使用的芯片資源使用情況如表1。
基于PN序列幀同步算法實現(xiàn)的FPGA使用了最少的芯片資源,因此時鐘頻率相當快達到了206.10 MHz。盡管這樣,由于有部分序列幀和數據是重疊在一起的,因此在跟蹤到同步的時候解調時,提取在PN序列重疊的那部分數據有一定的難度,它具備時偏和頻偏估計,可以應用于無線通信系統(tǒng)中。綜合算法設計占用芯片資源以及相關情況的分析,算法在FPGA中的實現(xiàn)是可行的和可靠的,充分發(fā)揮了FPGA芯片集成密度大、速度快、功耗低、通用性好、適應性強和重復編程的特點。通??删幊踢壿嬓酒寄芴峁┐笕萘窟壿媶卧痛鎯卧?,因此芯片預留資源都是比較有富余的,考慮信號處理的實性行和可靠性就是我們關注的重點,當然成本也是我們考慮的一個因素,與此同時我們也要考慮電路的設計復雜程度,因為它也要影響數據處理的速度。