近年来,随着深度学习的高速发展和广泛应用,卷积神经网络(Convolutional Neural Network,CNN)在图像识别、目标识别等领域得到了越来越多的研究和应用。而网络层数的增加和规模的扩大加剧了卷积运算的数据量,传统冯诺依曼架构因为存储墙问题已经无法满足神经网络的需求。基于闪存(NOR flash)的存算一体(Computing-In-Memory,CIM)脉冲卷积神经网络(Spiking Convolutional Neural Network,SCNN)在实现较高识别精度的同时降低了神经网络的功耗,有助于解决存储墙问题。作为存算一体SCNN的基本组成单元,神经元电路代替了CNN中的模数转换器(Analog to Digital Converter,ADC),读出阵列输出电流并转换成一系列电压脉冲,因此神经元电路成为了提升SCNN性能和精度的关键因素。本文结合当前神经元电路的研究趋势,基于存算一体SCNN的功能和性能需求,研究并设计了一种基于CMOS的模拟神经元电路,为基于NOR flash的存算一体SCNN提供了一种完整的外围电路架构和性能提升方案。论文的主要研究内容归纳如下。首先,阐述了基于NOR flash的SCNN的硬件架构与工作机制,针对功能和性能要求设计了完整的模拟神经元电路,包括位线箝位电路、电流读出减法电路、脉冲神经元电路以及电压偏置电路。位线箝位电路实现了阵列位线电压的箝位,帮助阵列实现乘加运算;电流读出减法电路实现了阵列输出电流的读出和减法,在模拟域完成卷积运算;脉冲神经元电路实现了减法电流的积分累加,并将电流信号转换成幅值固定的电压脉冲序列;电压偏置电路负责为其他电路提供偏置电压。搭建了电路前仿平台,仿真结果显示,模拟神经元电路功能正常。为充分评估电路的性能,本文为模拟神经元电路提出了一些关键性能指标,为电路设计提供了优化方向。其次,围绕所提出的性能指标,对模拟神经元电路进行了性能优化和功能完善。具体包括:提出了一种新型位线箝位电路,在实现高精度箝位的基础上降低了箝位电路的功耗和延时,同时在宽电流读出范围内,缩小了箝位电压的波动幅度;在电流读出减法电路中新增了旁路电流系统,针对SCNN的性能需求选择不同的旁路电流组合,提高了输出电流的读出速度,扩大了电流的读出范围;为了避免传统复位方式造成的阵列信息丢失问题,提出了一种固定泄放阈值电压的复位方案,提高了输出信息的完整性和神经网络的精度;设计了一种新型的阈值电压可调脉冲神经元电路,在片内实现了阈值电压的在线调节。接着,对模拟神经元电路进行了版图设计和后仿验证,版图面积约为0.0042 mm2。在1.2 V电源电压下,后仿结果表明,在0-20μA电流输出范围内,位线箝位误差可控制在0.4 m V以内,波动范围控制在0.31 m V以内;电流读出速度在0μA和20μA时分别提升了263.6%和100%;泄放固定阈值电压复位功能正常,误差在1 m V以内。结果表明,本文为基于NOR flash的SCNN提供了完整、高效的外围电路硬件实现方案。最后,为了进一步评估电路性能对神经网络识别精度的影响,对电路行为特性和性能参数进行了建模,并代入到Alex Net和Le Net算法中进行测试。测试结果表明,代入电路模型后网络识别准确率仅下降了不到0.3%。此外,在替换成新型复位方式后,Alex Net对CIFAR-10数据集的识别精度上升了38.8%,Le Net对MNIST数据集的识别精度1.4%,具有比较明显的提升效果。
暂无评论