【发明授权】一种使用模拟计算的神经网络芯片_上海磁宇信息科技有限公司_201611111668.9 

申请/专利权人:上海磁宇信息科技有限公司

申请日:2016-12-06

发明/设计人:戴瑾

公开(公告)日:2020-06-23

代理机构:上海容慧专利代理事务所(普通合伙)

公开(公告)号:CN108154227B

代理人:于晓菁

主分类号:G06N3/063(20060101)

地址:201800 上海市嘉定区城北路235号二号楼二层

分类号:G06N3/063(20060101);G11C11/16(20060101)

优先权:

专利状态码:有效-授权

法律状态:2020.06.23#授权;2018.07.06#实质审查的生效;2018.06.12#公开

摘要:一种使用模拟计算的神经网络芯片包括:由多个MTJ存储单元组成的存储阵列,通过行地址解码器和列地址解码器选择存储阵列中的存储单元,存储阵列采用源极线和位线垂直的布局;存储阵列的每一列配置一个置于高阻态的参考单元;在运算模式下,阵列存储单元的源极线和参考单元的源极线都连接到供电系统,存储单元供电减去基准电位的差值等于参考单元的供电减去基准电位的差值;存储阵列的每一列配置两个MOS晶体管,两个MOS晶体管的栅极均连接至神经元的相应的输入信号,两个MOS晶体管中的一个MOS晶体管的源极连接至相应列的位线,两个MOS晶体管中的另一个MOS晶体管的源极连接至相应列的参考单元的位线;该一个MOS晶体管的漏极连接至电荷积分器。

主权项:1.一种使用模拟计算的神经网络芯片,其特征在于包括:由多个MTJ存储单元组成的存储阵列,其中通过行地址解码器和列地址解码器选择存储阵列中的存储单元,存储阵列采用源极线和位线垂直的布局;存储阵列的每一列配置一个置于高阻态的参考单元;在运算模式下,阵列存储单元的源极线和参考单元的源极线都连接到供电系统,其中存储单元供电减去基准电位的差值等于参考单元的供电减去基准电位的差值;存储阵列的每一列配置两个MOS晶体管,其中两个MOS晶体管的栅极均连接至神经元的相应的输入信号,两个MOS晶体管中的一个MOS晶体管的源极连接至相应列的位线,两个MOS晶体管中的另一个MOS晶体管的源极连接至相应列的参考单元的位线;所述一个MOS晶体管的漏极连接至电荷积分器,神经元的多个输入所对应的权重的字存储在同一行里,多个乘法和加法在同一周期里完成操作;而且完成多个输入的收集后,电荷积分器的信号被脉冲发生器转换成脉宽调制信号发送到下一层神经网络。

