邵曉剛,宋茂忠
(南京航空航天大學(xué)江蘇南京211100)
導(dǎo)航衛(wèi)星信號模擬器能夠模擬動態(tài)衛(wèi)星運動過程中接收機接收的衛(wèi)星信號,為接收機特別是高動態(tài)高精度接收機的研制、測試提供模擬環(huán)境,同時也可以用于系統(tǒng)級仿真試驗[1]。在研制導(dǎo)航衛(wèi)星信號模擬器時候,需要大量的浮點計算以及基帶信號生成,現(xiàn)在多采用基于“DSP+FPGA”的架構(gòu)來進行導(dǎo)航信號模擬器的研制[2]。DSP作為參數(shù)計算部分用來實時產(chǎn)生衛(wèi)星信號的狀態(tài)參數(shù)、控制參數(shù)和導(dǎo)航電文,F(xiàn)PGA主要進行基帶信號處理與中頻生成,DSP與FPGA數(shù)據(jù)通信時易產(chǎn)生數(shù)據(jù)丟失,系統(tǒng)不穩(wěn)定,需要進行參數(shù)傳輸設(shè)計[3]。
基于“DSP+FPGA”的架構(gòu)設(shè)計GPS衛(wèi)星信號模擬器,DSP芯片采用TI公司的高速浮點型處理器TMS320C6713B,具有強大的通用信號處理能力[4]。FPGA采用ALTERA CycloneII系列芯片,門數(shù)資源非常豐富,可滿足目前絕大多數(shù)的信號處理硬件編程和控制[5]。DSP與FPGA之間傳輸?shù)膮?shù)表現(xiàn)為載波控制字、碼控制字、復(fù)位與啟動控制信號、導(dǎo)航電文等?;谏鲜銎脚_DSP通過32位EMIF總線往FPGA發(fā)送上述數(shù)據(jù),由于EMIF總線輸入的時鐘速率和基帶讀取的時鐘速率不同,這就會產(chǎn)生異步數(shù)據(jù)跨時鐘域的傳輸問題,易造成亞穩(wěn)態(tài)[6],這里通過異步FIFO來緩存DSP端發(fā)送過來的大量導(dǎo)航數(shù)據(jù)[7]。
DSP與FPGA在硬件上通過EMIF連接,外部存儲器接口是TI DSP器件上的一種接口,EMIF可實現(xiàn)DSP與不同類型存EMIF可實現(xiàn)DSP與不同類型存儲器的連接[8]。FPGA掛接在DSP EMIF CE2空間,該空間配置為32位異步存儲器,如圖1所需接口信號。
圖1 EMIF接口原理圖
TED作為32位數(shù)據(jù)信號,TEA作為地址信號,TSDWEn作為寫使能信號,EXINT為中斷反饋信號。其中FPGA地址分配為0x01XY0,其中X作為衛(wèi)星通道選擇,Y作為參數(shù)類型選擇[9]。
在導(dǎo)航模擬源中,為增加數(shù)據(jù)傳輸率、處理大量數(shù)據(jù)流、匹配具有不同傳輸率的系統(tǒng)為目的而廣泛使用異步FIFO緩存器,從而提高了系統(tǒng)性能。異步FIFO緩存器是一個先入先出的雙口緩沖器,對連續(xù)的數(shù)據(jù)流進行緩存,防止在進機制和存儲操作時丟失數(shù)據(jù),為避免頻繁的總線操作,數(shù)據(jù)需集中起來進行存儲與讀取[10],如圖2所示。
圖2 異步FIFO原理圖
由于導(dǎo)航電文作為最重要的傳輸參數(shù),而且傳輸?shù)臄?shù)據(jù)量比較大且只有’1’和’0’兩種狀態(tài),可作為異步信號處理。異步信號跨時鐘域傳輸時,不滿足建立時間(setup time)和保持時間(hold time)[11],會造成采樣的不準確,所以我們這里采用了異步FIFO來對導(dǎo)航電文進行緩存。ALTERA的FPGA開發(fā)環(huán)境中提供異步FIFO內(nèi)核,我們只需要基于該內(nèi)核做接口開發(fā),這樣可以降低編程難度,提高系統(tǒng)的穩(wěn)定性。這里主要需要完成的是接口的信號設(shè)計,DSP往FPGA中寫接口信號包括寫時鐘以及寫使能其中寫使能信號表 達 為=20'h01210)&&(TSDWEn==0)。
控制字的計算是基于FPGA中斷而進行的,在FPGA基帶處理模塊中進行時序控制,每隔100 ms產(chǎn)生一個EXINT中斷,DSP通過IO口檢測到中斷后,進行一次載波以及碼控制字的計算[12],控制字取32位,每次傳輸過來由于需要跨時鐘域,未免出現(xiàn)在基帶中控制字采樣時出現(xiàn)亞穩(wěn)態(tài),所以這里做了一個簡單的電平同步器[13]。電平同步器原理圖如圖3所示。
圖3 同步器原理圖
簡單的同步器,是由兩個觸發(fā)器級聯(lián)產(chǎn)生的,中間沒有其他組合邏輯。這種方法是通過保證后面的觸發(fā)器在接收前面觸發(fā)器的輸出的時候,前面的觸發(fā)器已經(jīng)不再處于亞穩(wěn)態(tài),實現(xiàn)輸出穩(wěn)定?;鶐幚碇巴ㄟ^Verilog HDL編程做兩級觸發(fā)器級聯(lián)[14],控制字數(shù)據(jù)經(jīng)過時鐘沿同步后,延遲時間為基帶時鐘域的1~2個時鐘周期,這樣輸出的數(shù)據(jù)就被同步到基帶的時鐘域中,避免出現(xiàn)亞穩(wěn)態(tài),數(shù)據(jù)丟失[15]。
本實驗?zāi)M產(chǎn)生13號GPS衛(wèi)星信號,在Quartus開發(fā)環(huán)境下根據(jù)FIFO內(nèi)核設(shè)計了信號接口,先將DSP計算出的導(dǎo)航電文通過根據(jù)時序要求選擇地址總線和數(shù)據(jù)總線通過EMIF發(fā)送給FPGA中的異步FIFO,然后再發(fā)送啟動模擬信號,這樣FPGA自己產(chǎn)生時序讀取異步FIFO中的導(dǎo)航電文數(shù)據(jù),輸出NAV_OUT_13,再和生成的偽碼CA_CODE13異或輸出code13,運用Quartus中的Signal Tap工具抓取了FIFO輸出的導(dǎo)航電文以及生成偽碼信號,如圖4所示。FPGA基帶處理生成了13號星的中頻信號,在經(jīng)過DA生成中頻模擬信號,最后生成射頻信號發(fā)射出去。運用GP2015采集射頻出去的13號衛(wèi)星,成功捕獲并且解調(diào)出導(dǎo)航電文,結(jié)果如圖5所示。
圖4 導(dǎo)航電文與碼信號輸出
圖5 解調(diào)出導(dǎo)航電文中的星歷參數(shù)
在設(shè)計導(dǎo)航衛(wèi)星信號模擬源時候,基于“DSP+FPGA”的架構(gòu)研制,能很好的滿足實時性,可靠性要求。但是在DSP[16-17]與FPGA通過總線交互數(shù)據(jù)時往往會產(chǎn)生跨時鐘域的異步數(shù)據(jù)傳輸?shù)膯栴},通過異步FIFO和電平同步器的設(shè)計能很好地解決這個問題,減少亞穩(wěn)態(tài)的,提高系統(tǒng)的穩(wěn)定性。
[1]賈超廣,肖海霞.基于衛(wèi)星信號模擬器的北斗接收機性能測試與分析[J].導(dǎo)航定位學(xué)報,2013,1(3):14-16.
[2]任風華,符強,紀元法.GPS模擬器的FPGA實現(xiàn)及其雜散研究[J].計算機測量與控制2013,21(8):2224-2226.
[3]劉志國.衛(wèi)星導(dǎo)航信號模擬器研究與實現(xiàn)[D].太原:中北大學(xué),2014.
[4]賀璽,楊述斌,曹珩.基于DSP和FIFO信號采集系統(tǒng)硬件設(shè)計及實現(xiàn)[J].武漢工程大學(xué)學(xué)報,2011,33(1):79-83.
[5]冀臻.GNSS衛(wèi)星信號模擬器研究與實現(xiàn)[D].太原:中北大學(xué),2011.
[6]黃隸凡,鄭學(xué)仁.FPGA設(shè)計中的亞穩(wěn)態(tài)研究[J].微電子學(xué),2011,41(2):255-273.
[7]胡波,李鵬.異步FIFO在FPGA與DSP通信中的運用[J].電子科技,2011,24(3):53-55.
[8]楊龍,李范鳴,劉士建.DSP EMIF與FPGA雙口RAM高速通信實現(xiàn)[J].現(xiàn)代電子技術(shù),2014,37(13):10-13.
[9]王普.GPS衛(wèi)星信號模擬源控制字計算和DSP數(shù)據(jù)接口[J].電子技術(shù)與軟件工程,2016:44-45.
[10]司嵐山.一種高速大容量異步FIFO存儲器設(shè)計[D].無錫:江南大學(xué),2013.
[11]唐輝艷,李紹勝.FPGA設(shè)計中跨時鐘域同步方法的研究[J].鐵路計算機應(yīng)用,2011,20(5):43-47.
[12]肖晶晶.實時多通道GPS信號模擬器的設(shè)計與實現(xiàn)[D].北京:清華大學(xué),2011.
[13]趙曉海.跨時鐘域信號的幾種同步方法研究[J].電子設(shè)計應(yīng)用,2012,20(7):139-144.
[14]張智明.基于FPGA的位同步電路設(shè)計[J].現(xiàn)代電子技術(shù),2016,39(4):132-134.
[15]王曉婷.跨時鐘域設(shè)計方法研究[D].西安:西安電子科技大學(xué),2012.
[16]倪原,劉琦,秦東旭,等.基于雙DSP的某飛行器飛行姿態(tài)控制系統(tǒng)的軟件設(shè)計[J].西安工業(yè)大學(xué)學(xué)報,2015(1):52-56.
[17]李忠楠,楊冰,王強,等.一種用于電力線通信的次優(yōu)交織算法與DSP實現(xiàn)[J].電力信息與通信技術(shù),2014(7):12-16.