0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

在FPGA中利用CORDIC算法IP核實(shí)現(xiàn)三角函數(shù)關(guān)系的轉(zhuǎn)換

FPGA設(shè)計(jì)論壇 ? 來(lái)源:CSDN ? 作者:撕裂的牛仔褲 ? 2022-10-17 11:58 ? 次閱讀

FPGA實(shí)現(xiàn)CORDIC核的應(yīng)用和解卷繞

在FPGA硬件實(shí)現(xiàn)CORDIC的邏輯其實(shí)是很簡(jiǎn)單的,就是設(shè)置好輸入輸出的位寬,然后建立好對(duì)應(yīng)的精度表,通過(guò)旋轉(zhuǎn)加得到運(yùn)算結(jié)果。但是在IP核的使用中需要特別注意輸入數(shù)據(jù)的位寬和大小。IP核的申請(qǐng)配置如下圖:

ed08f03e-4dcb-11ed-a3b6-dac502259ad0.png

這個(gè)選項(xiàng)卡里主要是選擇功能、處理速度和模式。

ed2caed4-4dcb-11ed-a3b6-dac502259ad0.png

這個(gè)選項(xiàng)卡主要是選擇弧度輸出還是±1輸出、輸入輸出位寬和截位方式,一般選擇四舍五入的截位方式。

ed4a4ca0-4dcb-11ed-a3b6-dac502259ad0.png

這個(gè)選項(xiàng)卡是配置輸出項(xiàng)的。還需要特別注意的就是輸入與輸出的延時(shí)latency;

這個(gè)IP的申請(qǐng)比較簡(jiǎn)單,在實(shí)際仿真時(shí)需要注意的是輸入數(shù)據(jù)的大小。在官方文檔LogiCORE IP CORDIC v4.0中對(duì)輸入數(shù)據(jù)有著很?chē)?yán)格的規(guī)定,我們?cè)谑褂脮r(shí)也需要嚴(yán)格的遵守。數(shù)據(jù)輸入規(guī)定如下圖:

ed646b6c-4dcb-11ed-a3b6-dac502259ad0.png

在滿(mǎn)足了上面IP的例化后通過(guò)modelsim仿真。分別輸入兩個(gè)信號(hào),通過(guò)CORDIC核輸出相位信號(hào),仿真波形如下圖:

ed7eb738-4dcb-11ed-a3b6-dac502259ad0.png

從圖中可以看出輸入信號(hào)是連續(xù)的,而輸出信號(hào)存在跳躍,這是因?yàn)镃ORDIC核只能輸出-3.14到+3.14之間的信號(hào),因此輸出信號(hào)存在著卷繞現(xiàn)象,這樣的輸出結(jié)果不能反映實(shí)際的相位信息,因此需要進(jìn)行解卷繞處理。

在CORDIC核輸出的相位信號(hào)發(fā)聲突變是在-3.14到+3.14處,因此我們只要根據(jù)突變前后數(shù)據(jù)的符號(hào)和大小即可通過(guò)加上或者減去6.28來(lái)實(shí)現(xiàn)解卷繞的過(guò)程。利用FPGA進(jìn)行解卷繞時(shí)至少需要兩個(gè)點(diǎn),通過(guò)判斷這兩個(gè)點(diǎn)的符號(hào)和差值的絕對(duì)值是否等于6.28來(lái)進(jìn)行確定相位突變的點(diǎn)和方向。在實(shí)際代碼仿真可知通過(guò)兩個(gè)點(diǎn)判斷這種方式是可行的,仿真波形如下圖所示:

edabbda0-4dcb-11ed-a3b6-dac502259ad0.png




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1641

    文章

    21912

    瀏覽量

    611713
  • IP核
    +關(guān)注

    關(guān)注

    4

    文章

    335

    瀏覽量

    50254
  • CORDIC算法
    +關(guān)注

    關(guān)注

    0

    文章

    17

    瀏覽量

    9790

原文標(biāo)題:FPGA實(shí)現(xiàn)CORDIC核的應(yīng)用和解卷繞

文章出處:【微信號(hào):gh_9d70b445f494,微信公眾號(hào):FPGA設(shè)計(jì)論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 0人收藏

    評(píng)論

    相關(guān)推薦

    RX系列三角函數(shù)單元(TFU)的使用介紹

    硬件加速器三角函數(shù)單元(Trigonometric Function Unit)能夠高速處理三角函數(shù)sin、cos、arctan和sqrt(x2+y2)函數(shù)的運(yùn)算,可顯著減少CPU負(fù)荷,
    的頭像 發(fā)表于 12-04 12:25 ?2811次閱讀
    RX系列<b class='flag-5'>三角函數(shù)</b>單元(TFU)的使用介紹

    ARM7如何實(shí)現(xiàn)三角函數(shù)

    ARM7如何編程實(shí)現(xiàn)三角函數(shù)sin,cos,軟件用的是TKStudio,求大神
    發(fā)表于 11-12 16:31

    基于FPGA的數(shù)字相鎖相環(huán)的基本原理分析

    摘要:數(shù)字相鎖相環(huán)中含有大量乘法運(yùn)算和三角函數(shù)運(yùn)算,占用大量的硬件邏輯資源。為此,提出一種數(shù)字相鎖相環(huán)的優(yōu)化實(shí)現(xiàn)方案,利用乘法模塊復(fù)用和
    發(fā)表于 06-27 07:02

    FPGA設(shè)計(jì)必須掌握的Cordic算法

    計(jì)算機(jī)時(shí)發(fā)明的。這是一種設(shè)計(jì)用于計(jì)算數(shù)學(xué)函數(shù)、三角函數(shù)和雙曲函數(shù)的簡(jiǎn)單算法。這種算法的真正優(yōu)勢(shì)在于只需要采用極小型的
    發(fā)表于 09-19 09:07

    labview三角函數(shù)問(wèn)題

    我想使用三角函數(shù)的余弦函數(shù)(輸入是角度的那種)我試了一下,發(fā)現(xiàn)cos90°算出來(lái)不是0,為什么呀,算別的角度是對(duì)的,就是算值等于0的度數(shù)會(huì)有問(wèn)題。用了弧度角度換算、公式節(jié)點(diǎn)、直接輸入π/2,這種方法出來(lái)都不是0
    發(fā)表于 04-09 14:18

    Cordic IP用戶(hù)手冊(cè)

    CORDIC(Coordinate Rotation Digital Computer)算法即坐標(biāo)旋轉(zhuǎn)數(shù)字計(jì)算方法,是 J.D.Volder1于 1959 年首次提出,主要用于三角函數(shù)、雙曲線(xiàn)、指數(shù)
    發(fā)表于 08-09 06:45

    基于DSP的三角函數(shù)快速計(jì)算

    基于DSP的三角函數(shù)快速計(jì)算
    發(fā)表于 04-07 14:33 ?53次下載
    基于DSP的<b class='flag-5'>三角函數(shù)</b>快速計(jì)算

    三角函數(shù)arcranx運(yùn)算電路

    三角函數(shù)arcranx運(yùn)算電路
    發(fā)表于 04-09 10:16 ?2872次閱讀
    反<b class='flag-5'>三角函數(shù)</b>arcranx運(yùn)算電路

    利用Cordic算法來(lái)計(jì)算三角函數(shù)的值

    減運(yùn)算,就能計(jì)算常用三角函數(shù)值,如Sin,Cos,Sinh,Cosh等函數(shù)。 J. Walther1974年在這種算法的基礎(chǔ)上進(jìn)一步改進(jìn),使其可以計(jì)算出多種超越
    發(fā)表于 11-17 16:37 ?7191次閱讀
    <b class='flag-5'>利用</b><b class='flag-5'>Cordic</b><b class='flag-5'>算法</b>來(lái)計(jì)算<b class='flag-5'>三角函數(shù)</b>的值

    基于三角函數(shù)搜索因子的混合蛙跳算法

    針對(duì)傳統(tǒng)混合蛙跳算法存在收斂速度慢、容易陷入局部最優(yōu)和搜索精度不高的缺陷,提出了基于三角函數(shù)搜索因子的混合蛙跳算法。該算法將基于三角函數(shù)搜索
    發(fā)表于 11-24 15:56 ?0次下載

    如何使用Cordic算法C語(yǔ)言實(shí)現(xiàn)三角函數(shù)的計(jì)算

    三角函數(shù)的計(jì)算是個(gè)復(fù)雜的主題,有計(jì)算機(jī)之前,人們通常通過(guò)查找三角函數(shù)表來(lái)計(jì)算任意角度的三角函數(shù)的值。這種表格人們剛剛產(chǎn)生三角函數(shù)的概念的時(shí)
    發(fā)表于 04-25 18:27 ?9次下載
    如何使用<b class='flag-5'>Cordic</b><b class='flag-5'>算法</b>C語(yǔ)言<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>三角函數(shù)</b>的計(jì)算

    如何使用DSP匯編語(yǔ)言實(shí)現(xiàn)高精度的三角函數(shù)

    現(xiàn)今DSP 軟件工程設(shè)計(jì),廣泛采用高級(jí)語(yǔ)言(如C 語(yǔ)言)直接調(diào)用三角函數(shù)進(jìn)行計(jì)算。然而,匯編語(yǔ)言的穩(wěn)定性、可讀性和執(zhí)行效率均優(yōu)于高級(jí)語(yǔ)言,因缺少可供直接調(diào)用的三角函數(shù)庫(kù),其開(kāi)發(fā)周期
    發(fā)表于 08-28 09:36 ?7次下載
    如何使用DSP匯編語(yǔ)言<b class='flag-5'>實(shí)現(xiàn)</b>高精度的<b class='flag-5'>三角函數(shù)</b>

    AD639:通用三角函數(shù)轉(zhuǎn)換器廢棄數(shù)據(jù)表

    AD639:通用三角函數(shù)轉(zhuǎn)換器廢棄數(shù)據(jù)表
    發(fā)表于 05-17 17:29 ?8次下載
    AD639:通用<b class='flag-5'>三角函數(shù)</b><b class='flag-5'>轉(zhuǎn)換</b>器廢棄數(shù)據(jù)表

    TI Arm內(nèi)核三角函數(shù)的優(yōu)化

    電子發(fā)燒友網(wǎng)站提供《TI Arm內(nèi)核三角函數(shù)的優(yōu)化.pdf》資料免費(fèi)下載
    發(fā)表于 09-11 09:19 ?1次下載
    TI Arm內(nèi)核<b class='flag-5'>三角函數(shù)</b>的優(yōu)化

    三角函數(shù)的應(yīng)用廣泛性:從算法設(shè)計(jì)到DSP芯片實(shí)現(xiàn)的探索

    機(jī)器人控制、衛(wèi)星定向還是無(wú)人駕駛汽車(chē)的姿態(tài)調(diào)整,三角函數(shù)通過(guò)坐標(biāo)變換精確調(diào)整系統(tǒng)的運(yùn)動(dòng)軌跡。DSP芯片在這些應(yīng)用扮演著至關(guān)重要的角色,借助其強(qiáng)大的實(shí)時(shí)處理能力,能夠
    的頭像 發(fā)表于 02-20 10:32 ?481次閱讀

    電子發(fā)燒友

    中國(guó)電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品