Reconfigurable Convolutional Kernels for Neural Networks on FPGAs -2019 ACM FPGA
@(论文笔记)
reconfgurable constant multipliers (RCMs) showed that
- RCMs use considerably fewer resources compared to logic-based multipliers and
- the reconfguration of the coefcients is possible within very few clock cycles
最新的RCM 使用CFG-LUT, 可以在32个周期内进行重载
本文的主要贡献:
- 本文设计了一种变体KCM(Ken Chapman.‘s Multiplier / Constant coefficient Multipliers)。使用快速可编程查找表,流水线加法树,faithfor rounding ,以及一种使用CFGLUT的在线可编程电路
- 本文设计了一种基于FloPoCo代码生成器的自动脚本。
FloPoCo (Floating-Point Cores) 是一种将算法公式(C,C++)自动转换为VHDL的工具。有点类似HLS.
http://flopoco.gforge.inria.fr/
CNN core的设计
1、Generic LUT-based Constant Multiplication (Ken Chapman.‘s Multiplier (KCM))
K = [ B i / L ] K = [B_i/L] K=[Bi/L] 当Bi不能被L整除时,需要将Bi扩展。
所使用的KCM乘法器结构如下:其中,只有第一个计算Bi-1到Bi-L-2部分的乘法器是signed,其余都是unsigned.
2、Compressor Trees
上图中最后的求和部分可以使用加法树实现。本文指出,传统的加法树是基于全加器和半加器设计的,在FPGA上映射到LUT上是十分低效的。因此本文使用Parandeh-Afshar提出的 generalized parallel counters (GPCs)。

最低0.47元/天 解锁文章
4373

被折叠的 条评论
为什么被折叠?



