《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于DSP和FPGA的衛(wèi)星信號模擬器設(shè)計與實現(xiàn)
基于DSP和FPGA的衛(wèi)星信號模擬器設(shè)計與實現(xiàn)
2016年電子技術(shù)應(yīng)用第9期
江燦輝1,2,孫希延1,2,嚴素清1,2,紀元法1,2
1.桂林電子科技大學(xué) 信息與通信學(xué)院,廣西 桂林541004;2.廣西精密導(dǎo)航技術(shù)與應(yīng)用重點實驗室,廣西 桂林541004
摘要: 為給衛(wèi)星導(dǎo)航接收機的測試提供高穩(wěn)定度、高精度、可復(fù)現(xiàn)的衛(wèi)星信號,設(shè)計了一款衛(wèi)星信號模擬器。該系統(tǒng)以DSP+FPGA作為核心芯片,并集成了射頻上變頻電路、高速D/A轉(zhuǎn)換電路、Flash芯片和SDRAM芯片。系統(tǒng)可以實現(xiàn)GPS L1信號和BDS B1I、B2I、B3雙模多頻點衛(wèi)星信號的模擬。利用商業(yè)接收機對硬件平臺生成的衛(wèi)星導(dǎo)航信號進行測試,定位結(jié)果驗證了衛(wèi)星信號模擬器設(shè)計的正確性,表明該系統(tǒng)達到了預(yù)期設(shè)計要求。
關(guān)鍵詞: GPS BDS 衛(wèi)星信號模擬器 FPGA
中圖分類號: TN967.1
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2016.09.013
中文引用格式: 江燦輝,孫希延,嚴素清,等. 基于DSP和FPGA的衛(wèi)星信號模擬器設(shè)計與實現(xiàn)[J].電子技術(shù)應(yīng)用,2016,42(9):51-54.
英文引用格式: Jiang Canhui,Sun Xiyan,Yan Suqing,et al. Design and realizing of satellite signal simulator based on DSP+FPGA[J].Application of Electronic Technique,2016,42(9):51-54.
Design and realizing of satellite signal simulator based on DSP+FPGA
Jiang Canhui1,2,Sun Xiyan1,2,Yan Suqing1,2,Ji Yuanfa1,2
1.School of Information and Communication,Guilin University of Electronic Technology,Guilin 541004,China; 2.Guangxi Key Laboratory of Precision Navigation Technology and Application,Guilin 541004,China
Abstract: In order to provide replicable satellite signal with high precision and stability to the test of satellite navigation receivers, the satellite signal simulator is designed. The system takes DSP+FPGA as the core chip, and integrates RF up-conversion circuit, high speed D/A converter, Flash chip and SDRAM chip. The system could simulate dual-mode and multi-frequency satellite signal, which includes GPS L1, BDS B1I, BDS B2I and BDS B3. The satellite navigation signal generated by the hardware platform has been tested using commercial navigation receivers, and the correctness of the design of satellite signal simulator is verified by the positioning results, which suggests the design requirements are achieved.
Key words : GPS;BDS;satellite signal simulator;FPGA;DSP

0 引言

  隨著我國北斗衛(wèi)星導(dǎo)航系統(tǒng)的建立和發(fā)展,衛(wèi)星導(dǎo)航在我國得到廣泛應(yīng)用。衛(wèi)星導(dǎo)航系統(tǒng)已經(jīng)成為一個國家國防力量的重要體現(xiàn),衛(wèi)星導(dǎo)航技術(shù)發(fā)展趨勢也由單一GPS技術(shù)向多系統(tǒng)兼容、互操作方向發(fā)展。將BDS和GPS組合起來,可以增加接收機的觀測量,提高導(dǎo)航定位的精度和服務(wù)質(zhì)量。衛(wèi)星信號模擬器可以精確生成和復(fù)現(xiàn)不同條件下接收機射頻前端接收到的衛(wèi)星信號,為導(dǎo)航接收機的設(shè)計和研發(fā)提供可靠、準確和易用的測試環(huán)境,從而提高接收機的研發(fā)效率,減少研發(fā)測試費用[1]。在軍事領(lǐng)域,接收機被安裝在飛機、導(dǎo)彈和火箭等高動態(tài)載體上,需要借助衛(wèi)星信號模擬器進行測試。

1 系統(tǒng)總體架構(gòu)

  本文所設(shè)計的衛(wèi)星信號模擬器主要由DSP信息處理模塊、FPGA信號生成模塊、D/A轉(zhuǎn)換模塊、射頻上變頻模塊、Flash、SDRAM等模塊組成。系統(tǒng)總體架構(gòu)如圖1所示。

圖像 001.png

