一种用于Flash存储器的差分位线结构及其操作方法与流程

文档序号:11136068阅读:981来源:国知局
一种用于Flash存储器的差分位线结构及其操作方法与制造工艺

本发明涉及Flash存储器电路领域,具体为一种用于Flash存储器的差分位线结构及其操作方法。



背景技术:

Flash存储器是一种常见的非挥发性存储器,它的特点是即使停止供电,存储器中的数据仍然能够长久地保持。它被广泛应用于移动存储、手机、数码相机、掌上电脑等数字设备中。

Flash存储器的基本操作有读取(read)、编程(program)和擦除(erase)。Flash存储器的擦除和编程均是利用隧道效应使电子穿过浮栅与沟道之间的绝缘层,对浮栅进行充电(写入数据)或放电(擦除数据)。浮栅上电荷的多少会影响Flash存储单元的阈值电压。Flash存储器的读取通过区别选中的存储单元的导通电流的大小,识别出不同阈值电压,从而确定存储单元的状态——比如阈值低表示为‘1’,阈值高表示为‘0’。

由于每次擦除或编程操作对存储单元是有损害的,每个Flash存储单元能够承受的编程/擦除(P/E)循环次数是有限的。它是Flash存储器的关键性能指标之一,比如单层单元(SLC)NAND Flash的寿命一般不低于10万次。除了与生产工艺相关外,不同的控制方式也会对存储单元的寿命造成影响。不同于SLC的一个存储单元中只存储一个比特(bit),多层单元(MLC)NAND Flash需要在一个存储单元中存储多个bit,因此MLC的编程和擦除操作需要的电压更高、时间更长,而留给读取操作的余量反而更小。一般的MLC的擦写寿命一般只有1万次。

另外在对被选中的存储单元进行擦除或者编程操作时,其他非选中的存储单元,尤其是与之相邻的存储单元,会受到干扰(一定程度的弱擦除或者编程)。并且累积到一定程度后,被干扰的单元所保存的数据会损坏。一般地操作所需要的电压越高、时间越长,它造成的干扰也越大。

一般的Flash存储器的读取操作首先对位线(BL)进行充电,然后通过选中的存储单元对BL进行放电。放电一段时间后,所选中的存储单元的阈值越低,则其放电电流(Icell)越大,BL的电压就越低。最后通过电压比较电路将BL上的电压与参考电压(Vref)做比较,将BL电压的高低转化为数字信号1和0从而完成了存储单元的读取。

采用这种方法的缺点是:1.读操作时由于代表数据1和0的BL电压和参考电压之间需要一定的余量,需要等待较长的位线放电时间。2.编程操作时为了让被编程的存储单元的阈值更高一点,需要用到的电压会更高时间更长,从而造成更大的干扰,使得整个存储器的寿命下降。



技术实现要素:

针对现有技术中存在的问题,本发明提供一种用于Flash存储器的差分位线结构及其操作方法,读取可靠,编程操作电压低,存储单元使用寿命长。

本发明是通过以下技术方案来实现:

一种用于Flash存储器的差分位线结构,包括一对差分位线和一个数据缓冲电路;一对差分位线包括一端分别连接数据缓冲电路的第一位线BL0和第二位线BL1;数据缓冲电路的输出端分别连接输出数据线DQ和输出反数据线DQB;第一位线BL0的另一端连接第一个存储单元Cell0,第二位线BL1的另一端连接第二个存储单元Cell1;第一个存储单元Cell0和第二个存储单元Cell1的阈值不同,且共同表示1比特信息;当第一个存储单元Cell0的阈值高,第二个存储单元Cell1的阈值低时,表示数据0,反之表示数据1;或者当第一个存储单元Cell0的阈值低,第二个存储单元Cell1阈值高时,表示数据0;反之,表示数据1。

优选的,所述的数据缓冲电路包括一个差分输入的灵敏放大器SA,以及分别通过第一数据节点S0和第二数据节点S1连接在灵敏放大器SA两个输入端的第一电压比较器VC0和第二电压比较器VC1;第一电压比较器VC0和第二电压比较器VC1分别与第一位线BL0和第二位线BL1连接;

当输入数据时灵敏放大器用于输入数据的锁存;

