新聞中心

EEPW首頁 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的雷達(dá)波束控制

基于FPGA的雷達(dá)波束控制

作者: 時間:2010-06-10 來源:網(wǎng)絡(luò) 收藏

這里展開介紹一種有源相控陣系統(tǒng)的硬件平臺及軟件設(shè)計(jì)。

本文引用地址:http://butianyuan.cn/article/260992.htm

l 系統(tǒng)原理

為降低電路成本和增加系統(tǒng)可靠性,該系統(tǒng)采用設(shè)備量少、維修方便、可靠性高的集中式運(yùn)算、分布式驅(qū)動體系。也就是,算法用一塊電路板(稱之為運(yùn)算板)實(shí)現(xiàn)。
對工作方式,運(yùn)算板接收來自控制臺的控制指令(包括主的方位和俯仰增量代碼、工作頻率、工作模式代碼等),進(jìn)行波束控相位碼的計(jì)算、傳輸、分配與格式重排。運(yùn)算板把處理后的串行碼通過驅(qū)動器發(fā)往陣面的波束控制組件驅(qū)動板。在波束控制組件驅(qū)動板內(nèi)再進(jìn)行譯碼、驅(qū)動,然后送給組件單元作為控制碼,從而實(shí)現(xiàn)波束控制系統(tǒng)的功能。波束控制系統(tǒng)的組成如圖1所示。

2 系統(tǒng)硬件平臺

該相控陣系統(tǒng)要求波束控制系統(tǒng)準(zhǔn)確可靠地控制512個單元,波束轉(zhuǎn)換時間不大于1 ms。在此分析運(yùn)算板需要哪些關(guān)鍵器件。運(yùn)算板要在500μs內(nèi)完成從雷達(dá)控制臺接收指令、波束控制算法及運(yùn)算結(jié)果傳輸?shù)墓δ?,必須選用器件。參與運(yùn)算的補(bǔ)償數(shù)據(jù)是運(yùn)算的主要對象之一,要能夠?qū)崟r參與波束控制算法的運(yùn)算過程,也可以被雷達(dá)控制臺在線更新,這就需要運(yùn)算板具有存儲器。系統(tǒng)采用自定義總線接收雷達(dá)控制指令和上報陣面返回的信息。

關(guān)于驅(qū)動板的硬件設(shè)計(jì),不僅要實(shí)現(xiàn)驅(qū)動、譯碼、系統(tǒng)自檢等功能,還要考慮組件在單獨(dú)調(diào)試時驅(qū)動板的控制功能是否可以方便實(shí)現(xiàn)。由于設(shè)備數(shù)量較大,在滿足功能的基礎(chǔ)上,要盡可能降低設(shè)備成本?;谶@些需求,選用一片單片機(jī)和一片EPLD。圖1中虛線左側(cè)部分所示運(yùn)算板硬件組成。其中,雷達(dá)控制臺發(fā)送的是波束控制指令、接收的是陣面自檢和檢測信息;傳輸模塊產(chǎn)生和發(fā)送串行波束控制碼、傳送所需要的時鐘、定時信號。

