《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 基于CUDA加速的GPS L1C/A實(shí)時(shí)信號(hào)發(fā)生器設(shè)計(jì)
基于CUDA加速的GPS L1C/A實(shí)時(shí)信號(hào)發(fā)生器設(shè)計(jì)
電子技術(shù)應(yīng)用 11期
王子涵1,巴曉輝1,2,3,姜維1,2,3,蔡伯根2,3,4,王劍1,2,3,文韜1,2,3,郭旗1
(1.北京交通大學(xué) 電子信息工程學(xué)院,北京 100044;2.北京交通大學(xué) 軌道交通控制與安全國(guó)家重點(diǎn)實(shí)驗(yàn)室,北京 100044; 3.北京市電磁兼容與衛(wèi)星導(dǎo)航工程技術(shù)研究中心,北京 100044;4.北京交通大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院,北京 100044)
摘要: 提出了一種基于軟件無(wú)線電和CUDA(Compute Unified Device Architecture)加速的GPS L1C/A信號(hào)生成方法,系統(tǒng)根據(jù)用戶自定義軌跡和衛(wèi)星星歷產(chǎn)生中頻信號(hào),并通過(guò)USRP(Universal Software Radio Peripheral)在相應(yīng)的射頻頻點(diǎn)發(fā)射,由此實(shí)現(xiàn)了實(shí)時(shí)衛(wèi)星導(dǎo)航信號(hào)的播發(fā)。為了提升GPU的并行計(jì)算速度,從設(shè)備內(nèi)存優(yōu)化、并行結(jié)構(gòu)優(yōu)化、CUDA流加速三個(gè)角度來(lái)對(duì)算法進(jìn)行改進(jìn),提出了一種基于異步運(yùn)算思想的針對(duì)采樣點(diǎn)數(shù)據(jù)加速計(jì)算的CUDA優(yōu)化實(shí)現(xiàn)方案。測(cè)試結(jié)果表明,優(yōu)化后的算法能夠產(chǎn)生高速、實(shí)時(shí)的衛(wèi)星信號(hào),在RTX1050TI設(shè)備上,可以做到信號(hào)195 MHz采樣率,10顆可見(jiàn)衛(wèi)星情況下衛(wèi)星信號(hào)的實(shí)時(shí)生成。
中圖分類(lèi)號(hào):TN967.1
文獻(xiàn)標(biāo)志碼:A
DOI: 10.16157/j.issn.0258-7998.233903
引用格式: 王子涵,巴曉輝,姜維,等. 基于CUDA加速的GPS L1C/A實(shí)時(shí)信號(hào)發(fā)生器設(shè)計(jì)[J]. 電子技術(shù)應(yīng)用,2023,49(11):146-152.
Real-time GPS L1C/A signal generator design based on CUDA acceleration
Wang Zihan1,Ba Xiaohui1,2,3,Jiang Wei1,2,3,Cai Bogen2,3,4,Wang Jian1,2,3,Wen Tao1,2,3,Guo Qi1
(1.School of Electronics and Information Engineering, Beijing Jiaotong University, Beijing 100044, China;2.State Key Laboratory of Rail Traffic Control and Safety,Beijing Jiaotong University, Beijing 100044, China;3.Beijing Engineering Research Center of EMC and GNSS Technology for Rail Transportation, Beijing 100044, China;4.School of Computer and Information Technology, Beijing Jiaotong University, Beijing 100044, China.)
Abstract: This paper proposes a method for generating GPS L1C/A signals based on software defined radio and CUDA acceleration. The system generates intermediate frequency signals based on user-defined trajectories and satellite ephemeris, and transmits them at the corresponding radio frequency points through USRP, thus realizing real-time broadcasting of satellite navigation signals. To improve the parallel computing speed of the GPU, this paper proposes a CUDA optimization implementation scheme based on asynchronous operation idea from the perspectives of device memory optimization, parallel structure optimization, and CUDA stream acceleration for sampling point data acceleration calculation. The test results indicate that the optimized algorithm is capable of generating high-speed and real-time satellite signals. On an RTX1050TI device, the satellite signal can be generated in real time with a sampling rate of 195 MHz and under the condition of 10 visible satellites.
Key words : GPU;GNSS simulator;software defined radio;high-speed real-time

