ISSCC34.9《A Flash-SRAM-ADC-Fused Plastic Computing-in-Memory Macro for Learning in Neural Networks in a Standard 14nm FinFET Process》(一种基于14nmFinFET工艺制造,面向神经网络学习的Flash-SRAM-ADC混合可塑性存内计算核)本文由中科院微电子所和复旦大学联合投稿,面向塑性神经网络(Plastic Neural Network,PNN)介绍了一种集片上自学习、片上推理为一体的存算一体芯片。做出该项工作的出发点是基于当前存内计算的工作多注重片上推理,而不注重片上自学习能力。下面是对这篇文献背景及创新点的详细介绍。
一、文章背景
文章的重要背景知识是突触可塑性(Synaptic Plasticity)以及塑性神经网络,都是基于赫布学习理论[1]的重要概念。
突触可塑性(Synaptic Plasticity)是神经科学中的核心概念,它描述了神经元之间的突触连接强度在学习和记忆过程中如何动态变化。对于神经网络而言,这种可塑性使得神经网络能够根据经历和环境不断地调整自己,以适应新的任务和输入,即网络的自学习。突触可塑性包含两种类型:长期增强(Long-Term Potentiation, LTP),是突触传递效率的持久增强,通常发生在神经元之间的反复活动后,与学习和记忆形成密切相关,是突触强度增加的一种机制;长期抑制(Long-Term Depression, LTD),是突触传递效率的降低,与LTP相对,能够帮助神经网络消除不必要的连接,确保资源有效分配。
塑性神经网络相较于卷积神经网络引入了额外的塑性连接。按照Hebb理论,Hebbian学习的基础公式可以表示为:。其中表示神经元i 和j 之间的突触权重,表示神经元i 的输入,表示神经元j 的输出,是学习率,该式表达了塑性神经网络的权重更新方式。Hebb trace是神经元间的短期关联,它用于在学习过程中对神经元活动的变化进行更长时间的跟踪。引入Hebb trace后,权重更新公式变为:
。其中a是塑性系数,描述突触连接的适应性强度,这个参数一般长时间保持不变,在某些自适应模型中会随时间变化,因此在硬件中该参数往往使用非易失性存储器存储;是赫布迹,表示神经元之间最近活动的累积值,随时间更新:
是遗忘系数,控制旧信息的衰减,因此该参数在硬件中主要由易失性存储器存储。通过上式不难发现,塑性神经网络在获取输入、计算输出的同时,自身的权重也会进行更新。在硬件上实现该类网络,即可实现片上推理和片上自学习。
当前将突触可塑性引入神经网络中,面临如下挑战:
(1)先进工艺节点下的嵌入式MVM(向量-矩阵乘法)方案难以实现;
(2)传统CIM中,MVM和MEM(元素级操作)的计算需要多个周期;
(3)传统ADC,尤其是电容式ADC带来巨大的电路面积。
图1 塑性CIM所面临的挑战
二、文章创新点
针对上述挑战,本文开展工作,提出了三项创新点:
(1)14nm FinFET工艺下的5T-LF单元及结合5T-LF和SRAM的塑性单元阵列(PCA)
本文将5T-LF单元用于存储塑性系数α 或权重w,并将SRAM用于存储Hebb trace,提出了一种基于14nm FinFET工艺的5T-LF单元。但文中并未对14nm FinFET工艺下5T-LF单元的实现作具体介绍,而是在数据分析阶段进行体现。因此此处仅介绍本文在塑性计算处理方式上的创新。
本文将5T-LF单元和SRAM集成在一起,将长期和短期信息存储集成在同一个计算阵列(PCA,Plastic Cell Array)中,减少数据传输的延迟和功耗,MVM和MEM协同工作,可以在一个周期内完成计算。
下图所示是PCIM计算核心结构图和MEM-MVM工作流程图。
图2 P-CIM架构图及计算流程
在MVM模式下,5T-LF单元用于存储权重w。SRAM单元的值全部设置为 1,用于确保权重不被影响。8-bit整数(INT8)MVM计算在每次迭代中进行:首先将不同权重组串行切换,组合为完整的INT8权重;第一级数字移位与累加电路(L1-DSA)生成一个13-bit的中间结果。在下一阶段,不同的输入组被串行切换并与权重相乘,完成最终的20-bit输出。
MEM-MVM模式下,5T-LF单元存储塑性系数α,SRAM单元存储Hebb trace。通过三层累加(3-Level DSA)实现计算:第一级将 Hebb trace 与输入向量的元素逐一相乘,并生成一个中间结果;第二级将不同输入组串行切换并进行累加,生成20-bit 输出;第三级将塑性系数与 Hebb trace 的乘积继续累加,生成最终的28-bit输出。
该方案因为将计算单元集中在一起,没有数据传输的延时和功耗,因此可在单周期内通过多个阶段实现计算。
(2)差分阵列融合ADC
为了配合上述PCA更好地工作,本文设计了一种差分阵列融合ADC(DMA-ADC),并配备了多元素稀疏感知(MESA)控制机制:通过ADC重用CSAM采样电容,减少面积开销,通过检测输入数据的稀疏性动态调整ADC的感测步数,进一步降低功耗。
图3 DMA-ADC结构及工作流程图
DMA-ADC通过重用计算单元(CSAM电容)实现高效的模拟信号转换。CSAM用于在计算过程中存储电荷,同时在量化阶段充当DAC的一部分,实现模拟信号到数字信号的转换。这种电容重用方式避免了传统ADC需要额外的DAC阵列,显著减少了芯片面积。DMA-ADC通过比较正列(CLP)和负列(CLN)上的电压,确定信号的幅值与极性。采用了逐次逼近寄存器(SAR)逻辑来逐步逼近输入电压,并生成8-bit数字输出。在量化阶段,不同的CSAM电容通过开关信号(SW)组成为7个比值电容,进行电荷共享和转换。通过合理的电容布局(如共心排列),减小寄生电容误差,保证转换精度。
同时,在每个计算周期,MESA会检测输入向量x 和Hebb trace中的非零元素数量(NACT 和 NHEB)。比较这两个稀疏度,选取较小的非零元素数量NLES 作为优化依据。比较这两个稀疏度,选取较小的非零元素数量NLES作为优化依据。
具体到计算阶段PH1和PH2,各CSAM单元根据输入数据的存储状态进行局部放电,并在计算线(CL)上进行电荷共享。DMA-ADC在PH3阶段对电荷共享后的信号进行逐次逼近量化,将模拟信号转换为8-bit的数字输出。
三、总结
本文性能评估及与已有工作的对比如下图所示。可以看到,本文由于采用了PCA和DMA-ADC的创新设计,在面积、能效上具备很强的优势。
图4 本文性能评估及对比已有工作
本文介绍了赫布学习理论及塑性学习理论,此理论为存内计算实现片上学习提供了一种新思路,希望读者能在阅读本文后对该理论有基本的了解并从ISSCC34.9的创新点的介绍中有所收获。
参考资料
[1] 赫布学习算法介绍(赫布学习算法介绍 -- 上海交通大学类脑智能应用与技术中心)