新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > FPGA基于CORDIC算法的求平方實(shí)現(xiàn)

        FPGA基于CORDIC算法的求平方實(shí)現(xiàn)

        作者: 時(shí)間:2017-10-11 來源:網(wǎng)絡(luò) 收藏

        1. 功能及原理

        是在沒有專用乘法器(最小化門數(shù)量)情況下,一組完成特定功能的算法,包括平方、超越、Log、sin/cos/artan。原理為連續(xù)的旋轉(zhuǎn)一個(gè)較小的角度,以一定精度逼近想要的角度。具體原理如下圖所示:

        本文引用地址:http://www.104case.com/article/201710/365590.htm

        2. Xilinx實(shí)現(xiàn) IP核及性能測試

        例1:無符號(hào)整數(shù)的平方操作:

        X_in[18:0],待平方的無符號(hào)整數(shù),在nd(new data)為輸入有效信號(hào),輸出x_out[9:0]及對(duì)應(yīng)的使能信號(hào)rdy,其對(duì)應(yīng)的波形圖見下圖。

        (1)流水延遲

        最下方為輸入數(shù)據(jù),最上方為輸出求平方結(jié)果。從上圖可以看到,從nd到rdy,間隔了5個(gè)時(shí)鐘周期。

        (2)時(shí)鐘頻率

        在FX130-1芯片上綜合時(shí)鐘頻率結(jié)果為2.8ns,。

        例2:無符號(hào)整數(shù)的平方根操作:

        在定制平方根IP核時(shí),選取Unsigned FracTIon,將X_IN與X_OUT設(shè)置為相同bit位,19bit。以某項(xiàng)目為例,待平方數(shù)據(jù)需要19bit來表示。在項(xiàng)目中,因?yàn)榇_放的數(shù)據(jù)表示圖像坐標(biāo),因此為整數(shù),數(shù)據(jù)格式為UFIX19_0,即用19bit表示數(shù)據(jù),且小數(shù)位為零位。而CORDIX的輸入要求為UFIX19_18,即19bit數(shù)據(jù),其中18bit表示小數(shù)位,1bit整數(shù)。

        在數(shù)據(jù)格式與CORDIC核的輸入不一致情況下,需要對(duì)輸出結(jié)果的bit位進(jìn)行正確解釋。

        輸入x_in=180: 000 0000 0000 1011 0100

        輸出x_dout=6869:000 0001 1010 1101 0101

        解釋:因?yàn)镃ORDIC期待的輸入x_in為18bit小數(shù),因此CORDIC的輸出x_dout應(yīng)為9bit小數(shù),即13+0.25+0.125+0.03125+0.0078125+0.001953125 = 13.416。可以看出最小的精度可以保持到小數(shù)點(diǎn)第3位。在具體實(shí)現(xiàn)時(shí),可以根據(jù)精度要求進(jìn)行調(diào)整。

        注:事實(shí)上,對(duì)于x_in代表的19個(gè)bit,18bit小數(shù)位,1bit小數(shù)位這樣的數(shù)據(jù)格式下,x_dout不需要考慮移位便可得到正確解釋;而其他格式下,則需要對(duì)x_dout進(jìn)行相應(yīng)的移位解釋,比如上例,就是對(duì)x_dout進(jìn)行了9bit的右移才得到了正確的估值。



        關(guān)鍵詞: FPGA CORDIC

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 天全县| 铁岭县| 蓝田县| 台江县| 堆龙德庆县| 休宁县| 宜川县| 泾阳县| 浪卡子县| 鄂温| 突泉县| 紫阳县| 定边县| 恩施市| 冷水江市| 双桥区| 阳西县| 郸城县| 芜湖市| 瑞昌市| 新田县| 金门县| 辽阳县| 曲麻莱县| 郧西县| 安国市| 汝城县| 灌云县| 彰化市| 奉新县| 临夏县| 乌审旗| 义马市| 黑水县| 新河县| 巨鹿县| 汾阳市| 德庆县| 清丰县| 怀宁县| 旌德县|