当读取数据时灵敏放大器用于将一对差分位线上由于阈值不同造成的电压差进行放大;

当编程或擦除验证时电压比较器对相应输入位线的电压和参考电压Vref的高低进行比较,并将结果输出至对应的数据节点。

进一步,第一电压比较器VC0和第二电压比较器VC1均包括三个比较晶体管;

第一比较晶体管由一组位线选择信号控制连接对应的位线和位线电源VBLCTRL;

第二比较晶体管由一组比较使能信号控制连接对应的位线和数据节点;比较使能信号为高电平,其电压值为Vref+Vtn,其中,Vtn是第二比较晶体管的阈值电压;

第三比较晶体管由一组数据节点充电信号控制连接对应的数据节点和工作电压VDD。

进一步,第一数据节点S0和第二数据节点S1分别经电容接地。

进一步,灵敏放大器SA包括两个带有使能端的反相器和四个晶体管;

第一反相器的输入端连接至输入反数据节点DB,使能信号端连接至第一使能信号LEN,输出端连接至输入数据节点D;

第二反相器的输入端连接至输入数据节点D,使能信号端连接至第二使能信号LENX,输出端连接至输入反数据节点DB;

第一晶体管由第一开关信号LAT0控制连接第一数据节点S0和输入反数据节点DB;

第二晶体管由第二开关信号LAT1控制连接第二数据节点S1和输入数据节点D;

第三晶体管由选中信号SEL控制连接输入反数据节点DB和输出反数据线DQB;

第四晶体管由选中信号SEL控制连接输入数据节点D和输出数据线DQ。

一种用于Flash存储器的差分位线结构的操作方法,基于本发明所述的一种用于Flash存储器的差分位线结构,包括,

通过一对存储单元在一对差分位线上建立电压差,然后通过灵敏放大器将数据读出的读取操作步骤;

根据输入数据的不同,作为一对的第一个存储单元Cell0和第二个存储单元Cell1中有且只有一个会被编程的编程操作步骤。

优选的,还包括使用电压比较器对一对存储单元中的第一个存储单元Cell0和第二个存储单元Cell1独立进行验证的编程验证操作步骤;当所有的存储单元都通过时,编程操作成功。

优选的,读取操作的具体步骤如下:

步骤A,将一组位线选择信号的电压置为0,一组比较使能信号的点电压置为高电压Vpre+Vtn,一组数据节点充电信号的电压置为电源电压VCC;通过电压比较器将位线BL0和BL1充电至Vpre,即电源电压VCC;

步骤B,将一组比较使能信号的电压置为0,将位线和对应的数据节点断开,位线通过对应的存储单元开始放电;同时通过升高一组数据节点充电信号、以及第一开关信号LAT0和第二开关信号LAT1的电压,将数据节点和输入数据节点D、输入反数据节点DB充电至工作电压VDD;

由于擦除状态的存储单元所连接位线的电压下降的比编程状态的存储单元所连接位线的电压更快,经过一段时间后一对差分位线上将累积到满足灵敏放大器识别的电压差ΔVbl;

步骤C,将一组比较使能信号置为高电平VCC将位线和灵敏放大器SA连接起来,并将灵敏放大器SA的第一、二使能信号LEN、LENX置为有效的高电平,灵敏放大器SA开始工作将电压差ΔVbl放大,并将结果锁存在灵敏放大器SA中;

步骤D,当第一个存储单元Cell0的阈值比第二个存储单元Cell1高,则第一位线BL0电压比第二位线BL1电压高,输出结果为0,反之则结果为1;输出数据时选中信号SEL为高,传输门打开,数据由输入数据节点D和输入反数据节点DB传输至输出数据线DQ和输出反数据线DQB;选中信号SEL为低,输入数据结束,数据锁存在灵敏放大器SA中,输入数据节点D和输入反数据节点DB中的信号互为反信号。

进一步,编程操作的具体步骤如下:

存储单元编程时,一组比较使能信号、以及第一开关信号LAT0和第二开关信号LAT1均为高,灵敏放大器SA上锁存的输入数据节点D和输入反数据节点DB分别连接至差分的第二位线BL1和第一位线BL0;