圖1  系統(tǒng)總體架構(gòu)圖

  DSP信息處理模塊主要實現(xiàn)衛(wèi)星導(dǎo)航算法。FPGA信號生成模塊主要實現(xiàn)數(shù)字中頻信號合成,F(xiàn)PGA通過DSP的外部存儲器接口(EMIF)與DSP相連,F(xiàn)PGA作為DSP外接的異步存儲器與DSP進行數(shù)據(jù)交互。D/A轉(zhuǎn)換模塊將FPGA輸出的數(shù)字中頻信號轉(zhuǎn)換為模擬中頻信號,本設(shè)計有3路D/A轉(zhuǎn)換模塊,一路D/A生成GPS L1和BDS B1I頻點的模擬中頻信號,另外2路D/A分別輸出BDS B2I和BDS B3頻點的模擬中頻信號。3路射頻上變頻電路分別將D/A輸出的模擬中頻信號上變頻至對應(yīng)頻點的射頻信號。Flash芯片用于存儲DSP引導(dǎo)裝載所需的代碼和系統(tǒng)初始化時所需參數(shù)。SDRAM用于存儲DSP程序中占用空間大且使用頻率低的變量和數(shù)組。

2 硬件電路設(shè)計

  2.1 D/A轉(zhuǎn)換模塊電路設(shè)計

  為了將生成的BDS、GPS多頻點數(shù)字中頻信號轉(zhuǎn)換為模擬信號,需要多路D/A轉(zhuǎn)換電路來完成。本系統(tǒng)選用AD9742實現(xiàn)中頻信號的數(shù)模轉(zhuǎn)換。AD9742是ADI公司的一款低功耗、高性能、量化精度為12 bit的D/A轉(zhuǎn)換芯片,其最高采樣速率可達165 MS/s。本系統(tǒng)采用3片AD9742實現(xiàn)GPS L1和BDS B1、B2、B3頻點中頻信號的數(shù)模轉(zhuǎn)換,其中GPS L1和BDS B1I信號從一路DA輸出。本系統(tǒng)GPS L1和BDS B1、B2、B3信號的中頻頻率分別為20.42 MHz、6.098 MHz、7.140 MHz和18.520 MHz。D/A轉(zhuǎn)換模塊電路示意圖如圖2所示。

圖像 002.png

圖2  D/A轉(zhuǎn)換模塊電路示意圖

  2.2 射頻上變頻模塊電路設(shè)計

  射頻上變頻模塊是系統(tǒng)的重要組成部分,上變頻模塊主要實現(xiàn)信號調(diào)制、上變頻、功率放大、功率調(diào)節(jié)等功能。本文選用ADRF6755作為上變頻模塊。ADRF6755集成正交調(diào)制器、頻率合成器和可編程衰減器,輸出信號頻率范圍為100 MHz~2 400 MHz,滿足本設(shè)計輸出信號頻率的要求。ADRF6755片內(nèi)集成有一個數(shù)字控制輸出衰減器,功率調(diào)節(jié)范圍為47 dB,步進為1 dB。本設(shè)計中信號采用差分方式從I路輸入;通過SPI接口對片內(nèi)寄存器進行設(shè)置,可以實現(xiàn)不同頻率的信號輸出。GPS L1和BDS B1、B2、B3信號的射頻頻率分別為1 575.42 MHz、

  1 561.098 MHz、1 207.140 MHz和1 268.520 MHz,對應(yīng)本振頻率分別為1 555 MHz、1 555 MHz、1 200 MHz和1 250 MHz。本設(shè)計的上變頻模塊電路示意圖如圖3所示。

圖像 003.png

圖3  上變頻模塊電路示意圖

  2.3 DSP與FPGA接口設(shè)計

  DSP通過EMIF接口與FPGA進行通信,同時,將DSP的外部中斷信號、多通道緩沖串行口(MCBSP0)信號與FPGA的I/O引腳相連,以實現(xiàn)DSP與FPGA之間的靈活控制及通信。DSP與FPGA電路連接示意圖如圖4所示。

圖像 004.png

圖4  DSP與FPGA電路連接示意圖

  圖4中,AOEN、AWEN、TCE信號為片選和使能信號,用于控制DSP與FPGA之間的讀寫時序;MCBSP0信號復(fù)位FPGA;EXTINT4和EXTINT5信號分別觸發(fā)DSP芯片的中斷4和中斷5。

