RM新时代网站-首页

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

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

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

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

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

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

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

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

這個選項卡里主要是選擇功能、處理速度和模式。

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

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

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

這個選項卡是配置輸出項的。還需要特別注意的就是輸入與輸出的延時latency;

這個IP的申請比較簡單,在實際仿真時需要注意的是輸入數(shù)據(jù)的大小。在官方文檔LogiCORE IP CORDIC v4.0中對輸入數(shù)據(jù)有著很嚴格的規(guī)定,我們在使用時也需要嚴格的遵守。數(shù)據(jù)輸入規(guī)定如下圖:

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

在滿足了上面IP的例化后通過modelsim仿真。分別輸入兩個信號,通過CORDIC核輸出相位信號,仿真波形如下圖:

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

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

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

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




審核編輯:劉清

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

    關(guān)注

    1629

    文章

    21729

    瀏覽量

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

    關(guān)注

    4

    文章

    327

    瀏覽量

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

    關(guān)注

    0

    文章

    17

    瀏覽量

    9719

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

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

收藏 人收藏

    評論

    相關(guān)推薦

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

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

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

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

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

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

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

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

    labview三角函數(shù)問題

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

    Cordic IP用戶手冊

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

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

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

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

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

    利用Cordic算法來計算三角函數(shù)的值

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

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

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

    歐拉公式與三角函數(shù)_歐拉公式推導(dǎo)三角函數(shù)

    歐拉公式是指以歐拉命名的諸多公式。其中最著名的有,復(fù)變函數(shù)的歐拉幅公式,即將復(fù)數(shù)、指數(shù)函數(shù)三角函數(shù)聯(lián)系起來。拓撲學(xué)
    發(fā)表于 11-28 20:44 ?21.5w次閱讀

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

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

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

    現(xiàn)今DSP 軟件工程設(shè)計,廣泛采用高級語言(如C 語言)直接調(diào)用三角函數(shù)進行計算。然而,匯編語言的穩(wěn)定性、可讀性和執(zhí)行效率均優(yōu)于高級語言,因缺少可供直接調(diào)用的三角函數(shù)庫,其開發(fā)周期
    發(fā)表于 08-28 09:36 ?7次下載
    如何使用DSP匯編語言<b class='flag-5'>實現(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ā)表于 09-11 09:19 ?0次下載
    TI Arm內(nèi)核<b class='flag-5'>三角函數(shù)</b>的優(yōu)化
    RM新时代网站-首页