摘 要:雙頻星載雷達(dá)高度計(jì)是一種主動(dòng)式微波遙感器,有Ku和C兩個(gè)波段??刂铺幚韱卧糜诟呔葧r(shí)序控制、高速數(shù)據(jù)采集和實(shí)時(shí)高速處理,硬件主要由DSP,F(xiàn)PGA,A/D組成。這種基于DSP+FPGA設(shè)計(jì)不但滿足整個(gè)系統(tǒng)對(duì)精度和處理速度的需求,同時(shí)還滿足了星載設(shè)備小型化、低功耗和高可靠性的要求。
關(guān)鍵詞:雙頻雷達(dá)高度計(jì);遙感器;DSP;FPGA
中圖分類號(hào):TN959.74 文獻(xiàn)標(biāo)識(shí)碼:B
文章編號(hào):1004373X(2008)0301103
Design and Realization for the Control and Processing Unit of
Double—frequency Spaceborne Radar Altimeter
TANG Yueying,XU Ke,YU Xiufen
(Center for Space Science and Applied Research,Chinese Academy of Sciences,Beijing,100080,China)
Abstract:Double—frequency spaceborne radar altimeter is a kind of active microwave remote sensor with Ku band and C band.The control and processing unit performs the function of high—precision timing control,high—speed data acquisition and real—time processing.The hardware of control and processing unit consists of DSP,F(xiàn)PGA and ADC.This design based on DSP + FPGA can not only meet the requirement of precision and processing speed,but also meet the demand of small size,low power consumption and high reliability.
Keywords:double—frequency radar altimeter;remote sensor;DSP;FPGA
雙頻星載海洋雷達(dá)高度計(jì)是一種全天時(shí)、全天候主動(dòng)式微波遙感器,他的直接測(cè)量結(jié)果是衛(wèi)星到海面高度、海面有效波高和后向散射系數(shù)。方法是通過對(duì)回波的跟蹤來獲取海面回波,并從回波波形中提取高度、海面有效波高和后向散射系數(shù)[1]。進(jìn)一步反演可對(duì)全球大洋環(huán)流及異常、海平面的變化和海面波浪場(chǎng)進(jìn)行觀測(cè)、分析和預(yù)報(bào),還可以監(jiān)測(cè)海冰和極區(qū)冰層變化[2]。
1 系統(tǒng)總體設(shè)計(jì)
雙頻雷達(dá)高度計(jì)控制處理單元功能框圖見圖1,主要作用是實(shí)現(xiàn)對(duì)海洋回波的捕獲和跟蹤,其中A/D單元采集來自接收機(jī)正交I/Q信號(hào)再送到FPGA內(nèi)緩存,然后由DSP讀到其片內(nèi)DRAM中進(jìn)行FFT轉(zhuǎn)換和跟蹤處理。
跟蹤結(jié)果產(chǎn)生回波波形和相關(guān)的科學(xué)數(shù)據(jù),其中高度跟蹤結(jié)果送到FPGA中用來控制產(chǎn)生I/Q采集控制脈沖、微波開關(guān)控制脈沖、收發(fā)信號(hào)控制脈沖、功放控制脈沖;AGC跟蹤結(jié)果通過FPGA控制該通道接收機(jī)的自動(dòng)增益; DDS信號(hào)帶寬控制也是通過FPGA送出;DSP送出的科學(xué)數(shù)據(jù)包經(jīng)FPGA通過高速串行總線打包下行;DSP通過雙口RAM與1553B總線雙向通信。由于該設(shè)備需工作在遠(yuǎn)離地球的空間環(huán)境,要求所用關(guān)鍵器件均要有相應(yīng)的宇航級(jí)產(chǎn)品。
2 信號(hào)采集
ADC選用ANALOG DEVICES公司的AD871a,Ku和C通道采集時(shí)鐘均由FPGA時(shí)序控制部分產(chǎn)生,采集數(shù)據(jù)KuI,KuQ,CI,CQ分別存儲(chǔ)在FPGA內(nèi)部4塊BRAM中,數(shù)據(jù)從A口寫入,F(xiàn)PGA的時(shí)序控制在產(chǎn)生寫B(tài)RAM地址時(shí)需主意考慮ADC的3個(gè)流水線延遲。DSP的數(shù)據(jù)總線、地址總線和讀控制信號(hào)都連到BRAM的B口,每一組數(shù)據(jù)采集完成后FPGA內(nèi)的時(shí)序控制產(chǎn)生給DSP的中斷,DSP響應(yīng)中斷將數(shù)據(jù)讀到DSP內(nèi)部進(jìn)行相關(guān)處理。
設(shè)計(jì)PCB板時(shí)為避免數(shù)字電路對(duì)模擬電路的干擾,將PCB板分區(qū)為模擬部分和數(shù)字部分,確保模擬信號(hào)在電路板所有層的模擬區(qū)內(nèi)布線,而數(shù)字信號(hào)在數(shù)字電路區(qū)內(nèi)布線;模擬與數(shù)字部分分別供電;模擬地與數(shù)字地分開;分割電地層時(shí)要保證布線不可跨越分割間隙。數(shù)據(jù)采集時(shí)序控制及采集數(shù)據(jù)流向見圖2。實(shí)驗(yàn)通過加10 kHz,100 kHz,1 MHz等正弦波作為各通道的I/Q輸入,用DSP的CCS開發(fā)環(huán)境直接畫出采集信號(hào)的頻譜,證實(shí)該系統(tǒng)AD采集的信噪比和動(dòng)態(tài)有效位滿足設(shè)計(jì)要求。
3 FPGA功能簡(jiǎn)介
本設(shè)計(jì)FPGA采用Xilinx公司的FPGA XCV600,該器件提供了各種資源用以實(shí)現(xiàn)用戶的設(shè)計(jì),包括可編程邏輯、可編程I/O、布線、時(shí)鐘網(wǎng)絡(luò)和SRAM。80 MHz高穩(wěn)定度的頻蹤源通過FPGA專用時(shí)鐘輸入管腳輸入,連接到其中一條高穩(wěn)定度低漂移全局時(shí)鐘分布網(wǎng)絡(luò)[3],整個(gè)設(shè)計(jì)都用該時(shí)鐘來進(jìn)行同步,這樣可以保證各開關(guān)控制的精度,XCV600內(nèi)部豐富的寄存器資源和專用的進(jìn)位邏輯非常適合做時(shí)序控制。
FPGA時(shí)序控制程序主要包括AD控制、各控制開關(guān)時(shí)序、高速串行數(shù)據(jù)傳輸控制等,用VHDL語(yǔ)言設(shè)計(jì)程序。圖3是用Mentor 公司的EDA 工具M(jìn)odelsim 仿真得到的符合系統(tǒng)需求的 C 和Ku 兩通道的開關(guān)時(shí)序(不是完整的一簇)。圖4是用邏輯分析儀測(cè)得的所有開關(guān)控制時(shí)序,測(cè)試時(shí)為了捕獲完整的一簇發(fā)送脈沖和接收回波,邏輯分析儀的采樣周期設(shè)為128 ns,測(cè)試結(jié)果證明時(shí)序邏輯正確。再通過設(shè)置邏輯分析儀的采樣周期為4 ns,測(cè)量小的時(shí)間范圍,看各控制開關(guān)的相互關(guān)系,證實(shí)控制精度也滿足系統(tǒng)要求。
XCV600內(nèi)部有24塊4 096 b的同步雙口RAM,可用于存儲(chǔ)兩通道I/Q共4路AD采集值,另外還用他構(gòu)造FIFO,接收由DSP并行發(fā)送來的需通過FPGA打包下行的科學(xué)數(shù)據(jù)包,F(xiàn)IFO的輸出經(jīng)并串轉(zhuǎn)換,并與產(chǎn)生的同步時(shí)鐘一起送到單端到差分的驅(qū)動(dòng)芯片,經(jīng)此送到衛(wèi)星的公共系統(tǒng)。
選用該型號(hào)FPGA主要原因就是該器件的可編程I/O的LVTTL接口電平是5 V兼容,使他可以直接與5 V器件相連。而且這種基于SRAM的FPGA可實(shí)現(xiàn)在線重構(gòu)。
4 DSP C6701功能簡(jiǎn)介
DSP選用TI高性能32位浮點(diǎn)DSP C6701,其主頻可達(dá)167 MHz,8個(gè)功能單元,包括4個(gè)定浮點(diǎn)ALUS,2個(gè)定點(diǎn)ALUS,2個(gè)定浮點(diǎn)乘法器,這8個(gè)功能單元可同時(shí)工作,運(yùn)算速度高達(dá)1 GFLOPS。片內(nèi)1 Mb SRAM分為64 kB DRAM和64 kB PRAM/Cache。處理單元采用超長(zhǎng)指令結(jié)構(gòu)(VLIW),內(nèi)部總線是一種改進(jìn)的哈佛總線結(jié)構(gòu),對(duì)內(nèi)部DRAM每周期能完成2個(gè)64 b的CPU訪問和一個(gè)32 b的DMA訪問。由于片內(nèi)有大容量的RAM,經(jīng)過仔細(xì)的分析測(cè)算,可省去對(duì)片外高速RAM需要。
C6701作為整個(gè)系統(tǒng)的核心,主要完成以下功能:初始化系統(tǒng)狀態(tài),控制和監(jiān)測(cè)FPGA的配置,對(duì)經(jīng)FPGA控制的Ku 和C 通道I/Q采集的數(shù)據(jù)進(jìn)行FFT變換和實(shí)時(shí)跟蹤處理;將處理完的結(jié)果再傳到FPGA用以調(diào)整控制時(shí)序及AGC等;打包科學(xué)數(shù)據(jù)并發(fā)送到FPGA;通過一個(gè)雙口RAM與星上公用系統(tǒng)通信。
本設(shè)計(jì)中復(fù)數(shù)FFT和復(fù)雜的實(shí)時(shí)跟蹤處理由DSP的CPU核完成。實(shí)時(shí)跟蹤處理可以分為五個(gè)狀態(tài):初始自檢、搜索、捕獲、跟蹤和記憶,當(dāng)處于正常功能運(yùn)行時(shí),整個(gè)系統(tǒng)的運(yùn)行是一個(gè)狀態(tài)轉(zhuǎn)換、進(jìn)程激活的機(jī)制。為滿足陸地、海冰等不同復(fù)雜環(huán)境的觀測(cè)要求,雙頻高度計(jì)使用了OCOG (OFFset Center of Gravity)算法,OCOG算法生成的誤差信號(hào)還要經(jīng)過α—β濾波器才能得到跟蹤結(jié)果。本系統(tǒng)是雙頻雷達(dá),共用一個(gè)處理器,且脈沖重復(fù)頻率很高,DSP的工作時(shí)序很緊,必須最大限度地利用8個(gè)功能單元,使用軟件流水線,盡量讓程序無沖突的并行執(zhí)行,才能滿足系統(tǒng)需求。256點(diǎn)復(fù)數(shù)FFT是雷達(dá)信號(hào)處理的重要工具,也是最耗時(shí)的運(yùn)算,經(jīng)測(cè)試需用時(shí)3 696個(gè)時(shí)鐘周期,設(shè)計(jì)用132 MHz主頻,即28 μs便可完成,可以滿足系統(tǒng)需求。
5 FPGA與DSP協(xié)同工作設(shè)計(jì)
5.1 接口設(shè)計(jì)
DSP利用CE2空間將FPGA作為一個(gè)外部SRAM,通過其外部存儲(chǔ)器接口EMIF與FPGA異步通信,接口設(shè)計(jì)見圖5,通過FPGA發(fā)中斷來控制其時(shí)序與DSP程序進(jìn)程相對(duì)應(yīng)。
在本設(shè)計(jì)中由于C6701沒有專用的通用輸入輸出端口,因此用他的定時(shí)器輸入輸出(TINPxTOUTx)代替。由于該系統(tǒng)用于星載設(shè)備,需工作在空間高輻射環(huán)境中,在上電時(shí)可能遭受單粒子功能中斷(Single—Event Functional Interrupt,SEFI)導(dǎo)致配置失效,加固措施是采用監(jiān)測(cè)電路,當(dāng)配置發(fā)生錯(cuò)誤時(shí),通過重新配置來恢復(fù)系統(tǒng)。具體方法是系統(tǒng)上電時(shí)DSP處于RESET狀態(tài),TOUT1為低,將此連到FPGA的/PROG腳,F(xiàn)PGA保持在清除狀態(tài)。DSP開始工作后,通過軟件置TOUT1為高電平,此時(shí)FPGA開始配置,DSP通過TINP0監(jiān)測(cè)FPGA的DONE是否在一定的時(shí)間內(nèi)變?yōu)楦?,如果沒有,說明FPGA未配置成功,DSP再置 TOUT1為低電平一定的時(shí)間后再置高,F(xiàn)PGA重新開始一次配置。
5.2 DSP與FPGA數(shù)據(jù)通信
DSP與FPGA之間大量的數(shù)據(jù)讀和寫由DSP的DMA來完成,幾乎不占用DSP內(nèi)核CPU資源。DSP與FPGA異步通信需在滿足信號(hào)的建立和保持時(shí)間的條件下根據(jù)器件的數(shù)據(jù)手冊(cè)仔細(xì)計(jì)算出DSP的CE2空間異步讀和寫的Setup/Strobe/Hold周期數(shù)并在軟件中設(shè)置[4],使之盡可能快的讀寫,少占用總線、DMA和CPU資源,又同時(shí)保證讀寫的可靠性。I和Q的采集結(jié)果分別放在32 b的數(shù)據(jù)總線的高16位和低16位以同時(shí)讀取(見圖5),每次FPGA控制采集完一組I/Q數(shù)據(jù)后就向DSP發(fā)中斷,中斷事件觸發(fā)DSP的DMA,將這組數(shù)據(jù)讀到DSP的內(nèi)部DRAM中,DMA傳輸完成后給DSP的CPU發(fā)中斷,CPU開始對(duì)這組數(shù)據(jù)處理。
6 PCB板信號(hào)完整性(SI)分析
本設(shè)計(jì)使用了高速DSP C6701,指令周期只有6 ns。這樣高速的DSP可保證雙頻高度計(jì)高速數(shù)據(jù)處理的需要。雖然本設(shè)計(jì)電路板內(nèi)器件間信號(hào)工作頻率不高,但是由于C6701輸出信號(hào)的上升沿很短,由此帶來了信號(hào)完整性問題。根據(jù)傳輸線理論,傳輸線上阻抗不匹配會(huì)引起信號(hào)反射(振蕩衰減)。當(dāng)傳輸線的長(zhǎng)度超過驅(qū)動(dòng)信號(hào)上升沿有效電氣長(zhǎng)度的1/6時(shí),就需要端接[5]。
式中L為傳輸線線長(zhǎng),Tr為源端信號(hào)的上升時(shí)間,tpd為傳輸線上每單位長(zhǎng)度的傳輸延遲。
以常用FR—4做PCB,可以計(jì)算出用微帶線傳輸且L≥03 in,帶狀線傳輸且L≥023 in時(shí),就必須使用端接技術(shù),實(shí)際布局布線時(shí)傳輸線線長(zhǎng)都會(huì)大于這個(gè)值。圖6就是根據(jù)該設(shè)計(jì)的實(shí)際情況在未作端接處理時(shí)源端(C6701數(shù)據(jù)線A0)與負(fù)載端(Bx)信號(hào)的波形,由于是源端阻抗不到10 Ω,而傳輸線阻抗約60 Ω,阻抗不連續(xù)造成信號(hào)反射,導(dǎo)致負(fù)載端有高達(dá)17 V的上沖、大于1 V的下沖和震蕩,還有可出現(xiàn)多次跨越邏輯電平門限導(dǎo)致功能紊亂。
由于C6701DSP帶的負(fù)載較多,布局比較困難。設(shè)計(jì)中借助EDA仿真工具HyperLynx,用基于器件的IBIS模型進(jìn)行仿真,尋求最佳布局方案和綜合使用各種端接策略,對(duì)個(gè)別信號(hào)在布局布線后再進(jìn)行后仿真,在PCB板制板之前分析驗(yàn)證信號(hào)的完整性問題。
7 結(jié) 語(yǔ)
本文論述的控制處理單元在雙頻雷達(dá)高度計(jì)預(yù)研項(xiàng)目中完成了電性樣機(jī),已經(jīng)經(jīng)過驗(yàn)收測(cè)試,完全滿足系統(tǒng)要求。目前已經(jīng)轉(zhuǎn)到星載型號(hào)任務(wù)初樣件的研制階段。
這種FPGGA+DSP結(jié)構(gòu),可以作為通用的星載高精度控制和高速數(shù)據(jù)處理平臺(tái)。但是作為星載設(shè)備,還需更多地關(guān)注其可靠性,尤其是XCV600這種基于靜態(tài)RAM的FPGA構(gòu)架,用于空間高輻射環(huán)境易發(fā)生的單粒子效應(yīng)(SEE)如單粒子翻轉(zhuǎn)(SEU)等導(dǎo)致失效模式,需考慮抗輻照加固措施,這在目前正在進(jìn)行的型號(hào)初樣件研制中將著重考慮。
參考文獻(xiàn)
[1]許可,董曉龍,張德海,等.HY[CD#*2]2雷達(dá)高度計(jì)和微波散射計(jì)[J].遙感技術(shù)與應(yīng)用,2005,20(1):89—93.
[2]Ridley J K,Partington K C,A Model of Satellite Radar Altimeter Return from the Ice Sheets[J].Int.Remote Sensing,1988,9:601—624.
[3]Xilinx Inc.VirtexTM 25 V Field Programmable Gate Arrays,2001.
[4]Texas Instruments.TMS320C6000 EMIF to External Asynchronous SRAM Interface,2001.
[5]Howard Johnson,Martin Graham.High—Speed Digital Design.
作者簡(jiǎn)介 唐月英 女,1966年出生,高級(jí)工程師。主要研究方向?yàn)樾禽d微波遙感器實(shí)時(shí)信號(hào)處理。
許可男,1967年出生,研究員。主要研究方向?yàn)樾禽d微波遙感器系統(tǒng)研究。
于秀芬女,1980年出生,助理研究員。主要研究方向是嵌入式軟件研制。
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文。