存储设备与写数据的方法与流程

文档序号:23059116发布日期:2020-11-25 17:40阅读:221来源:国知局
存储设备与写数据的方法与流程

本申请涉及存储领域,尤其更具体的,涉及存储设备与写数据的方法。



背景技术:

忆阻器,全称为记忆电阻器(memristor),它是表示磁通与电荷关系的电路器件。忆阻器单元具有电导的量纲,但和电导不同的是,忆阻器的阻值是由流经忆阻器的电荷确定的。当忆阻器掉电后,忆阻器的电导也不会发生变化,即忆阻器具有记忆功能。如果把忆阻器的高阻态定义为“1”,低阻态定义为“0”,则忆阻器通过自身的阻值可以实现数据的存储功能。目前,在使用过程中,通常采用一晶体管一阻变式存储器(one-transistorandone-resistiverandomaccessmemory,1t1r)结构。1t1r可以被称为忆阻器单元。

在写数据中,由于器件和器件之间的差异性(device-to-devicevariation)以及同一个忆阻器在不同编程周期之间的差异性(cycle-to-cyclevariation),导致采用相同的脉冲电压,调整不同忆阻器单元的电导时,每个忆阻器单元调整的电导的变化量通常不同。对于一个忆阻器单元而言,采用相同的脉冲电压,在不同的编程周期调整忆阻器单元的电导时,每个编程周期调整的忆阻器单元的电导的变化量也不相同。

为了提高电导调整的准确性和速度,增量步进脉冲编程(incrementalsteppulseprogramming,ispp)技术提供了一种“读验证-矫正”的方式,调整目标忆阻器单元的电导。即,每向目标忆阻器单元加载一个脉冲(set脉冲或reset脉冲)以调整目标忆阻器单元的电导后,都通过读脉冲读取调整后的电导,如此循环,直到目标忆阻器单元的电导被调整至目标电导,则调整过程结束。然而,采用上述ispp技术,每调整一个忆阻器单元的电导都需要大量的“读验证-矫正”过程,导致调整电导的时间非常长。



技术实现要素:

本申请提供一种存储设备与基于存储设备的编程方法,有利于降低调整忆阻器单元的电导占用的时间,提高向忆阻器单元写数据的速度。

第一方面,提供一种存储设备,包括:忆阻器单元,所述忆阻器单元为一晶体管一阻变式存储器1t1r结构;限流电路,用于限制通过所述忆阻器单元的电流为目标电流,其中,所述目标电流根据所述忆阻器单元的目标电导以及所述晶体管的栅极电压来确定,所述目标电导用于指示待写入所述忆阻器单元的目标数据;写电路,用于在所述限流电路的配合下向所述忆阻器单元加载写电压以向所述忆阻器单元中写入所述目标数据。

在本申请实施例中,通过限流电路限制流过忆阻器单元的电流为目标电流,其中目标电流为可以使得忆阻器单元的电导为目标电导的电流,再通过写电路向忆阻器单元加载写电压将忆阻器单元的电导调整为目标电导。从而在写数据的过程中,由于限流电路的存在,忆阻器单元根据写脉冲写数据时,不会出现忆阻器单元的电导超过目标电导需要不断矫正的情况。从而避免了现有技术采用“读验证-矫正”的方式,减少了向忆阻器单元写数据占用的时间。

在一种可能的实现方式中,所述目标电流i,所述写电压vb,所述目标电导g以及所述晶体管的漏极电压vd满足公式

在本申请实施例中,在目标电导g与写电压vb一定的情况下,根据目标电导确定目标电流,以便限流电路将流过忆阻器单元的电流限制为目标电流,即可以使忆阻器单元的电导调整为目标电导的电流。

在一种可能的实现方式中,所述限流电路包括电流镜,所述电流镜包括并联的第一支路以及第二支路,所述第二支路与所述忆阻器单元相连,通过所述第一支路的电流为所述目标电流,所述电流镜用于将所述目标电流从所述第一支路复制到所述第二支路,以限制流过所述忆阻器单元的电流为所述目标电流。

在本申请实施例中,采用包括电流镜的限流电路,限制流过忆阻器单元的电流,有利于简化限流电路的结构。

可选地,限流电路还包括电流源,所述电流源用于提供多个电流,所述多个电流包括所述目标电流。

在一种可能的实现方式中,所述限流电路为所述忆阻器单元提供多个电流,多个电流中不同的电流对应所述忆阻器单元不同的电导,所述多个电流包括所述目标电流。

在本申请实施例中,限流电路可以为忆阻器单元提供多个电流,在不同的电流的情况下,使得忆阻器单元的电导可以为不同的电导值,表示不同的数据,有利于辅助忆阻器单元存储不同的数据。

在一种可能的实现方式中,所述多个电导中的第一电导gmax的电导值最大,所述写电压小于预设的第一写电压阈值vbmax,其中,所述第一写电压阈值vbmax满足公式imax表示将所述忆阻器单元的电导调制为所述第一电导gmax所需的电流。

可选地,上述写电压大于或等于所述阻变式存储器的估计突变电压,其中所述估计突变电压高于所述忆阻器单元的真实突变电压。

