999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA實現(xiàn)改進(jìn)CORDIC算法研究*

2014-09-26 08:58:48
電子器件 2014年2期

胡 煜

(桂林電子科技大學(xué)信息與通信學(xué)院,廣西桂林541004)

基于FPGA實現(xiàn)改進(jìn)CORDIC算法研究*

胡 煜*

(桂林電子科技大學(xué)信息與通信學(xué)院,廣西桂林541004)

傳統(tǒng)的CORDIC算法雖然能提高相位分辨率,但是硬件資源的消耗量很大,為了解決這個問題,對傳統(tǒng)的CORDIC算法進(jìn)行了改進(jìn),主要增加了內(nèi)部相位累加器的位數(shù),同時使用兩位的方向控制因子改進(jìn)下級流水操作的加減,在同等硬件資源的消耗量的情況下實現(xiàn)了更高相位分辨率的正余弦信號的產(chǎn)生。通過QuartusⅡ和MATLAB驗證了系統(tǒng)的可行性。

CORDIC算法;控制因子;MATLAB;FPGA

CORDIC算法也叫坐標(biāo)旋轉(zhuǎn)數(shù)字計算機算法,在基本運算領(lǐng)域應(yīng)用非常的廣泛。在高速率運算中優(yōu)勢也非常明顯,因為此算法需要的加法器和移位寄存器數(shù)量很少。目前應(yīng)用最多是在直接數(shù)字頻率合成、快速傅里葉變換等領(lǐng)域。傳統(tǒng)的CORDIC算法具有減少迭代次數(shù)和提高相位分辨率的優(yōu)點,但是同時也有很大的缺點那就是硬件資源的消耗量很大和實現(xiàn)難度大[1-2]。文章提出的基于FPGA改進(jìn)CORDIC算法是在傳統(tǒng)CORDIC算法上改進(jìn)而成。經(jīng)過改進(jìn)的算法在不增加實現(xiàn)復(fù)雜度的基礎(chǔ)上減少迭代次數(shù)和提高了相位分辨率,此改進(jìn)算法通過了QuartusⅡ和MATLAB的驗證。

1 CORDIC算法基本原理

CORDIC算法原理圖如圖1所示,設(shè)(xi,yi)為起點,經(jīng)過角度為θ的矢量旋轉(zhuǎn)到達(dá)終點(xj,yj)。

由圖1可得式(1):

圖1 CORDIC算法原理圖

從起點到終點如果劃分為若干個小旋轉(zhuǎn)角度則可表示為:

式(2)也可表示為:

設(shè)每次旋轉(zhuǎn)的角度為θn=arctan(1/2n),總的

旋轉(zhuǎn)角度為:

式(4)中di=±1,所以有tanθ=di2-n,代入式(3)可表示為:

當(dāng)N值比較大時:

如果不考慮cosθn可得:

引入角度累加器追蹤累加的旋轉(zhuǎn)角度:

設(shè)旋轉(zhuǎn)方向控制序列為:{dn=±1;n=0,1,2…},旋轉(zhuǎn)角度θ是正角,開始旋轉(zhuǎn)后,如果出現(xiàn)旋轉(zhuǎn)角首次大于θ的情況時,控制因子是dn=±1,n =0,1,2,…,k1;然后進(jìn)行反向旋轉(zhuǎn),當(dāng)出現(xiàn)旋轉(zhuǎn)角首次小于θ的情況時,控制因子是dn=-1,n=k1+ 1,k1+2,…,k2;重復(fù)此前的旋轉(zhuǎn)就能得到一個與θ角充分接近旋轉(zhuǎn)向量[3-4]。角度累加器的方向控制因子是:dn=sign(zn)。

2 改進(jìn)算法及FPGA實現(xiàn)

設(shè)x0=1,y0=0,z0=θ為初始值,進(jìn)過N次迭代的結(jié)果為xn=(cosz0)/K,yn=(cosz0)/K。把輸出結(jié)果乘上伸縮因子K可得到需要角度的sine和cosine的值。

第1,通過減少計算周期可使輸出信號的頻帶范圍擴大。為此可以把系統(tǒng)設(shè)計成流水線結(jié)構(gòu),這樣就能解決因為迭代次數(shù)多導(dǎo)致信號周期長的問題,有效信號能在單個時鐘周期內(nèi)產(chǎn)生,系統(tǒng)的擴展性會更好,增加流水單元即可實現(xiàn)提高精度的要求。

