ISSCC 2020:AI芯片架构的转变

2020年2月16日-20日,第67届IEEE 国际固态电路峰会(ISSCC 2020)于美国旧金山召开,中国共23篇论文获收录,包括中国内地15篇,其中,清华大学5篇,澳门6篇,香港2篇,创造了历年来的新高,全球仅次于美国、韩国位列第三。

ISSCC代表着芯片领域的国际最高学术水平,是国际上规模最大、最权威、水平最高的固态电路国际会议,被称为集成电路行业的芯片奥林匹克大会。国际上最先进的固态集成电路技术通常会在该峰会上首次发布。ISSCC 2020共收录了210篇论文,全部都来自全球的一流大学、研究机构以及AMD、Intel、IBM、TI等顶尖企业。继2019年实现中国首篇人工智能芯片ISSCC论文突破后,清华刘勇攀教授带领的智能传感团队和湃方科技再次贡献2篇人工智能芯片ISSCC论文。

引领低功耗AI领域:从通用到专用架构

ISSCC 2020以“Integrated Circuits Powering the AI ERA”为主题。此外,本届峰会在技术组委会筹建方面新增了一个亮点,“机器学习及人工智能”成立了独立的技术小组分会。新设“High-Performance Machine Learning”和“Low-Power Machine Learning”两个机器学习分会,且六个论坛中有两个与人工智能相关,足以见得该领域的重要性。

随着物联网、大数据、人工智能等技术的迅猛发展,全球数据量呈井喷式增长,相当一部分的运算将在本地终端进行而不是借助云端资源。与此同时,解决这些集成了传感和智能计算的无线终端面临的功耗问题就变成了一大挑战。而“Low-Power Machine Learning”分会正是针对智能无线终端等对功耗有极致要求的领域。该分会全部3篇论文均来自中国内地,分别是针对语音、视频以及稀疏网络等专用智能架构的研究与探索,其中2篇为该团队研究成果。

ISSCC 2020:AI芯片架构的转变

Figure1 Program-Session 14

又见低功耗的天际

基于帧间数据计算复用的视频应用AI处理器

在智能汽车自动驾驶、智能无人机目标追踪、智能摄像机主动监测等场景中均使用了机器学习技术,传统AI处理器主攻静态图像处理,难以满足多帧视频图像处理的需求。团队袁哲博士在论文“A 65nm 24.7μJ/Frame 12.3mW Activation-Similarity-Aware Convolutional Neural Network Video Processor Using Hybrid Precision, Inter-Frame Data Reuse and Mixed-Bit Width Difference-Frame Data Codec”(14.2)中,提出了一款面向视频应用的神经网络处理器Sticker-V,包含以下关键技术点:

(1)利用视频数据中帧间相似性,在传统帧内数据复用基础上新增了帧间复用维度,实现了在不损失网络精度的前提下提高计算速度的效果;

(2)根据神经网络计算的数据复用与稀疏模式,设计了可配置三种卷积模式的计算单元和带累加功能的存储单元,提高了网络层内数据利用效率和帧间数据复用;

(3)针对帧间数据复用模式,设计了两通路变比特长度片上片下数据压缩模块,有效降低数据传输量。

ISSCC 2020:AI芯片架构的转变

Figure2 Simple Chip Application Case in Autopilot

一个简单的应用案例如上图所示。摄像头从外界采集数据。而后经过神经网络计算,输出方向盘角度,从而控制车辆实现自动驾驶。

下图展示了第一个卷基层后10张典型Feature Map。左图为不做差分的结果。右面为差分结果。可以看到,差分后Feature Map值的动态范围明显减小。这就给加速器进一步提升能量效率提供了可能。

ISSCC 2020:AI芯片架构的转变

Figure3 Feature Map

同时,对于传输来讲,通过帧间差分压缩数据动态范围的方法,把数据分为低比特数据和高比特数据以后,能进一步达到缩减传输数据量的效果。

ISSCC 2020:AI芯片架构的转变

Figure4 Diff Frames Application in Data Transmission

