论文

ISSCC 2017 Session 14 Slides整理(5/8)

论文五:ENVISION: A 0.26-to-10 TOPS/W Subword-Parallel Dynamic-Voltage-Accuracy-Frequency-Scalable CNN Processor in 28nm FDSOI

机构:EAST-MICAS, KU Leuven(鲁汶大学)

简述:

一款应用于多场景面向Always-on图像识别、检测需求的动态能效嵌入式CNN处理芯片。采用DVAFS保证能效的动态平衡,计算核心架构基于2D-SIMD设计(SIMD计算单元支持在多种数据位宽下进行并行计算),并提供了面向稀疏计算的检测及IO级压缩技术,最终能效范围在0.25~10TOPS/W@76GOPS。在4~6b的计算场景,可以做到6nJ/frame的CNN卷积层计算效率。

主要内容:

(P2-4)嵌入式设备中的神经网络:从云端到终端的计算载体转移,对能效的要求提高。1-10TOPS/W的CNN计算能效是对始终在线的(Always-On)嵌入式设备运行NN的重要保证。

(P5)Always-on NN:对VGG-16网络在LFW数据库进行训练,2h就可以耗尽1200mAh, 1.5V的电池。VGG-16参数如下:有15.4 GMACs操作,能效需求900mw@30fps(30 mJ/f & 1 TOPS/W)。

1
Always-on Neural Network

Feature 1: Hierarchical Recognition

(P7-10)层次化的计算为始终在线的计算提供了条件:不同计算压力下,计算量不同,因此能耗节省空间大。

Feature 2: DVAFS: Dynamic-Voltage-Accuracy-Frequency-Scaling

(P13-15)高精度调整乘法器电压+频率:DVAS->DVAFS。基于JSSC2016、VLSI2016的DVAS工作基础,对乘法器进行优化设计,增加实现频率的调整。DVAFS实现了对运行时所有可调整参数的降低:激活a,频率f,电压v。

详细思考:通过采用高位x高位、低位x低位,可以在16b阵列上同时计算两个8b乘法,对于后续的不同精度计算吞吐提升和资源利用提高起到极大的作用。见P30-33

(P16-19)DVAFS的提升之处在于:通过使用低精度最大化降低了非计算部分的消耗,从而优于DVAS的表现。从实际表现来看,DVAFS的调整范围是DAS的20x,而DVAS的范围是DAS的8x。同时,这一技术利用了DF-SOI工艺中CMOS的Body-Bias特性,从而实现了高精度可调控。

(P21)ENVISION架构的主要特征:A、高计算并行和数据重用;B、对稀疏网络的支持;C、可以通过DVAFS大范围的调节精度。

(P22)对于A特征:卷积操作本身就具有计算并行特点;网络中的数据本身就有高度重合。在ENVISION中,数据重用分为三类:卷积重用(单一卷积核vs一张图的多图层);图像重用(多个卷积核vs一张图的单图层);卷积核重用(单一卷积核vs多张图像的多图层)。

10
Data Reuse

(P22)对于特征B、C:CNN网络本身即是稀疏的,而随着场景、网络、以及层级的不同,稀疏性也是不一样的,对计算精度的需求也不同。

(P23)2D-SIMD结构的DVAFS架构,如图:整个架构包含用于ReLU/MacPool/Mac计算的1D-SIMD,专用于MAC计算的2D-SIMD,用于数据和控制的RISC主控、DMA接口、DM、PM模块等。

11.png
A 2D-SIMD DVAFS Architecture

(P25-28)对于常规的卷积运算来说,卷积核与特征图的乘积没有数据重用关系,而当展开为1D计算时,卷积操作可以展开为一系列数据与同一个核进行计算,如图所示。特征图先进入FIFO,随后通过1D-SIMD完成与同一个卷积核的计算。

12
Constitutional Reuse in 1D-SIMD

(P29-30)对于更高复杂度的计算,1D-SIMD难以满足需求,通过卷积重用+特征图重用方式,可以进一步提高DVAFS阵列的计算吞吐。如图所示,对于更大的2D-SIMD阵列,可以并行计算的数据更多,而当计算核心的计算力提升(N=2)时,总的并行度也倍数提高。

(P31-33)对于SIMD计算单元而言,其计算上的可扩展性更强,由于FIFO通路带宽较大,因此,N的取值可以是1,2,4。在面对不同的位宽计算需求时候,通过数据拼接计算,同一阵列完成的MAC计算可以倍数提升。下图分为N=1/2/4时的SIMD单元计算状态。通过DVAFS的乘法器,在不同精度计算时充分利用了硬件优势。

(P34)对于稀疏矩阵中的0元素,通过Guard SRAM进行规避,避免不必要的计算。策略如图:by VLSI 2016

18.png
Guard SRAM and 2D-Array from Sparse Operations

(P35)对于存储部分,通过RISC主控,同时对数据可以进行Huffman压缩。

19.png
Flexible Memory / IO Compress

(P38-39)芯片实现:采用28nm FDSOI工艺

(P41-49)芯片性能及能效表现:由上到下分为1x16b/2x8b/4x4b/30~60% 4×3~4b。可以看到scale非常大,能效相差可达40x,电压域为0.61v~0.85v。性能表现在BBopt下可达10TOPS/W。

(P50-51)在不同层次Always-on计算的表现:面对4-6b的always-on计算,可以获得高达6uJ/Frame的卷积计算性能。最高可以达到10TOPS/W的能效表现。

(P53-54)和其他架构的对比:在Scale范围和能效上表现非常优异。

(P55-56)总结:

1、面向多层场景的Always-on架构

2、高能效的CNN处理架构:基于2D-SIMD;采用DVAFS技术;面向稀疏计算的检测及IO级压缩

3、ENVISION是一款具有0.25~10TOPS/W@76GOPS能效表现的嵌入式CNN处理芯片。

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s