第2,因為用的是多級相位累加器,截尾誤差會在每一級相位累加器中產(chǎn)生,經(jīng)過串行運算截尾誤差會不斷的累積,為了解決這個問題,要求每一級的截尾誤差都必須要滿足一個條件,這個條件就是:小于等于最小范圍除以迭代次數(shù)。為了提高運算精度,可以把內(nèi)部相位累加器增加一定的位數(shù)[5-6]。

第3,傳統(tǒng)的CORDIC算法中下級流水操作的加減是由一位方向控制因子控制的。改進(jìn)算法則是使用兩位方向控制因子dn來控制,如果相位累加器的結(jié)果還沒有最小旋轉(zhuǎn)角度的1/2大的時候,此時dn處于“01”狀態(tài),所以下一級流水只保存上一級的結(jié)果并不操作。

方向控制因子和相關(guān)運算映射關(guān)系如表1所示。

表1 映射表

第4,MVR算法的優(yōu)點是相位分辨率很高,但是需要查找表來解決伸縮因子的問題,其缺點也是很明顯的那就是耗費了大量的資源。改進(jìn)算法中分利用此算法的優(yōu)點,角度還是用式(8)進(jìn)行計算,所以轉(zhuǎn)過的角度變化不大,而且只有一次角度旋轉(zhuǎn)[7]。在滿足系統(tǒng)對相位分辨率的要求的同時,最終的結(jié)果可以用最后一級迭代的次數(shù)乘上相應(yīng)的伸縮因子K得到。系統(tǒng)的FPGA實現(xiàn)是在Altera公司的開發(fā)軟件QuartusⅡ環(huán)境下使用VerilogHDL硬件描述語言實現(xiàn)的。頂層文件如圖2所示。

圖2 頂層原理圖

相位累加通過phase_top模塊實現(xiàn),迭代運算通過add_top模塊實現(xiàn)。所處象限是由輸入的相位值決定的,象限映射關(guān)系如表2所示。

表2 象限映射關(guān)系表

3 測試結(jié)果和結(jié)論

3.1 測試結(jié)果

用MATLAB對系統(tǒng)進(jìn)行仿真。把內(nèi)部相位累加器位數(shù)增加4位,這樣可以提高運算精度,結(jié)果圖3所示。

圖3 截尾誤差造成的精度下降分析曲線

圖3中實線data2是正弦函數(shù)值與標(biāo)準(zhǔn)正弦函數(shù)的值絕對誤差,data1是函數(shù)值與標(biāo)準(zhǔn)正弦函數(shù)值絕對誤差。通過上圖可以看出運算誤差大大降低。相位累加時考慮控制因dn正負(fù)的同時還具有停滯狀態(tài),所以此迭代算法在提高迭代精度的同時還增加了可計算的相位值。具體的測試結(jié)果如圖4和圖5所示。

圖4 優(yōu)化算法前后的迭代結(jié)果

由圖4可以看出,通過增加停滯狀態(tài)可以使相位分辨率增加,由圖5可以看出采用文章提出的優(yōu)化算法降低了迭代誤差[8]。表3列出了傳統(tǒng)算法和改進(jìn)后的算法可取的相位數(shù)目,通過表3可以看出改進(jìn)后的CORDIC算法在同等硬件復(fù)雜度的條件下相位分辨率大大提高。

圖5 優(yōu)化算法前后誤差

表3 傳統(tǒng)算法和改進(jìn)算法可取的相位數(shù)目

3.2 結(jié)論

經(jīng)過改進(jìn)的CORDIC算法的內(nèi)部相位的處理位數(shù)和迭代機制得到了很好的改進(jìn),和傳統(tǒng)的CORDIC算法相比不但相位分辨大大率提高,而且計算誤差也得到了有效的控制。改善效果最好的是sine和cosine函數(shù)導(dǎo)數(shù)較大的地方。該系統(tǒng)可以廣泛的應(yīng)用在NOC和FFT等領(lǐng)域。

[1] 李美俊,李光明.基于嵌入式的CORDIC算法的改進(jìn)及實現(xiàn)[J].微電子學(xué)與計算機,2012,29(2):142-149.

[2] 夏少峰,黃世震.基于System Generator的CORDIC算法DDS的FPGA實現(xiàn)[J].電子器件,2010,33(1):128-131.

[3] 張尊,李紹榮.基于改進(jìn)的CORDIC算法的NCO實現(xiàn)[J].信息通信,2009(4):11-13.

