<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > 數字式正余弦函數產(chǎn)生器的實(shí)現方法

數字式正余弦函數產(chǎn)生器的實(shí)現方法

作者: 時(shí)間:2009-05-05 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:根據雷達光柵顯示器的應用要求,提出一種基于FPGA的的解決方案。論述了如何用數字電路來(lái)實(shí)現正計算的過(guò)程。方案不但可以用于雷達光柵掃描顯示器的坐標變換器,而且適用于通訊領(lǐng)域等其它需要正的波形的場(chǎng)合。
關(guān)鍵字:雷達:光柵掃描顯示器;正余弦函數;坐標轉換。

本文引用地址:http://dyxdggzs.com/article/192073.htm


O 引言
通常雷達探測目標的回波是以極坐標的形式在雷達顯示器畫(huà)面上顯示的,在雷達天線(xiàn)轉動(dòng)的各個(gè)方位上,顯示畫(huà)面都有相應的掃描線(xiàn),也就是說(shuō):顯示器畫(huà)面的掃描是受天線(xiàn)方位角的正弦、余弦函數調制的。正余弦函數在許多的電子設備的波形產(chǎn)生器中都用到,實(shí)現的方法也有很多種。在雷達顯示器中由于要求的分辨率較高,最常用的方法是采用“查表”的方法來(lái)得到函數值。這種方法用函數表存貯器代替大量的組合電路,在電路集成度不高的情況下不失為一種好的方法。隨著(zhù)大規模集成電路技術(shù)的發(fā)展,尤其是近幾年來(lái)現場(chǎng)可編程門(mén)陣列(FPGA)規模及處理速度的提高,為我們設計函數產(chǎn)生器提供了很好的環(huán)境。如果我們能夠把函數計算過(guò)程集成到FPGA中,這不但可以減少芯片的數量,提高設備的可靠性,而且給電路設計帶來(lái)了很大的靈活性。


1 基本原理
在電路上實(shí)現正余弦函數的計算是建立在數學(xué)上的臺勞級數的基礎上的。既任意一個(gè)函數f(x)在x處可導,則該函數可用下式表示:


由此式我們可以得到如下的正余弦函數的展開(kāi)式:


為了簡(jiǎn)化計算,方便電路設計,在保證所需精度的情況下,我們只選上面兩式中的前兩項。這樣就得下面簡(jiǎn)化的函數展開(kāi)式:


我們把上面的兩式引入到雷達顯示器的函數產(chǎn)生器,0設為當前天線(xiàn)角度,△0為天線(xiàn)轉動(dòng)的增量值。


由上兩式可看出,如果知道0~π/2范圍內正余弦值時(shí),就可以恢復出整個(gè)周期的函數值.所以我們在計算函數值時(shí),只要能得到0~π/2第一象限的值就可以把其它幾個(gè)象限的值恢復出來(lái)。


2 參數選取
根據實(shí)際顯示分辨率的要求,我們選函數值的精度為1l位,360度方位分辨率的精度13位。這樣就可得到90度方位角內的固有角度增量為2048個(gè)。式(4)、(5)中△0的值等于l/2n弧度。為了保證90度內△θ個(gè)數大于等于2048,選取n為11位。這樣△θ等于1/2048弧度。由此可算出90度范圍內△θ的個(gè)數為:(π/2)/(1/2048)=3217(個(gè))。換句話(huà)說(shuō),如果要得到90度方位角的函數值,需要給函數產(chǎn)生器發(fā)3217個(gè)△θ。同理,要得到某個(gè)角度的函數值,只需發(fā)一定的△θ使函數產(chǎn)生器進(jìn)行相應次數的計算就可得到這個(gè)函數值。


3 電路結構
函數產(chǎn)生器的電路實(shí)現實(shí)際上就是用電路實(shí)現式(4)和式(5)。要實(shí)現這兩個(gè)式子,關(guān)鍵是要實(shí)現△θSIN(θ)、△θ COS(θ)的計算。根據上述參數選取的要求,△θ的取值為1/2048,是一個(gè)常數。這樣就可以把△θ SIN(θ)、△θ COS(θ)的計算表示為SIN(θ)/2048、COS(θ)/2048。根據邏輯電路原理,我們只要把SIN(θ)、COS(θ)的值直接右移11為就可完成除以2048的計算。余下的計算就是簡(jiǎn)單的邏輯加減計算了。為了實(shí)現11位SIN(θ)、COS(θ)函數值的1l位右移這里采用了22位的累加器。圖l是函數產(chǎn)生器的實(shí)現框圖。

從式(4)式(5)可以看出,要得到△θ方位增量的函數值還需要知道當前函數的初始值,我們知道SIN、COS函數在零點(diǎn)的初始值分別為“l(fā)”和“0”,這樣就可以在起始計算時(shí)用置“1”和置“O”信號使得函數的輸出得到正確的初始值,于是在相應的△θ脈沖的作用下進(jìn)行計算就可得出函數值輸出了。下面是用VHDL語(yǔ)言描述的正余弦函數產(chǎn)生器:――數字正余弦函數產(chǎn)生器

由于我們選用的是近似公式,在計算中會(huì )出現累積誤差。誤差的累積最終會(huì )造成輸出
函數值的溢出錯誤,所以在本函數產(chǎn)生器累積誤差的修正也是一個(gè)關(guān)鍵。上面的VHDL描述已給出了簡(jiǎn)單的修正方法,這里就不在詳述了。如對函數產(chǎn)生器的精度有更高的要求,只需簡(jiǎn)單地對相應的累加器的寬度進(jìn)行修改即可。本函數產(chǎn)生器已在MaxplusII上模擬通過(guò),并在雷達光柵顯示器上得到實(shí)際應用。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>