论文部分内容阅读
目前,深度置信网络(deep belief network:DBN)、卷积神经网络(convolutional neural networks: CNNs)等主流神经网络模型在众多领域取得了非凡的成绩。如C-NN在图像识别上可获得超越人类的识别精度。神经网络取得的成功主要源于两方面:一方面,越来越深的神经网络模型使得神经网络能有效处理更复杂的问题;另一方面,可供训练的海量数据资源使得神经网络能够获得充分训练,从而具有更好的决策能力。然而,上述两方面提升神经网络性能的同时也带来了大规模的计算参数,这为硬件加速处理带来了巨大的挑战。为应对大规模计算参数挑战,高性能加速器架构成为当前的研究热点。
在众多高性能硬件计算架构中,由于能突破传统计算架构的存储墙问题,基于非易失性存储(non-volatile memory:NVM)器件的计算架构具有巨大发展潜力。这是由于基于NVM的计算架构是一类存算一体化的架构,支持直接在存储单元内进行计算,无需执行从存储器读取数据到计算模块的操作。现有的NVM器件主要包括忆阻器、忆容器等。与传统冯诺依曼处理器中存算分离计算模式相比,NVM加速器通过直接在存储器内执行计算,大规模减少数据移动量,能有效降低访存开销、提升计算性能。
然而,现有的NVM加速器结构仍面临以下挑战:1)受限玻尔兹曼机(restricted Boltzmann machine:RBM)作为DBN的基本结构,其训练过程中包括频繁的正向和反向传播迭代计算,现有存内计算加速器在处理迭代计算中间结果时,需要消耗大量的硬件资源,硬件处理周期长,导致计算能效低;2)CNN中存在大量的可复用数据,这些可复用数据存在于不同的行和列中。然而,现有的存算一体化存储部件由于不支持行、列双向访问,不能有效利用卷积中的可复用数据,存在灵活性差的问题;3)现有的忆阻CNN加速器由于无法处理卷积输入中的交叠数据,不能有效利用可重用数据,导致硬件计算能耗高;4)神经网络加速器中单个神经元电路面积大、功耗高,导致可扩展性差的问题。
针对以上挑战,本文以基于NVM的神经网络加速器为课题展开研究,通过相应功能电路模块的设计与研究,探索降低大规模神经网络硬件计算的能耗和面积开销。具体研究内容如下:
1.针对RBM训练能效低的问题,提出一种新型的忆阻RBM加速器。该加速器采用2块忆阻器阵列存储RBM正、反向传播权重,并通过忆阻缓存器连接RBM神经元输出和权重阵列,形成存储单元与计算单元的并联结构,并行执行神经元输出值存储与权重阵列的乘加(multiply-and-accumulate: MAC)计算,实现一个计算周期内计算RBM的正/反向传播过程,提升RBM训练的计算能效。
2.针对存算一体化存储器在卷积复用计算时不支持行列双向访问的问题,提出混合CMOS忆阻器的行列双向访问存储器。在该存储器中,忆阻器单元用于存储数据,并通过结合CMOS晶体管构建行列访问路径,形成具有行、列双向访问功能的存储器,提升对局部数据的访问效率,降低卷积神经网络硬件计算的访存开销。
3.针对现有的忆阻CNN加速器不能有效处理卷积计算中输入数据交叠的情况,提出基于忆阻器的数据复用加速器。该加速器基于卷积步长对输入特征图和卷积核进行切片处理,消除不同卷积步长对忆阻阵列间数据复用的影响,使得输入数据可在相邻的忆阻交叉阵列中进行复用。该忆阻加速器内部的交叉阵列按照切出的卷积核数据片进行部署,用于支持复用数据流,实现数据复用计算,减少数据移动,节约能耗开销。
4.针对神经网络近似计算电路可扩展性差的问题,提出基于忆容器的低功耗紧凑型神经网络加速器结构,通过配置忆容值形成不同的神经网络连接,实现近似地计算不同的数学函数。在该加速器中,多个忆容器直接与MOS晶体管的浮栅极相连,形成结构简洁的可编程Neuron-MOS结构,降低神经形态计算电路的面积开销,提高可扩展性。此外,该忆容加速器利用电容耦合原理实现神经元的超低功耗计算,有效降低神经网络计算开销。
上述研究内容所完成的一系列基于非易失性存储器的存储/计算结构设计和研究,有效探索大规模神经网络计算开销的节约空间,这对相应功能电路的设计具有重要的理论意义。
在众多高性能硬件计算架构中,由于能突破传统计算架构的存储墙问题,基于非易失性存储(non-volatile memory:NVM)器件的计算架构具有巨大发展潜力。这是由于基于NVM的计算架构是一类存算一体化的架构,支持直接在存储单元内进行计算,无需执行从存储器读取数据到计算模块的操作。现有的NVM器件主要包括忆阻器、忆容器等。与传统冯诺依曼处理器中存算分离计算模式相比,NVM加速器通过直接在存储器内执行计算,大规模减少数据移动量,能有效降低访存开销、提升计算性能。
然而,现有的NVM加速器结构仍面临以下挑战:1)受限玻尔兹曼机(restricted Boltzmann machine:RBM)作为DBN的基本结构,其训练过程中包括频繁的正向和反向传播迭代计算,现有存内计算加速器在处理迭代计算中间结果时,需要消耗大量的硬件资源,硬件处理周期长,导致计算能效低;2)CNN中存在大量的可复用数据,这些可复用数据存在于不同的行和列中。然而,现有的存算一体化存储部件由于不支持行、列双向访问,不能有效利用卷积中的可复用数据,存在灵活性差的问题;3)现有的忆阻CNN加速器由于无法处理卷积输入中的交叠数据,不能有效利用可重用数据,导致硬件计算能耗高;4)神经网络加速器中单个神经元电路面积大、功耗高,导致可扩展性差的问题。
针对以上挑战,本文以基于NVM的神经网络加速器为课题展开研究,通过相应功能电路模块的设计与研究,探索降低大规模神经网络硬件计算的能耗和面积开销。具体研究内容如下:
1.针对RBM训练能效低的问题,提出一种新型的忆阻RBM加速器。该加速器采用2块忆阻器阵列存储RBM正、反向传播权重,并通过忆阻缓存器连接RBM神经元输出和权重阵列,形成存储单元与计算单元的并联结构,并行执行神经元输出值存储与权重阵列的乘加(multiply-and-accumulate: MAC)计算,实现一个计算周期内计算RBM的正/反向传播过程,提升RBM训练的计算能效。
2.针对存算一体化存储器在卷积复用计算时不支持行列双向访问的问题,提出混合CMOS忆阻器的行列双向访问存储器。在该存储器中,忆阻器单元用于存储数据,并通过结合CMOS晶体管构建行列访问路径,形成具有行、列双向访问功能的存储器,提升对局部数据的访问效率,降低卷积神经网络硬件计算的访存开销。
3.针对现有的忆阻CNN加速器不能有效处理卷积计算中输入数据交叠的情况,提出基于忆阻器的数据复用加速器。该加速器基于卷积步长对输入特征图和卷积核进行切片处理,消除不同卷积步长对忆阻阵列间数据复用的影响,使得输入数据可在相邻的忆阻交叉阵列中进行复用。该忆阻加速器内部的交叉阵列按照切出的卷积核数据片进行部署,用于支持复用数据流,实现数据复用计算,减少数据移动,节约能耗开销。
4.针对神经网络近似计算电路可扩展性差的问题,提出基于忆容器的低功耗紧凑型神经网络加速器结构,通过配置忆容值形成不同的神经网络连接,实现近似地计算不同的数学函数。在该加速器中,多个忆容器直接与MOS晶体管的浮栅极相连,形成结构简洁的可编程Neuron-MOS结构,降低神经形态计算电路的面积开销,提高可扩展性。此外,该忆容加速器利用电容耦合原理实现神经元的超低功耗计算,有效降低神经网络计算开销。
上述研究内容所完成的一系列基于非易失性存储器的存储/计算结构设计和研究,有效探索大规模神经网络计算开销的节约空间,这对相应功能电路的设计具有重要的理论意义。