该芯片在TSMC 65nm工艺上成功流片,最高可节省76%的单帧处理能量,将MobileNet-16网络模型的单帧处理能量降低至24.7μJ/Frame。

ISSCC 2020:AI芯片架构的转变

Figure5 Sticker-V Chip Micrograph and Summary Table

自适应稀疏存内计算芯片——新兴电路架构

存内计算是一种新兴的电路架构,具有高并行度、高能量效率的特点。目前的存内计算电路架构面临的一个重要问题是规则存内计算电路无法支持不规则的稀疏神经网络,造成计算资源的大量浪费。团队岳金山博士在论文“A 65nm Computing-in-Memory-Based CNN Processor with 2.9-to-35.8TOPS/W System Energy Efficiency Using Dynamic-Sparsity Performance-Scaling Architecture and Energy-Efficient Inter/Intra-Macro Data Reuse”(14.3)提出了首款基于存内计算核心的系统级神经网络处理器Sticker-IM,包含以下关键技术点:

(1)在规则的存内计算阵列上实现了不规则稀疏网络的优化,利用稀疏网络权重和输入数据的动态优化,提高芯片能效并加速计算。对于网络权重的稀疏,传统的1维细粒度稀疏方式难以在规则的存内计算阵列中节省计算时间和功耗,而3维粗粒度稀疏方式难以获得理想的网络压缩效果。Sticker-IM架构将稀疏粒度设置为存内计算阵列的一个基本计算单元大小,如下图所示,采用按块稀疏的策略,将每个计算单元识别为需要计算的稠密块和可以跳过的稀疏块(全为0值),消除对稀疏块进行计算的开销。对于输入图像数据的稀疏,Sticker-IM采用了实时检测、动态调整的方式,根据预先设定的阈值,将当前输入向量中的0值的数量与阈值比较,判断当前输入向量为稀疏或非稀疏,从而打开双倍或单倍数量的基本计算单元块,在保证不发生计算溢出的同时,利用输入向量的稀疏特性加速计算,实现稀疏特性和计算性能的动态调整。

ISSCC 2020:AI芯片架构的转变

Figure6 Weight Sparsity-Aware Power-Saving with Adaptive Power-on/off

(2)实现了基于存内计算核心的片上系统芯片,支持不同比特的整体神经网络模型的动态映射和执行,通过灵活的网络映射和数据复用方法提升了系统资源利用率和数据访问效率。如下图所示,在单个存内计算核心内部,在对输入数据的不同比特位置和不同行的基本计算单元块进行循环操作时,输出结果可以在计算核心的输出端进行累加,避免频繁地将数据写到下一层存储,节省功耗;另一方面,来自不同输入通道的数据可以映射在多个计算核心上面同时计算,将输出结果累加起来。输出的部分和结果保存在一个小的SRAM缓存单元,并通过对于不同位置的输入数据,将对应的输出结果循环累加,降低频繁写回更底层存储器的功耗开销。

ISSCC 2020:AI芯片架构的转变

Figure7 Intra/Inter-Macro Data Reuse

(3)设计了可动态关断的存内计算核心处理单元,实现了存内计算单元对运行稀疏网络的功耗优化。根据当前计算的权重块的稀疏特性,一个1比特的索引用来关闭对应的数据读取处理单元Processing Unit (PU),而PU在一个传统的存内计算核心中占据了大约95%的功耗。通过动态关断PU,在测试的不同稀疏度的神经网络模型中,分别可以将存内计算核心的功耗降低2.4-13.6倍。同时,通过配置符号位的采样电容充放电,PU还支持灵活的2-补码和非2-补码(即源码)方式的数据读出,从而支持不同的权重比特精度。

ISSCC 2020:AI芯片架构的转变

Figure8 Flexible Sparsity-Aware Processing Unit with Adaptive Power-on/off

该芯片在TSMC 65nm工艺上成功流片,在MNIST和CIFAR-10数据集的不同神经网络模型中,实现了最高158TOPS/W的核心能量效率和最高35.8TOPS/W的系统能量效率。

ISSCC 2020:AI芯片架构的转变

Figure9 Sticker-IM Chip Micrograph and Summary Table


分享到:


相關文章: