顧圣明,陳麗婷,陳建斌
(上海航天電子技術(shù)研究所,上海 201109)
高斯最小頻移鍵控(GMSK)調(diào)制屬于連續(xù)相位調(diào)制[1-2],具有很好的頻譜性能和恒包絡(luò)特性。這2種特性使得GMSK調(diào)制在遙控遙測(cè)領(lǐng)域的應(yīng)用也日益廣泛。目前,中國(guó)大多數(shù)的脈沖編碼調(diào)制-調(diào)頻(PCM-FM)體制遙測(cè)系統(tǒng)的碼率都不超過(guò)2 Mbps[3],少數(shù)靶場(chǎng)開始配備10 Mbps碼率的GMSK體制遙測(cè)系統(tǒng)。但面對(duì)越來(lái)越高的遙測(cè)傳輸需求,提高GMSK體制遙測(cè)系統(tǒng)的傳輸速率迫在眉睫。通常,限制遙測(cè)系統(tǒng)碼速率的有硬件平臺(tái)性能以及位同步所需的過(guò)采樣率,文獻(xiàn)[4]針對(duì)GMSK系統(tǒng)提出了一種簡(jiǎn)單的位同步開環(huán)算法,結(jié)構(gòu)簡(jiǎn)單,但其需要16倍乃至更高的過(guò)采樣率,且同步性能一般。文獻(xiàn)[5]中提出了一種快速捕獲的位同步器,主要通過(guò)超前滯后信息來(lái)完成時(shí)鐘的“添扣”,達(dá)到同步目的,但其精度取決于環(huán)路分頻即過(guò)采樣率,同樣限制了傳輸速率。文獻(xiàn)[6]提出了一種針對(duì)脈沖成型波形的位同步方法,在接收端進(jìn)行匹配濾波來(lái)提取位同步時(shí)鐘,復(fù)雜度低,但只適用于高倍采樣系統(tǒng)中??梢钥闯?,目前大多數(shù)遙測(cè)系統(tǒng)仍通過(guò)資源換性能的方法,以高倍采樣率來(lái)完成高精度的位同步。本文利用Gardner算法,以低倍采樣率來(lái)完成位同步,在保證相同誤碼率的條件下提升GMSK信號(hào)傳輸?shù)乃俾?。Gardner算法是利用內(nèi)插法來(lái)實(shí)現(xiàn)位同步的方法,通過(guò)定時(shí)環(huán)路調(diào)整內(nèi)插濾波器的位置參數(shù)來(lái)找到最佳的內(nèi)插位置,從而恢復(fù)位同步信號(hào),主要優(yōu)點(diǎn)在于不需要調(diào)整本地時(shí)鐘,直接數(shù)字處理便可獲得同步時(shí)鐘以及最佳采樣點(diǎn)判決信息。本文將Gardner算法應(yīng)用于GMSK體制中,給出其改進(jìn)結(jié)構(gòu)和程序設(shè)計(jì),并進(jìn)行仿真和實(shí)際測(cè)試,最終給出其在GMSK體制中20 Mbps碼率下的測(cè)試結(jié)果。
如文獻(xiàn)[7-9]中所述,Gardner算法的實(shí)現(xiàn)流程如圖1所示,主要由4部分組成:內(nèi)插濾波器、環(huán)路濾波器、控制器和定時(shí)誤差檢測(cè)器,在不改變本地時(shí)鐘的同時(shí)能夠?qū)崿F(xiàn)位同步。同步過(guò)程如下:接收端以本地時(shí)鐘Ts對(duì)接收信號(hào)重新采樣,送入內(nèi)插濾波器進(jìn)行內(nèi)插值的計(jì)算,計(jì)算出的結(jié)果送入定時(shí)誤差檢測(cè)器進(jìn)行誤差檢測(cè),并送入環(huán)路濾波器濾除帶外噪聲,環(huán)路濾波器的輸出送入NCO控制器計(jì)算內(nèi)插基點(diǎn)和分?jǐn)?shù)間隔,進(jìn)行下次內(nèi)插位置的調(diào)整,如此循環(huán)往復(fù),從而在最佳采樣時(shí)刻內(nèi)插出準(zhǔn)確的判決值,即滿足位同步條件時(shí)的采樣值。
圖1 Gardner算法的實(shí)現(xiàn)流程
1.2.1 內(nèi)插濾波器設(shè)計(jì)
內(nèi)插濾波器[10]是Gardner算法的核心。內(nèi)插濾波器的作用可以理解為重構(gòu)后重采樣,也就是從離散信號(hào)理想地重構(gòu)出連續(xù)信號(hào)y(t),再用另一個(gè)不同速率或不同初始時(shí)刻重新采樣。
從采樣x(mTs)恢復(fù)原連續(xù)信號(hào)
(1)
再對(duì)其進(jìn)行重采樣,可以得到
(2)
(3)
(4)
式中,μk為計(jì)算出的分?jǐn)?shù)間隔,決定內(nèi)插濾波器的系數(shù)大??;mk為插值位置的基點(diǎn),決定由哪幾個(gè)位置的采樣點(diǎn)計(jì)算出內(nèi)插值;kTi和μk的信息由內(nèi)部控制器給出。輸入與輸出的采樣時(shí)刻關(guān)系如圖2所示。
圖2 輸入與輸出的采樣時(shí)刻關(guān)系
從式(4)可以看出,插值輸出就是采樣點(diǎn)的線性加權(quán)和。而且實(shí)際上不需要對(duì)連續(xù)信號(hào)完全重構(gòu),可以直接從非同步采樣到同步采樣值。式(4)是無(wú)窮項(xiàng)的加權(quán)求和,實(shí)際上做不到?jīng)]有誤差的理想插值,只能用有限階的濾波器來(lái)實(shí)現(xiàn),即
(5)
式中,μk可以取到0-1之間的所有值,對(duì)不同的μk實(shí)時(shí)計(jì)算sinc函數(shù)在硬件上難以實(shí)現(xiàn),因此用多項(xiàng)式對(duì)理想加權(quán)系數(shù)進(jìn)行逼近,即
(6)
顯然,階數(shù)取得越大,逼近效果越好??紤]到資源和平衡,本設(shè)計(jì)采用分段拋物線式濾波器[11],根據(jù)文獻(xiàn)[12],α=0.5時(shí)濾波器具有較好的性能,即
(7)
式中,
(8)
1.2.2 定時(shí)誤差檢測(cè)器設(shè)計(jì)
定時(shí)誤差檢測(cè)算法對(duì)位同步整體性能起決定性作用。本設(shè)計(jì)采用GA-TED[13]算法,該算法獨(dú)立于信號(hào)速率,提取出的定時(shí)誤差可以表示為:
(9)
式中,相鄰碼元差值表示誤差正負(fù)即方向,碼元中間采樣時(shí)刻的值代表誤差大小。本設(shè)計(jì)中,用y(n)和y(n-1)的符號(hào)代替實(shí)際值,來(lái)表示誤差的方向,即
(10)
采用式(10)可以消除大部分噪聲的影響,并且可以避免乘法運(yùn)算,有利于數(shù)字系統(tǒng)的實(shí)現(xiàn)。
1.2.3 環(huán)路濾波器設(shè)計(jì)
本文對(duì)Gardner算法中的環(huán)路濾波器進(jìn)行了修改,采用二階環(huán)路濾波器[14],具有比較好的跟蹤性能。濾波器采用文獻(xiàn)[15]中所述的結(jié)構(gòu),如圖3所示。
圖3 環(huán)路濾波器結(jié)構(gòu)
其在Z域上的傳遞函數(shù)為:
(11)
式中,k1=2ξωn/(K*Rs);k2=(ωn)2/(K*R2s);一般來(lái)說(shuō),阻尼系數(shù)ξ取0.707;ωn為環(huán)路的自然角頻率;ωn=4ξBL/(4ξ2+1);BL為環(huán)路帶寬,對(duì)環(huán)路同步速度和精度都有影響。環(huán)路增益K=KdKo;Kd為鑒相器增益;Ko為NCO的增益。對(duì)上式進(jìn)行反變換,就可以得到環(huán)路濾波器的時(shí)域方程:
y(n)=y(n-1)+k1[x(n)-x(n-1)]+k2x(n) 。
(12)
另外,本設(shè)計(jì)中開放濾波器參數(shù)k1,k2接口,如果碼元速率變化,NCO參數(shù)可以隨之變化,實(shí)現(xiàn)跟蹤。
1.2.4 NCO控制器
Gardner環(huán)的控制器主要由NCO以及分?jǐn)?shù)間隔計(jì)數(shù)器組成。NCO起到一個(gè)累減器的功能,0~1累減并給出溢出信號(hào),即確定內(nèi)插基點(diǎn)位置mk。分?jǐn)?shù)間隔計(jì)數(shù)器計(jì)算出分?jǐn)?shù)間隔μk,作為內(nèi)插基點(diǎn)后所需要的更精確的位置信息,從而找到最佳采樣值。下面給出累減器的差分公式:
ηmk=[ηmk-1-w(mk-1)]mod(1) ,
(13)
式中,ηmk為第mk個(gè)時(shí)鐘時(shí)寄存器的值;w(mk)為第mk個(gè)時(shí)鐘時(shí)的控制字(環(huán)路濾波器輸出;,mk為內(nèi)插基點(diǎn);k為內(nèi)插點(diǎn)的序號(hào);NCO的初值設(shè)為1。隨著采樣時(shí)鐘進(jìn)行遞減,到零時(shí)得到內(nèi)插時(shí)鐘,確定內(nèi)插基點(diǎn),然后開始計(jì)算它的分?jǐn)?shù)間隔μk。當(dāng)環(huán)路穩(wěn)定時(shí),w(mk)就是一個(gè)固定值,每隔1/w(mk)個(gè)周期就會(huì)產(chǎn)生一次溢出,而控制器的工作頻率為1/Ts,內(nèi)插的工作頻率為1/Ti,則穩(wěn)定后w(mk)=Ts/Ti。w(mk)與環(huán)路濾波器的具體關(guān)系為
w(mk+1)=w(mk)+e(mk) ,
(14)
式中,e(mk)即為環(huán)路濾波器的輸出。求得w(mk)就可以求得η(mk+1),如果η(mk+1)得負(fù)值,則說(shuō)明NCO寄存器溢出,此時(shí)的mk即為內(nèi)插基點(diǎn),此時(shí)計(jì)算出相應(yīng)的分?jǐn)?shù)間隔μk,并讓插值濾波器進(jìn)行一次內(nèi)插操作。μk的計(jì)算關(guān)系如圖4所示。
圖4 內(nèi)插間隔的計(jì)算示意圖
根據(jù)圖4三角形的相似關(guān)系可得:
(15)
(16)
以上就得到了信號(hào)的內(nèi)插基點(diǎn)和分?jǐn)?shù)間隔。
本設(shè)計(jì)是將Gardner算法應(yīng)用于GMSK體制信號(hào)傳輸中,即對(duì)GMSK解調(diào)后的基帶碼元做位同步設(shè)計(jì)。GMSK體制的解調(diào)模塊采用文獻(xiàn)[16]的設(shè)計(jì),即GMSK調(diào)制信號(hào)經(jīng)過(guò)維特比解調(diào)后輸出基帶碼元。經(jīng)調(diào)查,文獻(xiàn)[16]采用的是利用超前滯后信息來(lái)添扣時(shí)鐘的位同步方法,需要16倍的過(guò)采樣率來(lái)保證提取精度,如果要實(shí)現(xiàn)20 Mbps碼速率的傳輸,其硬件平臺(tái)需提供320 MHz的采樣時(shí)鐘,對(duì)硬件性能要求比較高,因此限制了其碼元速率為10 Mbps。
本設(shè)計(jì)旨在利用Gardner同步算法降低過(guò)采樣率需求,從而提升傳輸碼速率。在文獻(xiàn)[16]中,GMSK解調(diào)后的輸出碼元為不均勻采樣的01碼元,以4倍采樣率為例,輸出的碼元大部分為4個(gè)采樣點(diǎn)的碼元,少部分為3個(gè)或5個(gè)采樣點(diǎn)的碼元,即存在采樣偏移,而Gardner算法則是要從這樣的碼元中找到最佳采樣時(shí)刻的判決信息。Gardner算法作用示意圖如圖5所示。
圖5 Gardner算法作用示意圖
在Matlab中模擬出GMSK解調(diào)模塊輸出的碼元并用Gardner算法對(duì)其進(jìn)行位同步,仿真結(jié)果如圖6所示??梢钥闯?,當(dāng)存在3個(gè)或5個(gè)采樣點(diǎn)的時(shí)候,分?jǐn)?shù)間隔會(huì)進(jìn)行對(duì)應(yīng)調(diào)整,偏移內(nèi)插基點(diǎn),最終找到最佳采樣時(shí)刻的判決信息。圖中仿真了1 500個(gè)碼元,分?jǐn)?shù)間隔輸出為3 000個(gè)點(diǎn),定時(shí)誤差和環(huán)路濾波輸出為1 500個(gè)點(diǎn),正對(duì)應(yīng)于每個(gè)碼元內(nèi)插出2個(gè)采樣點(diǎn),并輸出一個(gè)定時(shí)誤差間隔。經(jīng)過(guò)長(zhǎng)時(shí)間測(cè)試,Gardner位同步模塊的誤碼率為0,性能可靠。
圖6 Gardner算法的Matlab仿真圖
根據(jù)1.2節(jié)的設(shè)計(jì)原理,對(duì)Gardner算法進(jìn)行Verilog設(shè)計(jì),F(xiàn)PGA采用Xilinx公司K7系列的XC7K160T芯片。GMSK解調(diào)模塊和Gardner位同步器FPGA設(shè)計(jì)的頂層圖如圖7和圖8所示,GMSK解調(diào)出的基帶碼元信號(hào)送到Gardner位同步模塊進(jìn)行同步。
圖7 GMSK解調(diào)模塊頂層設(shè)計(jì)
圖8 Gardner位同步模塊頂層設(shè)計(jì)
可以看到,Gardner模塊分為內(nèi)插濾波器、控制器、定時(shí)誤差檢測(cè)器以及環(huán)路濾波器4個(gè)模塊,最終輸出判決碼元信息,其中,內(nèi)插濾波器使用分段拋物線式濾波器,占用了9個(gè)加法器和3個(gè)乘法器,占用資源很少。另外,程序中除以2的運(yùn)算都采用移位實(shí)現(xiàn),避免使用除法器,所有變量的寄存器經(jīng)過(guò)計(jì)算后均采用最小位數(shù),有效減少了Logic Elements資源的占用。
仿真在Xilinx ISE環(huán)境下進(jìn)行,基帶信號(hào)由Matlab的Binary generator產(chǎn)生,將碼速率設(shè)置為10~20 Mbps,NCO及環(huán)路濾波器做相應(yīng)設(shè)置,不同碼速率仿真出的波形基本相同,僅存在采樣速率上的差別,恰巧說(shuō)明了Gardner算法對(duì)不同速率的基帶信號(hào)均能很好地提取位同步信號(hào)。仿真結(jié)果如圖9所示??梢钥吹剑c第3章中Matlab仿真結(jié)果一致,Gardner算法在存在采樣偏移的碼元處進(jìn)行內(nèi)插位置的調(diào)整,從而找到最佳采樣時(shí)刻。
圖9 Gardner算法Modelsim仿真結(jié)果
根據(jù)設(shè)計(jì)要求,同時(shí)對(duì)Gardner算法的同步范圍進(jìn)行了測(cè)試,同步范圍測(cè)試即對(duì)存在采樣率偏移的基帶信號(hào),用相同的時(shí)鐘,濾波器參數(shù)等對(duì)其進(jìn)行同步,測(cè)試其采樣偏移的允許范圍。
當(dāng)10 Mbps碼速率40 MHz時(shí)鐘均勻采樣的基帶信號(hào)由39.8 MHz時(shí)鐘重新采樣后,Gardner算法對(duì)其位同步所得到的仿真圖如圖10所示??梢园l(fā)現(xiàn),誤差間隔μ按一定周期規(guī)律進(jìn)行調(diào)整,原因則在于此時(shí)的基帶碼元存在周期性的采樣偏移,由此可知,Gardner算法仍然能有效工作。經(jīng)測(cè)試,Gardner算法能夠允許的采樣偏移為±1.5%(以此40 MHz數(shù)據(jù)為例,同步范圍為39.4~40.6 MHz),在此范圍內(nèi),Gardner算法均能準(zhǔn)確無(wú)誤碼地提取位同步信號(hào)。
圖10 存在采樣偏移時(shí)Gardner算法的Modelsim仿真結(jié)果
本設(shè)計(jì)中用于實(shí)際測(cè)試的遙測(cè)系統(tǒng)為以AD9361+FPGA為基礎(chǔ)構(gòu)成的軟件無(wú)線電平臺(tái)[17-18],如圖11所示。GMSK調(diào)制信號(hào)由RS公司的SMW200A射頻信號(hào)源給出,AD9361將射頻信號(hào)搬移到零頻送給FPGA進(jìn)行GMSK解調(diào)以及本設(shè)計(jì)中的Gardner位同步,同步后的碼元送入實(shí)時(shí)軟件進(jìn)行碼元對(duì)比,測(cè)試誤碼率。
圖11 AD9361+FPGA的軟件無(wú)線電平臺(tái)
信號(hào)源輸出的信號(hào)為20 Mbps 碼速率100 MHz采樣率的 GMSK 信號(hào),其中頻載波為390 MHz,碼元序列采用的是 EB90測(cè)試序列。Gardner 碼同步器的環(huán)路濾波器的參數(shù)分別為1.3×10-3和8.9×10-7。
測(cè)試過(guò)程中,用Chipscope在線邏輯分析儀對(duì)Gardner模塊中的信號(hào)進(jìn)行抓取,驗(yàn)證其是否正常工作。
Chipscope所抓取出的分?jǐn)?shù)誤差間隔μ的工作情況如圖12所示。與之前的仿真結(jié)果一致,分?jǐn)?shù)間隔μ在出現(xiàn)采樣偏移的時(shí)刻會(huì)進(jìn)行內(nèi)插位置的調(diào)整,以獲得最佳采樣時(shí)刻,在沒有采樣偏移的時(shí)刻,μ穩(wěn)定在0.5附近進(jìn)行均勻內(nèi)插。
圖12 硬件測(cè)試時(shí)Gardner算法工作情況
Gardner位同步的輸出如圖13所示。其中,sdin信號(hào)即為判決出的碼元序列,temp1為其16進(jìn)制表示,cmpeb90為檢測(cè)到EB90幀頭所輸出的同步信號(hào),經(jīng)過(guò)對(duì)比,可以發(fā)現(xiàn)其波形與信號(hào)源中設(shè)置的 EB90的Datasource完全相同,Gardner位同步模塊正確找到了所有碼元的判決信息。
圖13 硬件測(cè)試時(shí)Gardner同步模塊的輸出
最后,對(duì)此GMSK體制信號(hào)傳輸系統(tǒng)進(jìn)行誤碼率測(cè)試,在低信噪比環(huán)境下驗(yàn)證其傳輸性能,測(cè)試結(jié)果如圖14所示。可以發(fā)現(xiàn),與維特比的理論解調(diào)值僅有0.5 dB的損失,此結(jié)果也與文獻(xiàn)[16]中的誤碼率一致,說(shuō)明在碼速率提升至20 Mbps的情況下,采用了Gardner位同步算法的GMSK體制在相同誤碼率的情況下沒有造成信噪比的損失,Gardner算法準(zhǔn)確找到了所有碼元的判決信息。
圖14 GMSK誤碼率測(cè)試曲線
本文主要研究并實(shí)現(xiàn)了Gardner同步算法在GMSK體制高速通信處理中的應(yīng)用。研究和實(shí)驗(yàn)表明,在原有GMSK體制的解調(diào)平臺(tái)下(通信速率10 Mbps),通過(guò)采用Gardner位同步算法,降低了同步采樣率,將系統(tǒng)的通信速率升級(jí)到20 Mbps,提升了系統(tǒng)的性能指標(biāo),降低了軟件設(shè)計(jì)的復(fù)雜度。另外,Gardner算法所表現(xiàn)出的優(yōu)異性能并不受調(diào)制體制限制,可以將其應(yīng)用在其他數(shù)字解調(diào)技術(shù)的位同步中,有利于數(shù)字接收機(jī)的簡(jiǎn)化以及傳輸速率的提升。