李湘魯
(中國工程物理研究院電子工程研究所,四川綿陽621900)
載波恢復(fù)是數(shù)字通信調(diào)制解調(diào)器中一個(gè)關(guān)鍵組成部分,特別是在有大范圍載波頻率偏差的數(shù)據(jù)傳輸系統(tǒng)中,更需要有頻率跟蹤控制環(huán)路輔助載波相位跟蹤環(huán)路。首先提出一種用于MPSK信號的適應(yīng)大頻偏的快速傅里葉變換(FFT)載波頻偏估計(jì)器結(jié)構(gòu),無需輔助數(shù)據(jù)(NDA),能直接檢測得到載波頻偏絕對值大小。同時(shí)給出一種適合MPSK信號的通用鎖相環(huán)結(jié)構(gòu)。具體介紹FFT載波頻偏估計(jì)器與通用鎖相環(huán)在FPGA中的實(shí)現(xiàn)過程,并給出硬件實(shí)現(xiàn)結(jié)果和具體性能。
MPSK(多相移鍵控)調(diào)制信號在無線通信系統(tǒng)中有著廣泛的應(yīng)用,因此研究其載波恢復(fù)方法具有普遍的意義。在工程應(yīng)用中常首先用最大似然頻率估計(jì)法將絕對頻率縮小到一定范圍后采用鎖相環(huán)進(jìn)行精確載波同步,本文也采用同樣的思路。
在信噪比足夠高時(shí)最大似然頻率估計(jì)是無偏的,同時(shí)也有非線性估計(jì)器所共有的門限效應(yīng):即在信噪比低于某個(gè)門限時(shí),均方估計(jì)誤差上升很快。而在門限以上,均方估計(jì)誤差可以達(dá)到Cramer-Rao限[1]。最大似然估計(jì)的均方誤差除了在極靠近邊帶的地方之外,均與實(shí)際頻率無關(guān)。FFT算法可以看成是最大似然估計(jì)的逼近。
假設(shè)位定時(shí)已知,用于計(jì)算的樣點(diǎn)從匹配濾波器之后提取,每符號提取一個(gè)最佳采樣點(diǎn);匹配濾波器沖激響應(yīng)滿足奈奎斯特?zé)o碼間串?dāng)_采樣定理[2]。匹配濾波后的輸入信號可以表示為:

式中,P為信號功率;dn為調(diào)制數(shù)據(jù),Δf為頻偏絕對值;Ts為符號周期;φ0為載波初始相位;zn為高斯噪聲。
提出的MPSK信號載波同步整體結(jié)構(gòu)如圖1所示。

圖1 MPSK載波同步結(jié)構(gòu)
圖1中,MPSK載波同步結(jié)構(gòu)包括數(shù)字下變頻、FFT頻率估計(jì)模塊、通用鎖相環(huán)相位跟蹤模塊和NCO控制模塊等。
FFT頻率估計(jì)部分首先要將已調(diào)制信號疊加在未調(diào)載波上的調(diào)制相位去除,因此,第1步就要去調(diào)制。去調(diào)制后要將去調(diào)制后的相位映射到同相和正交分量上。將2個(gè)分量送入FFT處理器中,選擇最大值的位置。最后根據(jù)采樣頻率和FFT計(jì)算點(diǎn)數(shù)將最大值映射到實(shí)際的頻率值。
頻偏導(dǎo)致未調(diào)載波的相位以每符號2πΔfTs速率變化,為了得到頻偏估計(jì)值就必須去除數(shù)據(jù)調(diào)制的影響以得到未調(diào)載波。去調(diào)制可以分為DA和NDA兩種方法,其中DA方法一般用于有前導(dǎo)碼字的系統(tǒng),NDA方法一般采用模2π/M和M次方法。本文中采用了M次方法,有

式中,θn為調(diào)制數(shù)據(jù)相位;Vn為等效相位噪聲。因?yàn)?θn為 2π/M的整數(shù)倍,將r′n的相位模 2π是不影響相位值運(yùn)算,可以得到:

將去調(diào)制之后的信號送入FFT模塊中,再通過搜索FFT輸出信號的最大值所在位置即可推算出絕對頻偏的大小。
通過FFT頻偏估計(jì)算法得到頻偏估計(jì)值并輸入數(shù)控振蕩器(NCO)之后,就可以使用鎖相環(huán)對載波相位進(jìn)行精確跟蹤以提高解調(diào)精度。為適應(yīng)多種PSK調(diào)制體制需求,采用一種通用鎖相環(huán)對MPSK信號進(jìn)行相差檢測。該通用鎖相環(huán)鑒相特征函數(shù)如下[3]:

可見該鎖相環(huán)鑒相過程僅需要與非門異或器、加法器和多電平限幅器非常適合FPGA實(shí)現(xiàn)。通過對調(diào)制樣式的選擇可以對多電平限幅器進(jìn)行定義,就可用于對BPSK、QPSK、8PSK等多種調(diào)制信號的載波同步。
通過介紹MPSK信號載波同步原理,下面主要介紹如何通過FPGA來實(shí)現(xiàn)載波同步兩大主要模塊,即FFT頻率估計(jì)模塊與通用鎖相環(huán)模塊。下面以QPSK信號為例進(jìn)行分析。
2.1.1 去調(diào)制模塊
去調(diào)制可以使用2種方法來實(shí)現(xiàn):①通過反正弦求取每個(gè)符號的相位值,反正弦函數(shù)可通過查表法計(jì)算。本方法運(yùn)算量很小,對硬件要求較低,但是由于反正弦函數(shù)在不同的取值范圍內(nèi),變化速率變化很大,如果查找表的內(nèi)容采用線性計(jì)算方式,那么查找表的尺寸將很大。如果要將查找表的尺寸壓縮到可接受的程度,那么其精確度又是不能接受的,故具有一定局限性;②直接采用復(fù)數(shù)乘法器進(jìn)行M次方運(yùn)算將I/Q數(shù)據(jù)去調(diào)制,該方法運(yùn)算量較大,對硬件要求較高,但精度較高。本文采用第2種方法,復(fù)數(shù)乘法器可以自己搭建或采用Xilinx公司提供的復(fù)數(shù)乘法器IP核。
2.1.2 FFT處理模塊
FFT處理模塊是頻率估計(jì)模塊的核心部件,本文中采用Xilinx公司提供的FFT v5.0 IP核來實(shí)現(xiàn)。考慮到硬件實(shí)際情況與測頻精度要求,確定FFT點(diǎn)數(shù)為4 096點(diǎn),輸入輸出位數(shù)均為16位。為減少對硬核乘法器(DSP 48s)的使用量,FFT IP核設(shè)置為Radix-2 Burst I/O模式。為了方便后續(xù)對FFT輸出信號的最大值所在位置進(jìn)行搜索,將“Output Ordering”選項(xiàng)設(shè)置為“Natural Order”。
2.1.3 搜索最大值與頻率映射
在FFT運(yùn)算完成之后,就得到4 096組輸出信號(實(shí)部與虛部)以及對應(yīng)的INDEX值,將輸出信號進(jìn)行取模運(yùn)算之后得到FFT運(yùn)算的絕對值,再通過搜索4 096個(gè)絕對值中的最大值就可得到FFT譜線峰值所對應(yīng)的INDEX值。記該最大INDEX值為N,FFT IP核的采樣時(shí)鐘為fs,可以得到實(shí)際頻偏計(jì)算公式為:

式中,乘以1/4是因?yàn)獒槍PSK信號做的去調(diào)制時(shí)引入4倍數(shù)關(guān)系。
鎖相環(huán)一般都由鑒相器、環(huán)路濾波器與數(shù)控振蕩器3部分組成。本文中數(shù)控振蕩器分別為FFT測頻模塊與鎖相環(huán)模塊共用。主要介紹前2部分實(shí)現(xiàn)要點(diǎn)。
其中鑒相器部分實(shí)現(xiàn)結(jié)構(gòu)在上面已詳細(xì)介紹,需要注意的是針對不同的調(diào)制體制選取不同電平幅度。環(huán)路濾波器的結(jié)構(gòu)已有很多文章詳細(xì)說明,這里就不贅述。主要工作是設(shè)計(jì)合理的環(huán)路濾波器帶寬,本文中的FFT測頻模塊的頻偏估計(jì)精度是與采樣率掛鉤的,以采樣率為4倍符號率為例,則估計(jì)出的頻偏為符號率的千分之一以內(nèi)。以此為依據(jù),設(shè)計(jì)捕獲能力為符號率的1/1000到1/500的鎖相環(huán)即可滿足要求。
要實(shí)現(xiàn)MPSK信號載波同步,下變頻模塊是不可或缺的。通常下變頻模塊由混頻器、CIC濾波器、半帶濾波器和數(shù)控振蕩器(NCO)等組成。在工程中既可使用FPGA來實(shí)現(xiàn),也可以使用專用DDC芯片,如ISL5416、GC5016等來實(shí)現(xiàn)。這里采用FPGA來實(shí)現(xiàn),DDC模塊中各個(gè)組件的設(shè)計(jì)實(shí)現(xiàn)方法也有較多文章論述,這里不再闡述。
由于FFT測頻模塊產(chǎn)生的頻控字(FW)與通用鎖相環(huán)模塊產(chǎn)生的相控字(PW)均要控制下變頻模塊中的NCO,如何控制好二者發(fā)送順序就很關(guān)鍵。本文中是通過FFT測頻模塊檢測到輸入信號頻偏值大于一定門限時(shí)就發(fā)送頻控字,小于門限時(shí)發(fā)送相控字。還以采樣率為4倍符號率為例,檢測當(dāng)輸入信號頻偏大于1/1000的符號率時(shí)就發(fā)送頻控字,直到檢測到頻偏小于1/1000的符號率時(shí)才發(fā)相控字。
整個(gè)MPSK信號載波同步電路主要分為FFT頻率估計(jì)、通用鎖相環(huán)、命令字發(fā)送控制與數(shù)字下變頻4個(gè)模塊:使用ISE開發(fā)軟件,本電路在Xilinx公司的Virtex4系列芯片的XC4VLX200上實(shí)現(xiàn),對碼速率Rb=2 Mbps的QPSK信號在信噪比SNR=5 dB的條件下測量載波頻率,FFT模塊估計(jì)的載波頻率值平均誤差為0.21%,最大誤差為0.35%,具體數(shù)據(jù)如表1所示。經(jīng)過測試表明,在信噪比大于2 dB的情況下FFT模塊可以正常工作,當(dāng)信噪比低于2 dB后FFT測頻性能很快惡化。

表1 FFT頻率頻率估計(jì)表
本載波同步電路使用Virtex4系列XC4VLX200芯片進(jìn)行綜合,使用了Slice 11020個(gè)占全部的6%,硬核乘法器Dsp48s使用24個(gè),RAMB16s資源使用30個(gè)占全部8%。整個(gè)電路可以工作到128.9MHz。
針對MPSK信號提出一種適合多體制的通用載波同步方案,介紹其主要原理與關(guān)鍵模塊設(shè)計(jì)方法,并利用FPGA開發(fā)軟件通過硬件加以實(shí)現(xiàn)。通過測試,該載波同步電路具有適應(yīng)較大頻偏變化范圍、較低信噪比、占用硬件資源較少等良好特性,并已應(yīng)用于某通用數(shù)字解調(diào)設(shè)備中。
[1]RIFE D,BOOR STYN R.Single-tone Parameter Estimation from Discrete-time Observations[J].IEEE Trans on Information Theory,1974,20(5):591-598.
[2]葉淦華,張邦寧.基于FFT的校頻技術(shù)及其FPGA實(shí)現(xiàn)[J].電子工程師,2007,33(2):31-34.
[3]FILIP M,PANG K H.Simulation of a Universal Base-band Carrier Recovery Loop[J].New Synchronisation Techniques for Radio Systems,IEE Colloquium on,1995(11):51-56.