当输入数据为1时,第一位线BL0为低电平则第一个存储单元Cell0将被编程,第二位线BL1为高电平则第二个存储单元Cell1为禁止编程;相反,第一位线BL0为高电平则第一个存储单元Cell0为禁止编程,第二位线BL1为低电平则Cell1将被编程。

与现有技术相比,本发明具有以下有益的技术效果:

1.Flash的读操作更快更可靠。本发明通过采用差分位线结构一方面可以有效的抵消周围环境的干扰,从而提高读操作的可靠性增加Flash存储器的寿命,另一方面只需要较小的位线电压差就能进行放大,从而减少等待位线放电的时间提高Flash存储单元的读取速度。

2.Flash的编程操作更快电压更低。相比一般的Flash,本发明由于读操作对存储单元的阈值的要求降低,因此相应的编程操作所采用的电压以及需要的时间都会有所下降。

3.Flash存储单元的寿命更长。本发明较低电压和较短时间的编程操作能够减小对存储单元的干扰,并且即使有干扰,通过差分位线结构及其配合的电压比较器和灵敏放大器,也可以抵消一部分。

附图说明

图1是现有技术的电路原理图。

图2是现有技术的波形示意图。

图3是本发明实例中所述差分位线结构的电路原理图。

图4是本发明实例中所述操作方法中读操作的波形示意图。

具体实施方式

下面结合具体的实施例对本发明做进一步的详细说明,所述是对本发明的解释而不是限定。

Flash存储单元根据阈值的高低可以区分出多个状态,一般地,擦除状态的存储单元的阈值较低,而编程状态的存储单元的阈值较高。

本发明使用2个存储单元表示1比特的信息:在编程操作时,在一对存储单元中选定一个进行编程使其阈值电压升高,而另外一个禁止编程保持低阈值;在读取操作时,通过一对差分位线将这一对具有不同阈值的存储单元所存储的信息读取出来。擦除操作和一般的Flash存储器没有区别。

本发明一种用于Flash存储器的差分位线结构,使用2个不同阈值的存储单元(Cell0和Cell1)来表示1比特的信息,电路包括一对差分位线BL0、BL1和一个数据缓冲电路Data Buffer。第一位线BL0连接至第一个存储单元Cell0,第二位线BL1连接至第二个存储单元Cell1。

具体的如图3所示,包括一对差分位线BL0、BL1和一个数据缓冲电路Data Buffer。第一位线BL0连接至第一个存储单元Cell0,第二位线BL1连接至第二个存储单元Cell1。我们可以规定用于存储同一比特信息的两个存储单元中:当Cell0为擦除状态,Cell1为编程状态时,表示数据1;当Cell0为编程状态,Cell1为擦除状态时,表示数据0。当然数据0、1的规定也可以反过来。

每个Data Buffer中包括两个电压比较器VC0、VC1和一个灵敏放大器SA。

其中第一电压比较器VC0连接至第一位线BL0和第一数据节点S0,VC0的控制信号包括BL_SEL0、VLOW0和VPRE0;第二电压比较器VC1连接至第二位线BL1和第二数据节点S1,VC1的控制信号包括BL_SEL1、VLOW1和VPRE1;SA的数据输入端连接至S0和S1,数据输出端连接至DQ和DQB,SA的控制信号包括LAT0、LAT1、LEN、LENX和SEL。

电压比较器对输入位线的电压和参考电压Vref的高低进行比较,并将结果输出至数据节点。在每个电压比较器中,第一比较晶体管由一组位线选择信号(BL_SEL0和BL_SEL1)控制连接对应的位线(BL0和BL1)和位线电源VBLCTRL;第二比较晶体管由一组比较使能信号(VLOW0和VLOW1)控制连接对应的位线和数据节点(S0和S1);比较使能信号VLOW0和VLOW1为高电平,其电压值为Vref+Vtn,其中Vtn是第二比较晶体管的阈值电压。数据节点S0和S1上分别连接有电容;第三比较晶体管由一组数据节点充电信号(VPRE0和VPRE1)控制连接对应的数据节点和工作电压VDD。

