0 引言
WiMAX ( Wordwide Interoperability for Mi-crowave Access)是代表空中接口滿足IEEE 802.16標(biāo)準(zhǔn)的寬帶無(wú)線通信系統(tǒng)。其中IEEE標(biāo)準(zhǔn)在2004年定義了空中接口的物理層(PHY),即802.16d協(xié)議。該協(xié)議規(guī)定數(shù)據(jù)傳輸采用突發(fā)模式,調(diào)制采用OFDM技術(shù)。在接收端,為了正確解調(diào),必須找到符號(hào)的起始位置,因此,必須進(jìn)行定時(shí)估計(jì)。如果定時(shí)不正確,就可能引起嚴(yán)重的碼間干擾。由于頻偏估計(jì)是在定時(shí)估計(jì)之后進(jìn)行,如果定時(shí)估計(jì)不準(zhǔn)確,也會(huì)影響頻偏的估計(jì)性能,從而導(dǎo)致整個(gè)OFDM系統(tǒng)性能下降。因此,必須在短時(shí)間內(nèi)對(duì)接收數(shù)據(jù)進(jìn)行快速準(zhǔn)確的定時(shí)同步。
目前常用的定時(shí)算法多采用計(jì)算序列的相關(guān)性。由于計(jì)算復(fù)雜,其硬件資源消耗非常龐大,所以,目前OFDM系統(tǒng)中的同步算法以軟件方法為主,已有的硬件方法由于消耗資源太大而無(wú)法將同步模塊和接收部分的其他模塊集成在一片芯片中。本文參考IEEE 802.16d物理層幀結(jié)構(gòu),提出了一種低復(fù)雜度的幀同步和定時(shí)同步聯(lián)合算法,該算法可在FPGA上利用較少資源來(lái)實(shí)現(xiàn)。
1 OFDM中的符號(hào)定時(shí)同步算法
對(duì)于定時(shí)同步算法的研究,總體上可以分為兩類:第一類是依靠OFDM固有的結(jié)構(gòu),如利用OFDM符號(hào)周期性前綴CP的方法,這通常被稱作循環(huán)前綴同步方法;第二類是利用OFDM中插入導(dǎo)頻或者訓(xùn)練符號(hào)的方法。在兩類同步方法中,第一類方法中最具代表性的是Beek提出的最大似然估計(jì)法,其優(yōu)點(diǎn)是不需要額外的開(kāi)銷,可以提高通信的效率,但其缺點(diǎn)是估計(jì)的時(shí)間較長(zhǎng),而且對(duì)頻偏和噪聲比較敏感;第二類方法中最具代表性的是Schmidl和Cox提出的利用PN序列相關(guān)性的SCA算法,這一種算法受頻偏的影響較小,而且估計(jì)的時(shí)間相對(duì)比較短,非常適合用于突發(fā)通信系統(tǒng)。
2 適合802.16d的定時(shí)同步算法
IEEE 802.16d定義了一組特殊的訓(xùn)練符號(hào),以用于同步和信道估計(jì)。這組特殊的訓(xùn)練符號(hào)包括短訓(xùn)練序列和長(zhǎng)訓(xùn)練序列兩部分,其中短訓(xùn)練序列包括4個(gè)重復(fù)的 64點(diǎn)數(shù)據(jù)加上循環(huán)前綴(CP);長(zhǎng)訓(xùn)練序列包括兩個(gè)重復(fù)的128點(diǎn)數(shù)據(jù)加上循環(huán)前綴。在發(fā)射端,若干OFDM符號(hào)再加上短訓(xùn)練序列和長(zhǎng)訓(xùn)練序列,所構(gòu)成的幀頭經(jīng)過(guò)發(fā)送濾波器和A/D轉(zhuǎn)換,再通過(guò)上變頻后,即可發(fā)送到信道中。而在接收端,則利用幀頭的訓(xùn)練序列來(lái)進(jìn)行同步。為了使定時(shí)同步不受頻偏的影響,同時(shí)可以在較短時(shí)間內(nèi)完成,本文采用SCA算法。該算法又可細(xì)分為延時(shí)自相關(guān)算法和本地序列互相關(guān)算法兩類。
2.1 延時(shí)自相關(guān)法
通常選用短訓(xùn)練序列來(lái)進(jìn)行定時(shí)同步。假設(shè)接收到的基帶數(shù)字序列為rn,n是該序列的序號(hào),然后將接收序列經(jīng)過(guò)兩個(gè)滑動(dòng)窗口R和P,其中R是接收信號(hào)和接收信號(hào)延時(shí)的互相關(guān)系數(shù),P是互相關(guān)系數(shù)窗口期間接收信號(hào)的能量,此窗口的值可用于判決的歸一化,它和接收功率的絕對(duì)值是獨(dú)立的,其公式如下:
公式
式中,N為窗口長(zhǎng)度,N=64,即短訓(xùn)練序列的周期,d在窗內(nèi)滑動(dòng)時(shí),可同時(shí)計(jì)算M(n)的值。當(dāng)沒(méi)有包含前導(dǎo)字結(jié)構(gòu)的信號(hào)出現(xiàn)時(shí),得到的M (n)值通常非常小(遠(yuǎn)小于1),而當(dāng)有前導(dǎo)字結(jié)構(gòu)的信號(hào)出現(xiàn)時(shí),相應(yīng)的M(n)值迅速升高,并將出現(xiàn)一個(gè)臺(tái)階,對(duì)應(yīng)的峰值接近于1。由于M(n)值升高需要一個(gè)時(shí)間范圍,因此該算法并不能精確定時(shí),只適合粗略的檢測(cè)幀是否到達(dá)。圖1所示的虛線即表示信號(hào)出現(xiàn)時(shí)M(n)曲線的變化情況。
10dB SNR時(shí)的仿真曲線
2.2 互相關(guān)法
由于IEEE 802.16d協(xié)議中的前導(dǎo)字具有良好的互相關(guān)特性,故可用已知的訓(xùn)練序列和接收序列做滑動(dòng)互相關(guān)。當(dāng)已知的訓(xùn)練序列和接收的訓(xùn)練序列恰好對(duì)齊時(shí),便會(huì)產(chǎn)生一個(gè)峰值,峰值對(duì)準(zhǔn)的位置正是訓(xùn)練符號(hào)的起始點(diǎn)。因此,可以通過(guò)尋找互相關(guān)的峰值位置來(lái)做精確的定時(shí)同步。算法公式如下:
公式
式中,c(n)為短訓(xùn)練符號(hào)在本地的復(fù)制樣本,N為短訓(xùn)練符號(hào)的樣值點(diǎn)數(shù)。當(dāng)已知的訓(xùn)練序列和接收訓(xùn)練序列恰好對(duì)齊時(shí),也會(huì)產(chǎn)生一個(gè)峰值,其仿真曲線如圖1中的實(shí)曲線所示。該算法的缺點(diǎn)是易受頻偏的影響。
根據(jù)以上分析,并從算法性能上考慮,若采用延遲自相關(guān)法,幀到達(dá)時(shí)會(huì)出現(xiàn)一個(gè)峰值平臺(tái),該方法并不能確定幀到達(dá)的準(zhǔn)確時(shí)刻;而采用與本地序列互相關(guān)算法又容易受到頻偏的影響而導(dǎo)致定時(shí)偏差。
3 算法改進(jìn)
針對(duì)上述算法的不足,可對(duì)其加以改進(jìn),以保證同時(shí)具有良好的性能和硬件實(shí)現(xiàn)的可行性。改進(jìn)算法是將兩種算法結(jié)合起來(lái)進(jìn)行聯(lián)合估計(jì),首先確定一個(gè)幀到達(dá)的大致平臺(tái),再在這個(gè)平臺(tái)內(nèi)找到互相關(guān)峰值,如果各個(gè)峰值間隔相等,那么可根據(jù)最后一個(gè)峰值來(lái)判斷下一個(gè)符號(hào)的開(kāi)始。這種聯(lián)合估計(jì)的辦法在軟件仿真時(shí)具有良好的性能,但若要在硬件上實(shí)現(xiàn)則比較困難。因?yàn)樵谘訒r(shí)自相關(guān)算法中,計(jì)算M(n)的值雖然可采用迭代算法,每次計(jì)算只需1次復(fù)數(shù)運(yùn)算和若干加法運(yùn)算;但在自相關(guān)計(jì)算中,假設(shè)接收信號(hào)被定點(diǎn)化為16位整數(shù),那么計(jì)算一次自相關(guān)的值需要16位數(shù)據(jù)的64次復(fù)數(shù)乘法,顯然,所需要的硬件資源開(kāi)銷非常大,而且會(huì)影響系統(tǒng)的運(yùn)行速度。這在硬件上,因資源消耗太大而無(wú)法實(shí)現(xiàn)。為了兼顧算法的估計(jì)精度和實(shí)現(xiàn)的復(fù)雜性,有必要將算法做進(jìn)一步改進(jìn)。即對(duì)接收數(shù)據(jù)進(jìn)行二階量化以得到d[n]=Q[r(n)],其中Q表示復(fù)數(shù)量化器,見(jiàn)下式:
公式