文獻標志碼:A
DOI: 10.16157/j.issn.0258-7998.233903
引用格式: 王子涵,巴曉輝,姜維,等. 基于CUDA加速的GPS L1C/A實時信號發(fā)生器設計[J]. 電子技術應用,2023,49(11):146-152.
【引言】
進入21世紀后,隨著人類步入到信息數(shù)字化時代,全球導航衛(wèi)星系統(tǒng)GNSS(Global Navigation Satellite System)的應用也從最初的軍事領域,滲透到包括交通、金融、航空、航海、測繪等生活的方方面面,成為關系人們日常生活的一項重要基礎設施[1]。
全球衛(wèi)星導航系統(tǒng)一般由地面控制部分、空間衛(wèi)星星座和地面用戶設備三部分組成。除了要保證太空中衛(wèi)星的正常工作外,地面上的用戶設備也是系統(tǒng)正常運行的關鍵一環(huán),而各種高性能接收機的開發(fā)與調試都離不開信號模擬器[2]。與直接讓接收機接收真實衛(wèi)星信號或使用信號回放儀回放衛(wèi)星信號的方法相比,信號模擬器可以根據(jù)用戶的需要,設計不同環(huán)境、不同復雜場景下的模擬衛(wèi)星信號,從而為導航接收機等設備提供仿真測試條件[3]。此外,衛(wèi)星導航系統(tǒng)在軍事領域的更多潛力也在被迅速開發(fā),通過使用欺騙技術,使得敵方的精確武器、設備失去作戰(zhàn)能力,具有非常高的軍事研究價值,并已成為世界各國研究的熱點。而產(chǎn)生實時高效的模擬衛(wèi)星信號則是研究欺騙與反欺騙技術的技術前提,具有重要意義[4,5]。
傳統(tǒng)的GNSS信號模擬器由仿真控制軟件(simulation control software)和信號生成硬件(signal generation hardware)組成[6-7]。仿真控制軟件可以通過設置載體運動軌跡和模擬場景來生成GNSS信號。在信號生成硬件中,數(shù)字信號處理(Digital Signal Processor, DSP)芯片負責計算導航信息、狀態(tài)參數(shù)、控制參數(shù)。通過現(xiàn)場可編程門陣列(Field-Programmable Gate Array, FPGA)實現(xiàn)信號編碼和直接序列擴頻調制,生成數(shù)字中頻信號。最后,再經(jīng)過模數(shù)轉換器(Digital to Analog Converter, DAC)和數(shù)字中頻信號的上變頻得到所需的衛(wèi)星信號[8-9]。
傳統(tǒng)的信號模擬器通常采用“FPGA+DSP”結構。這種系統(tǒng)需要定制化,硬件成本高且靈活性低,用戶不能方便地更改導航電文、擴頻碼等信息。此外,對于傳統(tǒng)信號模擬器,諸如認證信息添加和多徑效應模擬等功能的拓展也比較復雜。而模擬器在實際運用過程中經(jīng)常需要根據(jù)需要,對不同場景、各種狀態(tài)的衛(wèi)星信號靈活模擬,傳統(tǒng)信號模擬器亟需改進。
為解決上述問題,基于軟件無線電(Software Defined Radio, SDR)的GNSS模擬器體系結構開始被人們所采用[10]?;谲浖o線電的GNSS模擬器使用仿真軟件來代替DSP和FPGA生成數(shù)字中頻信號,由于整個中頻信號的產(chǎn)生是由軟件端完成的,因此系統(tǒng)功能的變更和拓展較為方便。此外,在多通道、高采樣率的情況下,普通的CPU很難做到實時地生成模擬GNSS信號。因此,通過運用GPU加速的方法來滿足實時、多通道、高速率GNSS信號的模擬需求成為很多人的選擇[11-12]。
針對基于GPU的衛(wèi)星生成信號算法,前人已經(jīng)進行了一些研究。文獻[13]對GPU優(yōu)化加速的方法進行了系統(tǒng)性的總結,并通過在相同條件下比較使用CPU和CPU+GPU兩種方法產(chǎn)生衛(wèi)星信號的快慢,證明了GPU對于信號加速的可行性及有效性;文獻[14]針對GPS L1信號,對程序的并行線程結構、內存分配方式進行了優(yōu)化,實現(xiàn)了多通道高采樣率的衛(wèi)星信號的實時生成;文獻[15]設計了一種數(shù)據(jù)結構,以提高GPU訪問偽碼數(shù)據(jù)的速度,并最終高速實時生成了BDS B1I信號。但是,前人關于GPU信號加速的研究,主要是針對并行程序部分的線程結構、內存訪問方式以及數(shù)據(jù)存儲方法的優(yōu)化,而系統(tǒng)在執(zhí)行核函數(shù)以外的命令時,仍然是以串行運行為主的方式,這造成了資源上的浪費。對此,本文在繼承前人優(yōu)化思想的基礎上,運用異步運行的思想,引入了CUDA流的概念,對GPU產(chǎn)生衛(wèi)星信號的過程進行進一步的加速。
在本文中,提出了一種SDR GNSS信號模擬器的體系結構。在這個結構中,仿真控制軟件基于本文提出的優(yōu)化算法高速實時產(chǎn)生GNSS數(shù)字中頻信號,然后通過高速接口將信號送到USRP中,再經(jīng)過正交矯正、數(shù)模變換、上變頻,最后通過射頻端輸出,生成模擬GNSS信號。由于中頻信號的產(chǎn)生是在軟件中進行的,因此整個系統(tǒng)具有良好的可拓展性,便于測試與驗證。
文章詳細內容下載請點擊:基于CUDA加速的GPS L1C/A實時信號發(fā)生器設計AET-電子技術應用-最豐富的電子設計資源平臺 (chinaaet.com)
【作者信息】
王子涵1,巴曉輝1,2,3,姜維1,2,3,蔡伯根2,3,4,王劍1,2,3,文韜1,2,3,郭旗1
(1.北京交通大學 電子信息工程學院,北京 100044;2.北京交通大學 軌道交通控制與安全國家重點實驗室,北京 100044;
3.北京市電磁兼容與衛(wèi)星導航工程技術研究中心,北京 100044;4.北京交通大學 計算機與信息技術學院,北京 100044)