<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > 一種高速波控系統(tǒng)的設(shè)計

          一種高速波控系統(tǒng)的設(shè)計

          作者:田 可,楊向華 時間:2008-09-09 來源:中電網(wǎng) 收藏

            1 引 言

          本文引用地址:http://www.ex-cimer.com/article/87847.htm

            相控陣是通過波控系統(tǒng)控制陣列各單元通道的相位、幅度以形成空間波束并控制其方位角和俯仰角。早期的波控系統(tǒng)一般采用硬件電路來實現(xiàn),這種實現(xiàn)方法的缺點是設(shè)備量大,不靈活,很難實現(xiàn)波束的復雜計算,不易滿足特殊要求。后來采用單片機、DSP芯片來設(shè)計波控系統(tǒng),單片機通常不計算波控碼,僅僅是根據(jù)接收到的波控碼布相,而DSP可以自己計算波控碼,但是單片機、DSP都是象流水線一樣串行的運行指令,也就是說,不能并行地對各單元通道進行波控碼計算和布相。

            針對波控系統(tǒng)要求高速計算、多通道并行邏輯控制的特點,選取作為波控系統(tǒng)的核心處理器。目前采用大規(guī)模器件來實現(xiàn)波控系統(tǒng)的設(shè)計還很少,采用能夠大大簡化波控系統(tǒng)硬件設(shè)計,把以前的硬件邏輯控制電路全部集成在FPGA芯片內(nèi)部,從而實現(xiàn)對波控羈的高速并行計算和對各單元通道的并行同步控制,本文針對這種基于FPGA波控系統(tǒng)設(shè)計方案的可行性進行了探討。

            2 波控系統(tǒng)設(shè)計要求

            2.1 設(shè)計

            某電子系統(tǒng)組成如圖1所示。系統(tǒng)主控計算機和波控系統(tǒng)之間信息交換量很大,要求收發(fā)速度都要很快;同時陣元很多,必須有可擴展性,實際中采用了(Ethernet)技術(shù)。

           

            協(xié)議是指根據(jù)IEEE 802.3規(guī)范制定的局域網(wǎng)協(xié)議(Local Area Network,LAN)中的CSMA/CD協(xié)議。一方面,與傳統(tǒng)的RS 485、CAN總線等相比,以太網(wǎng)更加高速、通用,經(jīng)過適當剪裁和優(yōu)化的TCP/IP協(xié)議棧,也完全可以適應(yīng)工業(yè)用途的需要。另一方面,相對于新興的USB 2.0,IEEE1394等總線,以太網(wǎng)技術(shù)在傳輸距離、布線成本以及控制軟件的通用性上都有明顯的優(yōu)勢。

            波控系統(tǒng)需要實時控制T/R組件以及進行狀態(tài)檢測,采用同步串行傳輸方式,時鐘20 MHz,完成一次T/R組件重新布相以及狀態(tài)檢測需要1μs。

            2.2 模塊化設(shè)計

            系統(tǒng)天線陣列有幾百個陣元,并且要求可擴展性,用一個FPGA波控板不可能實現(xiàn)這樣復雜的控制和運算,每一個陣元在天線陣的位置是不一樣的,但是對T/R組件、移相器的控制以及都是相同的。每個FPGA波控板控制一個天線子陣,而一個天線子陣由25個天線單元組成,所以考慮采用模塊化設(shè)計方法。系統(tǒng)上電工作,主控計算機立即將每個FPGA波控板的位置信息下發(fā)。波控板也根據(jù)自己所接受到的位置信息計算每個天線陣元的移相值。這樣的設(shè)計就實現(xiàn)了波控板的互換性,每一個波控板的軟件和硬件都是完全相同的,任何一塊出了問題都可以立即更換,而不需要考慮他的位置,方便維修工作。

            3 波控系統(tǒng)設(shè)計

            3.1 波控碼計算公式

            相控陣天線上第(i,j)單元通道相對于參考單元第(0,0)單元通道的相位差φ(i,j):

            式中:d1為相鄰天線單元在陣面水平方向的間距,d2為相鄰天線單元在陣面垂直方向的間距;(φ,θ)為天線波束指向,其中φ為方位角,天線波束與天線陣面水平方向的夾角,θ為俯仰角,天線波束與相控陣陣面的夾角;δij為第(i,j)單元通道與參考單元之間的初始相位誤差。

            3.2 FPGA實現(xiàn)

            FPGA作為波控系統(tǒng)的核心處理器,按照功能劃分為:波控碼計算模塊、以太網(wǎng)控制器模塊、相控陣單元控制模塊、溫度控制模塊、開關(guān)量控制模塊、系統(tǒng)狀態(tài)控制模塊。FPGA內(nèi)部各功能模塊劃分如圖2所示。這些模塊都是并行工作,比如相控陣天線單元控制模塊可以對各單元同步實時控制,完全保證各單元通道相位同步切換。

            波控碼計算模塊將得到的波束指向信息(方位角、俯仰角)和頻率快速的計算出相控陣各單元通道的相位值。為了獲得相控陣天線的低副瓣性能,必須嚴格控制天線各單元通道內(nèi)的幅度和相位誤差。同時,T/R組件、天線單元在加工安裝過程中各單元通道并不能夠保證相位完全一致,存在相位誤差。因而,在測量各天線單元與參考天線單元之間的幅度和相位誤差的基礎(chǔ)上,波控碼計算模塊通過改變波控碼,對各單元通道之間的相位誤差加以修正。

            以太網(wǎng)控制器模塊主要實現(xiàn)以太網(wǎng)接口設(shè)計,使波控系統(tǒng)能夠和主控計算機高速可靠的進行信息交流,主控計算機下發(fā)頻率、方位、俯仰信息,波控系統(tǒng)上傳實際波束方位俯仰角、T/R組件狀態(tài)、工作頻率、溫度等信息。

            相控陣單元控制模塊的任務(wù)就是并行同步控制各單元通道,先將移相值和收發(fā)開關(guān)控制值組合成波控碼,然后通過自定義的I/O口將波控碼發(fā)送到相應(yīng)的T/R組件,實現(xiàn)對T/R組件的控制,完成布相,得到需要的波束指向。

            FPGA各功能模塊軟件設(shè)計均采用VHDL語言,VHDL語言用硬件數(shù)字邏輯電路來實現(xiàn)軟件算法,他的特點是實現(xiàn)整數(shù)的加減法、乘法非常便捷,但是實現(xiàn)除法(被除數(shù)不是2的整數(shù)次冪)和對小數(shù)的算法比較困難。按照上面公式計算波控碼,VHDL語言直接實現(xiàn)這樣的計算是很困難的,他不能夠直接實現(xiàn)三角函數(shù)運算和浮點運算。解決方法就是,在FPGA的配置芯片中存儲一個4 096×16 b的正弦表,通過查表法間接實現(xiàn)三角運算,浮點運算則采用定點運算來替代。用仿真軟件ModelSim XE對方位俯仰電掃描計算結(jié)果進行仿真,波控碼計算結(jié)果如圖3所示。

            3.3 波控系統(tǒng)設(shè)計驗證

            在波控碼實時計算軟件設(shè)計中,所有的加減乘除都采用定點運算,而且三角函數(shù)計算也是采用查表法實現(xiàn),所以和浮點計算相比波控碼計算結(jié)果誤差加大,精度降低。選取離參考單元較遠的第(4,4)單元通道,將浮點運算和定點運算得到的波控碼值進行比較,波控碼誤差δcode:

            用Matlab模擬FPGA定點運算和三角查表運算進行仿真,在仿真圖中可以清楚地看到波控碼誤差絕對值小于0.02,定點計算結(jié)果和真值誤差很小。

            同時通過系統(tǒng)實際運行來驗證方案的可行性,將波控系統(tǒng)與系統(tǒng)聯(lián)試,F(xiàn)PGA在每次重新布相后將各個移相器的波控碼上發(fā)給主控計算機,將這些波控碼與主控計算機浮點運算結(jié)果相對比,發(fā)現(xiàn)實際情況與仿真結(jié)果相吻合,實際運算與仿真運算一致,符合精度要求和實時性要求。

            4 結(jié)語

            本文闡述了一種基于FPGA實現(xiàn)相控陣波控系統(tǒng)的設(shè)計方案,并且通過軟件仿真和實際運行驗證這種方案設(shè)計的可行性。這種方案設(shè)計充分發(fā)揮了FPGA芯片的高速、并行特點,可以同步并行控制天線各單元通道,保證了相控陣天線波束切換的高速性和各單元的一致性。

          絕對值編碼器相關(guān)文章:絕對值編碼器原理


          關(guān)鍵詞: 以太網(wǎng) 接口 天線 FPGA

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();