【引言】

進(jìn)入21世紀(jì)后,隨著人類(lèi)步入到信息數(shù)字化時(shí)代,全球?qū)Ш叫l(wèi)星系統(tǒng)GNSS(Global Navigation Satellite System)的應(yīng)用也從最初的軍事領(lǐng)域,滲透到包括交通、金融、航空、航海、測(cè)繪等生活的方方面面,成為關(guān)系人們?nèi)粘I畹囊豁?xiàng)重要基礎(chǔ)設(shè)施[1]。

全球衛(wèi)星導(dǎo)航系統(tǒng)一般由地面控制部分、空間衛(wèi)星星座和地面用戶設(shè)備三部分組成。除了要保證太空中衛(wèi)星的正常工作外,地面上的用戶設(shè)備也是系統(tǒng)正常運(yùn)行的關(guān)鍵一環(huán),而各種高性能接收機(jī)的開(kāi)發(fā)與調(diào)試都離不開(kāi)信號(hào)模擬器[2]。與直接讓接收機(jī)接收真實(shí)衛(wèi)星信號(hào)或使用信號(hào)回放儀回放衛(wèi)星信號(hào)的方法相比,信號(hào)模擬器可以根據(jù)用戶的需要,設(shè)計(jì)不同環(huán)境、不同復(fù)雜場(chǎng)景下的模擬衛(wèi)星信號(hào),從而為導(dǎo)航接收機(jī)等設(shè)備提供仿真測(cè)試條件[3]。此外,衛(wèi)星導(dǎo)航系統(tǒng)在軍事領(lǐng)域的更多潛力也在被迅速開(kāi)發(fā),通過(guò)使用欺騙技術(shù),使得敵方的精確武器、設(shè)備失去作戰(zhàn)能力,具有非常高的軍事研究?jī)r(jià)值,并已成為世界各國(guó)研究的熱點(diǎn)。而產(chǎn)生實(shí)時(shí)高效的模擬衛(wèi)星信號(hào)則是研究欺騙與反欺騙技術(shù)的技術(shù)前提,具有重要意義[4,5]。

傳統(tǒng)的GNSS信號(hào)模擬器由仿真控制軟件(simulation control software)和信號(hào)生成硬件(signal generation hardware)組成[6-7]。仿真控制軟件可以通過(guò)設(shè)置載體運(yùn)動(dòng)軌跡和模擬場(chǎng)景來(lái)生成GNSS信號(hào)。在信號(hào)生成硬件中,數(shù)字信號(hào)處理(Digital Signal Processor, DSP)芯片負(fù)責(zé)計(jì)算導(dǎo)航信息、狀態(tài)參數(shù)、控制參數(shù)。通過(guò)現(xiàn)場(chǎng)可編程門(mén)陣列(Field-Programmable Gate Array, FPGA)實(shí)現(xiàn)信號(hào)編碼和直接序列擴(kuò)頻調(diào)制,生成數(shù)字中頻信號(hào)。最后,再經(jīng)過(guò)模數(shù)轉(zhuǎn)換器(Digital to Analog Converter, DAC)和數(shù)字中頻信號(hào)的上變頻得到所需的衛(wèi)星信號(hào)[8-9]。

傳統(tǒng)的信號(hào)模擬器通常采用“FPGA+DSP”結(jié)構(gòu)。這種系統(tǒng)需要定制化,硬件成本高且靈活性低,用戶不能方便地更改導(dǎo)航電文、擴(kuò)頻碼等信息。此外,對(duì)于傳統(tǒng)信號(hào)模擬器,諸如認(rèn)證信息添加和多徑效應(yīng)模擬等功能的拓展也比較復(fù)雜。而模擬器在實(shí)際運(yùn)用過(guò)程中經(jīng)常需要根據(jù)需要,對(duì)不同場(chǎng)景、各種狀態(tài)的衛(wèi)星信號(hào)靈活模擬,傳統(tǒng)信號(hào)模擬器亟需改進(jìn)。

