打印
[FPGA]

fpga如何实现浮点指数运算?

[复制链接]
6538|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xiantingfeng|  楼主 | 2013-12-8 19:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
zhaojingzb| | 2013-12-9 10:22 | 只看该作者
FPGA有浮点计算的IP,你可以看一下他的user guide,对你会有帮助

使用特权

评论回复
板凳
xiantingfeng|  楼主 | 2013-12-10 09:01 | 只看该作者
zhaojingzb 发表于 2013-12-9 10:22
FPGA有浮点计算的IP,你可以看一下他的user guide,对你会有帮助

嗯,是有浮点IP,像基本的乘除法,开方可以用,但像指数运算这种高级一点的没有,cordic运算输入范围小,而且频率没法太高。

使用特权

评论回复
地板
zhaojingzb| | 2013-12-10 10:16 | 只看该作者
不是啊,我记得我应该做过指数的运算的,原理都是一样的吧。

使用特权

评论回复
5
xiantingfeng|  楼主 | 2013-12-15 16:07 | 只看该作者
zhaojingzb 发表于 2013-12-10 10:16
不是啊,我记得我应该做过指数的运算的,原理都是一样的吧。

cordic算法可以实现指数运算,但范围限于-pi/4~pi/4,其他范围需要转换,可以考虑用乘法什么的,也比较麻烦。

使用特权

评论回复
6
xiantingfeng|  楼主 | 2013-12-15 16:10 | 只看该作者
要用到的是求e^(-x),求负指数,参考了一篇文献, 基于组合移位的指数求解,转换为定点数据。在-1~-8范围内精度在1e-8,基本满足要求,但小于-8时误差百分数比较大,不过此时的结果已经不大,1e-4,对结果影响不大。基本满足要求

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

18

帖子

1

粉丝