xilinx cordic IP核的用法- arctan的算法

本文介紹如何使用xilinx的CORDIC覈計算一個arctan的值。


此方法對於梯度運算有着重要的意義。


原理略

環境:xilinx ISE 14.7  cordic 4.0 ISim


首先是IP核的選項設置,如圖:



標註1:選擇函數的類型,我們選擇計算arctan的值。

標註2:選擇cordic的結構,是字串行還是並行,我們選擇並行。

標註3:選擇輸出流水線類型,選擇不要流水線。



標註1:選擇相位角的格式,我們選擇Radians(意思是多少PI)

標註2:選擇數據寬度,這個和所需數據位寬決定,我們選擇16位

標註3:舍位模式,選擇近似值。

對於相位角的概念,datasheet的定義爲:


 數據格式爲:X_IN, Y_IN, X_OUT and Y_OUT.

這些功能的實現運用fixed-point 2‘s complement numbers with an integer width of 2 bits. 用兩位。

前兩位表示符號,後面的位數表示分數部分。

運用Q Numbers Format

1QN 表示 N = word width - 2. 也稱爲Fix(N+2)_N。

對於輸入信號,X_IN, Y_IN,必須在-1 <= input data signal <= 1.

對於角度:



標註1:選擇階乘和精度,0表示根據數據來自動選擇。


標註2:選擇cordic算法的範圍,將輸出值控制在正負pi/4之間還是pi之間。

標註3:選擇PIN

仿真文件爲:


此處的輸入爲:        x_in = 16'b0010110101000001;
                                    y_in = 16'b0010110101000001;


輸出結果:0001 1001 00100010




輸出的phase值爲:0.7853981 即爲45°


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章