張慶順,于凱,張鎖良
(河北大學 電子信息工程學院,河北 保定 071002)
擴頻通信是從軍事通信中發(fā)展起來的一種高性能的通信技術,具有很強的抗窄帶干擾、抗多徑干擾能力,并且具有信息隱蔽、多址保密通信[1]等優(yōu)點,在移動通信和衛(wèi)星通信中得到了廣泛的應用[2-3].在實際的直接序列擴頻通信的信息接收過程中,由于受到由收發(fā)兩端距離的不確定、晶振的不一致、收發(fā)兩端時鐘相位的不同、多普勒效應等引起的頻率的不確定性的影響,所傳遞信息數據會在接收時產生失真現(xiàn)象[4].因此,為了準確的將發(fā)端信息恢復出來,偽碼解擴的同步環(huán)節(jié)成為直接序列擴頻通信中至關重要的一個環(huán)節(jié).偽碼的同步一般分為2個階段,第1個階段捕獲偽碼,即粗同步,在接收機剛開始工作時,在一定的頻率和時間范圍內搜索有用信號,通過調整偽碼時鐘使本地偽碼與發(fā)端偽碼的相位誤差小于1個碼元長度.第2個階段跟蹤偽碼,即細同步,在初始達成同步條件的情況下,持續(xù)地對接收信息進行跟蹤,并對本地的碼相位進行校準,進一步減小收發(fā)2端偽碼相位之間可能存在的相位差,與此同時,繼續(xù)維持本地偽碼與發(fā)端擴頻碼相位的同步狀態(tài).FPGA 器件具有速度快、密度高、功耗低、可配置性強等特點,并且可以簡化系統(tǒng)設計、提高系統(tǒng)的穩(wěn)定性和縮短開發(fā)周期,其最大的特點就是具有高度的靈活性,可以實現(xiàn)想實現(xiàn)的任何數字電路,也可以定制各種電路,而且它強大的邏輯資源和寄存器資源可以讓設計師輕松的去發(fā)揮設計理念.由于其硬件實現(xiàn)的方式是并行執(zhí)行的,因此可以應對設計中大量的高速電子線路設計需求.隨著大規(guī)模集成電路、現(xiàn)場可編程器件的不斷發(fā)展,可以利用大規(guī)?,F(xiàn)場可編程器件來實現(xiàn)高度靈活的數字直接序列擴頻接收機[5-6].針對直接序列擴頻系統(tǒng)中實現(xiàn)擴頻偽碼同步的問題,本系統(tǒng)在延遲鎖相環(huán)的基礎上,結合滑動相關法理論來實現(xiàn)直接序列擴頻系統(tǒng)偽碼的同步算法,并基于 Xilinx 公司的 FPGA芯片加以具體實現(xiàn).
擴頻系統(tǒng)接收端信號可以表示為
(1)
式(1)中Pr是接收信號的功率,D(t)是信息碼,PN(t)是偽碼,n(t)是傳輸過程中的加性噪聲,τd是碼時鐘延遲.擴頻接收端的任務是去除偽碼和載波,然后可以得到有效信息數據D(t).
在直接序列擴頻系統(tǒng)接收端,偽碼的同步技術基于偽碼的高度自相關性,長度為N的m序列的自相關函數可以寫為[5]
(2)
從方程(2)知道,當本地偽碼與發(fā)端擴頻偽碼的相位偏差在1個碼元寬度之內時,2者的相關性可以接近最大,同時接收端信號數據與本地偽碼的相關運算會輸出1個很大的峰值[7],它們的相位偏差越大,相關性越小,即相關值的大小反映了發(fā)端擴頻碼與本地偽碼的對齊程度.
所謂滑動相關法,就是通過對本地偽碼時鐘的調整,使得本地偽碼的相位較發(fā)端擴頻偽碼的相位有一個相對滑動的過程.在此過程中,接收到的信息數據和本地偽碼進行相關運算.當本地擴頻碼和發(fā)端擴頻碼相位誤差小于1個碼元時,即相關累加器輸出相關峰值且通過門限比較,表示完成了偽碼的粗同步.滑動相關法實現(xiàn)過程如圖 1 所示.接收到的信號經過相關處理、積分處理后,積分值給到門限比較器與門限值比較,高于門限值則送往跟蹤模塊處理,否則門限比較器輸出一個信號到偽碼時鐘控制電路中以半個碼元的步長改變本地偽碼的相位,然后重新進行上述過程.滑動相關法是一種最簡單、最實用的捕獲方法.但當接收擴頻碼序列過長或者與本地偽碼失配量很大時,滑動搜索時間可能很長,且解擴后系統(tǒng)的帶寬越窄,捕獲時間就越長.
圖1 滑動相關法Fig.1 Sliding correlation method
當同步系統(tǒng)捕獲到有用信號之后,即收發(fā)端擴頻碼序列相位相差在1個碼元內時,偽碼同步系統(tǒng)轉入細同步階段.當擴頻通信系統(tǒng)受到外界因素而引起收發(fā)2端擴頻碼相位發(fā)生偏移時,偽碼的細同步總能使收端擴頻碼跟蹤發(fā)端擴頻碼的相位,從而來維持同步系統(tǒng)的穩(wěn)定運行.因此,細同步的作用和反饋都是閉環(huán)運行的.當收發(fā)2端偽碼相位產生誤差時,跟蹤環(huán)路總能根據收發(fā)2端擴頻碼的相位誤差進行自動調節(jié)以縮小收發(fā)2端偽碼序列之間的相位誤差.因此,偽碼的跟蹤環(huán)路多采用延遲鎖相技術.
跟蹤環(huán)路可分為相關和非相關2種.在實際的連續(xù)信號擴頻通信系統(tǒng)中,常采用非相關延遲鎖相環(huán)技術[8]來實現(xiàn)偽碼的細同步.圖 2 為一種基于 BPSK 調制的直擴系統(tǒng)擴頻信號的非相關延遲鎖相跟蹤環(huán),由2個并聯(lián)的相關支路構成的鎖相環(huán)路.系統(tǒng)接收到的信號分別和本地2路偽碼進行相關運算,這2路本地偽碼在相位上相差1個位.基于擴頻偽碼的相關特性,輸入信號和本地擴頻偽碼的相關特性應為三角波.又由于2個相關支路的本地擴頻碼在相位上相差1個位,因此2個支路的三角波的峰值也會相差1位,如圖 3 所示,在相關器輸出波形以及合成波形中,可以觀察到,如果收到的信號相對于本地偽碼超前或者滯后,則相應加法器的輸出就會為正電壓或者負電壓,然后此電壓會通過環(huán)路濾波器去影響本地的壓控振蕩器(VCO),從而對產生本地偽碼的碼時鐘進行控制,以調整本地偽碼發(fā)生器產生的本地偽碼相位[9],這就是延遲鎖相環(huán)的基本工作原理.
圖2 延遲鎖相環(huán)Fig.2 Delayed phase locked loop
a.相關器1的相關波形;b.相關器2的相關波形;c.合成的相關波形.圖3 相關器波形Fig.3 Correlator waveform
通過以上原理,可以知道:滑動相關法可以使系統(tǒng)在開始工作的時候搜索有用信號,通過對本地偽碼發(fā)生器時鐘的調整,使本地偽碼相對于接收信息有一個相對滑動的過程,當本地偽碼與發(fā)端擴頻碼相位誤差小于1個碼元時,進行解擴輸出處理,這就實現(xiàn)了對偽碼的粗同步.而當同步系統(tǒng)捕獲到有效信息之后,延遲鎖相環(huán)可以根據超前-滯后信號相位的信息,使本地偽碼在相位上做一個超前或滯后的調整,從而達到本地偽碼跟蹤發(fā)端擴頻碼相位的目的.
延遲鎖相環(huán)不僅能起到跟蹤的作用,如果結合滑動相關法的概念,使本地偽碼相對于接收信號產生一定的滑動,也能起到對擴頻偽碼進行捕獲的作用[3].基于這一想法,在本系統(tǒng)中,結合滑動相關法理論,基于延遲鎖相環(huán)直接來實現(xiàn)直接序列擴頻系統(tǒng)中偽碼的同步.偽碼同步原理如圖 4 所示.
圖4 基于延遲鎖相環(huán)的偽碼同步系統(tǒng)Fig.4 Pseudo-code synchronization system based on delay phase-locked loop
通常,在實際同步系統(tǒng)的實現(xiàn)過程中,為了提高系統(tǒng)的捕獲性能,采用 I、Q 2路來實現(xiàn)擴頻偽碼的同步算法.首先,將系統(tǒng)的接收端收到信號通過正交、同相處理將信號分成 I、Q 2路,然后通過匹配濾波器,將高頻噪聲濾掉,為了減少系統(tǒng)的運算量,取信號的高4位數據,并將高4位數據存于移位寄存器之中.由于偽碼的跟蹤需要產生3路信號,因此使用低倍的時鐘分別對 I、Q 2路信號進行3路采樣,第1路相當于超前路,第2路相當于即時路,第3路相當于滯后路[10].最后,6路采樣信號分別與事先存好的本地偽碼進行相關運算.
在做相關運算時,不再滑動本地偽碼,而是從事先存好的本地偽碼存儲器中直接讀取進行相關運算.I、Q 2路中的即時路信號的相關值用于偽碼的捕獲,它們的平方和作為幅度值,送給門限判決模塊進行門限判決.當某次采樣后,其平方和大于設定的門限值的時候,表明偽碼捕獲成功,輸出解擴結果,并輸出捕獲成功信號使系統(tǒng)進入偽碼跟蹤的狀態(tài).否則,基于滑動相關法的理念以及采樣頻率與信號頻率不同的處理方式,在下一時刻繼續(xù)對移位寄存器相同的地址位置進行重新采樣,直到2個即時路的相關值的平方和大于所設置的門限值,即捕獲成功.
I、Q 2路中的超前、滯后4路信號的相關值用于偽碼的跟蹤.當同步系統(tǒng)收到捕獲成功信號之后,偽碼的同步系統(tǒng)進入跟蹤階段.此時相位誤差提取模塊就會根據其超前、滯后4路信號的相關值來得到相位誤差,來重新確定對移位寄存器采樣的地址位置,這就會使發(fā)端擴頻碼與本地擴頻碼產生了碼相位差,從而使本地偽碼的相位較發(fā)端擴頻碼相位產生相對滑動,并使相關峰不斷趨近于最大值并且維持此狀態(tài),從而達到偽碼跟蹤的目的.
數據存儲單元由移位寄存器構成,在系統(tǒng)時鐘驅動下,接收信號按地址順序存于移位寄存器中.讀取移位寄存器數據的時鐘是做相關運算的計算時鐘,在此速率不是很快的時候,讀取數據寬度也可以擴展為接收數據寬度的整數倍,一次讀取多個接收數據參與相關運算,這樣串行運算變?yōu)榱瞬⑿羞\算,極大提高了數據的處理速度[11].
在此系統(tǒng)實現(xiàn)方案中,為了減小系統(tǒng)處理數據的復雜度,在接收信號中截取了帶一個符號位的高4位數據,然后將數據存儲于移位寄存器之中.由于本地偽碼的時鐘為 10 MHz,發(fā)端采樣后數據頻率是 80 MHz,所以存儲數據的時鐘頻率設置為 80 MHz,采樣時鐘設置為10 MHz.如圖 5 所示,將所截取數據按從 D0 到 D15 的順序存儲于移位寄存器之中,每次間隔地讀取3個移位寄存器地址的數據.由于采樣時鐘頻率是數據存儲時鐘頻率的1/8,則每經過8個采樣時鐘就對移位寄存器的3個地址位置采樣1次,采樣數據與本地 PN碼進行并行的相關運算.采樣系統(tǒng)開始工作時,對 D4、D8、D12 持續(xù)進行采樣,直到捕獲成功.系統(tǒng)轉入跟蹤狀態(tài)后,采樣的地址位置才會根據跟蹤信號進行重新調整.
圖 5 采樣原理Fig.5 Sampling schematic
為了得到用于偽碼捕獲以及跟蹤階段的相關峰值,相關運算模塊對接收數據與本地 PN碼采用非相干的方法.接收到的6路采樣數據首先和事先存好的本地偽碼對應位進行相乘相加,然后再對累加結果求平方和作為輸出峰值,最后將即時路的相關峰值送與門限判決模塊與設置好的門限值比較,如果相關峰值和大于所設置的門限值,則輸出解擴結果,否則繼續(xù)進行捕獲步驟的操作.
通常在偽碼跟蹤的時候,將接收數據和本地偽碼的相關運算結果送與碼鑒相器,鑒相誤差通過環(huán)路濾波器控制 VCO 來調整偽碼發(fā)生器,從而達到本地偽碼跟蹤發(fā)端擴頻碼變化的目的.
對于深深淹沒在隨機高斯白噪聲中的偽隨機序列信號的相位,可以通過采用相干的中頻累積法來快速提取[12].因此在本系統(tǒng)跟蹤的實現(xiàn)過程中,當捕獲到有用信號之后,跟蹤系統(tǒng)會通過 I、Q 2路的超前、滯后4路信號的相關值的數值大小來對移位寄存器的采樣位置進行重新調整,即改變信號的采樣位置,使本地偽碼相位較發(fā)端擴頻碼相位產生了相對移動,從而使相關峰不斷地趨近最大值,并且維持這種狀態(tài).使本地偽碼相位較發(fā)端擴頻碼相位產生相對滑動的過程中,系統(tǒng)省去了復雜的碼鑒相器、壓控振蕩器等控制模塊,減少了系統(tǒng)的反饋時間,這將對系統(tǒng)跟蹤性能的提高有所幫助.
門限值的設置可以通過多次測試由經驗值得出.由于偽碼序列具有很好的自相關特性,當本地偽碼與發(fā)端頻碼相位誤差在1個碼元之內時,相關峰值會明顯大于其他時刻,并且誤差越小峰值越大.在實際應用場合中由于噪聲大小不同,峰值也不是固定值,因此要根據具體情況進行仿真設定一個比較合適的門限值.門限值過大會引發(fā)漏警現(xiàn)象,而過小會引發(fā)虛警現(xiàn)象.在實際的操作系統(tǒng)中,一般通過多次測試,把門限值設置稍大有利于系統(tǒng)正常穩(wěn)定的工作.
基于以上所介紹的相關原理,本系統(tǒng)以 FPGA 為硬件控制平臺,使用 Verilog 硬件描述語言在 Xilinx 公司 Vivado 2017.3 軟件開發(fā)平臺上實現(xiàn)直接序列擴頻系統(tǒng)偽碼的同步技術.通過對偽碼同步系統(tǒng)的仿真測試,驗證了基于延遲鎖相環(huán)的偽碼同步方法的可行性.
在本文實現(xiàn)偽碼同步的過程中,采用對接收數據進行采樣的方式代替常規(guī)的滑動相關法.對 I 路數據來說,首先將所取的高4位數據進行存儲,共存儲 16 個數據,以供采樣位置的調整.如圖 6 中 d0、d4、d8 所示,分別為移位寄存器里 D4、D8 和 D12 的數據,然后對移位寄存器中的數據進行3路采樣,如圖 6 中 dout1、dout2、dout3 所示,dout2 為即時路,dout1相當于超前支路,dout3 相當于滯后支路.
圖6 3路采樣輸出Fig.6 Three channel sampling output
偽碼同步算法首先就是進行偽碼的捕獲.通過采用低倍的時鐘對移位寄存器進行不斷的讀取信號數據,從而來搜索相位,即時路的采樣數據如圖 6 中 dout2 所示,當本地偽碼與發(fā)端擴頻碼的相位誤差小于1個碼元時,相關運算的結果輸出相關峰,則表明捕獲到了有用信號.I、Q 2路即時路的相關輸出如圖 7 中信號 correlation_i_din2 和 correlation_q_din2 所示.由于擴頻偽碼序列具有良好的自相關特性,當發(fā)端擴頻碼與本地偽碼的相位相差小于1個碼元時,即時路的相關輸出峰值大小會明顯大于其他時刻,這為門限判決輸出的穩(wěn)定性提供了可靠的基礎.
在進行捕獲門限判決的時候,計算出 I、Q 2路中即時路相關輸出的平方和,如式 3所示,sum 作為相關峰給到門限判決模塊,進行判決輸出.由于相關峰為2路即時路相關輸出的平方和,其相關峰值會遠遠高于未捕獲時刻.如果再對判決門限值進行合理的設置,系統(tǒng)就會明顯降低捕獲虛警和漏警現(xiàn)象.
sum=(correlation_i_din2)2+(correlation_q_din2)2.
(3)
圖7 I、Q 即時路的相關輸出Fig.7 I,Q real-time related output
由于偽碼的捕獲和跟蹤都在延遲鎖相環(huán)中完成,每當捕獲系統(tǒng)輸出一個相關峰的時候,捕獲系統(tǒng)會輸出一個捕獲信號 capture,迅速使系統(tǒng)進入偽碼的跟蹤狀態(tài).系統(tǒng)跟蹤信號如圖 8 所示,當跟蹤系統(tǒng)檢測到 capture 為 1 時,相位誤差提取模塊就會對超前-滯后4路中頻累積的結果進行計算比較,判斷最大相關峰位置的方向.圖8中信號 data_e 就是根據此原理變化的,并且根據信號 data_e 的變化,移位寄存器的采樣地址位置開始被調整.當 data_e數值加1的時候,3路采樣位置同時向右平移1位,當 data_e 數值減1的時候,3路采樣位置同時向左平移1位,否則,3路采樣位置的不變.在此狀態(tài)下,系統(tǒng)通過對移位寄存器采樣位置的調整,不斷地縮小本地擴頻碼與發(fā)端擴頻碼相位之間可能存在的誤差,使相關峰達到最大值并且維持此狀態(tài),從而使本地偽碼牢牢地跟蹤發(fā)端擴頻碼相位的變化.這樣,就完成了偽碼的跟蹤.
圖8 跟蹤信號Fig.8 Tracking signal
本文對偽碼的捕獲原理、滑動相關法理論、延遲鎖相環(huán)理論以及同步系統(tǒng)的重要模塊進行了詳細的介紹.基于 Xilinx 公司的 FPGA 芯片,本文結合滑動相關法的概念,實現(xiàn)了基于延遲鎖相環(huán)技術的擴頻偽碼的同步,并在實現(xiàn)過程中運用了多種機制改進了偽碼捕獲及偽碼跟蹤環(huán)節(jié)的部分實現(xiàn)方式.測試結果表明,此系統(tǒng)能夠有效地實現(xiàn)偽碼的捕獲以及偽碼的跟蹤.本文中只涉及了實現(xiàn)偽碼同步方法的可行性,在今后研究中將對其性能做進一步的測試.