文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.07.018
中文引用格式: 陳嘯,李廣俠,李志強(qiáng),等. 基于多片F(xiàn)PGA的FHDS衛(wèi)星測(cè)控信號(hào)捕獲設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2016,42(7):72-75.
英文引用格式: Chen Xiao,Li Guangxia,Li Zhiqiang,et al. Multi-FPGA acquisition of FHDS satellite TT&C signal[J].Application of Electronic Technique,2016,42(7):72-75.
0 引言
現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)具有可重復(fù)編程、開(kāi)發(fā)周期短、運(yùn)算能力強(qiáng)等特點(diǎn),與外圍電路、ADC芯片以及程序存儲(chǔ)器(PROM)等配合能夠?qū)崿F(xiàn)復(fù)雜的通信和信號(hào)處理功能。隨著微電子技術(shù)的發(fā)展,宇航級(jí)FPGA的硬件體系從問(wèn)世時(shí)的1 200門(mén)發(fā)展到當(dāng)今的數(shù)百萬(wàn)門(mén)甚至千萬(wàn)門(mén)級(jí),為航天領(lǐng)域?qū)崟r(shí)信號(hào)處理問(wèn)題提供了解決平臺(tái)[1]。
我國(guó)陸基衛(wèi)星測(cè)控網(wǎng)和中繼衛(wèi)星測(cè)控均以直接序列擴(kuò)頻測(cè)控體制為主,具有抗干擾、測(cè)距精度較高、一站對(duì)多星測(cè)控等優(yōu)點(diǎn)[2]。跳頻和直接序列(FHDS)混合擴(kuò)頻測(cè)控信號(hào)綜合了跳頻擴(kuò)頻和直接序列擴(kuò)頻的優(yōu)點(diǎn),測(cè)控信號(hào)抗截獲、抗干擾能力得到有效提升。與直擴(kuò)信號(hào)相比,F(xiàn)HDS信號(hào)帶寬更寬,相應(yīng)的自相關(guān)函數(shù)峰也更窄,捕獲時(shí)間搜索精度要求也隨之提高。因此在設(shè)計(jì)跳擴(kuò)測(cè)控信號(hào)接收機(jī)時(shí)捕獲計(jì)算復(fù)雜度增加,在高等級(jí)宇航級(jí)芯片來(lái)源受控時(shí),單片宇航級(jí)芯片單獨(dú)工作無(wú)法保證捕獲時(shí)間,需要采用多片F(xiàn)PGA設(shè)計(jì)方案[3]。
1 捕獲模型與算法設(shè)計(jì)
1.1 捕獲運(yùn)算模型
首先分析捕獲運(yùn)算模型,以便劃分各FPGA的數(shù)字信號(hào)處理功能。本地產(chǎn)生的中頻跳擴(kuò)頻信號(hào)可表示為:
其中A為接收信號(hào)功率,τ表示收發(fā)信號(hào)之間時(shí)間差。若收發(fā)信機(jī)之間相對(duì)的徑向運(yùn)動(dòng)速度為v,則跳頻點(diǎn)fi處的多普勒頻率滿足:
跳擴(kuò)信號(hào)參數(shù)設(shè)置如表1所示。
捕獲運(yùn)算的運(yùn)算復(fù)雜度主要在于跳擴(kuò)信號(hào)與跳擴(kuò)信號(hào)取共軛后的滑動(dòng)搜索-相關(guān)運(yùn)算:
1.2 FPGA捕獲分工與算法描述
為了解決高處理性能的宇航級(jí)FPGA貨源不足條件下的捕獲,需要設(shè)計(jì)適用于多片低處理性能FPGA的軟件[8],將相關(guān)運(yùn)算化解為:
捕獲模型確定后,對(duì)捕獲算法進(jìn)行描述。多普勒并行搜索是分時(shí)進(jìn)行的,每次搜索增加Δv,時(shí)域搜索通過(guò)多片F(xiàn)PGA并行完成。基于多片F(xiàn)PGA的捕獲算法流程設(shè)計(jì)如下:
(1)將多普勒值和時(shí)延范圍劃分為若干個(gè)搜索單元,搜索粒度為:
(2)主FPGA完成跳頻載波剝離。在搜索控制邏輯控制之下,解跳采用雙路下變頻器交替解跳。下變頻器分為M個(gè),每個(gè)下變頻器負(fù)責(zé)Nhop/M個(gè)跳頻點(diǎn)內(nèi)信號(hào)的解跳,解跳總時(shí)長(zhǎng)均為NhopTh。下變頻器解跳輸出下抽到2倍碼片速率后,每個(gè)頻點(diǎn)上的解跳結(jié)果補(bǔ)零到2L個(gè)數(shù)據(jù)點(diǎn),L為2的整數(shù)次冪。將L個(gè)數(shù)據(jù)點(diǎn)存入FPGA中的RAM,進(jìn)入步驟(3)。
(3)主FPGA完成碼剝離。讀取RAM中解跳結(jié)果,按照經(jīng)典的FFT-IFFT碼相關(guān)算法,進(jìn)行Nhop次2L點(diǎn)FFT-IFFT運(yùn)算,取出Nhop組L點(diǎn)相關(guān)結(jié)果,送入N片副FPGA中保存。
2 多片F(xiàn)PGA解決方案
2.1 硬件架構(gòu)
Xilinx提供的宇航級(jí)芯片V4芯片具有豐富的邏輯資源和布線資源,能夠完成乘法、存儲(chǔ)、通信任務(wù),其I/O資源也能滿足多FPGA之間的通信需求。
基于多片F(xiàn)PGA的測(cè)控信號(hào)捕獲的典型平臺(tái)如圖1所示,捕獲硬件結(jié)構(gòu)由模擬數(shù)字轉(zhuǎn)換(ADC)、程序存儲(chǔ)ROM(PROM)、跳擴(kuò)碼模塊、時(shí)鐘電路以及FPGA芯片組構(gòu)成。FPGA芯片組采用的是“主從”星形結(jié)構(gòu),即主FPGA控制副FPGA進(jìn)行工作,PROM共提供兩套FPGA軟件分別用于主FPGA和副FPGA。架構(gòu)中各器件功能簡(jiǎn)介如下:
(1)雙路ADC:將射頻下變頻到中頻的跳擴(kuò)信號(hào)進(jìn)行模擬-數(shù)字轉(zhuǎn)換,送入主FPGA。
(2)時(shí)鐘單元:產(chǎn)生FPGA工作時(shí)鐘。
(3)FPGA:完成基帶數(shù)字信號(hào)處理功能。經(jīng)過(guò)對(duì)芯片面積、邏輯資源、I/O資源分析,將FPGA功能劃分為:主FPGA負(fù)責(zé)跳擴(kuò)信號(hào)的解跳、捕獲流程控制、多片F(xiàn)PGA之間通信控制;副FPGA在主FPGA控制下完成跳擴(kuò)信號(hào)并行捕獲;所有1+N片F(xiàn)PGA同步工作,工作時(shí)鐘鎖相到主FPGA工作時(shí)鐘。
(4)PROM:用于存儲(chǔ)FPGA配置信息,捕獲系統(tǒng)加電時(shí)完成對(duì)FPGA的加載。PROM1連接到主FPGA的SelectMAP模式配置引腳,PROM2連接到副FPGA的配置引腳[9]。
2.2 主FPGA軟件設(shè)計(jì)
主FPGA完成捕獲控制、多FPGA通信和解跳解擴(kuò)功能。模塊間信號(hào)流圖如圖2所示,由于篇幅所限未標(biāo)明時(shí)鐘clk和復(fù)位rst信號(hào)。模塊命名和功能如下:
(1)AcqCtrl:捕獲總控制
捕獲啟動(dòng)和停止,捕獲流程控制,多FPGA極大值之間比較大小。
(2)Dehop:并行解跳
采用M個(gè)乘法器,實(shí)現(xiàn)時(shí)延范圍為(M-1)Th的并行解跳,將解跳結(jié)果送入解擴(kuò)模塊。
(3)Despread:快速解直擴(kuò)
完成直擴(kuò)碼剝離,進(jìn)行碼相關(guān)時(shí)長(zhǎng)為1個(gè)跳頻時(shí)段的直擴(kuò)碼滑動(dòng)相關(guān),將滑動(dòng)相關(guān)運(yùn)算的結(jié)果以Nhop為一組送到輸出接口。
(4)FPGACom:片間通信
單跳相關(guān)峰輸出,副FPGA控制接口,相關(guān)運(yùn)算數(shù)據(jù)交換接口。
2.3 副FPGA軟件設(shè)計(jì)
副FPGA的任務(wù)是完成碼片以內(nèi)的時(shí)間精細(xì)搜索和相關(guān)運(yùn)算,比較得到該FPGA負(fù)責(zé)的時(shí)段內(nèi)的極大值和捕獲結(jié)果并送給主FPGA。邏輯功能劃分如圖3所示。
副FPGA子模塊功能分別為:
(1)ScanCtrl:時(shí)延搜索控制
當(dāng)主FPGA發(fā)出搜索指令,開(kāi)始搜索。每次相乘累加比較大小后,時(shí)延搜索單元前進(jìn)一格,搜索完成后退出。
(2)Dem:相乘累加
此模塊中包含相位映射模塊、復(fù)數(shù)乘法器(Multiply)和累加模塊。
相位映射模塊根據(jù)精細(xì)時(shí)延值計(jì)算出相位,查正弦表后得到正弦和余弦值。與接收的復(fù)數(shù)信號(hào)進(jìn)行復(fù)數(shù)相乘和Nhop次累加運(yùn)算后得到時(shí)長(zhǎng)為T(mén)hNhop的相干累積結(jié)果。
(3)Compare:比較大小
按Dem輸出的值和使能信號(hào)進(jìn)行逐個(gè)比較,保留極大值及其對(duì)應(yīng)精確時(shí)延,比較結(jié)束后輸出最大值(Rmax,τn)送往主FPGA。
2.4 FPGA間通信設(shè)計(jì)
如圖4所示,主FPGA與副FPGA之間的引腳連接須完成副FPGA捕獲控制解決信號(hào)交互問(wèn)題。信號(hào)交互接口分為兩類,一類是主FPGA輸出,包含搜索控制和預(yù)處理數(shù)據(jù),在主FPGA內(nèi)合路同時(shí)送往各個(gè)副FPGA。另一類是各副FPGA輸出,將捕獲搜索得到的極大值和捕獲結(jié)果并行輸入主FPGA。
3 實(shí)現(xiàn)情況
3.1 時(shí)鐘與芯片資源使用
時(shí)鐘速率可達(dá)200 MHz。面積占用:主FPGA占用60%,副FPGA占用78%。I/O資源占用:主FPGA占用70%,副FPGA占用50%。
3.2 試驗(yàn)結(jié)果
在以FPGA為處理核心的基帶板上進(jìn)行了實(shí)物驗(yàn)證,試驗(yàn)環(huán)境包括安捷倫E4438C信號(hào)源2臺(tái)、XX型衛(wèi)星應(yīng)答機(jī)射頻通道、基于單片Xilinx Virtex3的基帶板一副、基于多片Virtex4的基帶板一副,以及電源、連接線若干。V3基帶板完成發(fā)送中頻跳擴(kuò)測(cè)控信號(hào)的功能,信號(hào)源負(fù)責(zé)信號(hào)上變頻和射頻加噪,應(yīng)答機(jī)射頻通道用于下變頻,V4基帶板實(shí)現(xiàn)跳擴(kuò)測(cè)控信號(hào)的解跳解擴(kuò)和捕獲功能。
4 結(jié)束語(yǔ)
多FPGA設(shè)計(jì)可用于快速信號(hào)處理、軍事目標(biāo)匹配等方面。在FPGA芯片來(lái)源受限時(shí),多FPGA能解決航天測(cè)控信號(hào)的捕獲問(wèn)題,其中FPGA之間的通信設(shè)計(jì)和捕獲算法的邏輯分割是FPGA設(shè)計(jì)的關(guān)鍵。
參考文獻(xiàn)
[1] 張承暢.多FPGA系統(tǒng)的關(guān)鍵問(wèn)題及應(yīng)用研究[D].重慶:重慶大學(xué),2011.
[2] 于志堅(jiān).我國(guó)航天測(cè)控系統(tǒng)的現(xiàn)狀與發(fā)展[J].中國(guó)工程科學(xué),2006(10):42-46.
[3] 古海云,孫大有.多片F(xiàn)PGA系統(tǒng)互連結(jié)構(gòu)研究[J].微電子學(xué)與計(jì)算機(jī),2003,20(8):128-129.
[4] 程劍.基于變換域的衛(wèi)星導(dǎo)航信號(hào)快速捕獲研究與實(shí)現(xiàn)[D].南京:解放軍理工大學(xué),2007.
[5] 劉繼承,邵定蓉.DS/FH混合擴(kuò)頻接收機(jī)解擴(kuò)及同步技術(shù)的FPGA實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2003,29(1):56-59.
[6] 陳嘯,李志強(qiáng),朱文明,等.基于子帶累積的DS/FH衛(wèi)星測(cè)控信號(hào)捕獲算法[J].飛行器測(cè)控學(xué)報(bào),2013,32(1):61-65.
[7] 陳嘯,李廣俠,李志強(qiáng),等.基于FPGA的低截獲概率信號(hào)捕獲系統(tǒng)[J].微型機(jī)與應(yīng)用,2016,35(9):30-33.
[8] ?;ⅲ顫?,韓俊剛,等.多態(tài)并行處理器的數(shù)據(jù)通信和路由器的設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2014,40(8):38-40.
[9] 趙陸文,繆志敏,張北江,等.利用PowerPC對(duì)多片F(xiàn)PGA并行配置的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2014,40(8):17-19.