圖l中虛線右側(cè)部分所示組件驅(qū)動板的硬件組成。其中接口電路接收波束控制運(yùn)算板發(fā)來的串行波束控制碼;組件單元接收的是TTL電平的控制碼(包括發(fā)射移相碼、接收移相碼、衰減碼、T/R開關(guān)控制碼)。EPLD完成譯碼和控制分發(fā)代碼,SCU完成聯(lián)機(jī)自檢和脫機(jī)控制調(diào)試的功能??刂坪驼{(diào)試方式比其他提供的系統(tǒng)設(shè)計(jì)方法,更加多樣化和靈活。

3 軟件設(shè)計(jì)

3.1 運(yùn)算板程序設(shè)計(jì)

波控運(yùn)算板基本用途就是為滿足陣面單元控制的需要。在此,整個天線陣面等分成四個子陣面。每個子陣面包括a×b個天線單元,如圖2所示。

天線分時實(shí)現(xiàn)全孔徑SAR模式和子孔徑GMTI模式兩種工作模式。雷達(dá)對空探測或者在SAR工作方式時,利用天線全陣面,形成一個波束進(jìn)行發(fā)射和接收,陣面的物理中心就是陣面天線單元的坐標(biāo)原點(diǎn);GMTI工作方式時,全陣面形成一個發(fā)射波束,而接收時則在方位上等分四個子陣面,形成四個接收波束,此時形成四個坐標(biāo)系:每個子陣面的物理中心就是每個陣面天線單元的坐標(biāo)原點(diǎn)。

根據(jù)天線單元此分布特點(diǎn)的控制需求,這里選用兩片,傳輸采用四路差分串行碼(兩路數(shù)據(jù)碼、一路地址碼、一路8 MHz時鐘碼),就可完成陣面天線單元對波束控制的要求。FPGA內(nèi)部程序的邏輯功能框圖如圖3所示。其中的串口核、SRAM、FIFO全是調(diào)用FPGA 內(nèi)部的資源。串口核的功能是在波束控制運(yùn)算板單機(jī)調(diào)試和雷達(dá)近場測試時,接收來自調(diào)試計(jì)算機(jī)的控制指令。SRAM用于當(dāng)雷達(dá)工作在陣面監(jiān)測方式時,存儲來自雷達(dá)控制計(jì)算機(jī)的控制碼;FIFO用于存儲運(yùn)算器計(jì)算的結(jié)果(運(yùn)算板單板調(diào)試時用)或組件驅(qū)動板自檢結(jié)果,此結(jié)果可以通過串口返回調(diào)試計(jì)算機(jī),以此來判斷FPGA計(jì)算的中間結(jié)果或者送出的最終結(jié)果是否正確和判斷組件單元及相應(yīng)的信號通路是否良好。運(yùn)算、傳輸時鐘產(chǎn)生和運(yùn)算結(jié)果傳送、讀/寫FLASH都在運(yùn)算器中,做在同一個狀態(tài)機(jī)里。波控運(yùn)算狀態(tài)機(jī)如圖4所示。

圖4中:S1為運(yùn)算使能控制和狀態(tài)轉(zhuǎn)換條件控制及變量初始化;S2完成波束控制算法和按照格式排布計(jì)算結(jié)果;S3產(chǎn)生被傳送數(shù)據(jù)的地址和時鐘及將并行的計(jì)算結(jié)果轉(zhuǎn)為串行;S4對FLASH進(jìn)行寫操作;S5對FLASH進(jìn)行讀操作;S6對SRAM進(jìn)行寫操作;S7先對SRAM讀操作,然后按照預(yù)定格式拼位,以便跳入S3狀態(tài)將SRAM中的數(shù)據(jù)傳出。S1中狀態(tài)機(jī)的狀態(tài)轉(zhuǎn)換條件即為譯碼得到的來自雷達(dá)控制臺的控制指令。狀態(tài)機(jī)將根據(jù)不同的控制指令進(jìn)入相應(yīng)的狀態(tài)處理程序段。

其中的S2狀態(tài)機(jī)實(shí)現(xiàn)的陣面第(m,n)個組件的移相值運(yùn)算如下:

式中:m為行坐標(biāo)值;n為列坐標(biāo)值。當(dāng)雷達(dá)工作在SAR方式和GMTI的發(fā)射方式時m=-2a,-2a+1,…,-1,0,1,…,2a- 2,2a-1;n=-b/2,-b/2+1,…,-1,0,1,…,b/2-2,b/2-1。對GMTI的接收方式,m=-a/2,-a/2+1,…,-1,O,1,…,a/2-2,a/2-1;n=-b/2,-b/2+1,…,-1,O,1,…b/2-2,b/2-1。 ψ0m,n(λ)為初始相位值;α,β為雷達(dá)控制計(jì)算機(jī)根據(jù)波束指向角而發(fā)送的方位遞增量和俯仰遞增量;φ(m,n,t)為相位誤差修正量;△ψ為單位相移量,用于隨機(jī)饋相。等式右端的ψ0m,n,ψ,△ψ預(yù)存在片外的FLASH中,F(xiàn)PGA通過對FLASH的讀操作將對應(yīng)地址空間的數(shù)據(jù)存入相應(yīng)寄存器,在狀態(tài)機(jī)的控制下參與移相值的計(jì)算。

在FPGA中,此算式的實(shí)現(xiàn)采用Verilog硬件描述語言編程,控制變量做加法循環(huán)即可實(shí)現(xiàn)該算法。對隨機(jī)饋相的運(yùn)算,是將按單元排列方式所對應(yīng)的、預(yù)先存在FLASH中的一組隨機(jī)數(shù)δi.j(其存儲位數(shù)不小于4位),和波束控制系統(tǒng)計(jì)算的移相器量化相移值結(jié)尾相位△i.j做比較,如果△i.j大于δi.j,則移相器量化相移值加單位相移量△ψ后送給移相器,否則直接將移相器量化相移值送給移相器。

3.2 運(yùn)算板調(diào)試的控制程序設(shè)計(jì)

運(yùn)算板的初期調(diào)試和驗(yàn)證對于整個產(chǎn)品的實(shí)現(xiàn)至關(guān)重要,此階段直接決定了產(chǎn)品實(shí)現(xiàn)的可行性和進(jìn)度。在此選用ViSUalBasic 6.0開發(fā)設(shè)計(jì)程序,基于Windows的VB提供了一個MSCOMM 32.OCX串行通信控件,用串口電平轉(zhuǎn)換器接上兩對差分信號線,就可以實(shí)現(xiàn)與運(yùn)算板FPGA異步串行口的通信。所設(shè)計(jì)的控制程序可以模擬產(chǎn)生雷達(dá)控制臺的控制指令和定時器的定時信號、實(shí)現(xiàn)對SRAM和FLASH信息的寫入和讀出,完成對FPGA運(yùn)算結(jié)果的回送數(shù)據(jù)校驗(yàn)。

根據(jù)需要,所設(shè)計(jì)的程序分為八個模塊,分別為串口通信控制、雷達(dá)控制指令產(chǎn)生、定時信息產(chǎn)生、對FLASH的各種操作控制、補(bǔ)償數(shù)據(jù)文件的寫入/讀出操作、理論運(yùn)算結(jié)果顯示、FPGA運(yùn)算結(jié)果回送顯示、自檢方式所需要的控制等。

3.3 驅(qū)動板的程序設(shè)計(jì)

該驅(qū)動板程序設(shè)計(jì)的關(guān)鍵點(diǎn)和特點(diǎn)在于單片機(jī)和EPLD的程序既能夠聯(lián)機(jī)工作,又能夠獨(dú)立地控制組件,實(shí)現(xiàn)組件的單機(jī)調(diào)試功能,即裝機(jī)和測試用同一個程序。

驅(qū)動板的單片機(jī)串口接收來外來的控制指令,判斷波束控制系統(tǒng)是處在哪種工作狀態(tài)。如果是聯(lián)機(jī)工作,則SCU接收聯(lián)機(jī)自檢指令,讀入組件地址、開關(guān)狀態(tài)、發(fā)射和接收移相碼、衰減控制碼,并將這些控制碼存在指定的寄存器內(nèi),等待通道狀態(tài)讀取指令到達(dá)后,將它們回送到運(yùn)算板,在所設(shè)計(jì)的控制界面內(nèi)可以顯示,從而得知波束控制系統(tǒng)整個子系統(tǒng)的運(yùn)行工作情況。如果是模擬子系統(tǒng)控制指令,打開與EPLD之間的通信控制開關(guān),將來自串口的控制指令,經(jīng)處理發(fā)給 EPLD。

EPLD也要判斷收到的指令來自單片機(jī)還是雷達(dá)系統(tǒng),如果是單片機(jī),則接收來自調(diào)試計(jì)算機(jī)的指令;否則,直接接收來自雷達(dá)系統(tǒng)的控制指令。單片機(jī)的程序設(shè)計(jì)主要分為四部分:程序初始化、串口接收中斷服務(wù)子程序、串口發(fā)送中斷子程序和串口回送數(shù)據(jù)子程序。后兩者子程序設(shè)計(jì)流程示意如圖5所示。其中,指令字包含的信息分別為開關(guān)狀態(tài)碼、陣面回數(shù)信息、陣面回數(shù)狀態(tài)、陣面自檢信息、移相值和衰減值。

這里仍然選用VB編寫調(diào)試控制程序,用來模擬產(chǎn)生來自運(yùn)算板的控制信號,實(shí)現(xiàn)對驅(qū)動板的調(diào)試控制。編寫的調(diào)試控制程序分為五個模塊:控制方式選擇、移相角度選擇、衰減值選擇、定時信息選擇、控制碼發(fā)送和發(fā)送數(shù)據(jù)校對信息顯示。

4 結(jié)論

該FPGA程序設(shè)計(jì)既可滿足天線對波束控制0.5 ms內(nèi)完成運(yùn)算和傳輸數(shù)據(jù)的時間要求,又滿足波束控制分系統(tǒng)在線自檢;根據(jù)工作頻率,進(jìn)行初相位在線補(bǔ)償;天線相位碼隨機(jī)饋相的功能需求。其調(diào)試控制程序,不僅滿足單板調(diào)試、補(bǔ)償文件寫入或者讀出操作的需要,還用于雷達(dá)天線暗室測試的控制。同樣,單片機(jī)和EPLD的程序設(shè)計(jì),滿足天線組件對波束控制系統(tǒng)裝機(jī)和測試用同一個程序的要求。調(diào)試過程中,兩者都有友好的控制界面可操作。



關(guān)鍵詞: 天線 FPGA 波束控制 雷達(dá)

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