FPGA實現(xiàn)CORDIC核的應(yīng)用和解卷繞
在FPGA硬件實現(xiàn)CORDIC的邏輯其實是很簡單的,就是設(shè)置好輸入輸出的位寬,然后建立好對應(yīng)的精度表,通過旋轉(zhuǎn)加得到運算結(jié)果。但是在IP核的使用中需要特別注意輸入數(shù)據(jù)的位寬和大小。IP核的申請配置如下圖:
這個選項卡里主要是選擇功能、處理速度和模式。
這個選項卡主要是選擇弧度輸出還是±1輸出、輸入輸出位寬和截位方式,一般選擇四舍五入的截位方式。
這個選項卡是配置輸出項的。還需要特別注意的就是輸入與輸出的延時latency;
這個IP的申請比較簡單,在實際仿真時需要注意的是輸入數(shù)據(jù)的大小。在官方文檔LogiCORE IP CORDIC v4.0中對輸入數(shù)據(jù)有著很嚴格的規(guī)定,我們在使用時也需要嚴格的遵守。數(shù)據(jù)輸入規(guī)定如下圖:
在滿足了上面IP的例化后通過modelsim仿真。分別輸入兩個信號,通過CORDIC核輸出相位信號,仿真波形如下圖:
從圖中可以看出輸入信號是連續(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來進行確定相位突變的點和方向。在實際代碼仿真可知通過兩個點判斷這種方式是可行的,仿真波形如下圖所示:
審核編輯:劉清
-
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)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論