深度学习中的激活函数SoftMax函数的FPGA设计与实现(二)(CORDIC)

这次我们来继续设计我们的SoftMax函数实现。

上次我们将SoftMax函数进行了简单的分析,发现算法的实现第一个难点就是如何实现指数函数。这次我打算囫囵吞枣的来简述一下指数函数的实现。

在最初思考如何去实现指数函数的时候,脑海中有两种思路,一是使用MATLAB对指数函数进项采样,再以自变量值位地址位(假设地址位共8位,自变量值位高四位,所以每个数据就会有8位的字长),函数值为存储数据存储进ROM中。这样每次函数值的调用就是对ROM中的数值的读取过程。

二就是使用CORDIC算法来实现指数函数。这种办法只使用旋转和移位的操作来实现指数函数。

综合以上的两种思路,初步希望使用CORDIC算法来实现指数函数,后期如果有时间的话会使用ROM来实现一下看资源使用率和最长路径时间会不会有巨大的差距。

既然决定使用CORDIC算法来实现指数函数,首先我们要对CORDIC算法有一个初步的认识。CORDIC算法全称为坐标旋转计算法,是一个“化繁为简”的算法,将许多复杂的运算转化为一种“仅需要移位和加法”的迭代操作。他经常被使用的计算公式

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值