在本申请实施例中,通过限定写电压大于或等于阻变式存储器的估计突变电压,以保证阻变式存储器发生电压突变。

在一种可能的实现方式中,所述多个电流对应的所述忆阻器单元的多个电导中的第二电导g'max的电导值最大,第二写电压阈值v'bmax满足公式表示将所述忆阻器单元的电导调制为所述第二电导所需的电流,若所述第二写电压阈值小于所述阻变式存储器的估计突变电压,则所述写电压为所述估计突变电压,所述估计突变电压高于所述忆阻器单元的真实突变电压。

在本申请实施例中,若第二写电压阈值小于阻变式存储器的估计突变电压,则可以将写电压可以等于估计突变电压,以保证阻变式存储器发生电压突变。

需要说明的是,上述估计突变电压可以是基于多个阻变式存储器的电压的统计结果与电压阈值之和,其中电压阈值可以为任意值,例如0.2v。

第二方面,提供了一种存储设备,包括:存储阵列,所述存储阵列包括多个忆阻器单元,所述多个忆阻器单元为一晶体管一阻变式存储器1t1r结构;限流电路,用于限制通过所述多个忆阻器单元中的目标忆阻器单元的电流为目标电流,其中,所述目标电流根据所述目标忆阻器单元的目标电导以及所述晶体管的栅极电压来确定,所述目标电导用于指示待写入所述忆阻器单元的目标数据;写电路,用于在所述限流电路的配合下向所述目标忆阻器单元加载写电压以向所述目标忆阻器单元中写入所述目标数据。

在一种可能的实现方式中,所述目标电流i,所述写电压vb,所述目标电导g以及所述晶体管的漏极电压vd满足公式

在一种可能的实现方式中,所述存储设备还包括:选通电路,所述选通电路用于从所述存储阵列中选通所述目标忆阻器单元。

在一种可能的实现方式中,所述限流电路包括电流镜,所述电流镜包括第一支路以及多个第二支路,所述多个第二支路中的每个第二支路与所述存储阵列中的一个忆阻器单元相连,通过所述第一支路的电流为所述目标电流,所述电流镜用于将目标电流从所述第一支路复制到所述多个第二支路中的目标第二支路,以限制流过所述目标第二支路中的所述目标忆阻器单元的电流为所述目标电流。

第三方面,提供了一种写数据的方法,所述方法用于向忆阻器单元写入数据,所述忆阻器单元为一晶体管一阻变式存储器1t1r结构,所述方法包括:通过限流电路限制通过所述忆阻器单元的电流为目标电流,其中,所述目标电流根据所述忆阻器单元的目标电导以及所述晶体管的栅极电压来确定,所述目标电导用于指示待写入所述忆阻器单元的目标数据;在所述限流电路的配合下,通过写电路向所述忆阻器单元加载写电压以向所述忆阻器单元中写入所述目标数据。

在一种可能的实现方式中,所述目标电流i,所述写电压vb,所述目标电导g以及所述晶体管的漏极电压vd满足公式

附图说明

图1是神经网络与交叉阵列之间的映射关系的示意图。

图2是基于ispp策略向目标忆阻器写目标数据的过程的示意图。

图3(a)是1t1r结构的忆阻器单元的示意图。

图3(b)是另一种1t1r结构的忆阻器单元的示意图。

图4是晶体管的电流-电压特性曲线的示意图。

图5是rram的电流-电压特性曲线的示意图。

图6是1t1r忆阻器单元的电流-电压特性曲线的示意图。

图7是本申请实施例的存储设备的示意图。

图8是本申请实施例提供的存储设备的示意图。

图9是本申请实施例提供的存储设备的示意图。

图10是本申请实施例的存储设备的示意图。

图11示出了本申请实施例的存储设备的示意图。

图12示出了本申请实施例的存储设备的示意图。

图13示出了本申请另一实施例的存储设备的示意图。

图14是本申请实施例的存储设备的编程方法的示意性流程图。

具体实施方式

下面将结合附图,对本申请中的技术方案进行描述。为了便于理解,先结合图1,以通过交叉阵列实现神经网络的功能为例,介绍本申请实施例的应用场景。需要说明的是,本申请实施例还适用于其他神经网络,例如卷积神经网络等。本申请实施例还可以适用于单独使用忆阻器单元存储数据的场景。

图1是神经网络与交叉阵列之间的映射关系的示意图。神经网络110包括多个神经网络层。在本发明实施例中,神经网络层为逻辑的层概念,一个神经网络层是指要执行一次神经网络操作。每一层神经网络计算均是由计算节点(也可以称为神经元)来实现。实际应用中,神经网络层可以包括卷积层、池化层等。

本领域技术人员知道,在执行神经网络计算(例如,卷积计算)时,神经网络系统中的计算节点可以将输入数据与对应神经网络层的权重进行计算。在神经网络系统中,权重通常用一个实数矩阵表示,权重矩阵中的每一个元素代表一个权重值。由于神经网络系统的计算节点可以采用阻变式随机访问存储器(resistiverandom-accessmemory,reram)组成的阻变式随机访问存储器交叉矩阵(reramcrossbar)进行计算,又由于reram具有存算一体的优势,因此,权重可以在计算之前配置到reramcrossbar的reram单元(cell)上。实际应用中,执行同一神经网络层计算的计算节点可以共享权重,执行不同神经网络层计算的计算节点的权重可以不相同。在本发明实施例中,各计算节点的权重可以通过事先配置完成。

为了便于说明,以神经网络110中的第一神经网络层为例介绍数据处理过程。在神经网络系统中。第一神经网络层可以是神经网络系统中的任意一层,为描述方便,第一神经网络层可以简称为“第一层”。

图1以一个计算节点中的reramcrossbar为例进行示意。该计算节点可以用于执行第一神经网络层的计算。图1所示的交叉阵列120为m×n的交叉阵列,其中,每一列的忆阻器单元的位线i(bitlinei,bli)连接在一起,每一行的忆阻器单元的字线j(wordlinej,wlj)连接在一起。在执行神经网络计算的过程中,n个输入数据vi可以通过加载到bli的脉冲或者输入电压表示,例如图1中的:v1,v2,v3,…vn。权重矩阵中权重可以通过位于bli与wlj交点的忆阻器单元的电导表示。忆阻器单元的电导不同可以表示忆阻器单元存储的权重不同。计算节点将接收的输入数据v1,v2,v3,…vn,与计算节点中配置的权重进行运算,得到如图1中的112所示的m个输出数据。所述m个输出数据可以通过源线i(sourcelinei,sli)上的电流表示,例如图1中的:i1,i2,…im。

下文以向位于bl1与wl1交点的目标忆阻器单元写目标数据为例,介绍置位(set)操作和复位(reset)操作。其中,set操作用于将忆阻器单元的电导从低电导向高电导调整,reset操作用于将忆阻器单元的电导从高电导向低电导调整。

假设目标忆阻器单元r11的目标电导范围可以表示目标权重w11。在向目标忆阻器单元写w11的过程中,若目标忆阻器单元的当前电导低于目标电导范围的下限,则可以通过set操作,增大目标忆阻器单元的电导。此时,可以通过wl1向需要调整的目标忆阻器单元中晶体管的栅极加载电压开启晶体管,使得目标忆阻器单元处于选通状态。同时将目标忆阻器单元连接的sl1以及交叉阵列中的其他bl也接地,然后,再向目标忆阻器单元所在的bl1施加set脉冲,以调整目标忆阻器单元的电导。

相反地,若目标忆阻器单元的当前电导高于目标电导范围上限,则可以通过reset操作,减小目标忆阻器单元的电导。此时,可以通过wl1向需要调整的目标忆阻器单元中晶体管的栅极加载电压,使得目标忆阻器单元处于选通状态。同时将目标忆阻器单元连接的bl1以及交叉阵列中的其他wl接地。然后,再向目标忆阻器单元所在的sl1施加reset脉冲,以调整目标忆阻器单元的电导。

下文基于图1介绍的交叉阵列以及set操作、reset操作,结合图2介绍基于增量步进编程脉冲(incrementalstepprogrampulse,ispp)策略向目标忆阻器单元写目标数据的过程。目标忆阻器单元为上述交叉阵列中的任意一个忆阻器单元。在向目标忆阻器单元写目标数据的过程中,ispp策略通常采用“读验证-矫正”的方式调整目标忆阻器单元的电导,使得目标忆阻器单元的电导最终调整至目标数据对应的目标电导。

首先,向目标忆阻器单元施加一个读脉冲,读出目标忆阻器单元的当前电导,与目标电导进行比较,如果当前电导小于目标电导,则可以向目标忆阻器单元加载第一set脉冲,以增大目标忆阻器单元的电导,使得目标忆阻器单元的电导向目标电导调整,然后再通过读脉冲读取调整后的电导,即第一电导。如果第一电导仍然小于目标电导,则可以向目标忆阻器单元加载一个第二set脉冲,第二set脉冲的脉宽与第一set脉冲的脉宽相同,但第二set脉冲的幅值大于第一set脉冲的幅值,进行一次增强的set操作,继续通过读脉冲读取目标忆阻器单元的电导,即第二电导。如果第二电导大于目标电导,则可以向目标忆阻器单元加载第一reset脉冲,以增大第二电导,使得第二电导向目标电导调整。直到通过读脉冲读出的目标忆阻器单元的电导在目标电导的某一误差范围内,则上述通过“读验证-矫正”调整电导的过程结束。

基于上文的介绍,ispp技术旨在通过这种大量的“读验证-矫正”过程,将目标忆阻器单元的电导调整为目标电导。然而,每次调整一个忆阻器单元的电导都需要大量的“读验证-矫正”过程,导致调整电导的时间非常长。

为了减少调整目标忆阻器单元的电导占用的时间,本申请提供了一种存储设备,利用1t1r结构的忆阻器单元的电学特性,以通过限流电路限制流过忆阻器单元的电流,使得忆阻器单元的电导值达到目标电导值,无需读验证。

为了便于理解,下文先结合图3(a)介绍1t1r结构的忆阻器单元以及向该忆阻器单元加载set电压的过程,再结合图4至图6介绍1t1r结构的忆阻器单元的电学特性。图3(a)是1t1r结构的忆阻器单元的示意图。图3(a)所示的忆阻器单元300包括阻变式存储器(resistiverandomaccessmemory,rram)310以及晶体管(transistor,t)320。其中,rram310与晶体管320串联,且晶体管320的漏极(drain,d)与rram310的下电极(bottomelectrode,be)相连。在set操作时,晶体管的源极(source,s)接地,即源极电压vs=0。vb表示set操作时使用的脉冲电压。

对于晶体管320而言,向忆阻器单元加载电压vb后,晶体管的电流-电压特性曲线满足公式:

id=f(vgs,vds)(1)

其中,id表示流过晶体管漏极的电流,vgs表示晶体管的栅-源电压,vds表示加在晶体管的漏-源电压,f()表示函数关系。晶体管具体的电流-电压特性曲线可以参见图4。

从图4可以看出,晶体管的工作区域可以分为两个区域即三极管区(trioderegion)又称“线性区”,以及饱和区(saturationregion),图4中用虚线表示上述线性区与饱和区之间的分界线。当vds<vgs-vt时,晶体管工作在线性区,下文统称为线性区。当vds>vgs-vt时,晶体管工作在饱和区,其中,vt表示晶体管的开启电压。当同一晶体管的vgs的取值不同时,晶体管的线性区的电流范围不同。

对于rram310而言,向rram加载vb后,rram的电流-电压特性曲线满足公式:

id,m=g(vb-vd)=-g(vd-vb)(2)

其中,g表示rram的电导。rram具体的电流-电压特性曲线可以参见图5。

对于公式(1)而言,由于vs=0,且vds=vd-vs,则vds=vd。并且,晶体管320与rram310为串联,则流过晶体管的电流id与流过rram的电流id,m相等,即id=id,m=id。因此,图4中的性能曲线和图5中的性能曲线都可以通过以id和vd构成的坐标系表示,参见图6。同理,vs=0,且vgs=vg-vs,则vgs=vg。从图6可以看出,当给定set脉冲电压为vb,晶体管的栅压为vg。若set过程中,将id分别限流在i1,i2,i3,基于线性区的特性,可以确定i1,i2,i3分别对应的晶体管的电压为vd1,vd2,vd3。rram的初始状态为低电导状态,在加set脉冲调制电导的过程中,其电导逐渐增大,i逐渐增大,能达到的最终电流值分别为i1,i2,i3,则rram的电导分别为g1、g2、g3,即为图6所示的3条直线的斜率的绝对值。因此,rram电导值可根据公式(3)确定。

本申请实施例基于图6所示的1t1r结构的忆阻器单元的电流-电压特性,即给定vb和vg后,流过忆阻器单元的电流不同对应忆阻器单元不同的电导值。基于上述特性,本申请实施例提供了一种存储设备,通过存储设备中的限流电路限制流过忆阻器单元的电流为目标电流,然后通过向忆阻器单元加载写电压,以将忆阻器单元的电导调整为目标电流对应的目标电导,从而避免上文介绍的“读验证”过程,以减少调整忆阻器单元的电导占用的时间。

需要说明的是,上文中基于公式(1)至公式(3)介绍的电流-电压的特性曲线也同样适用于图3(b)所示的1t1r结构的忆阻器单元350。图3(b)中与图3(a)中相同的元件使用的编号相同。图3(b)中晶体管320的漏极(drain,d)与rram310的上电极(topelectrode,te)相连。相应地,写电压可以从rram310的be向忆阻器加载,晶体管的源极依然接地。因此,晶体管依然满足vs=0,vds=vd且,流过晶体管的电流id与流过rram的电流id,m相等。基于此,将晶体管的电流-电压特性曲线和rram的电流-电压特性曲线都可以通过以id和vd构成的坐标系表示,且满足上述公式(3)。

下文在结合图7至图14介绍本申请实施例的存储设备时,仅以图3(a)所示的忆阻器单元为例进行说明,上述存储设备中的忆阻器单元还可以是图3(b)所示的忆阻器单元350。为了简洁,不再赘述。

图7是本申请实施例的存储设备的示意图。图7所示的存储设备700包括忆阻器单元710,限流电路720以及写电路730。

忆阻器单元710,所述忆阻器单元为一晶体管一阻变式存储器1t1r结构;

限流电路720,用于限制通过所述忆阻器单元的电流为目标电流,其中,所述目标电流根据所述忆阻器单元的目标电导以及所述晶体管的栅极电压来确定,所述目标电导用于指示待写入所述忆阻器单元的目标数据;

写电路730,用于在所述限流电路的配合下向所述忆阻器单元加载写电压以向所述忆阻器单元中写入所述目标数据。

上述晶体管可以是n型沟道金属氧化物半导体(n-channelmetaloxidesemiconductor,nmos)晶体管,还可以是p型沟道金属氧化物半导体(p-channelmetaloxidesemiconductor,pmos)晶体管等。