灵敏放大器SA一方面可以将一对差分位线上的电压差放大,另一方面能够在放大结束后将结果数据保持,具有数据锁存器的功能。在SA中,第一反相器的输入连接至DB,使能信号连接至LEN,输出连接至D;第二反相器的输入连接至D,使能信号连接至LENX,输出连接至DB;第一晶体管由开关信号LAT0控制连接数据节点S0和DB;第二晶体管由开关信号LAT1控制连接数据节点S1和D;第三晶体管由选中信号SEL控制连接DB和数据输出DQB;第四晶体管由选中信号SEL控制连接D和数据输出DQ。

基于以上所述电路,采用一种用于Flash存储器的差分位线结构的操作方法包括以下:

一、读取操作。首先BL_SEL0和BL_SEL1电压为0,VLOW0和VLOW1为高电压Vpre+Vtn,VPRE0和VPRE1为电源电压VCC,从而可以通过电压比较器将位线BL0和BL1充电至Vpre。然后VLOW0和VLOW1为0将BL和数据节点断开。位线通过存储单元开始放电。同时通过升高VPRE0、VPRE1和SA的开关信号LAT0、LAT1的电压将数据节点S0、S1和SA的内部节点D、DB充电至工作电压VDD。由于擦除状态的存储单元所连接的BL的电压下降的比编程状态的存储单元所连接的BL的电压更快。经过一段时间后差分位线BL0和BL1上将累积一定的电压差ΔVbl。最后将VLOW0和VLOW1置为高电平VCC将位线和SA连接起来,并将SA的使能信号LEN、LENX置为有效的高电平,灵敏放大器开始工作将电压差放大,并将结果锁存在SA中。如果Cell0的阈值比Cell1高,则BL0电压比BL1电压高,输出结果为0,反之则结果为1。输出数据时选中信号SEL为高,传输门打开,数据由D、DB传输至数据线DQ、DQB。

二、编程操作。一般地,Flash存储器在编程操作时,存储单元将被编程或是禁止编程(即保持擦除状态)是由所连接的位线的电压决定的,而位线的电压则由输入数据决定。输入数据时,SA的使能信号LEN、LENX置为有效的高电平,SA作为数据锁存器使用。选中信号SEL为高,传输门打开,数据由数据线DQ、DQB输入至D、DB。选中信号SEL为低,输入数据结束,数据锁存在SA中,并且D和DB互为反信号。若输入数据为1,则D为1,DB为0;若输入数据为0,则D为0,DB为1。存储单元编程时,VLOW0、WLOW1和LAT0、LAT1都为高,SA上锁存的数据D、DB分别连接至差分位线的BL1和BL0。因此当输入数据为1时,BL0为低电平则Cell0将被编程,BL1为高电平则Cell1为禁止编程。相反,BL0为高电平则Cell0为禁止编程,BL1为低电平则Cell1将被编程。

编程操作中一般需要做编程验证(Program Verify),以判断编程操作是否成功。虽然本发明中每个比特使用了两个存储单元,但是编程验证时这两个存储单元是独立进行验证的。由于有两个独立的电压比较器VC0、VC1,因此单独每一个单元的编程验证和一般Flash的编程验证是一样的,使用VC0对BL0连接的存储单元进行验证,使用VC1对BL1连接的存储单元进行验证。最终只有当所有的存储单元都通过验证,编程操作才算成功,否则即为失败。

三、擦除操作。擦除操作时需要将所有的存储单元都擦除,这和一般的Flash是一样的。同样的还有擦除验证(Erase Verify),使用两个独立的电压比较器VC0、VC1对所有的存储单元进行验证,只有当所有的存储单元都通过验证,擦除操作才算成功,否则即为失败。

参见图4,图4是本发明读操作的波形示意图,表示的读数据0。首先位线BL0和BL1充电至Vpre。从T0时刻开始,存储单元开始对位线进行放电。由于处于编程状态的Cell0的阈值高于处于擦除状态的Cell1的阈值,因此BL0的放电速度小于BL1的放电速度。经过一段时间,在T1’时刻,两个差分位线之间已经具有电压差ΔVbl,SA开始工作。SA的放大结果:D为0,DB为1。在T2’时刻,SA的数据传输门打开,数据输出至数据线DQ,DQB。

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