為解決上述問(wèn)題,基于軟件無(wú)線電(Software Defined Radio, SDR)的GNSS模擬器體系結(jié)構(gòu)開(kāi)始被人們所采用[10]。基于軟件無(wú)線電的GNSS模擬器使用仿真軟件來(lái)代替DSP和FPGA生成數(shù)字中頻信號(hào),由于整個(gè)中頻信號(hào)的產(chǎn)生是由軟件端完成的,因此系統(tǒng)功能的變更和拓展較為方便。此外,在多通道、高采樣率的情況下,普通的CPU很難做到實(shí)時(shí)地生成模擬GNSS信號(hào)。因此,通過(guò)運(yùn)用GPU加速的方法來(lái)滿足實(shí)時(shí)、多通道、高速率GNSS信號(hào)的模擬需求成為很多人的選擇[11-12]。

針對(duì)基于GPU的衛(wèi)星生成信號(hào)算法,前人已經(jīng)進(jìn)行了一些研究。文獻(xiàn)[13]對(duì)GPU優(yōu)化加速的方法進(jìn)行了系統(tǒng)性的總結(jié),并通過(guò)在相同條件下比較使用CPU和CPU+GPU兩種方法產(chǎn)生衛(wèi)星信號(hào)的快慢,證明了GPU對(duì)于信號(hào)加速的可行性及有效性;文獻(xiàn)[14]針對(duì)GPS L1信號(hào),對(duì)程序的并行線程結(jié)構(gòu)、內(nèi)存分配方式進(jìn)行了優(yōu)化,實(shí)現(xiàn)了多通道高采樣率的衛(wèi)星信號(hào)的實(shí)時(shí)生成;文獻(xiàn)[15]設(shè)計(jì)了一種數(shù)據(jù)結(jié)構(gòu),以提高GPU訪問(wèn)偽碼數(shù)據(jù)的速度,并最終高速實(shí)時(shí)生成了BDS B1I信號(hào)。但是,前人關(guān)于GPU信號(hào)加速的研究,主要是針對(duì)并行程序部分的線程結(jié)構(gòu)、內(nèi)存訪問(wèn)方式以及數(shù)據(jù)存儲(chǔ)方法的優(yōu)化,而系統(tǒng)在執(zhí)行核函數(shù)以外的命令時(shí),仍然是以串行運(yùn)行為主的方式,這造成了資源上的浪費(fèi)。對(duì)此,本文在繼承前人優(yōu)化思想的基礎(chǔ)上,運(yùn)用異步運(yùn)行的思想,引入了CUDA流的概念,對(duì)GPU產(chǎn)生衛(wèi)星信號(hào)的過(guò)程進(jìn)行進(jìn)一步的加速。

在本文中,提出了一種SDR GNSS信號(hào)模擬器的體系結(jié)構(gòu)。在這個(gè)結(jié)構(gòu)中,仿真控制軟件基于本文提出的優(yōu)化算法高速實(shí)時(shí)產(chǎn)生GNSS數(shù)字中頻信號(hào),然后通過(guò)高速接口將信號(hào)送到USRP中,再經(jīng)過(guò)正交矯正、數(shù)模變換、上變頻,最后通過(guò)射頻端輸出,生成模擬GNSS信號(hào)。由于中頻信號(hào)的產(chǎn)生是在軟件中進(jìn)行的,因此整個(gè)系統(tǒng)具有良好的可拓展性,便于測(cè)試與驗(yàn)證。


文章詳細(xì)內(nèi)容下載請(qǐng)點(diǎn)擊:基于CUDA加速的GPS L1C/A實(shí)時(shí)信號(hào)發(fā)生器設(shè)計(jì)AET-電子技術(shù)應(yīng)用-最豐富的電子設(shè)計(jì)資源平臺(tái) (chinaaet.com)



【作者信息】

王子涵1,巴曉輝1,2,3,姜維1,2,3,蔡伯根2,3,4,王劍1,2,3,文韜1,2,3,郭旗1

(1.北京交通大學(xué) 電子信息工程學(xué)院,北京 100044;2.北京交通大學(xué) 軌道交通控制與安全國(guó)家重點(diǎn)實(shí)驗(yàn)室,北京 100044;

3.北京市電磁兼容與衛(wèi)星導(dǎo)航工程技術(shù)研究中心,北京 100044;4.北京交通大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院,北京 100044)




此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。