1 分布式干擾系統(tǒng)對(duì)嵌入式網(wǎng)關(guān)設(shè)計(jì)的要求
根據(jù)分布式干擾系統(tǒng)的作戰(zhàn)運(yùn)用背景,在設(shè)計(jì)嵌入式網(wǎng)關(guān)硬件平臺(tái)時(shí)應(yīng)從以下幾個(gè)方面考慮:
?。?)微型化。嵌入式網(wǎng)關(guān)應(yīng)該在體積上足夠小,保證分布式干擾系統(tǒng)的小型化。
?。?)擴(kuò)展性和靈活性。分布式干擾系統(tǒng)需要定義統(tǒng)一、完整的外部接口,方便軟硬件系統(tǒng)的升級(jí),其嵌入式網(wǎng)關(guān)也應(yīng)具有擴(kuò)展性和靈活性,可以根據(jù)作戰(zhàn)環(huán)境的需要進(jìn)行升級(jí)。
(3)穩(wěn)定性和安全性。穩(wěn)定性要求嵌入式網(wǎng)關(guān)能夠在給定的外部環(huán)境變化范圍內(nèi)正常工作。安全性設(shè)計(jì)包括代碼安全和通信安全,是軍事領(lǐng)域應(yīng)用的基本要求。
?。?)低成本。分布式干擾系統(tǒng)的作戰(zhàn)應(yīng)用表明,系統(tǒng)是大量部署且不能回收的,因此就要嚴(yán)格限制包括嵌入式網(wǎng)關(guān)在內(nèi)的重要部件的成本。
?。?)低功耗。嵌入式網(wǎng)關(guān)的硬件設(shè)計(jì)直接決定了其能耗水平,還決定了各種軟件通過(guò)優(yōu)化可能達(dá)到的最低能耗水平。因此,要合理地設(shè)計(jì)硬件系統(tǒng),有效降低系統(tǒng)能耗。
?。?)具有一定的信號(hào)預(yù)處理能力。嵌入式系統(tǒng)中微處理器的處理能力較弱,且內(nèi)存較小,嵌入式網(wǎng)絡(luò)的速度普遍不高。這就要求嵌入式網(wǎng)關(guān)具有一定的信號(hào)預(yù)處理能力,包括下變頻功能和FFT變換功能,以此來(lái)提高網(wǎng)絡(luò)傳輸?shù)男省?/font>
2 分布式干擾系統(tǒng)中嵌入式網(wǎng)關(guān)的硬件設(shè)計(jì)
嵌入式網(wǎng)關(guān)實(shí)際上就是一個(gè)可實(shí)現(xiàn)網(wǎng)絡(luò)通信功能的嵌入式系統(tǒng)。隨著FPGA技術(shù)的迅速發(fā)展,SoPC作為一種特殊的嵌入式系統(tǒng),具備軟硬件在系統(tǒng)可編程、可裁減、可擴(kuò)充、可升級(jí)的功能,已逐漸成為一個(gè)新興的技術(shù)方向。因此,本文在設(shè)計(jì)分布式干擾系統(tǒng)的嵌入式網(wǎng)關(guān)時(shí)選用基于FPGA的SoPC解決方案,選用的實(shí)驗(yàn)平臺(tái)為Xilinx公司的ML402開(kāi)發(fā)平臺(tái)。
2.1 分布式干擾系統(tǒng)中嵌入式網(wǎng)關(guān)的硬件組成
圖1表示的是分布式干擾系統(tǒng)中嵌入式網(wǎng)關(guān)的硬件組成,這些硬件除A/D、干擾機(jī)和控制中心外都集成在一塊ML402*估板上。系統(tǒng)以帶有32位MicroBlaze微處理器軟核的FPGA作為控制中心,處理經(jīng)A/D變換后的偵察信號(hào)數(shù)據(jù),然后通過(guò)以太網(wǎng)將數(shù)據(jù)傳送到控制中心,并從控制中心傳回控制參數(shù)。DDR_SDRAM作為片外存儲(chǔ)器,用來(lái)彌補(bǔ)微處理器內(nèi)部存儲(chǔ)器容量小的缺點(diǎn);CF卡存儲(chǔ)系統(tǒng)軟硬件的bit文件和網(wǎng)絡(luò)配置文件;串口用來(lái)控制具有遠(yuǎn)程控制功能的偵察接收機(jī),也可在調(diào)試時(shí)輸出系統(tǒng)的運(yùn)行信息。本文設(shè)計(jì)的嵌入式網(wǎng)關(guān)的各功能部件在FPGA內(nèi)部都以IP核的形式構(gòu)建并連接,較好地滿(mǎn)足了分布式干擾系統(tǒng)對(duì)嵌入式網(wǎng)關(guān)硬件設(shè)計(jì)的要求。
2.2 SoPC的片上總線(xiàn)設(shè)計(jì)
受分布式干擾系統(tǒng)體積和電源能量的限制,其網(wǎng)絡(luò)通信必須采用猝發(fā)通信的方式,這就對(duì)嵌入式網(wǎng)關(guān)微處理器的處理能力提出了更高的要求。MicroBlaze微處理器的總線(xiàn)是其優(yōu)于其他同類(lèi)CPU的重要部分,每種總線(xiàn)都有鮮明的特點(diǎn)和明確的外設(shè)。只有合理使用不同的總線(xiàn)來(lái)訪(fǎng)問(wèn)不同的外設(shè),且正確地協(xié)調(diào)這些總線(xiàn)的工作,才能最大限度地發(fā)揮MicroBlaze的優(yōu)勢(shì)。因此,SoPC的片上總線(xiàn)設(shè)計(jì)是該系統(tǒng)設(shè)計(jì)的重點(diǎn)。
在本文設(shè)計(jì)的分布式干擾系統(tǒng)的嵌入式網(wǎng)關(guān)中,SysACE CF卡、中斷控制INTC、GPIO和串口UART與MieroBlaze處理器之間只進(jìn)行參數(shù)傳遞,對(duì)速度要求不高,因此使用PLB總線(xiàn)與MieroBlaze處理器和多端口內(nèi)存控制器(Multi Port Memory Controller,MPMC)相連;MPMC與Mic-roBlaze處理器之間使用XCL相連。自定義IP核FFT輸出信號(hào)的頻譜數(shù)據(jù),對(duì)傳輸速度要求很高,因此使用FSL總線(xiàn)與MicroBlaze內(nèi)部通用寄存器直接相連。DDC輸出信號(hào)的時(shí)域數(shù)據(jù),對(duì)傳輸速度要求最高;為滿(mǎn)足傳輸速度要求,本文參照以太網(wǎng)控制器Soft TEMAC開(kāi)發(fā)了XPS_LL_Exam-ple IP核,通過(guò)該IP核的LocalLink接口將信號(hào)的時(shí)域數(shù)據(jù)傳輸?shù)組PMC中進(jìn)行處理。分布式干擾系統(tǒng)的嵌入式網(wǎng)關(guān)片上總線(xiàn)設(shè)計(jì)如圖2所示。
2.3 SOPC的實(shí)現(xiàn)
本文設(shè)計(jì)的SoPC是利用Xilinx公司的嵌入式開(kāi)發(fā)套件(Embedded Development Kit,EDK)實(shí)現(xiàn)的。EDK集成了硬件平臺(tái)產(chǎn)生器、軟件平臺(tái)產(chǎn)生器、仿真模型生成器、軟件編譯器和軟件調(diào)試等工具。用戶(hù)使用EDK可以對(duì)硬件平臺(tái)進(jìn)行任意的添加和裁減,同時(shí)可以方便地添加自定義的IP核,極大地方便了開(kāi)發(fā)過(guò)程,提高設(shè)計(jì)效率。本文利用EDK實(shí)現(xiàn)圖2所示的各功能部件IP核的添加,并實(shí)現(xiàn)了IP核的地址分配和總線(xiàn)架構(gòu)、外設(shè)接口的連接。
3 分布式干擾系統(tǒng)中嵌入式網(wǎng)關(guān)的軟件設(shè)計(jì)
分布式干擾系統(tǒng)中嵌入式網(wǎng)關(guān)的軟件包括嵌入式操作系統(tǒng)和網(wǎng)絡(luò)應(yīng)用程序。EDK集成了軟件平臺(tái)產(chǎn)生器、軟件編譯器和軟件調(diào)試等工具,因此,軟件設(shè)計(jì)也在EDK進(jìn)行。
3.1 嵌入式操作系統(tǒng)的選用
嵌入式操作系統(tǒng)是嵌入式軟件技術(shù)的核心,介于嵌入式系統(tǒng)硬件和應(yīng)用程序之間,負(fù)責(zé)調(diào)度并管理應(yīng)用程序,完成對(duì)嵌入式系統(tǒng)硬件的控制和操作。嵌入式操作系統(tǒng)的選用主要考慮實(shí)時(shí)、高可靠、低功耗、可抑制性和兼容性、軟件開(kāi)發(fā)難易等因素。本文主要是對(duì)分布式干擾系統(tǒng)的網(wǎng)絡(luò)通信進(jìn)行技術(shù)驗(yàn)證,因此選擇較為簡(jiǎn)單的Xilkernel操作系統(tǒng)。
Xilkernel是Xilinx公司提供的用于EDK系統(tǒng)的小型、模塊化的嵌入式操作系統(tǒng)。Xilkernel的內(nèi)核完整,且占用CPU資源較少,運(yùn)行速度快,是中小型設(shè)計(jì)的理想操作系統(tǒng)。Xilkernel本身不帶有文件處理系統(tǒng)和TCP/IP協(xié)議棧,但與LwIP庫(kù)和Treck協(xié)議棧具有良好的接口,加上文件系統(tǒng)支持庫(kù)LibXil MFS,可形成較為復(fù)雜的嵌入式操作系統(tǒng)。
首先,在EDK的軟件平臺(tái)設(shè)置中選擇Xilkernel,并選擇相應(yīng)的文件系統(tǒng)和TCP/IP協(xié)議棧,本文選擇xilfatfs文件系統(tǒng)和lwip130協(xié)議棧。然后在操作系統(tǒng)和庫(kù)函數(shù)界面對(duì)操作系統(tǒng)進(jìn)行配置,主要進(jìn)行輸入/輸出、線(xiàn)程和計(jì)時(shí)器的設(shè)置。最后執(zhí)行產(chǎn)生庫(kù)函數(shù)和BSPs文件,即可生成與嵌入式系統(tǒng)硬件平臺(tái)相匹配的嵌入式操作系統(tǒng)環(huán)境。
3.2 網(wǎng)絡(luò)應(yīng)用程序的開(kāi)發(fā)
分布式干擾系統(tǒng)中嵌入式網(wǎng)關(guān)傳輸?shù)闹饕獢?shù)據(jù)為偵察信號(hào)時(shí)域和頻域數(shù)據(jù),直接影響著網(wǎng)絡(luò)通信的效率,因此,本文只對(duì)偵察信號(hào)時(shí)域和頻域數(shù)據(jù)的傳輸進(jìn)行檢測(cè)。網(wǎng)絡(luò)應(yīng)用程序采用順序執(zhí)行的結(jié)構(gòu)方式。為了能夠響應(yīng)外圍設(shè)備的中斷請(qǐng)求,在程序中為多個(gè)外圍設(shè)備提供了相應(yīng)的中斷服務(wù)程序。網(wǎng)絡(luò)應(yīng)用程序的流程圖如圖3所示。
4 系統(tǒng)調(diào)試
用一根千兆網(wǎng)線(xiàn)將圖1所示的硬件系統(tǒng)與PC機(jī)相連,在PC機(jī)上開(kāi)發(fā)網(wǎng)絡(luò)客戶(hù)端程序,發(fā)送控制偵察接收機(jī)的數(shù)據(jù)。使用信號(hào)線(xiàn)將AR-ONE通信接收機(jī)輸出端與A/D板相連,A/D模塊使用ADI公司的模數(shù)轉(zhuǎn)換器(ADC)AD9460。在偵察接收機(jī)受控工作時(shí),使用串口線(xiàn)將圖1所示硬件系統(tǒng)與AR-ONE通信接收機(jī)串口輸入相連;在偵察接收機(jī)自主工作和系統(tǒng)調(diào)試時(shí),使用串口線(xiàn)將圖1所示硬件系統(tǒng)與PC機(jī)相連,在超級(jí)終端中觀(guān)察系統(tǒng)運(yùn)行狀態(tài)。將信號(hào)源與AR-ONE通信接收機(jī)信號(hào)輸入端相連。將軟硬件聯(lián)合編譯生成的bit文件下載到FPGA開(kāi)發(fā)板上,信號(hào)源輸出95.5MHz的FM信號(hào),在PC機(jī)上使用無(wú)線(xiàn)電監(jiān)測(cè)測(cè)向系統(tǒng)進(jìn)行監(jiān)測(cè),如圖4、圖5所示。
經(jīng)比對(duì),PC機(jī)上顯示的正是信號(hào)源輸出信號(hào)的頻域和時(shí)域波形。