3 軟件結(jié)構(gòu)設(shè)計

  3.1 DSP信息處理模塊軟件設(shè)計

  DSP信息處理模塊主要完成系統(tǒng)初始化信息提取、信號生成參數(shù)計算和系統(tǒng)控制參數(shù)計算等功能。首先DSP接收上位機軟件下發(fā)的場景文件和星歷文件,并提取相關(guān)信息。然后根據(jù)場景文件生成載體運動軌跡;根據(jù)星歷文件中的星歷參數(shù)計算所有衛(wèi)星的空間坐標,判斷衛(wèi)星的可見狀況;實時計算可見衛(wèi)星和載體之間的偽距及偽距變化率,進而得到系統(tǒng)仿真起始時間的信號初始狀態(tài),并計算出初始碼相位、初始載波相位、整數(shù)碼片數(shù)、碼頻率控制字和載波頻率控制字。分別對BDS和GPS進行電文編碼,并預(yù)存導(dǎo)航電文。DSP完成系統(tǒng)初始化計算后,發(fā)送通道狀態(tài)字給FPGA,F(xiàn)PGA開始生成信號。系統(tǒng)啟動以后,DSP實時更新信號生成參數(shù),并通過EMIF與FPGA進行數(shù)據(jù)交互。DSP算法流程如圖5所示。

圖像 005.png

圖5  DSP算法流程圖

  本設(shè)計采用數(shù)控振動器合成數(shù)字中頻信號,由于衛(wèi)星和用戶載體存在相對運動,存在多普勒頻率偏移;同理,測距碼和導(dǎo)航電文也存在多普勒頻移[2]。當用戶處于高動態(tài)運動狀態(tài)時,多普勒頻移將對接收機的定位造成很大的影響。為實時模擬多普勒頻移,需要實時調(diào)整數(shù)控振蕩器的頻率控制字。本文以BDS B1I信號為例,介紹多普勒效應(yīng)對模擬器輸出信號頻率的影響。衛(wèi)星播發(fā)的B1I信號的頻率為1 561.096 MHz,由于衛(wèi)星和用戶接收設(shè)備存在相對運動,用戶接收到的B1I信號的頻率不精確為1 561.096 MHz。模擬器模擬的是接收機射頻前端接收到的衛(wèi)星信號[4],因此模擬器輸出的射頻信號不固定為1 561.096 MHz,NCO頻率控制字K不是固定不變的,K隨中頻信號頻率變化而變化。假設(shè)衛(wèi)星和用戶接收設(shè)備不存在多普勒效應(yīng),則頻率控制字Kbase的計算方法為[4]:

   QQ圖片20161110093559.png

  式中,IFB1I為設(shè)定的BDS B1I信號的中心頻率;fclk為系統(tǒng)時鐘頻率;N為NCO中相位累加器的位寬。假設(shè)NCO中設(shè)定的頻率控制字的更新間隔為Δt,本地接收機t時刻偽距為rt,則t時刻接收到的衛(wèi)星信號的發(fā)射時間ts(t)為:

  QQ圖片20161110093603.png

  本地接收機t+Δt時刻偽距為rt+Δt,則t+Δt時刻接收到的衛(wèi)星信號的發(fā)射時間ts(t+Δt)為:

  QQ圖片20161110093607.png

  用戶接收設(shè)備在Δt時間內(nèi)前后兩次接收到衛(wèi)星信號,而這兩次衛(wèi)星信號發(fā)射的時間間隔Δts為:

  QQ圖片20161110093610.png

  由此可得,Δt時間間隔內(nèi)載波頻率控制字和偽碼頻率控制字分別為:

  QQ圖片20161110093613.png

  式中,Kcarr表示載波頻率控制字,Kcode表示碼頻率控制字,fB1I表示BDS B1I信號偽碼速率。

  3.2 FPGA信號生成模塊軟件設(shè)計

  本設(shè)計中FPGA模塊主要功能包括偽碼生成、載波生成、偽碼調(diào)制、載波調(diào)制、系統(tǒng)時序控制和數(shù)字中頻信號合成。本文研制的衛(wèi)星信號模擬器FPGA模塊結(jié)構(gòu)框圖如圖6所示。

圖像 006.png

