CN110852429B - 一种基于1t1r的卷积神经网络电路及其操作方法 - Google Patents
一种基于1t1r的卷积神经网络电路及其操作方法 Download PDFInfo
- Publication number
- CN110852429B CN110852429B CN201911032508.9A CN201911032508A CN110852429B CN 110852429 B CN110852429 B CN 110852429B CN 201911032508 A CN201911032508 A CN 201911032508A CN 110852429 B CN110852429 B CN 110852429B
- Authority
- CN
- China
- Prior art keywords
- convolution
- neural network
- array
- calculation module
- conductance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/24—Bit-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/30—Power supply circuits
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Neurology (AREA)
- Logic Circuits (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于1T1R的卷积神经网络及其操作方法,包括输入模块、卷积计算模块、池化计算模块、全连接计算模块,其中,卷积计算模块、池化计算模块、全连接计算模块均由1T1R阵列构成,能够原位存储突触权重信息,实现计算和存储的相融合,省去了数据交互的消耗,极大的缩短了计算时间,同时减少能耗。另外,本发明通过调控1T1R器件中晶体管的栅极电压实现双向渐变调整忆阻器电导值大小,可以使得在实现电导减小的过程中,无需将1T1R器件重新操作到最低电导状态,直接通过调整1T1R器件中晶体管的栅极电压,使电导减小即可达到目标电导,功耗较低。
Description
技术领域
本发明属于人工神经网络技术领域,更具体地,涉及一种基于1T1R的卷积神经网络及其操作方法。
背景技术
随着大数据时代的到来,对传统计算体系的计算速度、功耗等方面的需求日益提高,冯·诺伊曼问题已经成为限制当前计算机体系进一步发展的重要瓶颈。忆阻器自提出以来,以其非易失、高集成、低功耗等特点,成为下一代半导体存储器极具前景的发展对象之一。忆阻器的计算存储相融合的特点也成为构建新型计算架构的有力基础。自忆阻器被提出可用于模拟人脑突触功能以后,基于忆阻器件突触器件的研究成为热门,并建立起基于忆阻突触器件的硬件神经网络实现研究。
神经网络在人工智能中是极其重要的运算模型,目的是利用数学模型模拟人脑神经系统的集体的、并行的计算能力。从二十世纪四十年代赫布型学习被提出开始发展至今,神经网络理论已经非常成熟。第一代神经网络,即感知器模型,作为一个简单的神经元模型,只能处理二进制数据;第二代神经网络,即目前应用广泛的人工神经网络,包括全连接多层神经网络,卷积神经网络等等,它们已经在当前很多领域已经实际应用。
在第二代神经网络中,卷积神经网络(Convolutional Neural Network, CNN)是一种广泛应用的深度学习算法模型,主要包括卷积层、池化层以及全连接层,被大量运用在图像识别、模式识别等任务中。卷积神经网络相比于全连接多层神经网络,大规模减少了突触权重的数量,降低了网络规模,减少了存储和计算量。这主要得益于:卷积层采用共享权重的方式,神经元与卷积核之间不会全连接,通过设定步长可以大大减小突出数量;而且,通常在卷积层之间会引入池化层,或称降采样层,减少图像的空间大小,可以进一步减少参数的数量,同时增加网络的鲁棒性。卷积神经网络的计算大部分为卷积运算,对于目前的计算系统来说,特别在卷积神经网络中,其卷积层和池化层存在大量中间计算数据需要存储和再读取计算,在处理器和存储器间的存在大量数据的传输,导致功耗和时间上的大量消耗的问题,即冯·诺依曼瓶颈。
目前,基于忆阻突触器件的神经网络发展迅速。但现有方法中,基于 1T1R突触器件的神经网络研究仍然存在以下问题:一,1T1R实现用以模拟突触权重调整的电导渐变特性的操作方法仍有限制。以上面提及的2018 年杨建华教授团队的工作为例,其电导渐变操作方法只实现在器件电导增加的过程,若想要实现电导减小,必须将器件重新操作到最低电导状态,以电导增加的操作方式达到目标电导。这样的操作方式会造成在网络进行权重更新时操作复杂度的增加,消耗大量额外的功耗。二,目前1T1R的神经网络应用还不够全面,大多数研究工作集中于全连接多层神经网络。
综上所述,提出一种功耗较小的基于1T1R的卷积神经网络及其操作方法是亟待解决的问题。
发明内容
针对现有技术的缺陷,本发明的目的在于提供了一种基于1T1R的卷积神经网络,旨在解决现有技术由于其电导渐变性存在限制,在实现电导减小时必须将器件重新操作到最低电导状态以电导增加的操作方式达到目标电导而导致的功耗较高的问题。
为实现上述目的,本发明一方面提供了一种基于1T1R的卷积神经网络,包括输入模块、卷积计算模块、池化计算模块、全连接计算模块;
其中,输入模块、卷积计算模块、池化计算模块及全连接计算模块依次串行相连;
输入模块用于将图像模式信息中各像素点的像素值转化为相应的电压脉冲幅值,对其进行时序编码,并滑动输入到卷积神经网络中;
卷积计算模块用于基于1T1R阵列完成输入信息与卷积核的卷积计算;
池化计算模块用于基于1T1R对卷积计算模块输出的结果进行池化;
全连接计算模块用于接受池化计算模块输出的池化结果,并基于1T1R 阵列将池化结果进行整合,得到卷积神经网络计算结果。
通过1T1R中忆阻器的非易失特性来实现计算与存储相融合,极大的节省了存储消耗,并且实现计算和存储的相融合,省去了数据交互的消耗,极大的缩短了计算时间,同时减少了能耗。
进一步优选地,上述卷积计算模块包括卷积核单元、参考单元、偏置单元、电流电压转换单元;
其中,卷积核单元由二维1T1R阵列构成,参考单元由一行电导值固定的1T1R器件构成,偏置单元由一列1T1R器件构成;偏置单元所在的字线和选择线分别与卷积核单元中最后一列1T1R器件所在的字线和选择线相连;参考单元所在的位线分别与卷积核单元中最后一行1T1R器件所在的位线相连;卷积核单元、参考单元、偏置单元共同构成一个新的二维1T1R阵列,该新组成的二维1T1R阵列所在的选择线连接在电流电压转换单元上;
卷积核单元用于保存卷积核,卷积核单元中有多个卷积核,其中,卷积核单元中二维1T1R阵列的行数与卷积核个数相等,卷积核单元中二维 1T1R阵列的列数为卷积核大小的相等。
参考单元用于与卷积核单元中每一行的1T1R器件的电导值对应进行差分相减得到负电导,从而得到卷积核的负权重值;
偏置单元用于保存偏置值;
电流电压转换单元用于读取卷积计算后的电流结果,并将其转化为电压值,以实现网络的级联,将信息继续向后进行传输。
进一步优选地,参考单元中1T1R器件的电导值设定为最大和最小电导值的中间值,以实现权重的正负对称分布。
进一步优选地,全连接计算模块主要由二维1T1R阵列构成,其中,全连接计算模块中二维1T1R阵列的个数与全连接层中神经网络突触连接层的层数相等。
本发明另一方面提供了一种基于1T1R的卷积神经网络的操作方法,包括以下步骤:
S1、通过将图像模式信息中各像素点的像素值转化为相应的电压脉冲幅值,对其进行时序编码,并滑动输入到卷积神经网络中;
S2、通过时序的滑动输入,并将信息依次往后传输到卷积计算模块、池化计算模块、全连接层计算模块,从而完成图像模式信息的前向传播过程,得到最后卷积神经网络的输出结果;
S3、根据所得的结果的误差值,通过控制1T1R阵列中字线上的电压反向渐变更新卷积神经网络的权重,完成对卷积神经网络的训练。
直接通过调整1T1R器件中晶体管的栅极电压渐变更新卷积神经网络的权重,使得权重更新的准确性得到提高,并且功耗较低。
进一步优选地,步骤S1中所述的电压脉冲幅值的大小与图像模式信息中的像素点的像素值成正比。
进一步优选地,步骤S2中将图像模式信息经过卷积计算模块进行前向传播的方法,包括以下步骤:
S21、在卷积计算模块中1T1R阵列所在所在字线上施加大于1T1R器件中晶体管开启电压的电压,使1T1R器件中的晶体管开启;
S22、在卷积计算模块中1T1R阵列所在位线上接收输入的电压脉冲,即图像模式信息,通过读取流过器件的电流值大小,得到输入信息与卷积核的卷积运算结果,并继续向前传输。
进一步优选地,通过控制1T1R阵列中字线上的电压,可以使得1T1R 器件具有电导渐变特性,从而实现1T1R器件电导的渐变增加或减小。
进一步优选地,卷积神经网络的权重与1T1R器件的电导相对应,基于 1T1R器件的电导渐变特性,可以渐变更新上述卷积神经网络的权重,包括渐变增大权重和渐变减小权重。
进一步优选地,步骤S3所述的方法包括以下步骤:
S31、将1T1R阵列中的一列作为更新列;
S32、根据误差值反向计算更新列中每一个1T1R器件的权重更新值,并确定其具体更新操作;
S33、在需要增大权重的1T1R器件所在的字线上分别施加与其更新值相对应的电压VG,在更新列所在的位线上施加预设的set电压VSet,其余列所在的位线悬空,同时将1T1R阵列中每一行所在的选择线接地,从而并行的完成更新列上的权重增大操作;
S34、在需要减小权重的1T1R器件所在的字线上分别施加与其更新值相对应的电压VG,在1T1R阵列中每一行所在的选择线上施加预设的reset 电压VReset,同时将更新列所在的位线接地,其余列所在的位线均悬空,从而并行的完成更新列上的权重减小操作;
S35、按照步骤S31-S34进行操作直至1T1R阵列的每一列均完成权重更新。
通过本发明所构思的以上技术方案,与现有技术相比,能够取得下列有益效果:
1、本发明提出了一种基于1T1R的卷积神经网络及其操作方法,通过调控1T1R器件中晶体管的栅极电压实现双向渐变调整忆阻器电导值大小,可以使得在实现电导减小的过程中,无需将1T1R器件重新操作到最低电导状态,直接通过调整1T1R器件中晶体管的栅极电压,使电导减小即可达到目标电导,解决了现有技术由于其电导渐变性存在限制,在实现电导减小时必须将器件重新操作到最低电导状态以电导增加的操作方式达到目标电导而导致的功耗较高的问题。
2、本发明提出了一种基于1T1R的卷积神经网络操作方法,其中忆阻器件的电导值能根据1T1R的晶体管的栅极电压实现有效且精确的调节。在神经网络应用中,使得权重更新的准确性得到提高,通过控制晶体管栅极电压即可以相对精确的将器件的电导值更新到算法的理想计算值,解决了现有技术中单个忆阻器器件的电导调控不可避免的随机性问题,提高了基于1T1R器件的神经网络的任务完成准确度。
3、本发明提出了一种基于1T1R的卷积神经网络,利用1T1R阵列结构,在完成卷积神经网络中卷积层、池化层和全连接层等功能时,能原位存储突触权重信息,有效解决现有卷积神经网络计算中需要大量数据存储和存储计算间存在大量数据传输的问题。
4、本发明所提出的一种基于1T1R的卷积神经网络,通过利用忆阻器的非易失特性来实现计算与存储相融合,极大的节省了存储消耗,并且实现计算和存储的相融合,省去了数据交互的消耗,极大的缩短了计算时间,同时减少能耗。
附图说明
图1是本发明所提供的基于1T1R的卷积神经网络结构示意图;
图2是本发明实施例所提供的卷积神经网络结构示意图;
图3是本发明所提供的基于1T1R器件阵列的卷积计算模块结构示意图;
图4是本发明所提供的基于1T1R器件阵列的全连接计算模块结构示意图;
图5是本发明所提供的基于1T1R器件阵列实现前向传播的操作示意图;
图6是本发明实施例所提供的1T1R器件的结构示意图;
图7是本发明实施例所提供的1T1R器件多值电导渐变特性实现的脉冲操作示意图;其中,图(a)为对1T1R器件进行SET操作的脉冲操作示意图,图(b)为对1T1R器件进行RESET操作的脉冲操作示意图;
图8是本发明实施例所提供的1T1R器件多值电导渐变特性实验结果示意图;
图9是本发明实施例所提供的基于1T1R器件阵列实现反向更新权重的操作示意图;其中,图(a)为基于1T1R器件阵列实现权重增大的操作示意图,图(b)为基于1T1R器件阵列实现权重减小的操作示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为了实现上述目的,本发明一方面提供了一种基于1T1R的卷积神经网络,如图1所示,包括输入模块、卷积计算模块、池化计算模块、全连接计算模块;其中,输入模块、卷积计算模块、池化计算模块及全连接计算模块依次串行连接;
具体的,以一个简化的卷积神经网络为例,如图2所示,包括一个输入层,一个卷积层,一个池化层,以及两层全连接层(一个平坦层和一个输出层),其中,输入层为一个28*28的图像,卷积核的个数为10个,每个卷积核大小均为9*9,经过输入图像与卷积核的作用后,得到20*20*10 的卷积层结果,然后再经过2*2的池化操作,得到池化层结果为10*10*10,将此多维结果平坦化成一维的1000个输入,与最后的10个输入组成两层结构的全连接层。其中,输入层、卷积层、池化层、两层全连接层分别与上述基于1T1R的卷积神经网络中的输入模块、卷积计算模块、池化计算模块、全连接计算模块相对应。
其中,输入模块用于将图像模式信息中各像素点的像素值转化为相应的电压脉冲幅值,对其进行时序编码,并滑动输入到卷积计算模块中;
卷积计算模块用于基于1T1R阵列完成输入信息与卷积核的卷积计算;
具体的,本发明所提出的基于1T1R阵列实现的卷积神经网络的卷积计算模块如图3所示,包括卷积核单元、参考单元、偏置单元、电流电压转换单元;
其中,卷积核单元由二维1T1R阵列构成,其所在的位线为BL1~BL81,所在的字线和选择线分别为WL1~WL10和SL1~SL10;参考单元由一行电导值固定的1T1R器件构成,其所在的字线和选择线分别为WLs和SLs;偏置单元由一列1T1R器件构成,其所在的位线为BLbias;
偏置单元所在的字线和选择线分别与卷积核单元中最后一列1T1R器件所在的字线和选择线相连,分别对应图3中的WL1~WL10和SL1~SL10;参考单元所在的位线分别与卷积核单元中最后一行1T1R器件所在的位线相连,对应图3中的BL1~BLbias;卷积核单元、参考单元、偏置单元共同构成一个新的二维1T1R阵列,该新组成的二维1T1R阵列所在的选择线连接在电流电压转换单元上;
卷积核单元用来保存卷积核,卷积核单元中有多个卷积核,其中,卷积核单元中二维1T1R阵列的行数与卷积核个数相等,卷积核单元中二维 1T1R阵列的列数与卷积核大小的相等。具体的,通过将卷积核的二维权重矩阵转化为一维权重序列,每一行1T1R器件的电导序列与权重序列一一对应,组成一个卷积核单元,故二维1T1R阵列的的每一行均对应一个卷积核。
参考单元用于与卷积核单元中每一行的1T1R器件的电导值对应进行差分相减得到负电导,从而实现卷积核的负权重值;具体的,参考单元中 1T1R器件的电导值一般设定为最大和最小电导值的中间值,以实现权重的正负对称分布,卷积核单元中每一行的1T1R器件的电导值可以与参考行中 1T1R器件的电导值对应相减,从而得到正负权重的分布,补足硬件器件无法实现负权重(即负电导)的问题。
偏置单元用于保存偏置值;
电流电压转换单元用于读取卷积计算后的电流结果,并将其转化为电压值,以实现网络的级联,将信息继续向后进行传输。
在本实施例中,卷积计算模块的1T1R阵列大小为11*82,其中,卷积核单元1T1R阵列大小为10*81,参考单元1T1R阵列的大小为1*82,偏置单元1T1R阵列大小为10*1。具体的,每一行代表一个9*9的卷积核以及一个偏置,因此每行需要82个器件,1T1R阵列的列数为82列。由于所使用的卷积核个数为10个,并且由于器件电导不存在负值,为得到突触权重的正负分布,需要加入一个参考行(GS),即参考单元,因此卷积计算模块的1T1R阵列的行数为11行。其余行中1T1R器件的电导值均与参考行中1T1R器件的电导值对应相减,当结果为正数时表示正权重,当结果为负数时表示负权重。
池化计算模块用于基于1T1R阵列对卷积计算模块输出的结果进行池化;具体的,池化计算模块由一行1T1R阵列构成,其中,每一个1T1R器件单元保持相同电导状态不改变。将输入信息进行时序输入,即可以在该 1T1R阵列上,通过电压与1T1R器件电导相乘并求和的方式实现平均池化功能。其中,池化计算模块中1T1R的阵列的列数与平均池化单元的大小相等。
全连接计算模块用于接受池化计算模块所输出的池化结果,并基于 1T1R阵列将池化结果进行整合,从而得到最终的卷积神经网络计算结果。具体的,全连接计算模块主要由二维1T1R阵列构成,全连接计算模块中二维1T1R阵列的个数与全连接层中神经网络突触连接层的层数相等。如图4 所示,本实施例中,用1001*11的1T1R阵列实现图2中神经网络中的全连接层。其中,全连接计算模块1T1R阵列的每一行的1T1R器件分别与平坦层的1000个神经元和一个偏置神经元相对应,全连接计算模块1T1R阵列的每一列的1T1R器件与输出层的10个神经元和一个参考神经元相对应。将池化计算模块输出的结果转化为一维序列,作为全连接层计算模块中的二维1T1R阵列输入,由softmax函数分别判断最终10个输出结果。
本发明另一方面提供了一种基于1T1R的卷积神经网络的操作方法,包括以下步骤:
S1、通过将图像模式信息中各像素点的像素值转化为相应的电压脉冲幅值,对其进行时序编码,并滑动输入到卷积神经网络中;
具体的,输入电压脉冲通过设置不同的电压脉冲幅值将图像模式信息输入到卷积神经网络中,其中,电压脉冲幅值的大小与图像模式信息中的像素点的像素值成正比,其最大幅值一般设置在0.3V以内,避免输入电压脉冲对1T1R器件的电导状态产生影响。另外,传统软件算法中卷积神经网络中的卷积核在输入的模式图像上采用固定步长进行滑动计算,从而完成卷积计算,而在基于1T1R的卷积神经网络中,则是将卷积核固定,根据二维卷积计算中卷积核与输入的模式图像的一一点乘对应关系,对输入的电压脉冲幅值进行时序编码,将输入的图像信息依时序滑动输入到卷积核阵列中,以得到同样的卷积计算结果。在偏置单元列,根据偏置单元的设定值输入电压。所设定的偏置值越大,输入电压的幅值也越大,晶体管栅极打开程度越大,1T1R器件单元的整体电导提高。
S2、通过时序的滑动输入,并将信息依次往后传输到卷积计算模块、池化计算模块、全连接层计算模块,从而完成图像模式信息的前向传播过程,得到最后卷积神经网络的输出结果。
具体的,如图5所示,将图像模式信息经过卷积计算模块进行前向传播的方法,包括以下步骤:
S21、在卷积计算模块中1T1R阵列所在所在字线上施加大于1T1R器件中晶体管开启电压的电压Vdd,使1T1R器件中的晶体管开启;
S22、在卷积计算模块中1T1R阵列所在位线上接收输入的电压脉冲Vin,即图像模式信息,通过读取流过器件的电流值大小,得到输入信息与卷积核的卷积运算结果,并继续向前传输。具体的,在1T1R阵列中每一行的所在的选择线上读取流过器件的电流值。
S3、根据所得的结果的误差值,通过控制1T1R阵列中字线上的电压反向渐变更新卷积神经网络的权重,完成对卷积神经网络的训练。
具体的,通过控制1T1R器件中晶体管的栅极电压,可以使得1T1R器件具有电导渐变特性。具体的,1T1R器件包括晶体管和忆阻器,其中晶体管的漏极与忆阻器的负电极相连,如图6所示,本实施例中仅以晶体管为 NMOS晶体管为例,本发明也可以采用PMOS晶体管,操作方法相同,操作电压极性进行相应调整即可。
进一步的,1T1R器件的阻变行为包括打开(SET)和关闭(RESET) 两个过程。
在SET过程中,通过在晶体管的栅极施加一个正电压VG,同时在忆阻器的正电极上施加一个正电压VD,通过调整晶体管栅极的电压大小,可以控制1T1R器件的限制电流大小,电压越小,限制电流越小,忆阻器的打开程度越小,则器件所能达到的低阻态阻值越高;其中,每个SET过程均包括一个更新操作和一个读取操作,更新操作完后进行读取操作,如图7中的(a)图所示,本实施例中,电压VG在更新操作中从0.6V到1.2V等间隔增加,电压VG在读取操作中保持在1.8V;电压VD在更新操作中保持在1.2V,电压VD在读取操作中保持在0.2V。
在RESET过程中,通过在晶体管的栅极施加正电压VG,同时在晶体管的源极施加正电压VS,通过调整晶体管栅极的电压大小,可以控制器件的操作限流。此时晶体管的栅极需要施加较大的正电压才能使得器件操作限流尽量大,使得器件可以在源极电压下完全关闭,回到高阻态。同样的,每个RESET过程均包括一个更新操作和一个读取操作,更新操作完后进行读取操作,如图7中的(b)图所示,本实施例中,电压VG在更新操作中从 1.4V到2.0V等间隔增加,电压VG在更新操作中保持在1.8V;电压VS在更新操作中保持在1.5V,电压VS在读取操作中保持在0.2V。
在更新过程中,通过逐渐增大晶体管栅极电压,以提供逐渐增大的限制电流,从而使得忆阻器在固定偏压下依赖限流实现电导状态的渐变特性。在读取过程中,为准确读取到忆阻器阻值的改变量,晶体管的栅压必须保持固定,使得每一次读取过程中晶体管保持相同的状态,此时读取电流的变化则全部由忆阻器阻值的变化提供。
按照上述方式对如图6所示的1T1R器件进行SET和RESET操作,可以得到如图8所示的1T1R器件多值电导渐变特性实验结果,其中X轴表示施加在1T1R器件上的操作脉冲或操作脉冲循环对的数目,Y轴表示器件电导。在第1到第121个脉冲的过程中,1T1R器件上施加如图7(a)所示的脉冲循环对,从图8可以看出1T1R器件的电导逐渐增加,实现了1T1R 器件在正向脉冲作用下逐渐SET的过程。在第122到第242个脉冲的过程中,1T1R器件上施加如图7(b)所示的脉冲循环对,从图8可以看出1T1R 器件的电导逐渐减小,实现了1T1R器件在负向脉冲作用下逐渐RESET的过程。故通过调整1T1R器件中晶体管的栅极电压,可以实现1T1R器件的电导的逐渐增大和逐渐减小,使1T1R器件具有电导渐变特性。1T1R器件的电导渐变特性可以使得在实现电导减小的过程中,无需将1T1R器件重新操作到最低电导状态,直接通过调整1T1R器件中晶体管的栅极电压,使电导减小即可达到目标电导,功耗较低。
通过控制1T1R阵列中字线上的电压,可以使得1T1R器件具有电导渐变特性,从而实现1T1R器件电导的渐变增加或减小。具体的,卷积神经网络的权重与1T1R器件的电导相对应,权重的增加可以用1T1R器件电导值的增大来实现,权重的减小可以用1T1R器件电导值的减小来实现,基于1T1R器件的电导渐变特性,可以渐变更新上述卷积神经网络的权重,包括渐变增大权重和渐变减小权重,从而实现卷积神经网络的硬件化,其中,权重增加对应于1T1R器件的SET过程,电导逐渐增加;权重减小对应于 1T1R器件的RESET过程,电导逐渐减小。
具体的,步骤S3所述的方法包括以下步骤:
S31、选择1T1R阵列中的一列作为更新列;
S32、根据误差值反向计算更新列中每一个1T1R器件的权重更新值,并确定其具体更新操作;
具体的,根据误差值反向计算权重更新值的方法与卷积神经网络算法中计算权重更新值的方法相同,这里不做赘述。
S33、在需要增大权重的1T1R器件所在的字线上分别施加与其更新值相对应的电压VG,在更新列所在的位线上施加预设的set电压VSet,其余列所在的位线悬空,同时将1T1R阵列中每一行所在的选择线接地,如图9 中的(a)图所示,从而实现在不同栅极电压限制下并行地将1T1R器件SET 到各自所需要达到的状态,完成选择列中1T1R器件电导的渐变增加;具体的,上述set电压VSet由1T1R器件特性来确定,主要由器件对于电压脉冲的相应程度决定,本实施例中,预设的set电压VSet设置为1.2V;
S34、在需要减小权重的1T1R器件所在的字线上分别施加与其更新值相对应的电压VG,在1T1R阵列中每一行所在的选择线上施加预设的reset 电压VReset,同时将更新列所在的位线接地,其余列所在的位线均悬空,如图9中的(b)图所示,从而实现在不同栅极电压限制下并行地将1T1R器件RESET到各自所需要达到的状态,完成选择列中1T1R器件电导的渐变减小。上述reset电压VReset由1T1R器件特性来确定,主要由器件对于电压脉冲的相应程度决定,本实施例中,预设的reset电压VReset设置为1.5V;
S35、按照步骤S31-S34进行操作直至1T1R阵列的每一列均完成权重更新。
本发明提出了一种基于1T1R的卷积神经网络及其操作方法,利用 1T1R阵列结构,在完成卷积神经网络中卷积层、池化层和全连接层等功能时,能原位存储突触权重信息,有效解决现有卷积神经网络计算中需要大量数据存储和存储计算间存在大量数据传输的问题,极大的缩短了计算时间,同时减少能耗。另外通过调控1T1R器件中晶体管的栅极电压实现双向渐变调整忆阻器电导值大小,可以使得在实现电导减小的过程中,无需将 1T1R器件重新操作到最低电导状态,直接通过调整1T1R器件中晶体管的栅极电压,使电导减小即可达到目标电导,解决了现有技术由于其电导渐变性存在限制,在实现电导减小时必须将器件重新操作到最低电导状态以电导增加的操作方式达到目标电导而导致的功耗较高的问题。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于1T1R的卷积神经网络电路,其特征在于,包括输入模块、卷积计算模块、池化计算模块和全连接计算模块;
所述输入模块、所述卷积计算模块、所述池化计算模块及所述全连接计算模块依次串行相连;
所述输入模块用于将图像模式信息中各像素点的像素值转化为相应的电压脉冲幅值,对其进行时序编码,并滑动输入到卷积神经网络中;
所述卷积计算模块用于基于1T1R阵列完成输入信息与卷积核的卷积计算;
所述池化计算模块用于基于1T1R阵列对卷积计算模块输出的结果进行池化;
所述全连接计算模块用于接受池化计算模块输出的池化结果,并基于1T1R阵列将池化结果进行整合,得到卷积神经网络计算结果;
所述卷积计算模块包括卷积核单元、参考单元、偏置单元和电流电压转换单元;
其中,所述卷积核单元由二维1T1R阵列构成,所述参考单元由一行电导值固定的1T1R器件构成,所述偏置单元由一列1T1R器件构成;所述偏置单元所在的字线和选择线分别与所述卷积核单元中最后一列1T1R器件所在的字线和选择线相连;所述参考单元所在的位线分别与卷积核单元中最后一行1T1R器件所在的位线相连;所述卷积核单元、所述参考单元和所述偏置单元共同构成一个新的二维1T1R阵列,该新组成的二维1T1R阵列所在的选择线连接在电流电压转换单元上;
所述卷积核单元用于保存卷积核,卷积核单元中有多个卷积核,其中,卷积核单元中二维1T1R阵列的行数与卷积核个数相等,卷积核单元中二维1T1R阵列的列数与卷积核大小的相等;
所述参考单元用于与卷积核单元中每一行的1T1R器件的电导值对应进行差分相减得到负电导,从而得到卷积核的负权重值;
所述偏置单元用于保存偏置值;
所述电流电压转换单元用于读取卷积计算后的电流结果,并将其转化为电压值,以实现网络的级联,将信息继续向后进行传输。
2.根据权利要求1所述的基于1T1R的卷积神经网络电路,其特征在于,所述参考单元中1T1R器件的电导值设定为最大和最小电导值的中间值。
3.根据权利要求1所述的基于1T1R的卷积神经网络电路,其特征在于,所述全连接计算模块中二维1T1R阵列的个数与全连接层中神经网络突触连接层的层数相等。
4.权利要求1-3任意一项所述的基于1T1R的卷积神经网络电路的操作方法,其特征在于,包括以下步骤:
S1、通过将图像模式信息中各像素点的像素值转化为相应的电压脉冲幅值,对其进行时序编码,并滑动输入到卷积神经网络电路中;
S2、通过时序的滑动输入,并将信息依次往后传输到卷积计算模块、池化计算模块和全连接层计算模块,从而完成图像模式信息的前向传播过程,得到最后卷积神经网络电路的输出结果;其中,将图像模式信息经过卷积计算模块进行前向传播的方法,包括:
S21、在卷积计算模块中1T1R阵列所在字线上施加大于1T1R器件中晶体管开启电压的电压,使1T1R器件中的晶体管开启;
S22、在卷积计算模块中1T1R阵列所在位线上接收输入的电压脉冲,即图像模式信息,通过读取流过器件的电流值大小,得到输入信息与卷积核的卷积运算结果,并继续向前传输;
S3、根据所得的结果的误差值,通过控制1T1R阵列中字线上的电压反向渐变更新卷积神经网络电路的权重,完成对卷积神经网络电路的训练;具体包括:
S31、将1T1R阵列中的一列作为更新列;
S32、根据误差值反向计算更新列中每一个1T1R器件的权重更新值,并确定其具体更新操作;
S33、在需要增大权重的1T1R器件所在的字线上分别施加与其更新值相对应的电压VG,在更新列所在的位线上施加预设的set电压VSet,其余列所在的位线悬空,同时将1T1R阵列中每一行所在的选择线接地,从而并行的完成更新列上的权重增大操作;
S34、在需要减小权重的1T1R器件所在的字线上分别施加与其更新值相对应的电压VG,在1T1R阵列中每一行所在的选择线上施加预设的reset电压VReset,同时将更新列所在的位线接地,其余列所在的位线均悬空,从而并行的完成更新列上的权重减小操作;
S35、按照步骤S31-S34进行操作,直至1T1R阵列的每一列均完成权重更新。
5.根据权利要求4所述的基于1T1R的卷积神经网络电路的操作方法,其特征在于,所述电压脉冲幅值的大小与图像模式信息中的像素点的像素值成正比。
6.根据权利要求4所述的基于1T1R的卷积神经网络电路的操作方法,其特征在于,通过控制所述1T1R阵列中字线上的电压,能够使得1T1R器件具有电导渐变特性,从而实现1T1R器件电导的渐变增加或减小。
7.根据权利要求4所述的基于1T1R的卷积神经网络电路的操作方法,其特征在于,所述卷积神经网络电路的权重与1T1R器件的电导相对应,基于1T1R器件的电导渐变特性,能够渐变更新所述卷积神经网络电路的权重,包括渐变增大权重和渐变减小权重。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911032508.9A CN110852429B (zh) | 2019-10-28 | 2019-10-28 | 一种基于1t1r的卷积神经网络电路及其操作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911032508.9A CN110852429B (zh) | 2019-10-28 | 2019-10-28 | 一种基于1t1r的卷积神经网络电路及其操作方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110852429A CN110852429A (zh) | 2020-02-28 |
CN110852429B true CN110852429B (zh) | 2022-02-18 |
Family
ID=69598589
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911032508.9A Active CN110852429B (zh) | 2019-10-28 | 2019-10-28 | 一种基于1t1r的卷积神经网络电路及其操作方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110852429B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111652363B (zh) * | 2020-06-08 | 2023-09-19 | 中国科学院微电子研究所 | 存算一体电路 |
CN114186676A (zh) * | 2020-09-15 | 2022-03-15 | 深圳市九天睿芯科技有限公司 | 一种基于电流积分的存内脉冲神经网络 |
CN113222131B (zh) * | 2021-04-30 | 2022-09-06 | 中国科学技术大学 | 基于1t1r的可实现带符号权重系数的突触阵列电路 |
CN113517016B (zh) * | 2021-07-21 | 2023-04-18 | 清华大学 | 计算装置及其鲁棒性处理方法 |
CN114399037B (zh) * | 2022-03-24 | 2022-07-15 | 之江实验室 | 基于忆阻器的卷积神经网络加速器核心的模拟方法及装置 |
CN115879530B (zh) * | 2023-03-02 | 2023-05-05 | 湖北大学 | 一种面向rram存内计算系统阵列结构优化的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108805270A (zh) * | 2018-05-08 | 2018-11-13 | 华中科技大学 | 一种基于存储器的卷积神经网络系统 |
CN108921290A (zh) * | 2018-06-29 | 2018-11-30 | 清华大学 | 神经突触单元电路、神经网络电路和信息处理系统 |
CN109063826A (zh) * | 2018-03-19 | 2018-12-21 | 重庆大学 | 一种基于忆阻器的卷积神经网络实现方法 |
WO2019008951A1 (ja) * | 2017-07-06 | 2019-01-10 | 株式会社デンソー | 畳み込みニューラルネットワーク |
CN109635941A (zh) * | 2018-11-06 | 2019-04-16 | 华中科技大学 | 一种基于1t1r存储器件的最大池化处理器 |
CN109800870A (zh) * | 2019-01-10 | 2019-05-24 | 华中科技大学 | 一种基于忆阻器的神经网络在线学习系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3016701B1 (fr) * | 2014-01-22 | 2016-02-12 | Commissariat Energie Atomique | Procede et dispositif de determination de l'impedance d'un element de stockage d'energie d'une batterie |
-
2019
- 2019-10-28 CN CN201911032508.9A patent/CN110852429B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019008951A1 (ja) * | 2017-07-06 | 2019-01-10 | 株式会社デンソー | 畳み込みニューラルネットワーク |
CN109063826A (zh) * | 2018-03-19 | 2018-12-21 | 重庆大学 | 一种基于忆阻器的卷积神经网络实现方法 |
CN108805270A (zh) * | 2018-05-08 | 2018-11-13 | 华中科技大学 | 一种基于存储器的卷积神经网络系统 |
CN108921290A (zh) * | 2018-06-29 | 2018-11-30 | 清华大学 | 神经突触单元电路、神经网络电路和信息处理系统 |
CN109635941A (zh) * | 2018-11-06 | 2019-04-16 | 华中科技大学 | 一种基于1t1r存储器件的最大池化处理器 |
CN109800870A (zh) * | 2019-01-10 | 2019-05-24 | 华中科技大学 | 一种基于忆阻器的神经网络在线学习系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110852429A (zh) | 2020-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110852429B (zh) | 一种基于1t1r的卷积神经网络电路及其操作方法 | |
US11861489B2 (en) | Convolutional neural network on-chip learning system based on non-volatile memory | |
CN112183739B (zh) | 基于忆阻器的低功耗脉冲卷积神经网络的硬件架构 | |
CN111279366B (zh) | 人工神经网络的训练 | |
US10740671B2 (en) | Convolutional neural networks using resistive processing unit array | |
US9779355B1 (en) | Back propagation gates and storage capacitor for neural networks | |
US10956815B2 (en) | Killing asymmetric resistive processing units for neural network training | |
US20220277199A1 (en) | Method for data processing in neural network system and neural network system | |
CN109635941B (zh) | 一种基于1t1r存储器件的最大池化处理器 | |
US11087204B2 (en) | Resistive processing unit with multiple weight readers | |
US11620505B2 (en) | Neuromorphic package devices and neuromorphic computing systems | |
Milo et al. | Optimized programming algorithms for multilevel RRAM in hardware neural networks | |
CN109165730B (zh) | 交叉阵列神经形态硬件中状态量化网络实现方法 | |
Ravichandran et al. | Artificial neural networks based on memristive devices | |
KR20210143614A (ko) | 뉴럴 네트워크를 구현하는 뉴로모픽 장치 및 그 동작 방법 | |
KR20210152244A (ko) | 뉴럴 네트워크를 구현하는 장치 및 그 동작 방법 | |
US11195089B2 (en) | Multi-terminal cross-point synaptic device using nanocrystal dot structures | |
Geng et al. | An on-chip layer-wise training method for RRAM based computing-in-memory chips | |
Sun et al. | Quaternary synapses network for memristor-based spiking convolutional neural networks | |
Ielmini et al. | Neuromorphic computing with resistive switching memory devices | |
CN112199234A (zh) | 一种基于忆阻器的神经网络容错方法 | |
Wei et al. | Emerging Memory-Based Chip Development for Neuromorphic Computing: Status, Challenges, and Perspectives | |
JP2023526915A (ja) | アナログ人工知能ネットワーク推論のための行単位畳み込みニューラル・ネットワーク・マッピングのための効率的なタイル・マッピング | |
Hassan et al. | Designing neuromorphic computing systems with memristor devices | |
KR102511526B1 (ko) | 하드웨어 기반 인공 신경망 제공 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |