ISSCC2019 清华大学团队成功研制高能效通用神经网络处理器芯片
2019-02-22

2月20日,来自清华大学线路所的刘勇攀副教授团队在美国旧金山举办的第66届国际固态电路会议(简称ISSCC 2019)发表了基于循环矩阵压缩方法的通用神经网络加速器芯片STICKER-T。该芯片在算法,架构和电路三方面进行了联合优化,在变换域进行神经网络加速,并使用可转置存储器复用数据,使得芯片的能效和面积相较于之前的研究都有显著的提升。

随着AI技术的不断发展,单一的网络结构已经很难满足不同领域的任务需求。常见的应用诸如图像识别或机器翻译分别需要卷积神经网络或循环神经网络的支持。而不同网络意味不同的计算模式,在带宽和计算资源上也会有各自的限制。因此,通用加速器的核心挑战是如何联合优化各种网络下的芯片能效。

图片1.png

不同架构的通用加速器比较

在以STICKER和Thinker为代表的先前设计中,研究者通常采用的解决方案是为卷积和全连接操作分别设计专用的加速核,或者将卷积重构为矩阵乘法。其中异构多核的设计虽然能够分别将卷积和全连接优化至最佳的能效,但是芯片整体却需要承担额外的面积开销,并且多核的利用率受工作量比例的限制很难达到100%,带来不可避免的浪费。而重构卷积的思路则意味着能效的下降和编译器与控制逻辑的复杂性。另一方面以TPU为代表的工业届芯片虽然有着更强的通用性和灵活性,却在芯片能效上受到限制。

图片2.png

循环矩阵压缩方法(CirCNN)原理图

该团队针对以上问题,采用了基于循环矩阵的神经网络压缩技术,从算法和硬件联合优化的角度提出全新的通用加速器设计。算法上,使用CirCNN方法训练出的神经网络,无论是全连接还是卷积的权重矩阵都可以划分成多个子块,每个子块的内部都是循环矩阵,将矩阵向量乘转换为循环卷积。进而可以使用fft+频域点乘+ifft的方法对卷积操作进行加速。

图片3.png

基于转置SRAM(TRAM)的数据复用方法


图片4.png

转置SRAM(TRAM)结构图

硬件上,为了满足fft的高效计算并尽可能的减少面积开销,采用了全局并行位串行的fft设计。同时为了提升频域点乘的数据复用性,芯片使用了转置SRAM(TRAM)存储fft的计算结果,如此按行存储的来自不同批次的频谱可以按列方向取出同一个频点的值,和相同的权重相乘时大大提升了数据的复用率,减少了对带宽的需求。

图片5.png

芯片照片

综上,高效的算法和高性能的架构与电路实现,使得STICKER-T相比于之前的芯片在能效和面积两个方面都有着显著的提升,该芯片的峰值能效140TOPS/W为之前工作的2.7倍,而7.5mm^2的面积仅为前者的60%。此外,Sticker-T的通用架构可以同时高效支持包括CNN,RNN和FC在内的主流网络结构,满足了不同应用场景的需求。

 

基于在人工智能芯片领域的丰富科研成果,刘勇攀副教授创办了以人工智能芯片和工业智能算法为核心技术的湃方科技,旨在赋能工业领域人工智能的更大发展。(关注湃方科技公众号:PI2Star获取更多资讯)

图片6.png

性能对比





还没开展智能化服务?
立即开启

服务热线

010-82169956

北京市海淀区中关村东路8号东升大厦B座903

© 2014-2018 湃方科技(天津)有限责任公司(Pi2Star Technology Ltd.) 版权所有 津ICP备19001173号-1