上述目标电流根据所述忆阻器单元的目标电导以及所述晶体管的栅极电压来确定,还可以理解为,当写电压与晶体管的栅极电压确定时,所述目标电流为所述目标电导对应的电流,其中,目标电导对应的电流是晶体管的电流-电压特性曲线与rram的电流-电压特性曲线的交点。

上述晶体管工作在线性区时,目标电流与晶体管的漏-源电压之间近似为线性关系。写电压一定时,目标电流、目标电导以及晶体管的漏极电压之间一一对应。这样,通过限流电路控制流过忆阻器单元的电流,即可以将忆阻器单元调整为目标电导。对于图3(a)所示的忆阻器单元的结构而言,可以通过set操作,调整忆阻器单元的电导的过程。对于图3(b)所示的忆阻器单元的结构而言,可以通过reset操作,调整忆阻器单元的电导的过程。

例如,在对图3(a)所示的忆阻器单元300进行写数据的过程中,先通过reset操作,将忆阻器单元的初始态调整为高阻态(即低电导),则可以通过写电路向忆阻器单元加载写电压,即set脉冲,以将忆阻器单元由高阻态向低阻态调整,此时,随着向忆阻器单元加载的set脉冲的数量的增加,忆阻器单元的电阻不断减少,电导增大,流过忆阻器单元的电流增大,但是由于限流电路的存在,流过忆阻器单元的电流的最大值为目标电流,则基于电流与电导之间的对应关系,忆阻器单元的电导被调整为目标电流对应的目标电导后,即使继续加载set脉冲,忆阻器单元的电导也不会再发生变化了。

需要说明的是,上述通过加载set脉冲调整忆阻器单元的电导的过程中,将忆阻器单元从初始电导调整为目标电导的过程可以包括向忆阻器单元加载多个set脉冲的过程。其中加载set脉冲的数量和脉宽可以基于忆阻器单元的型号预先配置,保证忆阻器单元经过加载预设数量的set脉冲后,可以由初始电导调整为目标电导。

又例如,在对图3(b)所示的忆阻器单元350进行编程的过程中,忆阻器单元的初始态调整为低阻态(即高电导),则可以通过写电路向忆阻器单元加载写电压,即reset脉冲,以将忆阻器单元由低阻态向高阻态调整,此时,随着向忆阻器单元加载的reset脉冲的数量的增加,忆阻器单元的电阻不断增大,电导降低,流过忆阻器单元的电流减少,但是由于限流电路的存在,流过忆阻器单元的电流的最小值为目标电流,则基于电流与电导之间的对应关系,忆阻器单元的电导被调整为目标电流对应的目标电导后,即使继续加载reset脉冲,忆阻器单元的电导也不会再发生变化了。

需要说明的是,上述通过加载reset脉冲调整忆阻器单元的电导的过程中,将忆阻器单元从初始电导调整为目标电导的过程可以包括向忆阻器单元加载多个reset脉冲的过程。其中加载reset脉冲的数量和脉宽可以基于忆阻器单元的型号预先配置,保证忆阻器单元经过加载预设数量的reset脉冲后,可以由初始电导调整为目标电导。

需要说明的是,所述目标电导g为所述忆阻器单元能够提供的多个电导中的一个,将所述忆阻器单元的电导调制为所述多个电导中不同的电导所需的电流不同。也就是说,通过限流电路限制流过忆阻器单元的电流可以包括多个目标电流,每个目标电流对应一个目标电导,可以使得忆阻器单元的电导为上述多个目标电流对应的多个目标电导,以实现存储多个目标数据。

例如,图6中,给定set脉冲电压为vb,晶体管的栅压为vg时,通过限流电路限制流过忆阻器单元的电流为i1,则rram的调整后的目标电导为g1,用于记录第一目标数据。通过限流电路限制流过忆阻器单元的电流为i2,则rram的调整后的目标电导为g2,用于记录第二目标数据。通过限流电路限制流过忆阻器单元的电流为i3,则rram的调整后的目标电导为g3,用于记录第三目标数据。

上述限流电路的实现方式有很多种,可以采用基于电流源和电流镜的限流电路。其中电流镜可以是mos管基本电流镜,还可以是双极型基本电流镜、级联电流镜等。

图8是本申请实施例提供的又一种存储设备的示意图。图8所述的存储设备800与图7所示的存储设备700中功能相同的电路采用相同的编号,为了简洁,在此不再赘述。

限流电路720包括电流镜,电流镜包括并联的第一支路810(又称输入支路)以及第二支路820(又称输出支路),第二支路820与忆阻器单元710相连,通过所述第一支路810的电流为所述目标电流,所述电流镜用于根据所述目标电流,限制流过所述忆阻器单元的最大电流为所述目标电流。

上述电流镜可以是mos管基本电流镜,包括第一mos管811以及第二mos管821,第一mos管位于第一支路810,第二mos管位于第二支路820,由于第一支路与第二支路并联,使得第一mos管(参见图8用p1表示)源极电压与第二mos管(参见图8用p2表示)的源极电压相同,且第一mos管的栅极与第二mos管的栅极相连且短接,如此,两个mos管的栅极电压,源极电压相同时,基于mos管的特性,可以认为流过这两个mos管的电流相同,即第一直流的目标电流与流经第二mos管的电流相同。