全文数据:一种使用模拟计算的神经网络芯片技术领域[0001]本发明涉及半导体芯片领域以及人工智能领域,尤其涉及一种使用模拟计算的神经网络芯片。背景技术[0002]人脑是一个由大量神经元复杂连接的网络。每个神经元通过大量的树突连接大量的其他神经元,接收信息,每一个连接点叫突触Synapse。在外部刺激积累到一定程度后,产生一个刺激信号,通过轴突传送出去。轴突有大量的末梢,通过突触,连接到大量其他神经元的树突。就是这样一个由简单功能的神经元组成的网络,实现了人类所有的智能活动。人的记忆和智能,普遍被认为存储在每一个突触的不同的耦合强度里。[0003]神经元的反应频率不超过100Hz,现代计算机的CPU比人脑快1000万倍,但处理很多复杂问题的能力不如人脑。这促使了计算机行业开始模仿人脑。最早的对人脑的模仿,是在软件层面的。[0004]神经网络NeuralNetworks是计算机学习中常用的算法。神经网络算法中的神经元就是一个函数,它有很多个输入,每一个输入都对应着一个权重。一般的算法是每一个输入乘以权重在相加。它输出〇或1由一个阈值决定),或者一个介于0和1之间的值。一个典型的神经网络,是把大量细胞阵列Neuron的输出输入连接在一起的网络,通常组织成多级架构。它内部有很多个参数权重、阈值),学习训练的过程就是调整这些参数。这是一个需要海量计算的函数优化。这类算法,已经取得了丰富的成果,得到广泛应用。[0005]神经网络算法中的网络都是分成很多层的。最早的网络,上一层的每一个神经元和下一层的每一个神经元连接,成为全连通的网络。全连通网络的一个问题,在于图像处理这类应用中,图像的像素很多,每一层需要的权重数量正比于像素平方,由此该方案占用内存太大,计算量更是无法应付。[0006]在卷积神经网络中,前面的很多层不再是全连通的。每一层的神经元作为一个图像被排成阵列。下一层的每一个神经元只和这一层的一个小区域连通。小区域常常是一个边长为k的方形区域,k称为卷积网络的内核尺寸KernelSize,如图1所示。[0007]卷积神经网络ConvolutionalNeuralNetwork,CNN因为对这个小区域的各个点加权重的求和类似卷积而得名。这一组权重在各个同一层细胞中的各个点都是一样的既平移不变性),从而跟全连通网络相比大幅度减少权重数量,使得高分辨率的图像处理成为可能。一个卷积神经网络包括多个这样连通的层,以及其他种类的层。[0008]随着深度学习应用的普及,人们开始开发专用的神经网络芯片。用专用电路实现神经元计算的加法和乘法,比用CHJ或者GPU高效得多。[0009]磁阻式随机访问存储器MagneticRandomAccessMemory,MRAM是一种新的内存和存储技术,可以像SRAMDRAM—样快速随机读写,并且比DRAM快;还可以像闪存一样在断电后永久保留数据,并且不像NAND它可以不限次地擦写。[0010]MRAM的经济性想当地好,单位容量占用的硅片面积比SRAM通常作为CPU的缓存)有很大的优势,有望接近DRAM的水平。它的性能也相当好,读写时延接近最好的SRAM,功耗则在各种内存和存储技术最好。而且MRAM不像DRAM以及闪存那样与标准CMOS半导体工艺不兼容。MRAM可以和逻辑电路集成到一个芯片中。有了MRAM技术,就可以把内存、存储、计算三个功能集成到一个芯片上来。新的计算架构就有可能。[0011]MRAM的原理是基于一个叫做MTJ磁性隧道结的结构。它是由两层铁磁性材料记忆层10和参考层30夹着一层非常薄的非铁磁绝缘材料层隧道势垒层20组成的,如图丄所示。下面的一层铁磁材料是具有固定磁化方向的参考层30,上面的铁磁材料是可变磁化方向的记忆层10,它的磁化方向可以和固定磁化层相平行或反平行。由于量子物理的效应,电流可以穿过中间的隧道势垒层20,但是MTJ的电阻和可变磁化层的磁化方向有关。图2示出了低电阻的情况,图3示出了高电阻的情况。[0012]读取MRAM的过程就是对MTJ的电阻进行测量。使用比较新的STT-MRAM技术,写M_也比较简单:使用比读更强的电流穿过MTJ进行写操作。一个自下而上的电流把可变磁化层置成与固定层平行的方向,自上而下的电路把它置成反平行的方向。[0013]如图4所示,每个MRAM的记忆单元由一个MTJ和一个M0S管组成。每一个存储单元需要连接三根线:M0S管的栅极连接到芯片的字线负责接通或切断这个单元;M0S管的一极连在源极线上;M0S管的另一极和MTJ的一极相连,MTJ的另一极连在位线上。[0014]—个MRAM芯片由一个或多个MRAM存储单元的阵列组成,每个阵列有若干外部电路,如图5所示。行地址解码器:把收到的地址变成字线的选择;列地址解码器:把收到的地址变成位线的选择;读写控制器:控制位线上的读测量写加电流操作;输入输出控制:和外部交换数据。[0015]MRAM芯片的核心部分是存储单元阵列,阵列有着不同的布局方法。图6是现有技术的位线和源极线平行布局的示意图。一个阵列中的字线和位线一定是垂直的。相对简单的设计设计是位线和源极线平行。写操作比较容易,字线拉高打开一行存储单元,然后根据每一个单元写入0或1的需求,分别在位线或源极线上加高电位。这种方法虽然简单,但布板通常占用比较大的面积,芯片成本高。图7是现有技术的位线和源极线垂直布局的示意图。位线和源极线垂直的布局,有利于缩小每个存储单元所占的芯片面积,降低成本。[0016]目前的神经网络芯片大都使用数字电路,内部嵌入SRAM或MRAM存储权重。但是,这种方案会消耗大量电能,并且效率不高。[0017]因此,本领域的技术人员致力于开发一种更省电更高效的技术方案。发明内容[0018]有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种使用模拟计算的神经网络芯片,其中使用MTJ的电阻直接作为权重,更省电更高效。[0019]为实现上述目的,本发明提供了一种使用模拟计算的神经网络芯片,包括:由多个MTJ存储单元组成的存储阵列,其中通过行地址解码器和列地址解码器选择存储阵列中的存储单元,存储阵列采用源极线和位线垂直的布局;存储阵列的每一列配置一个置于高阻态的参考单元;在运算模式下,阵列存储单元的源极线和参考单元的源极线都连接到供电系统,其中存储单元供电减去基准电位的差值等于参考单元的供电减去基准电位的差值;存储阵列的每一列配置两个M0S晶体管,其中两个M〇s晶体管的栅极均连接至神经元的相应的输入信号,两个MOS晶体管中的一个MOS晶体管的源极连接至相应列的位线,两个M〇S晶体管中的另一个M0S晶体管的源极连接至相应列的参考单元的位线;所述一个M〇S晶体管的漏极连接至电荷积分器。[0020]优选地,在所述的使用模拟计算的神经网络芯片中,电荷积分器的基准电位与MTJ存储单元的基准电位相等。[0021]优选地,在所述的使用模拟计算的神经网络芯片中,神经元的输入信号是脉冲宽度调制信号。[0022]优选地,在所述的使用模拟计算的神经网络芯片中,所述存储阵列按照MRAM阵列的写入操作的方式执行写入操作。[0023]优选地,在所述的使用模拟计算的神经网络芯片中,多于一个比特的权重,通过逐级加倍存储单元供电减去基准电位的差值,以及参考单元的供电减去基准电位的差值的方法产生多比特的权重。[0024]优选地,在所述的使用模拟计算的神经网络芯片中,神经元的多个输入所对应的权重的字存储在同一行里,多个乘法和加法在同一周期里完成操作;而且完成多个输入的收集后,电荷积分器的信号被脉冲发生器转换成脉宽调制信号发送到下一层神经网络。[0025]本发明使用模拟计算,可以在一个周期内完成多次乘法和加法,速度很快。本发明使用模拟计算,如果精度要求不很高,使用的电压在几十mV甚至更小,非常省电。本发明把原来MRAM的读出放大器改装成了神经元计算器,非常经济。[0026]以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。附图说明[0027]结合附图,并通过参考下面的详细描述,将会更容易地对本发明有更完整的理解并且更容易地理解其伴随的优点和特征,其中:[0028]图1是卷积神经网络的架构。[0029]图2是MRAM的磁性隧道结的结构低电阻的情况的示意图。[0030]图3是MRAM的磁性隧道结的结构高电阻的情况的示意图。[0031]图4是_存储单元的架构示意图。[0032]图5是MRAM阵列的架构示意图。[0033]图6是现有技术的位线和源极线平行布局的示意图。[0034]图7是现有技术的位线和源极线垂直布局的示意图。[0035]图8根据本发明优选实施例的使用模拟计算的神经网络芯片的结构示意图。[0036]图9根据本发明优选实施例的使用模拟计算的神经网络芯片的…。[0037]需要说明的是,附图用于说明本发明,而非限制本发明。注意,表示结构的附图能并非按比例绘制。并且,附图中,相同或者类似的元件标有相同或者类似的标号。具体实施方式[0038]在本发明中提出一种与基于细胞阵列的神经网络架构的架构。由众多兼具存能的神经元计算器,以及密集网络连接组成。这种新架构将在大型计算、大数据处理、i工智能等领域中得到广泛的应用。本发明采用了类似MRAM的结构,但去除了读出放大器,直接使用MTJ的电阻进行计算,使得神经元和权重存储更紧密地结合到一起,极大地提高了速度,降低了成本。[0039]图8根据本发明优选实施例的使用模拟计算的神经网络芯片的结构示意图。[0040]如图8所示,根据本发明优选实施例的使用模拟计算的神经网络芯片包括:由多个MTJ存储单元40组成的存储阵列,其中通过行地址解码器和列地址解码器未示出)选择存储阵列中的存储单元40。[0041]其中,存储阵列采用源极线和位线垂直的布局。[0042]所述存储阵列按照MRAM阵列的写入操作的方式执行写入操作,只不过其中不包括读出放大器。[0043]例如,如图8所示,行地址解码器发出输出信号:第一字线信号WL1、第二字线信号WL2、第三字线信号WL3、第四字线信号WL4、第五字线信号WL5,第一位线信号BL1、第二位线信号BL2、第三位线信号BL3、第四位线信号BL4、第五位线信号BL5。[0044]例如,如图8所示,列地址解码器发出输出信号:第一源极线信号SL1、第二源极线信号SL2、、第三源极线信号SL3、第四源极线信号SL4、第五源极线信号SL5。[0045]存储阵列的每一列配置一个置于高阻态的参考单元50。[0046]在运算模式下,该阵列存储单元的源极线和参考单元的源极线SL0都连接到供电系统,存储单元供电减去基准电位的差值等于参考单元的供电减去基准电位的差值,例如存储单元供电比基准电位Vb高预定差值电压Vr,参考单元的供电比基准电位Vb低预定差值电压Vr。[0047]存储阵列的每一列配置两个M0S晶体管开关管),其中两个M0S晶体管的栅极均连接至神经元的相应的输入信号输入脉冲,例如如图8所示的第一输入脉冲1、第二输入脉冲2、第三输入脉冲3、第四输入脉冲4和第五输入脉冲5,两个M0S晶体管中的一个M0S晶体管的源极连接至相应列的位线,两个M0S晶体管中的另一个M0S晶体管的源极连接至相应列的参考单元的位线;所述一个M0S晶体管的漏极连接至电荷积分器70。其中,电荷积分器的基准电位与MTJ存储单元的基准电位相等。[0048]需要说明的是,附图示出了NM0S晶体管的示例,但是PM0S晶体管也是可行的;示出NM0S晶体管的示例仅仅是因为NM0S晶体管相对于PM0S晶体管是优选的。[0049]神经元的输入信号按脉冲宽度调制,电脉冲到来时连通存储单元、参考单元和供电系统。二者的位线都连接到一个使用同样基准电位Vb的电荷积分器。这样脉冲产生的电荷就等于脉冲宽度乘以存储单元和参考单元的电流差,完成了权重和输入的乘法。当存储单元处于高阻态时,电荷积分约等于0。如果多个输入脉冲同时到来,它们对应的权重存储在同一行上,则运算可以同时进行,一次完成多个乘法以及累加。[0050]完成多个输入的收集后,电荷积分器7〇的信号被脉冲发生器80转换成脉宽调制信号发送到下一层神经网络。[0051]而且例如,如图9所示,如果多于一个比特的权重,第一个比特存储单元和参考单元的供电电位为Vb+Vr和Vb-Vr,第二个比特存储单元和参考单元的供电电位为Vb+2Vr和Vb_2Vr,第三个比特存储单元和参考单元的供电电位为Vb+4Vr和Vb-4Vr,第四个比特存储单元和参考单元的供电电位为Vb+8Vr和Vb-8Vr;以此类推。多比特的权重作为一个字存储在阵列的同一行里。[0052]本发明使用模拟计算,可以在一个周期内完成多次乘法和加法,速度很快。本发明使用模拟计算,如果精度要求不很高,使用的电压在几十mV甚至更小,非常省电。本发明把原来MRAM的读出放大器改装成了神经元计算器,非常经济。[0053]上述说明示出并描述了本发明的优选实施例,如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

