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

14 篇文章 1 订阅
9 篇文章 0 订阅

本文介绍如何使用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°


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值