可选地,上述电流镜可以通过选通电路连接多个第二支路820,每个第二支路分别连接多个忆阻器单元,从而可以通过多个第二支路连接多个忆阻器单元,为多个忆阻器单元提供限流作用,以调整多个忆阻器单元的电导。具体的连接方式,请参见下文的介绍。

由于在写数据的过程中,忆阻器单元的电导在达到目标电导之前,忆阻器单元的电导随着加载写电压的次数而变化,导致第二支路的电流与第一支路的电流略有差异,但是当忆阻器单元的电导变化为目标电导时,流过第二支路的电流即为目标电流。下文以通过set操作调整忆阻器单元300的电导的过程为例,介绍电流镜的工作原理。

经过reset操作后,忆阻器单元处于高阻态,则忆阻器单元的当前电导小于目标电导,需要通过向忆阻器单元加载set脉冲,将忆阻器单元向低阻态调整。随着加载的set脉冲的次数增多,忆阻器单元的阻值减小,电导增大,则第二支路上流过的电流增大,但是由于电流镜的中第一支路的提供的“基准电流”(即目标电流)的限制,使得第二支路上电流的最大值为目标电流。

相应地,通过reset操作调整忆阻器单元350的电导的过程中,忆阻器单元初始状态为低阻态,则忆阻器单元的当前电导大于目标电导,需要通过向忆阻器单元加载reset脉冲,将忆阻器单元向高阻态调整。随着加载的reset脉冲的次数增多,忆阻器单元的阻值增大,电导减小,则第二支路上流过的电流减小,但是由于电流镜的中第一支路的提供的“基准电流”(即目标电流)的限制,使得第二支路上电流的最小值为目标电流。

需要说明的是,图8仅仅示出了限流电路中的部分元件,该限流电路中还可以包括其他元件,本申请实施例对此不做限定。

可选地,上述存储设备700还可以包括编程控制电路910以及栅压产生电路920,具体结构可以参见图9。需要说明的是,图9所示的存储设备中与图7所示的存储设备功能相同的采用相同的编号。

编程控制模块910用于控制整个编程过程的操作时序以及各电路模块的工作模式等。例如,控制写电路产生幅值为vb的set脉冲;控制限流电路限制流过忆阻器单元的电流为目标电流;控制栅压产生电路为晶体管的栅极提供电压。

需要说明的是,在本申请实施例中上述编程过程包括上文中提到的写数据过程。

可选地,上述编程控制模块910还可以控制初始化电路(图9未示出)对rram进行初始化(forming)操作,控制reset电路(图9未示出)对rram进行reset操作等。

栅压产生模块920用于为整个编程过程提供可变栅压,以应用于初始化操作、set操作、reset操作。其中初始化操作、set操作、reset操作所需的栅压不同。

对于不同的忆阻器单元而言,上述限流电路的限流范围,晶体管的栅压的设定条件,以及写电压vb的设定条件需要基于实际电路的情况设定,下文重点介绍上述3种参数的设定条件。

一、限流电路的限流范围

假设编程目标电导的最小值为gmin和目标电导的最大值为gmax,根据公式结合rram和cmos的制造工艺可以大致预估在给定栅压vg时线性区(vb-vd)的值为(vb-vd)forecast,以及上述gmin和gmax,可以计算出预测的最小限流值为因此,可以设计限流电路实际可以实现的限流范围[imin,imax]可以大于预测电流范围以留出足够裕度以保证实际编程的电导极限值能满足要求。

二、晶体管的栅压的设定条件

基于图4可知,晶体管的栅压vg的选择与晶体管的线性区域的大小密切相关。因此,栅压的设定条件主要是保证晶体管在栅压vg的工作条件下,其i-v特性曲线的线性区的电流范围可以划分多个限流值以通过多个目标电导表示多个目标数据。例如,需要表示的数据为4比特(bit),则可能有24=16个不同的数据需要表示,相应地16个不同的数据需要对应16个不同的目标电流,因此,晶体管的线性区域需要能够划分出16个目标电流,或者可以理解为,需要选择饱和电流(即晶体管在饱和区域对应的电流)足够大的栅压vg。

以图9所示的1t1r结构为例,rram接晶体管的漏极,执行set操作时,将晶体管的源极接地。因为实际写数据的最大电流值是限流电路限制的,所以即使该vg为相应晶体管工艺的电源电压vdd,可以达到的饱和电流很大,但编程功耗由脉冲电压幅值vb和限流值决定。

考虑到随着工艺特征尺寸的缩小,工作电压在缩小,晶体管所能达到的最大饱和电流也在减小,因此为保证仍然有足够的电流范围,电源电压3.3v以下的晶体管可以直接取vg=vdd,电源电压3.3v以上的晶体管,可以根据实际应用取vg≤vdd,以保证该栅压下饱和电流大于所需最大限流值即可。

假设编程时限流值最大为imax,使得饱和电流i饱和=imax时的栅压为vgth,vg的取值范围为:vgth<vg≤vdd。