权利要求:1.一种使用模拟计算的神经网络芯片,其特征在于包括:由多个MTJ存储单元组成的存储阵列,其中通过行地址解码器和列地址解码器选择存储阵列中的存储单元,存储阵列采用源极线和位线垂直的布局;存储阵列的每一列配置一个置于高阻态的参考单元;在运算模式下,阵列存储单元的源极线和参考单元的源极线都连接到供电系统,其中存储单元供电减去基准电位的差值等于参考单元的供电减去基准电位的差值;存储阵列的每一列配置两个MOS晶体管,其中两个MOS晶体管的栅极均连接至神经元的相应的输入信号,两个MOS晶体管中的一个MOS晶体管的源极连接至相应列的位线,两个MOS晶体管中的另一个MOS晶体管的源极连接至相应列的参考单元的位线;所述一个MOS晶体管的漏极连接至电荷积分器。2.如权利要求1所述的使用模拟计算的神经网络芯片,其特征在于,电荷积分器的基准电位与MTJ存储单元的基准电位相等。3.如权利要求1或2所述的使用模拟计算的神经网络芯片,其特征在于,神经元的输入信号是脉冲宽度调制信号。4.如权利要求1或2所述的使用模拟计算的神经网络芯片,其特征在于,所述存储阵列按照MRAM阵列的写入操作的方式执行写入操作。5.如权利要求1至3之一所述的使用模拟计算的神经网络芯片,其特征在于,多于一个比特的权重,通过逐级加倍存储单元供电减去基准电位的差值,以及参考单元的供电减去基准电位的差值的方法产生多比特的权重。6.如权利要求1至3之一所述的使用模拟计算的神经网络芯片,其特征在于,神经元的多个输入所对应的权重的字存储在同一行里,多个乘法和加法在同一周期里完成操作;而且完成多个输入的收集后,电荷积分器的信号被脉冲发生器转换成脉宽调制信号发送到下一层神经网络。

百度查询: 上海磁宇信息科技有限公司 一种使用模拟计算的神经网络芯片

vip会员权益升级
价格优惠/年费监控/专利管家/定制微网站 关闭