[4] 陳彥來.基于CORDIC算法的直角坐標(biāo)與球面坐標(biāo)變換電路的FPGA實現(xiàn)[J].艦船電子對抗,2011,34(1):72-75.

[5] 張偉,張安堂,肖宇.基于改進(jìn)的CORDIC算法FFT的復(fù)乘及其FPGA實現(xiàn)[J].電子技術(shù)引用,2011,37(4):51-54.

[6] 朱雙兵,楊維明,吳恙,等.基于CORDIC算法的線性調(diào)頻信號產(chǎn)生[J].電子器件,2013,36(4):497-501.

[7] 何賓.FPGA數(shù)字信號處理實現(xiàn)原理及方法[M].北京:清華大學(xué)出版社,2010.

[8] 肖振華,林水生.基于CORDIC算法的FPGA實現(xiàn)[J].實驗科學(xué)與技術(shù),2011,9(5):19-22.

胡 煜(1979- ),男,漢族,湖北黃岡人,碩士,講師,主要研究方向為網(wǎng)絡(luò)通信/無線通信,huyu@guet.edu.cn。

Improve the CORDIC Algorithm Research Based on FPGA*

HU Yu*
(School of Information and Communication,Guilin University of Electronic Technology,Guilin Guangxi 541004,China)

Traditional CORDIC algorithm can improve the phase resolution,but consume considerable hardware resources.To solve this problem,the conventional CORDIC algorithm,in the great majority of cases,increases the medians in the internal phase accumulator,at the same time using the two-direction control factor to the lower pipeline addition and subtraction operations,and in the case of the same hardware resources consumption to achieves a higher phase resolution of the sine and cosine signal generation.The feasibility of the system is verified by QuartusⅡand MATLAB.

CORDIC algorithm;control factor;MATLAB;FPGA

10.3969/j.issn.1005-9490.2014.02.041

TN702;TP301.5

A

1005-9490(2014)02-0358-03

項目來源:國家自然科學(xué)基金項目(61261017)

2013-07-30修改日期:2013-08-15

EEACC:0200

主站蜘蛛池模板: 激情無極限的亚洲一区免费| 狼友av永久网站免费观看| 欧美国产在线看| 日本人妻一区二区三区不卡影院| 久久鸭综合久久国产| 久热中文字幕在线观看| 日韩在线欧美在线| 亚洲无码高清一区| 在线色国产| 亚洲中文字幕久久无码精品A| 日韩a级毛片| 国产SUV精品一区二区6| 亚洲另类国产欧美一区二区| 精品一区二区久久久久网站| 国产成人久视频免费| 国产美女在线观看| 中文字幕日韩视频欧美一区| 中国毛片网| 久久成人18免费| 成人在线综合| 极品私人尤物在线精品首页| 99视频在线免费看| 国产特级毛片| 国产免费精彩视频| 欧美成人午夜视频| 在线看AV天堂| 激情综合网激情综合| 99这里只有精品在线| 91国内在线视频| 欧美精品一区二区三区中文字幕| 91蝌蚪视频在线观看| 欧美黄网站免费观看| 欧美激情伊人| 日韩在线第三页| 欧美精品成人一区二区在线观看| 亚洲成在线观看| 网友自拍视频精品区| 91色在线视频| 国产久操视频| 青青操国产| 日韩av无码精品专区| 亚洲午夜18| 国产成+人+综合+亚洲欧美| 国产精品免费入口视频| 激情综合网激情综合| 91青草视频| 日韩精品亚洲一区中文字幕| 久久人体视频| 毛片久久网站小视频| 久久毛片基地| 精品国产一区91在线| 国产三级毛片| 国产成人高精品免费视频| 91免费观看视频| 91精品啪在线观看国产91九色| 免费人成网站在线观看欧美| 91久久精品日日躁夜夜躁欧美| 2021国产精品自拍| 国产日韩精品欧美一区喷| 亚洲不卡av中文在线| 不卡无码网| 午夜毛片福利| 91 九色视频丝袜| 国产精品所毛片视频| 凹凸国产熟女精品视频| 97在线国产视频| 亚洲国产成人在线| 日韩欧美国产精品| 久久免费视频播放| 91色在线视频| 国产男女XX00免费观看| 国产成人精品第一区二区| 亚洲精品国偷自产在线91正片| 免费一看一级毛片| 丁香六月激情婷婷| 国产精品视频导航| 亚洲人成网18禁| 国产门事件在线| 日韩东京热无码人妻| 一级爱做片免费观看久久| 亚洲av日韩综合一区尤物| 国产丝袜91|