三、vb的设定条件

set脉冲的电压幅值vb主要满足2个要求:1)确保可以使得rram阻变;2)加载至忆阻器单元后,可以使得忆阻器单元的电导达到需要编程的最大电导值gmax。

1)确保可以使得rram阻变

首先保证set脉冲的电压幅值vb高于rram器件直流(directcurrent,dc)扫描过程中的set操作的突变电压vc(vchange,vc),以让rram发生阻变。

具体地可以通过以下方式确定rram的vc:对同一批流片的rram器件随机抽取不同硅片(wafer)和不同晶圆(die)上的1t1r阵列进行dc扫描测试,统计足够多的器件的突变电压,其中,统计的突变电压的最大值为vc,max,则vb最小值需要大于vc,max。通常,为了保证rram发生电压突变,可以在上述突变电压的最大值的基础上,取一个大于上述突变电压的最大值的电压(又称“估计突变电压”),例如可以取(vc,max+0.2)v,以增加触发rram电压突变的概率。另一方面,当vb的值越大,编程过程中存储设备的功耗越大,通常,vb的最大值为晶体管的电源电压vdd,即(vc,max+0.2)v≤vb≤vdd。

2)加载至忆阻器单元后,可以使得忆阻器单元的电导达到需要编程的最大电导值gmax。

理论上g的最小值可以接近0,即rram处于非常高的阻态。g的最大值通常与vb有关。假设vg=vdd,且目标电导可见g是电流i的增函数,g是vb的减函数。由于i需要小于vg=vdd时的饱和电流,则i的最大值受限于vg,不能无限增大。因此,g的最大值与vb有关。

假设目标电导的最大值为gmax,则根据公式vb,max=imax/gmax+vd可以算出的vb的最大值vb,max,当vb,max=vdd时,vb取值范围为:(vc,max+0.2)v≤vb≤vb,max。

上文介绍的vb的设定条件通常为理想情况下的设定条件。然而,实际配置过程中,忆阻器单元的实际参数的设定可能会对vb的设定条件产生影响,下文主要分三种情况介绍vb的设定条件。假设限流电路的限流范围为[imin,imax]。

情况一、当vb,max<(vc,max+0.2)v时,vb=(vc,max+0.2)v。

需要说明的是,若限流极限imax所能达到的g的最大值小于目标电导的最大值gmax,该情况下若仍然要求实现gmax,则需提高限流电路的imax。

情况二、当(vc,max+0.2)v≤vb,max≤vdd时,(vc,max+0.2)v≤vb≤vb,max。

情况三、当vb,max>vdd时,vb=vdd。

本申请实施例的方法可以应用于存储阵列,下文结合图10介绍本申请实施例的方案应用于存储阵列的场景。图10是本申请实施例的存储设备的示意图。图10所示的存储设备包括存储阵列1010,限流电路720,写电路730。需要说明的是,图10所示的存储设备中与图7所示的存储设备中实现相同功能的模块采用相同的编号,具体的介绍可以参见上文描述,为了简洁,在此不再赘述。

存储阵列1010,所述存储阵列包括多个忆阻器单元,所述多个忆阻器单元为一晶体管一阻变式存储器1t1r结构;

限流电路720,用于限制通过多个忆阻器单元中目标忆阻器单元的电流为目标电流,其中,所述目标电流根据所述目标忆阻器单元的目标电导以及所述目标忆阻器单元中的晶体管的栅极电压来确定,所述目标电导用于指示待写入所述忆阻器单元的目标数据;

写电路730,用于在所述限流电路的配合下向所述目标忆阻器单元加载写电压以向所述目标忆阻器单元中写入所述目标数据。

上述存储阵列可以是存储器中的存储阵列,或者神经网络处理器中融合存储与计算一体的交叉阵列,本申请实施例对此不做限定。

可选地,上述存储设备1000还包括选通电路,所述选通电路用于从所述存储阵列中选择所述目标忆阻器单元。

可选地,上述选通电路可以一次选通多个忆阻器单元,上述选通电路还可以一次选通一个忆阻器单元。当选通电路同时选通多个忆阻器单元时,可以通过与限流电路配合向多个忆阻器单元中同时写入相同的目标数据。

图11是本申请实施例的存储设备的示意图。图11所示的存储设备中与图10所示的存储设备中功能相同的采用相同的编号。图11所示的存储设备1100包括存储阵列1010、限流电路720、写电路730以及选通电路1110。

选通电路1110用于选通上述待写数据的忆阻器单元,使得写电路730可以向该忆阻器单元加载写电压,以及使得限流电路720可以限制流过该忆阻器单元的电流。

可选地,所述限流电路包括电流镜,所述电流镜包括第一支路以及多个第二支路,所述多个第二支路中的每个第二支路与所述存储阵列中的一个忆阻器单元相连,通过所述第一支路的电流为所述目标电流,所述电流镜用于将目标电流从所述第一支路复制到所述多个第二支路中的目标第二支路,以限制流过连接所述目标第二支路的所述目标忆阻器单元的电流为所述目标电流。

