码迷,mamicode.com
首页 > Web开发 > 详细

【DATE2017】Double MAC: Doubling the Performance of Convolutional Neural Networks on Modern FPGAs

时间:2017-09-29 11:02:11      阅读:335      评论:0      收藏:0      [点我收藏+]

标签:实现   并行   logs   nbsp   sim   利用   strong   doc   nal   

这篇文章介绍了如何利用FPGA内部单个DSP来实现SIMD乘法,从而提高DSP利用率,缓解计算资源不足的问题,是一个比较实用的trick。

要点:

  1. 利用单个DSP并行实现两次乘法:A*C、B*C;
  2. 文中只讨论了A、B、C具有相同bitwidth的情况。假设A、B、C均为nbit,那么将A与B拼成一个数之后的乘法变为(3n+1)*n;
  3. 乘数C只能是unsigned类型,而两个被乘数A和B可以是signed或者unsigned,但文中只讨论了A和B具有相同符号的情况;
  4. 对于unsigned乘法可以直接得到结果,而signed乘法略复杂一点儿,需要额外修正乘法的结果。

 

 

(1)unsigned乘法原理图:

技术分享

 

 

(2)signed乘法原理图:

技术分享

 

 

修正原理:

技术分享

 

 

原文地址:http://ieeexplore.ieee.org/document/7927113/

【DATE2017】Double MAC: Doubling the Performance of Convolutional Neural Networks on Modern FPGAs

标签:实现   并行   logs   nbsp   sim   利用   strong   doc   nal   

原文地址:http://www.cnblogs.com/ghdgl/p/7525796.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!