陳煒浩,王金寧,陳雪峰
(中國電子科技集團(tuán)公司第二十八研究所,江蘇南京 210007)
某雷達(dá)將需要的雷達(dá)信號(hào)通過網(wǎng)絡(luò)送至遠(yuǎn)程顯控臺(tái),并在遠(yuǎn)程顯控臺(tái)對(duì)雷達(dá)進(jìn)行遠(yuǎn)程操控,如圖1所示。
圖1 雷達(dá)遠(yuǎn)程操控系統(tǒng)示意圖
在雷達(dá)實(shí)際使用過程中,雷達(dá)操作員經(jīng)常會(huì)在雷達(dá)“手控”模式下,使用手輪操控雷達(dá)天線來回反復(fù)掃描某個(gè)目標(biāo),觀察目標(biāo)回波的波形,對(duì)目標(biāo)屬性進(jìn)行判斷,如果手輪轉(zhuǎn)動(dòng)與雷達(dá)天線轉(zhuǎn)動(dòng)有較大延遲,會(huì)造成操作員手眼不協(xié)調(diào),影響目標(biāo)屬性的判斷。
在遠(yuǎn)程操控系統(tǒng)中,雷達(dá)操控臺(tái)位定時(shí)輸出在該時(shí)間段內(nèi)手輪轉(zhuǎn)動(dòng)的脈沖數(shù),雷達(dá)接口設(shè)備接收到脈沖數(shù)后還原為手輪脈沖信號(hào)控制雷達(dá)天線。
從手輪轉(zhuǎn)動(dòng)到天線轉(zhuǎn)動(dòng)的延遲主要由以下幾方面產(chǎn)生,如圖2所示。
圖2 信號(hào)延遲示意圖
DELAY1為遠(yuǎn)程顯控臺(tái)從搖動(dòng)手輪到輸出網(wǎng)絡(luò)報(bào)文的延遲,在實(shí)際的工作中DELAY1約為50ms;DELAY2為網(wǎng)絡(luò)傳輸延遲,一般要求DELAY2小于2ms;DELAY3為雷達(dá)接口設(shè)備從接收網(wǎng)絡(luò)報(bào)文到輸出手輪信號(hào)的延遲;
DELAY4為雷達(dá)設(shè)計(jì)時(shí)從收到手輪信號(hào)到天線轉(zhuǎn)動(dòng)固定的機(jī)械延遲(DELAY4約100~200ms,操作員已經(jīng)適應(yīng)了該延遲);
本文主要針對(duì)DELAY3,設(shè)計(jì)雷達(dá)接口設(shè)備,在收到遙控終端送來的網(wǎng)絡(luò)數(shù)據(jù)后,以很小的DELAY4延遲生成天線所需的信號(hào)。
雷達(dá)天線的操控信號(hào)為AB相信號(hào),如圖3所示。A相位超前為正轉(zhuǎn),B相位超前為反轉(zhuǎn)。雷達(dá)接口設(shè)備需要將網(wǎng)絡(luò)數(shù)據(jù)轉(zhuǎn)換為AB相信號(hào),以實(shí)現(xiàn)雷達(dá)天線系統(tǒng)的遠(yuǎn)程操作控制。
圖3 手輪輸出波形
為實(shí)現(xiàn)較小的延遲,選擇具有較強(qiáng)通信能力的PowerPC作處理器,系統(tǒng)采用嵌入式Linux操作系統(tǒng),結(jié)合FPGA進(jìn)行設(shè)計(jì)。PowerPC模塊主要接收網(wǎng)絡(luò)送來的脈沖數(shù),解析后通過LocalBus寫入到FPGA的寄存器中,F(xiàn)PGA接收到脈沖數(shù)后進(jìn)行處理輸出AB相信號(hào),如圖4所示。
圖4 雷達(dá)接口設(shè)備信號(hào)流程圖
PowerPC處理器選用Freescale公司的MPC8377E[1],該處理器集成e300c4處理器核,片內(nèi)具有32Kbytes的指令cache和32Kbytes的數(shù)據(jù)cache,工作主頻可達(dá)800Mhz。MPC8377E可以支持2GB DDR2內(nèi)存。MPC8377E的本地LocalBus總線擴(kuò)展一片NOR FLASH作為系統(tǒng)的存儲(chǔ)空間。其作用是用來存儲(chǔ)bootloader、操作系統(tǒng)內(nèi)核、文件系統(tǒng)。通過88E1111網(wǎng)絡(luò)芯片接入千兆光以太網(wǎng)(見圖5)。
圖5 PowerPC硬件系統(tǒng)架構(gòu)
PowerPC處理器運(yùn)行遠(yuǎn)程操控控制程序和LocalBus總線驅(qū)動(dòng)程序,遠(yuǎn)程操控控制程序通過網(wǎng)路接收雷達(dá)天線遠(yuǎn)程操控命令,對(duì)命令進(jìn)行解析翻譯,根據(jù)命令類型將操控命令通過LocalBus總線驅(qū)動(dòng)程序向FPGA的相應(yīng)寄存器寫入控制命令。
LocalBus總線驅(qū)動(dòng)程序?qū)崿F(xiàn)主從設(shè)備號(hào)申請(qǐng)、設(shè)備注冊(cè)、FPGA地址功能映射、設(shè)備硬件控制等功能[2]。Linux內(nèi)核通過一個(gè)file_operations結(jié)構(gòu)體組織對(duì)設(shè)備操作的具體實(shí)現(xiàn)函數(shù),該驅(qū)動(dòng)在設(shè)備注冊(cè)時(shí)實(shí)現(xiàn)FPGA地址功能映射,通過file_operations結(jié)構(gòu)體中fpga_write函數(shù)實(shí)現(xiàn)用戶層內(nèi)核層數(shù)據(jù)交互和FPGA數(shù)據(jù)寫入[3]。
LocalBus配置為通用片選機(jī)制(GPCM),向FPGA寫入手輪值,LocalBus寫時(shí)序如圖6所示。其中參數(shù)tWC,tAWCS,tCSWP,tAWE,tWEN可以由軟件進(jìn)行靈活配置,時(shí)序簡單,易于FPGA設(shè)計(jì)實(shí)現(xiàn)。
圖6 LocalBus寫時(shí)序
FPGA 采用 Altera 公司 Straix系列的 EP1S25[4],PowerPC 將脈沖數(shù)寫入到FPGA后,F(xiàn)PGA按照LocalBus寫時(shí)序解析出手輪脈沖個(gè)數(shù)值,開始生成AB相信號(hào)。流程如圖7所示。
圖7 FPGA手輪波形產(chǎn)生流程圖
(1)FPGA解析出新的手輪脈沖值后,判斷手輪是正轉(zhuǎn)或反轉(zhuǎn);
(2)將脈沖值與N相加(N為還需要產(chǎn)生的脈沖個(gè)數(shù));
(3)生成一個(gè)固定脈沖寬度、固定相位差的AB信號(hào),每產(chǎn)生一次脈沖信號(hào),N-1,直至N=0;
(4)AB輸出0電平。
輸入輸出波形如圖8所示。
經(jīng)過實(shí)際測試,在輸出AB相脈沖寬度4ms時(shí),雷達(dá)接口設(shè)備從接收到網(wǎng)絡(luò)信號(hào)到輸出的延遲小于5ms,其中PowerPC從網(wǎng)絡(luò)接收到LocalBus輸出延遲小于3ms,F(xiàn)PGA從收到PowerPC寫入數(shù)據(jù)到輸出波形延遲最大約2ms。充分體現(xiàn)了嵌入式系統(tǒng)和FPGA的實(shí)時(shí)性優(yōu)勢。
本設(shè)計(jì)已經(jīng)進(jìn)行了實(shí)踐及應(yīng)用,經(jīng)過長時(shí)間、大范圍的使用,功能穩(wěn)定,運(yùn)行良好,在以后的工程應(yīng)用中具備推廣前景。
圖8 FPGA手輪波形產(chǎn)生波形圖
[1]Freescale Semiconductor.MPC8377EPowerQUICCTMII Pro ProcessorHardware Specifications[EB/OL].www.freescale.com.
[2]Jonathan Corbet,Alessandro Rubini&Greg Kroah-Hartman.LINUX設(shè)備驅(qū)動(dòng)程序[M].魏永明,耿岳,鐘書毅,譯.3版.北京:中國電力出版社,2009.
[3]Daniel P.Bovet&Marco Cesati著.深入理解LINUX內(nèi)核[M].陳莉君,張瓊聲,張宏偉,譯.3版.北京:中國電力出版社,2009.
[4]Altera Corporation.Stratix Device Handbook[EB/OL].www.altera.com.