图12示出了本申请实施例的存储设备的示意图。图12所示的存储设备中与图11所示的存储设备中功能相同的采用相同的编号。需要说明的是,图12仅示出了与图11所示的存储设备中不同的元件。下文结合图12重点介绍选通电路与限流电路的作用。

图12所示的存储设备1200中限流电路包括电流镜1210。电流镜1210包括第一支路(又称输入支路)以及多个第二支路(又称输出支路)bl1、bl2、……、bln。第一支路的mos管p1的栅极与多个第二支路中的mos管p2的栅极短接,根据电流镜的特性,可以限制流过多个第二支路的mos管的电流等于流过第一支路的mos管的电流。

例如,以图3(a)所示的忆阻器单元300为例,通过向忆阻器单元300加载set脉冲电压,调整忆阻器单元的电导时,上述电流镜可以限制流过多个第二支路的mos管的最大电流等于流过第一支路的mos管的电流。

又例如,以图3(b)所示的忆阻器单元350为例,通过向忆阻器单元350加载reset脉冲电压,调整忆阻器单元的电导时,上述电流镜可以限制流过多个第二支路的mos管的最小电流等于流过第一支路的mos管的电流。

选通电路1110,用于从多个第二支路中选择目标第二支路,所述目标第二支路与目标忆阻器单元相连;

电流镜的第一支路用于限制所述目标第二支路的电流为目标电流。

相应地,本申请实施例还提供了一种电流镜与选通电路的连接方式,即电流镜包括第一支路以及第二支路,第二支路中的mos管的漏极通过选通电路1110连接至多个忆阻器单元,第一支路的电流为目标电流,电流镜用于将目标电流从第一支路复制到第二支路,以限制流过第二支路中目标忆阻器单元的最大电流为目标电流。

图13示出了本申请另一实施例的存储设备的示意图。图13所示的存储设备中与图12所示的存储设备中功能相同的采用相同的编号。下文结合图13重点介绍选通电路与限流电路的另一种连接方式。

图13所示的存储设备1300中限流电路1210包括电流镜。电流镜1210包括第一支路(又称输入支路)以及一个第二支路(又称输出支路),第二支路通过选通电路1110连接至多个忆阻器单元,每个忆阻器单元与选通电路之间的连接用bl1、bl2、……、bln表示。第一支路的mos管p1的栅极与第二支路中的mos管p2的栅极短接,根据电流镜的特性,分别流过多个第二支路的mos管的电流最大等于流过第一支路的mos管的电流。

选通电路1110,用于从第二支路连接的多个忆阻器单元中选择目标忆阻器单元;

电流镜的第一支路用于限制流过所述目标忆阻器单元的电流的最大值为目标电流。

在本申请实施例中,多个忆阻器单元可以共用电流镜中位于第二支路的mos管,有利于减少存储设备中的元件的数量。

上文结合图1至图13介绍了本申请实施例的存储设备,下文结合图14介绍本申请实施例的方法。需要说明的是,图14所示的方法可以由上文介绍的存储设备执行,执行过程基于的原理,以及参数的选择在上文中已经详细介绍,为了简洁,下文不再赘述。

图14是本申请实施例的存储设备的编程方法的示意性流程图。图14所示的方法可以由具有控制功能的设备执行,例如,可以是图9中的编程控制器电路910。图14所示的方法包括步骤1410至步骤1420。

1410,通过限流电路限制通过所述忆阻器的电流为目标电流,其中,所述目标电流根据所述忆阻器的目标电导以及所述晶体管的栅极电压来确定,所述目标电导用于指示待写入所述忆阻器的目标数据。

1420,在所述限流电路的配合下,通过写电路向所述忆阻器加载写电压以向所述忆阻器中写入所述目标数据。

可选地,作为一个实施例,所述目标电流i,所述写电压v,所述目标电导g以及所述晶体管的漏极电压vd满足公式

可选地,作为一个实施例,所述限流电路包括电流镜,所述电流镜包括并联的第一支路以及第二支路,所述第二支路与所述忆阻器单元相连,通过所述第一支路的电流为所述目标电流,所述电流镜用于将所述目标电流从所述第一支路复制到所述第二支路,以限制流过所述忆阻器单元的最大电流为所述目标电流。

可选地,作为一个实施例,所述限流电路为所述忆阻器单元提供多个电流,多个电流中不同的电流对应所述忆阻器单元不同的电导,所述多个电流包括所述目标电流。

可选地,作为一个实施例,所述多个电导中的第一电导gmax的电导值最大,所述写电压小于预设的第一写电压阈值vbmax,其中,所述第一写电压阈值vbmax满足公式imax表示将所述忆阻器单元的电导调制为所述第一电导gmax所需的电流。

可选地,作为一个实施例,所述多个电流对应的所述忆阻器单元的多个电导中的第二电导的电导值最大,第二写电压阈值满足公式表示将所述忆阻器单元的电导调制为所述第二电导所需的电流,若所述第二写电压阈值小于所述阻变式存储器的估计突变电压,则所述写电压为所述估计突变电压,所述估计突变电压高于所述忆阻器单元的真实突变电压。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1