本發(fā)明涉及信號處理,具體涉及一種直接序列擴(kuò)頻信號的跟蹤方法及裝置。
背景技術(shù):
1、直接序列擴(kuò)頻系統(tǒng)是一種具有抗干擾、低截獲概率等優(yōu)點(diǎn)的通信技術(shù)。其通過使用特定的擴(kuò)頻碼將信號頻帶展寬,使信號在傳播過程中具有極佳的抗點(diǎn)狀干擾能力,被廣泛應(yīng)用于軍事通信、衛(wèi)星通信和水聲通信等領(lǐng)域。在擴(kuò)頻信號的解調(diào)過程中,如何快速、實(shí)時且準(zhǔn)確地進(jìn)行擴(kuò)頻信號的解調(diào),是接收端擴(kuò)頻解調(diào)設(shè)備設(shè)計(jì)要解決的關(guān)鍵問題。在接收端首先需要完成信號的捕獲,完成初步的載波同步和偽碼同步,但捕獲所得的精度較低,此時載波多普勒誤差在幾百赫茲左右,碼相位誤差在半個碼片以內(nèi),但這種精度仍然無法滿足對于擴(kuò)頻信號進(jìn)行穩(wěn)定解調(diào),必須進(jìn)行下一步信號跟蹤,而跟蹤屬于較為耗時的過程。
2、現(xiàn)有技術(shù)中,雖然基于dsp和fpga等外設(shè)板卡達(dá)到了實(shí)時解調(diào)的速率,但無法適應(yīng)當(dāng)前軟件化信號解調(diào)的發(fā)展趨勢,具備開發(fā)難度大,升級困難,使用場景受限等問題。由于當(dāng)前軟件化的解調(diào)設(shè)備往往基于多核cpu進(jìn)行開發(fā),直接序列擴(kuò)頻信號的跟蹤處理涉及大量的相關(guān)運(yùn)算,每個碼片都需要進(jìn)行多個相關(guān)器的計(jì)算,cpu設(shè)備因其串行的處理方式,處理效率較低,無法滿足實(shí)時解調(diào)的要求。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本發(fā)明實(shí)施例提供一種直接序列擴(kuò)頻信號的跟蹤方法及裝置,以解決現(xiàn)有軟件解調(diào)技術(shù)無法滿足實(shí)時解調(diào)要求的問題。
2、為實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供如下技術(shù)方案:
3、本發(fā)明實(shí)施例第一方面公開了一種直接序列擴(kuò)頻信號的跟蹤方法,應(yīng)用于cpu設(shè)備,所述cpu設(shè)備與gpu設(shè)備連接,所述方法包括:
4、利用對擴(kuò)頻信號進(jìn)行捕獲得到的捕獲結(jié)果,對跟蹤環(huán)路的環(huán)路參數(shù)進(jìn)行初始化;所述捕獲結(jié)果包含:載波頻率范圍和偽碼相位范圍;所述跟蹤環(huán)路用于對所述擴(kuò)頻信號進(jìn)行跟蹤;所述環(huán)路參數(shù)用于控制所述跟蹤環(huán)路輸出的本地載波的頻率和本地偽碼的相位;
5、實(shí)時接收所述擴(kuò)頻信號,并將所述擴(kuò)頻信號發(fā)送給所述gpu設(shè)備,使得所述gpu設(shè)備基于當(dāng)前的所述環(huán)路參數(shù)控制下所述跟蹤環(huán)路輸出的本地載波和本地偽碼,對所述擴(kuò)頻信號進(jìn)行并行跟蹤運(yùn)算,得到目標(biāo)環(huán)路參數(shù)并將所述目標(biāo)環(huán)路參數(shù)發(fā)送給所述cpu設(shè)備;
6、每當(dāng)接收到所述目標(biāo)環(huán)路參數(shù)時,基于所述目標(biāo)環(huán)路參數(shù)更新所述跟蹤環(huán)路的所述環(huán)路參數(shù);
7、調(diào)用所述gpu設(shè)備基于所述目標(biāo)環(huán)路參數(shù)進(jìn)行非相干累加,得到所述gpu設(shè)備發(fā)送的能量累加值;
8、基于所述能量累加值對所述跟蹤環(huán)路進(jìn)行鎖定狀態(tài)判別,當(dāng)判別結(jié)果表征所述跟蹤環(huán)路穩(wěn)定鎖定時,確定所述擴(kuò)頻信號跟蹤完成。
9、優(yōu)選的,在所述實(shí)時接收所述擴(kuò)頻信號,并將所述擴(kuò)頻信號發(fā)送給所述gpu設(shè)備之前,所述方法還包括:
10、對所述gpu設(shè)備的內(nèi)存進(jìn)行分配,得到用于進(jìn)行并行跟蹤運(yùn)算的運(yùn)算內(nèi)存。
11、優(yōu)選的,所述實(shí)時接收所述擴(kuò)頻信號,并將所述擴(kuò)頻信號發(fā)送給所述gpu設(shè)備,包括:
12、實(shí)時接收所述擴(kuò)頻信號;
13、調(diào)用cudamemcpy函數(shù)將所述擴(kuò)頻信號發(fā)送給所述gpu設(shè)備。
14、優(yōu)選的,所述基于所述能量累加值對所述跟蹤環(huán)路進(jìn)行鎖定狀態(tài)判別,當(dāng)判別結(jié)果表征所述跟蹤環(huán)路穩(wěn)定鎖定時,確定所述擴(kuò)頻信號跟蹤完成,包括:
15、每當(dāng)所述跟蹤環(huán)路的所述環(huán)路參數(shù)更新后,基于所述擴(kuò)頻信號與所述跟蹤環(huán)路輸出的本地載波計(jì)算頻率誤差,得到多個頻率誤差值;若小于頻率閾值的所述頻率誤差值的個數(shù)超過第一預(yù)設(shè)個數(shù),則確定載波頻率鎖定;
16、在確定載波頻率鎖定之后接收的各個所述目標(biāo)環(huán)路參數(shù)對應(yīng)的所述能量累加值中,若符合載波相位鎖定要求的所述能量累加值的個數(shù)超過第二預(yù)設(shè)個數(shù),則確定載波相位鎖定;符合載波相位鎖定要求的所述能量累加值表征對應(yīng)的所述擴(kuò)頻信號中,i路信號能量大于q路信號能量并達(dá)到第一預(yù)設(shè)倍數(shù);
17、在確定載波相位鎖定之后接收的各個所述目標(biāo)環(huán)路參數(shù)對應(yīng)的所述能量累加值中,若符合環(huán)路穩(wěn)定鎖定要求的所述能量累加值的個數(shù)超過第三預(yù)設(shè)個數(shù),則確定所述跟蹤環(huán)路穩(wěn)定鎖定并且所述擴(kuò)頻信號跟蹤完成;符合環(huán)路穩(wěn)定鎖定要求的所述能量累加值表征對應(yīng)的所述擴(kuò)頻信號中,i路信號能量大于q路信號能量并達(dá)到第二預(yù)設(shè)倍數(shù);所述第二預(yù)設(shè)倍數(shù)大于所述第一預(yù)設(shè)倍數(shù)。
18、本發(fā)明實(shí)施例第二方面公開了一種直接序列擴(kuò)頻信號的跟蹤方法,應(yīng)用于gpu設(shè)備,所述gpu設(shè)備與cpu設(shè)備連接,所述方法包括:
19、接收所述cpu設(shè)備發(fā)送的擴(kuò)頻信號;
20、基于當(dāng)前的環(huán)路參數(shù)控制下跟蹤環(huán)路輸出的本地載波和本地偽碼,對所述擴(kuò)頻信號進(jìn)行并行跟蹤運(yùn)算,得到目標(biāo)環(huán)路參數(shù)并將所述目標(biāo)環(huán)路參數(shù)發(fā)送給所述cpu設(shè)備,使得所述cpu設(shè)備基于所述目標(biāo)環(huán)路參數(shù)更新所述跟蹤環(huán)路的所述環(huán)路參數(shù);所述跟蹤環(huán)路用于對所述擴(kuò)頻信號進(jìn)行跟蹤;所述環(huán)路參數(shù)用于控制所述跟蹤環(huán)路輸出的本地載波的頻率和本地偽碼的相位;
21、響應(yīng)于所述cpu設(shè)備的調(diào)用,基于所述目標(biāo)環(huán)路參數(shù)進(jìn)行非相干累加,得到能量累加值;
22、將所述能量累加值發(fā)送給所述cpu設(shè)備。
23、優(yōu)選的,所述基于當(dāng)前的環(huán)路參數(shù)控制下跟蹤環(huán)路輸出的本地載波和本地偽碼,對所述擴(kuò)頻信號進(jìn)行并行跟蹤運(yùn)算,得到目標(biāo)環(huán)路參數(shù)并將所述目標(biāo)環(huán)路參數(shù)發(fā)送給所述cpu設(shè)備,包括:
24、獲取當(dāng)前的環(huán)路參數(shù)控制下跟蹤環(huán)路輸出的本地載波和本地偽碼;所述本地偽碼包括:超前碼、即時碼和滯后碼;所述超前碼的相位相較于所述即時碼超前半個碼片,所述滯后碼的相位相較于所述即時碼滯后半個碼片;
25、根據(jù)所述擴(kuò)頻信號中的每一頻點(diǎn)和所述本地載波,生成多個下變頻計(jì)算任務(wù),并將各個所述下變頻計(jì)算任務(wù)分配到線程塊中的各個線程進(jìn)行并行計(jì)算,得到下變頻后的擴(kuò)頻信號;
26、針對所述下變頻后的擴(kuò)頻信號中的每一采樣點(diǎn),生成所述采樣點(diǎn)分別與所述超前碼、所述即時碼和所述滯后碼相乘的解擴(kuò)計(jì)算任務(wù),得到多個所述解擴(kuò)計(jì)算任務(wù);
27、將各個所述解擴(kuò)計(jì)算任務(wù)分配到線程塊中的各個線程進(jìn)行并行計(jì)算,得到所述超前碼對應(yīng)的第一解擴(kuò)信號、所述即時碼對應(yīng)的第二解擴(kuò)信號和所述滯后碼對應(yīng)的第三解擴(kuò)信號;
28、將所述下變頻后的擴(kuò)頻信號、所述第一解擴(kuò)信號、所述第二解擴(kuò)信號和所述第三解擴(kuò)信號作為目標(biāo)環(huán)路參數(shù),調(diào)用cudamemcpy函數(shù)將所述目標(biāo)環(huán)路參數(shù)發(fā)送給所述cpu設(shè)備。
29、優(yōu)選的,所述響應(yīng)于所述cpu設(shè)備的調(diào)用,基于所述目標(biāo)環(huán)路參數(shù)進(jìn)行非相干累加,得到能量累加值,包括:
30、響應(yīng)于所述cpu設(shè)備的調(diào)用,利用預(yù)設(shè)的規(guī)約算法和所述目標(biāo)環(huán)路參數(shù)進(jìn)行非相干累加,得到能量累加值。
31、優(yōu)選的,所述將所述能量累加值發(fā)送給所述cpu設(shè)備,包括:
32、調(diào)用cudamemcpy函數(shù)將所述能量累加值發(fā)送給所述cpu設(shè)備。
33、本發(fā)明實(shí)施例第三方面公開了一種直接序列擴(kuò)頻信號的跟蹤裝置,應(yīng)用于cpu設(shè)備,所述cpu設(shè)備與gpu設(shè)備連接,所述裝置包括:
34、初始化單元,用于利用對擴(kuò)頻信號進(jìn)行捕獲得到的捕獲結(jié)果,對跟蹤環(huán)路的環(huán)路參數(shù)進(jìn)行初始化;所述捕獲結(jié)果包含:載波頻率范圍和偽碼相位范圍;所述跟蹤環(huán)路用于對所述擴(kuò)頻信號進(jìn)行跟蹤;所述環(huán)路參數(shù)用于控制所述跟蹤環(huán)路輸出的本地載波的頻率和本地偽碼的相位;
35、跟蹤運(yùn)算發(fā)起單元,用于實(shí)時接收所述擴(kuò)頻信號,并將所述擴(kuò)頻信號發(fā)送給所述gpu設(shè)備,使得所述gpu設(shè)備基于當(dāng)前的所述環(huán)路參數(shù)控制下所述跟蹤環(huán)路輸出的本地載波和本地偽碼,對所述擴(kuò)頻信號進(jìn)行并行跟蹤運(yùn)算,得到目標(biāo)環(huán)路參數(shù)并將所述目標(biāo)環(huán)路參數(shù)發(fā)送給所述cpu設(shè)備;
36、更新單元,用于每當(dāng)接收到所述目標(biāo)環(huán)路參數(shù)時,基于所述目標(biāo)環(huán)路參數(shù)更新所述跟蹤環(huán)路的所述環(huán)路參數(shù);
37、累加調(diào)用單元,用于調(diào)用所述gpu設(shè)備基于所述目標(biāo)環(huán)路參數(shù)進(jìn)行非相干累加,得到所述gpu設(shè)備發(fā)送的能量累加值;
38、判別單元,用于基于所述能量累加值對所述跟蹤環(huán)路進(jìn)行鎖定狀態(tài)判別,當(dāng)判別結(jié)果表征所述跟蹤環(huán)路穩(wěn)定鎖定時,確定所述擴(kuò)頻信號跟蹤完成。
39、本發(fā)明實(shí)施例第四方面公開了一種直接序列擴(kuò)頻信號的跟蹤裝置,應(yīng)用于gpu設(shè)備,所述gpu設(shè)備與cpu設(shè)備連接,所述裝置包括:
40、接收單元,用于接收所述cpu設(shè)備發(fā)送的擴(kuò)頻信號;
41、并行跟蹤運(yùn)算單元,用于基于當(dāng)前的環(huán)路參數(shù)控制下跟蹤環(huán)路輸出的本地載波和本地偽碼,對所述擴(kuò)頻信號進(jìn)行并行跟蹤運(yùn)算,得到目標(biāo)環(huán)路參數(shù)并將所述目標(biāo)環(huán)路參數(shù)發(fā)送給所述cpu設(shè)備,使得所述cpu設(shè)備基于所述目標(biāo)環(huán)路參數(shù)更新所述跟蹤環(huán)路的所述環(huán)路參數(shù);所述跟蹤環(huán)路用于對所述擴(kuò)頻信號進(jìn)行跟蹤;所述環(huán)路參數(shù)用于控制所述跟蹤環(huán)路輸出的本地載波的頻率和本地偽碼的相位;
42、累加響應(yīng)單元,用于響應(yīng)于所述cpu設(shè)備的調(diào)用,基于所述目標(biāo)環(huán)路參數(shù)進(jìn)行非相干累加,得到能量累加值;
43、發(fā)送單元,用于將所述能量累加值發(fā)送給所述cpu設(shè)備。
44、基于上述本發(fā)明實(shí)施例提供的一種直接序列擴(kuò)頻信號的跟蹤方法及裝置,利用對擴(kuò)頻信號進(jìn)行捕獲得到的捕獲結(jié)果,對跟蹤環(huán)路的環(huán)路參數(shù)進(jìn)行初始化;所述捕獲結(jié)果包含:載波頻率范圍和偽碼相位范圍;所述跟蹤環(huán)路用于對所述擴(kuò)頻信號進(jìn)行跟蹤;所述環(huán)路參數(shù)用于控制所述跟蹤環(huán)路輸出的本地載波的頻率和本地偽碼的相位;實(shí)時接收所述擴(kuò)頻信號,并將所述擴(kuò)頻信號發(fā)送給所述gpu設(shè)備,使得所述gpu設(shè)備基于當(dāng)前的所述環(huán)路參數(shù)控制下所述跟蹤環(huán)路輸出的本地載波和本地偽碼,對所述擴(kuò)頻信號進(jìn)行并行跟蹤運(yùn)算,得到目標(biāo)環(huán)路參數(shù)并將所述目標(biāo)環(huán)路參數(shù)發(fā)送給所述cpu設(shè)備;每當(dāng)接收到所述目標(biāo)環(huán)路參數(shù)時,基于所述目標(biāo)環(huán)路參數(shù)更新所述跟蹤環(huán)路的所述環(huán)路參數(shù);調(diào)用所述gpu設(shè)備基于所述目標(biāo)環(huán)路參數(shù)進(jìn)行非相干累加,得到所述gpu設(shè)備發(fā)送的能量累加值;基于所述能量累加值對所述跟蹤環(huán)路進(jìn)行鎖定狀態(tài)判別,當(dāng)判別結(jié)果表征所述跟蹤環(huán)路穩(wěn)定鎖定時,確定所述擴(kuò)頻信號跟蹤完成。在本方案中,利用cpu設(shè)備和gpu設(shè)備協(xié)同完成信號跟蹤,利用了gpu設(shè)備多線程并行計(jì)算優(yōu)勢,對于跟蹤過程中運(yùn)算量較大的步驟調(diào)用gpu設(shè)備進(jìn)行運(yùn)算,解決了現(xiàn)有軟件解調(diào)技術(shù)無法實(shí)現(xiàn)對于擴(kuò)頻信號實(shí)時解調(diào)的問題。