圖6  FPGA模塊結(jié)構(gòu)框圖

  FPGA模塊以通道為基本單元,總共包含48個信號通道,1~12號通道合成GPS L1信號,13~24號通道合成BDS B1I信號,25~36號通道合成BDS B2I信號,37~48號通道合成BDS B3信號。

  系統(tǒng)初始化階段,F(xiàn)PGA在接收到DSP發(fā)送的載波NCO參數(shù)、碼NCO參數(shù)、導(dǎo)航電文和通道狀態(tài)字后,從通道狀態(tài)字中提取衛(wèi)星號并選擇對應(yīng)的信號通道,然后進行導(dǎo)航電文NH調(diào)制、偽碼調(diào)制、載波調(diào)制,合成與衛(wèi)星號相對應(yīng)頻段信號的偽碼和載波,最后將同一個頻段的多個多通道信號進行合成,生成數(shù)字中頻信號。同一個衛(wèi)星導(dǎo)航系統(tǒng)的FPGA各信號通道的模塊結(jié)構(gòu)基本相同,BDS系統(tǒng)和GPS系統(tǒng)FPGA信號通道的差異在于信號調(diào)制過程中BDS系統(tǒng)MEO衛(wèi)星信號需對導(dǎo)航電文進行NH碼調(diào)制,再進行偽碼調(diào)制;而GPS L1信號不需要進行NH調(diào)制。FPGA各模塊主要功能為:

  (1)RTC時序控制模塊。衛(wèi)星信號模擬器要求時鐘嚴格同步,即各個芯片或者器件都必須同源。該模塊主要功能為協(xié)調(diào)控制系統(tǒng)各模塊之間的工作,給DSP模塊提供中斷信號。

  (2)載波NCO模塊。FPGA模塊采用數(shù)控振蕩器來生成衛(wèi)星信號的數(shù)字載波。本設(shè)計中將MATLAB軟件生成正余弦的幅值表存入FPGA的ROM核中,然后通過相位查詢表生成相應(yīng)頻率的載波信號[5]。

  (3)碼NCO模塊。FPGA模塊采用數(shù)控振蕩器來生成衛(wèi)星信號偽碼。BDS和GPS衛(wèi)星的偽碼通過MATLAB軟件生成,偽碼序列存放在FPGA的 ROM核中,其中GPS系統(tǒng)的每個信號通道中的ROM核中都存儲有GPS系統(tǒng)32顆衛(wèi)星的偽碼表。

  (4)信號調(diào)制合成模塊。信號調(diào)制的主要功能是實現(xiàn)各系統(tǒng)導(dǎo)航電文的讀取和同步,完成偽碼、導(dǎo)航電文和載波的調(diào)制,實現(xiàn)多路信號的合成,控制通道的狀態(tài)和配置等。本設(shè)計中選用12 bit的D/A模塊,這要求多個通道信號合成后為12 bit,需要對每個通道輸出數(shù)字中頻信號的高位進行擴展,在合成信號輸出至D/A模塊時,只綁定合成信號的高12 bit到D/A模塊的物理引腳。

  (5)數(shù)據(jù)交互模塊。系統(tǒng)采用DSP模塊的EMIF方式實現(xiàn)數(shù)據(jù)交互。DSP和FPGA交互的數(shù)據(jù)主要包括:載波初始相位、載波頻率控制字、碼初始相位、碼頻率控制字和通道狀態(tài)字等。

4 測試結(jié)果

  根據(jù)接收機定位解算的結(jié)果與模擬器預(yù)設(shè)的載體運動軌跡進行比較,根據(jù)接收機定位誤差的大小來驗證模擬器信號的正確性。模擬器模擬的載體位置緯度為北緯31°、東經(jīng)121°、海拔高度50 m,測試采用泰斗微電子科技有限公司生產(chǎn)的基帶、射頻一體化接接收模塊TD3020C,BDS B1I信號定位結(jié)果如圖7所示。由圖7分析可知,在緯度和經(jīng)度方向的定位誤差大概在2 m之內(nèi),高度方向的定位誤差在5 m之內(nèi)。定位結(jié)果說明,本文所設(shè)計的衛(wèi)星信號模擬器工作正常,能正確模擬導(dǎo)航衛(wèi)星信號。

圖像 007.png

圖7  BDS B1I信號定位結(jié)果

5 結(jié)束語

  為便于接收機的研發(fā)和測試,本文設(shè)計了一種BDS/GPS雙模多頻點衛(wèi)星信號模擬器,在DSP+FPGA硬件平臺上實現(xiàn)了系統(tǒng)功能。對系統(tǒng)功能進行了測試,測試結(jié)果表明,系統(tǒng)可以準確模擬衛(wèi)星信號。該系統(tǒng)可以應(yīng)用于導(dǎo)航儀、接收機生產(chǎn)廠商,也可以應(yīng)用于衛(wèi)星導(dǎo)航科研院所等單位。

  參考文獻

  [1] 王海峰,張升康,王宏博,等.GPS/BDS組合導(dǎo)航態(tài)信號模擬器關(guān)鍵技術(shù)研究[J].宇航計測技術(shù),2013,33(3):17-22.

  [2] 于厚鋼.高動態(tài)GPS衛(wèi)星信號模擬器的基帶數(shù)字信號處理實現(xiàn)[D].北京:北京郵電大學(xué),2009.

  [3] 李曉敏.GPS/BD雙模衛(wèi)星信號模擬器的數(shù)字信號實現(xiàn)[D].北京:北京郵電大學(xué),2013. 

  [4] 趙軍祥.高動態(tài)智能GPS衛(wèi)星信號模擬器軟件數(shù)學(xué)模型研究[D].北京:北京航空航天大學(xué),2003.

  [5] 保玲,佘世剛,周毅,等.應(yīng)用于數(shù)字鎖相環(huán)的NCO設(shè)計[J].電子設(shè)計工程,2011,19(14):160-162.

  


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