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)配置如下圖:
這個(gè)選項(xiàng)卡里主要是選擇功能、處理速度和模式。
這個(gè)選項(xiàng)卡主要是選擇弧度輸出還是±1輸出、輸入輸出位寬和截位方式,一般選擇四舍五入的截位方式。
這個(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ī)定如下圖:
在滿(mǎn)足了上面IP的例化后通過(guò)modelsim仿真。分別輸入兩個(gè)信號(hào),通過(guò)CORDIC核輸出相位信號(hào),仿真波形如下圖:
從圖中可以看出輸入信號(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)判斷這種方式是可行的,仿真波形如下圖所示:
審核編輯:劉清
-
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)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
RX系列三角函數(shù)單元(TFU)的使用介紹

ARM7如何實(shí)現(xiàn)三角函數(shù)
基于FPGA的數(shù)字三相鎖相環(huán)的基本原理分析
FPGA設(shè)計(jì)中必須掌握的Cordic算法
labview中的三角函數(shù)問(wèn)題
Cordic IP用戶(hù)手冊(cè)
利用Cordic算法來(lái)計(jì)算三角函數(shù)的值

基于三角函數(shù)搜索因子的混合蛙跳算法
如何使用Cordic算法C語(yǔ)言實(shí)現(xiàn)三角函數(shù)的計(jì)算

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

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

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

評(píng)論