编程结果检测电路、检测方法、快闪存储器及编程方法与流程

文档序号:20268356发布日期:2020-04-03 18:41阅读:186来源:国知局
编程结果检测电路、检测方法、快闪存储器及编程方法与流程

本发明属于快闪存储器编程技术领域,尤其涉及一种编程结果检测电路、检测方法、快闪存储器及编程方法。



背景技术:

快闪存储器(可简称为闪存)作为一种“非易失性存储器”,在各种电子系统及日常生活中得到越来越广泛的应用,如存储卡、手机、智能电视、固态硬盘等。

但是,随着闪存的不断发展,闪存本身存在的缺陷变得越来越明显,比如读写速度。目前,快闪存储器的数据写入(编程)方法写数据的速度太慢,效率较低,导致快闪存储器无法应用在一些存储要求较高领域的应用(如实时高清存储领域等),进而导致快闪存储器的应用领域及发展受到大幅限制。



技术实现要素:

针对现有技术存在的问题,本发明实施例提供了一种编程结果检测电路、检测方法、快闪存储器及编程方法,用于解决现有技术中由于快闪存储器的数据写入速度太慢,导致快闪存储器不能满足存储要求较高的应用领域,进而导致快闪存储器的应用领域及发展受到限制的技术问题。

本发明实施例提供一种编程结果检测电路,包括:偏置电路、参考电流生成电路、检测电流生成电路、第一开关电路、第二开关电路、跨阻放大器、比较器及锁存器;其中,

所述偏置电路,用于为所述参考电流生成电路、所述检测电流生成电路、所述跨阻放大器提供偏置电压;

所述参考电流生成电路,用于根据纠错单元的最大纠错数量生成参考电流;

所述检测电流生成电路,用于根据编程失败的单元的数量生成检测电流;

所述第一开关电路,用于在编程时隔离所述参考电流生成电路和所述跨阻放大器;

所述第二开关电路,用于在编程时隔离所述检测电流生成电路和所述跨阻放大器;

所述跨阻放大器,用于将所述参考电流转换为参考电压,将检测电流转换为检测电压;

所述比较器,用于对所述参考电压及所述检测电压进行比较,输出第一比较结果,所述第一比较结果用于表征所述编程失败的单元数量是否超出纠错单元的最大纠错数量;

锁存器,用于对所述第一比较结果进行存储。

上述方案中,所述偏置电路包括:第一pmos管、第二pmos管、第一nmos管、第二nmos管、第三nmos管、第四nmos管、第一电阻、第二电阻及电流调节电路;其中,

所述第一电阻的一端与所述第三nmos管的漏极、所述第四nmos管的栅极相连,所述第一电阻的另一端用于接收电源电压;

所述第四nmos管的漏极与所述第二pmos管的漏极、所述第二pmos管的栅极、所述第一pmos管的栅极以及所述第二nmos管的漏极相连,所述第四nmos管的源极、所述第三nmos管的源极、所述第一nmos管的源极以及所述第二nmos管的源极接地;

所述第二pmos管的源极用于接收所述电源电压;

所述第一pmos管的漏极与所述第一nmos管的漏极、所述第一nmos管的栅极、所述第二nmos管的栅极以及所述第三nmos管的栅极相连并适于输出所述偏置电压,所述第一pmos管的源极与所述第二电阻的一端相连;

所述第二电阻的另一端与所述电流调节电路相连;

所述电流调节电路用于调节偏置电流的大小。

上述方案中,所述电流调节电路包括:第三pmos管、第四pmos管、第五pmos管、第三电阻、第四电阻、第五电阻、第一反相器、第二反相器及第三反相器;其中,

所述第二电阻的另一端与所述第五电阻的一端及所述第三pmos管的漏极相连;

所述第五电阻的另一端与所述第四电阻的一端、所述第三pmos管的源极及所述第四pmos管的漏极相连;

所述第三pmos管的栅极与所述第一反相器的输出端相连;

所述第四电阻的另一端与所述第三电阻的一端、所述第四pmos管的源极及所述第五pmos管的漏极相连;

所述第四pmos管的栅极与所述第二反相器的输出端相连;

所述第三电阻的另一端与所述第五pmos管的源极相连并适于接收所述电源电压,所述第五pmos管的栅极与所述第三反相器的输出端相连;

所述第一反相器的输入端连接所述第二反相器的输入端及所述第三反相器的输入端并适于接收预设的第一控制信号,所述电流调节电路用于根据第一控制信号调节所述偏置电流的大小。

上述方案中,所述参考电流生成电路包括:k+2个nmos偏置管及k+2个nmos使能管,所述k+2个nmos偏置管包括:偏置n管及k+1个偏置调节n管;k+2个nmos使能管包括:使能n管及k+1个偏置使能n管,k为整数;

所述k+2个nmos偏置管的栅极用于接收所述偏置电压;

所述k+2个nmos偏置管的源极接地;

所述使能n管的栅极用于接收电源电压,所述k+1个偏置使能n管的栅极分别接收对应的第二控制信号,每个nmos使能管的源极对应连接一个nmos偏置管的漏极,所述k+2个nmos使能管的漏极相连并用于输出所述参考电流。

上述方案中,所述检测电流生成电路包括:m个检测单元;每个所述检测单元均包括:第五nmos管、第六nmos管、第七nmos管、第四反相器及第五反相器;其中,

所述第五nmos管的源极接地,所述第五nmos管的栅极用于接收所述偏置电压,所述第五nmos管的漏极与所述第六nmos管的源极相连;

所述第六nmos管的栅极与所述第四反相器的输入端及所述第五反相器的输出端相连,所述第六nmos管的漏极与所述第七nmos管的源极相连;

所述第四反相器的输出端与所述第五反相器的输入端相连,所述第四反相器用于输出所述页缓存器中读取的数据及编程后的数据之间的第二比较结果;所述第五反相器用于将所述第二比较结果转换为电流信号;

m个所述第七nmos管的漏极相连并用于输出所述检测电流。

上述方案中,m的取值与所述页缓存器中待编程单元的数量一致。

上述方案中,所述第五nmos管的宽长比与所述第一nmos管的宽长比一致。

上述方案中,所述跨阻放大器包括:第八pmos管,第九pmos管,第十pmos管,第十一pmos管,第十二pmos管,第十三pmos管,第十四pmos管,第十五pmos管,第十一nmos管,第十二nmos管,第十三nmos管,第十四nmos管,第十五nmos管,第十六nmos管,第六电阻,第七电阻及偏置电流生成电路;其中,

所述第八pmos管的漏极与所述第九pmos管的源极相连并用于接收所述检测电流,所述第八pmos管的栅极、所述第十pmos管的栅极、所述第十二pmos管的栅极及所述第十四pmos管的栅极与所述第六电阻的一端相连;

所述第八pmos管的源极、所述第十pmos管的源极、所述第十二pmos管的源极及所述第十四pmos管的源极用于接收电源电压;

所述第九pmos管的栅极、所述第十一pmos管的栅极、所述第十三pmos管的栅极及第十五pmos管的栅极与所述第六电阻的一端相连,所述第六电阻r6的另一端与所述偏置电流生成电路的输出端相连;所述第九pmos管的漏极与所述第十一nmos管的漏极相连并用于输出所述检测电压;

所述偏置电流生成电路用于为跨阻放大器提供参考偏置电流;

所述第十一pmos管的漏极与所述第十三nmos管的漏极相连并用于输出参考电压;

所述第十一nmos管的栅极、所述第十三nmos管的栅极及所述第十五nmos管的栅极与第七电阻的一端相连;

所述第十二nmos管的栅极、所述第十四nmos管的栅极及所述第十六nmos管的栅极与第七电阻的另一端相连;

所述第十一nmos管的源极与所述第十二nmos管的漏极相连,所述第十三nmos管的源极与所述第十四nmos管的漏极相连,所述第十五nmos管的源极与所述第十六nmos管的漏极相连;

所述第十二nmos管的源极、所述第十四nmos管的源极及所述第十六nmos管的源极接地。

上述方案中,所述偏置电流生成电路包括:n+2个nmos偏置管及n+2个nmos使能管,所述n+2个nmos偏置管包括:偏置n管及n+1个偏置调节n管;n+2个nmos使能管包括:使能n管及n+1个偏置使能n管,n为整数;

所述n+2个nmos偏置管的栅极用于接收所述偏置电压;

所述n+2个nmos偏置管的源极接地;

所述使能n管的栅极用于接收电源电压,所述n+1个偏置使能n管的栅极分别接收对应的第三控制信号,每个nmos使能管的源极对应连接一个nmos偏置管的漏极,所述n+2个nmos使能管的漏极相连并用于输出所述参考偏置电流。

本发明实施例提供一种快闪存储器,包括下载电路、编程电路以及权利要求上述一项所述的编程结果检测电路;

所述下载电路用于将当前页对应的待编程数据下载到页缓存器中,所述当前页包括多个待编程单元;

所述编程电路用于根据预设的编程电压,对所述当前页进行编程,以将所述页缓存数据中的待编程数据写入所述当前页中;

所述检测电路用于在对所述当前页编程结束时,检测编程失败的单元数量是否超出纠错单元的最大纠错数量,并在所述编程失败的单元数量未超出纠错单元的最大纠错数量时,确定对所述当前页编程成功。

本发明实施例还提供一种编程结果检测方法,包括:

对当前页编程结束后,检测编程失败的单元数量是否超出纠错单元的最大纠错数量;

若所述编程失败的单元数量未超出纠错单元的最大纠错数量,则确定对所述当前页编程成功。

本发明实施例还提供一种闪存编程方法,应用在快闪存储器中,所述快闪存储器包括多个页,所述方法包括:

将当前页对应的待编程数据下载到页缓存器中,所述当前页包括多个待编程单元;

根据预设的编程电压,对所述当前页进行编程,以将所述页缓存数据中的待编程数据写入所述当前页中;

采用上述的编程结果检测方法对所述当前页的编程结果进行检测。

本发明实施例提供了一种编程结果检测电路、检测方法、快闪存储器及编程方法,编程结果检测电路包括:偏置电路、参考电流生成电路、检测电流生成电路、第一开关电路、第二开关电路、跨阻放大器、比较器及锁存器;其中,所述偏置电路,用于为所述参考电流生成电路、所述检测电流生成电路、所述跨阻放大器提供偏置电压;所述参考电流生成电路,用于根据纠错单元的最大纠错数量生成参考电流;所述检测电流生成电路,用于根据编程失败的单元的数量生成检测电流;所述第一开关电路,用于在编程时隔离所述参考电流生成电路和所述跨阻放大器;所述第二开关电路,用于在编程时隔离所述检测电流生成电路和所述跨阻放大器;所述跨阻放大器,用于将所述参考电流转换为参考电压,将检测电流转换为检测电压;所述比较器,用于对所述参考电压及所述检测电压进行比较,输出第一比较结果,所述第一比较结果用于表征所述编程失败的单元数量是否超出纠错单元的最大纠错数量;锁存器,用于对所述第一比较结果进行存储;如此,在对每页编程结束时,检测电路判断编程失败的单元数量是否超出纠错单元的最大纠错数量,如果未超出最大纠错数量,并且此时还未达到最大预设的最大编程次数时,会直接结束对当前页的编程;相比现有技术中需要将预定的编程次数全部执行完毕后才可以确定编程失败的单元的数量,明显降低了耗时;并且本申请的方法相当于是在每个页缓存器中直接判断编程失败的单元数量是否超出纠错单元的最大纠错数量,相比现有技术中需要将编程失败的单元数量先全部读取到页缓存器,再读取到外部存储器(且读取到外部存储器每次最多只能读取32个字节),然后再进行判断的这种方法,可以降低确定过程的繁琐度,从而进一步降低耗时,提高编程速度,提高闪存的整体性能,进而使得快闪存储器可以满足存储要求较高的应用领域。

附图说明

图1为本发明实施例一提供的快闪存储器的检测电路结构示意图;

图2为本发明实施例一提供的偏置电路结构示意图;

图3为本发明实施例一提供的参考电流生成电路的结构示意图;

图4为本发明实施例一提供的检测电流生成电路结构示意图;

图5为本发明实施例一提供的每个检测单元中比较电路的结构示意图;

图6为本发明实施例一提供的跨阻放大器的电路结构示意图;

图7为本发明实施例一提供的比较器的电路结构示意图;

图8为本发明实施例二提供的快闪存储器的整体结构示意图;

图9为本发明实施例三提供的编程结果检测方法流程示意图;

图10为本发明实施例四提供的闪存编程方法流程示意图。

具体实施方式

为了解决现有技术中由于快闪存储器的数据写入速度太慢,导致快闪存储器不能满足存储要求较高的应用领域,进而导致快闪存储器的应用领域及发展受到限制的技术问题,本发明实施例提供了一种编程结果检测电路、检测方法、快闪存储器及编程方法,编程结果检测电路包括:偏置电路、参考电流生成电路、检测电流生成电路、第一开关电路、第二开关电路、跨阻放大器、比较器及锁存器;其中,所述偏置电路,用于为所述参考电流生成电路、所述检测电流生成电路、所述跨阻放大器提供偏置电压;所述参考电流生成电路,用于根据纠错单元的最大纠错数量生成参考电流;所述检测电流生成电路,用于根据编程失败的单元的数量生成检测电流;所述第一开关电路,用于在编程时隔离所述参考电流生成电路和所述跨阻放大器;所述第二开关电路,用于在编程时隔离所述检测电流生成电路和所述跨阻放大器;所述跨阻放大器,用于将所述参考电流转换为参考电压,将检测电流转换为检测电压;所述比较器,用于对所述参考电压及所述检测电压进行比较,输出第一比较结果,所述比较结果用于表征所述编程失败的单元数量是否超出纠错单元的最大纠错数量;锁存器,用于对所述第一比较结果进行存储。

下面通过附图及具体实施例对本发明的技术方案做进一步的详细说明。

实施例一

本实施例提供一种编程结果检测电路,如图1所示,编程结果检测电路包括:偏置电路11,参考电流生成电路12、检测电流生成电路13、第一开关电路sw1、第二开关电路sw2、跨阻放大器14、比较器15及锁存器16;其中,

偏置电路11的输出端与参考电流生成电路12的输入端、跨阻放大器14的输入端、检测电流生成电路13的输入端及比较器15的输入端相连,用于为参考电流生成电路12、检测电流生成电路13、跨阻放大器14及比较器15提供偏置电压。

参考电流生成电路12用于根据纠错单元的最大纠错数量生成参考电流ir;检测电流生成电路13用于在对当前页编程结束时,获取编程失败的单元的数量,根据所述编程失败的单元数量及对应的输出电流生成检测电流id。

跨阻放大器14用于将参考电流生成参考电压vr,将检测电流生成检测电压vd;比较器15用于对参考电压vr及检测电压vd进行比较,输出第一比较结果vc,根据第一比较结果vc确定所述编程失败的单元数量是否超出纠错单元的最大纠错数量;锁存器16用于对所述第一比较结果vc进行存储。

作为一种可选的实施例,参考图2,偏置电路11包括:第一pmos管p1、第二pmos管p2、第一nmos管n1、第二nmos管n2、第三nmos管n3、第四nmos管n4、第一电阻r1、第二电阻r2及电流调节电路21。电流调节电路21用于调节偏置电流iout的大小;电流调节电路21包括:第三pmos管p3、第四pmos管p4、第五pmos管p5、第三电阻r3、第四电阻r4、第五电阻r5、第一反相器v1、第二反相器v2及第三反相器v3。

这里,所述第一电阻r1的一端与所述第三nmos管n3的漏极、所述第四nmos管n4的栅极相连,所述第一电阻r1的另一端用于接收电源电压;

所述第四nmos管n4的漏极与所述第二pmos管p2的漏极、所述第二pmos管p2的栅极、所述第一pmos管p1的栅极以及所述第二nmos管n2的漏极相连;所述第四nmos管n4的源极、所述第三nmos管n3的源极、所述第一nmos管n1的源极以及所述第二nmos管n2的源极接地;

所述第二pmos管p2的源极用于接收所述电源电压;

所述第一pmos管p1的漏极与所述第一nmos管n1的漏极、所述第一nmos管n1的栅极、所述第二nmos管n2的栅极以及所述第三nmos管n3的栅极相连并适于输出所述偏置电压vb,所述第一pmos管p1的源极与所述第二电阻r2的一端相连;

所述第二电阻r2的另一端与电流调节电路21相连,具体为:第二电阻r2的另一端与所述第五电阻r5的一端及所述第三pmos管p3的漏极相连;

所述第五电阻r5的另一端与所述第四电阻r4的一端、所述第三pmos管p3的源极及所述第四pmos管p4的漏极相连;

所述第三pmos管p3的栅极与所述第一反相器v1的输出端相连;

所述第四电阻r4的另一端与所述第三电阻r3的一端、所述第四pmos管p4的源极及所述第五pmos管p5的漏极相连;

所述第四pmos管p4的栅极与所述第二反相器v2的输出端相连;

所述第三电阻r3的另一端与所述第五pmos管p5的源极相连并适于接收所述电源电压,所述第五pmos管p5的栅极与所述第三反相器v3的输出端相连。

这里,电流调节电路21在调节偏置电流iout的大小时,所述第一反相器v1的输入端连接所述第二反相器v2的输入端及所述第三反相器v3的输入端并适于接收预设的第一控制信号trim_c,所述控制信号trim_c用于控制p3~p5的开启个数来确定接入偏置电路11的电阻个数,进而控制串联至偏置电路11的电阻阻值,来实现对偏置电流iout大小的调节。

其中,p1、p2、n1、n2与r2~r5组成偏置电路11的主体,n1和n2组成第一电流镜,n1和n2的尺寸一致,因此第一电流镜可以确保n1和n2两路电流相同,p1和p2组成第二电流镜,p1和p2的长度一致,宽度比为n;因此p1是p2的n倍,那么在p1和p2的源极处会产生一个电压差,该电压差除以偏置电路11的电阻阻值可以得到偏置电流iout,r2为主体电阻,r3~r5为微调电阻,从r3到r5的阻值是按倍数增加的。n3、n4和r1组成偏置电路11的启动电路。

偏置电路11产生的偏置电流iout可以根据公式(1)确定:

在公式(1)中,up为第二pmos管p2的空穴迁移率,cox为所述第二poms管p2的单位面积栅氧化层电容,为第二pmos管p2的宽长比,rs为第一电阻r1、第二电阻r2、第三电阻r3、第四电阻r4及第五电阻r5的电阻之和,所述n为第一pmos管p1与所第二pmos管p2的宽度比。

偏置电流将iout在n1处转化为偏置电压vb,偏置电压vb提供给检测电流生成电路22。

这里,因偏置电路11中的pmos管和nmos管均为关闭状态时,偏置电路依然会存在漏电电流,而漏电电流会影响偏置电流iout,为了避免漏电电流影响偏置电流iout,本实施例根据第一控制信号trim_c<q:0>来调节iout,q的取值标准是使得漏电电流小于0.5*iout。也即,trim信号可以理解为一种用于消除电路中各种偏差的控制调节信号。本实施例中,q的取值可以为2。

作为一种可选的实施例,参考图3,参考电流生成电路12包括:k+2个nmos偏置管及k+2个nmos使能管,所述k+2个nmos偏置管可以包括:偏置n管nr_b及k+1个偏置调节n管nr_0到nr_k,nr_0到nr_k可以为:第一偏置调节n管……第k+1偏置调节n管。

k+2个nmos使能管可以包括:使能n管nr_en_b及k+1个偏置使能n管nr_en_0到nr_en_k,nr_en_0到nr_en_k可以为:第一偏置使能n管……第k+1偏置使能n管。

这里,k+2个nmos偏置管的栅极分别与偏置电路11的输出端相连,用于接收偏置电压vb;k+2个nmos偏置管的源极接地。

使能n管nr_en_b的栅极用于接收电源电压vdd,k+1个偏置使能n管nr_en_0到nr_en_k的栅极分别接收对应的第二控制信号trim<k:0>,比如nr_en_0的控制信号为trim<0>,nr_en_k的控制信号为trim<k>。

每个nmos使能管的源极分别对应连接一个nmos偏置管的漏极,所述k+2个nmos使能管的漏极相连并用于输出参考电流ir。

nr_b偏置n管的尺寸为偏置电路11的第一nmos管n1的宽度的0.5倍,长度是相同的,因此电路开启时可以提供0.5*iout的电流。第一偏置调节n管nr_0的尺寸与n1的尺寸一致,开启时可以提供到1*iout的电流,第k+1偏置调节n管nr_k的宽度是n1的宽度的k倍,长度相同,开启时可以提供到k*iout的电流。这样,k+1个偏置使能管的栅极分别由对应的控制信号trim<k:0>控制。通过trim<k:0>的不同组合,参考电流生成电路12能够控制参考电流ir的值从(0.5*iout)到(2*2k*iout-0.5*iout)之间以步长iout进行变化。

这里,k值根据纠错单元的最大纠错数量确定。对应关系为:最大检测数量=(2*2k-1)。比如:当最大纠错数量为7时,k值为2,当最大纠错数量为15时,k值为3。

作为一种可选的实施例,参考图4,检测电流生成电路13包括:m个检测单元(分别为51、52……5m),每个检测单元均包括:第五nmos管ma、第六nmos管mb、第七nmos管mc、第四反相器v4及第五反相器v5。每个检测单元中还包括对应的比较电路。

这里,所述第五nmos管ma的源极接地,所述第五nmos管ma的栅极用于接收偏置电压,所述第五nmos管ma的漏极与所述第六nmos管mb的源极相连;所述第六nmos管mb的栅极与第四反相器v4的输入端及所述第五反相器v5的输出端相连,所述第六nmos管mb的漏极与所述第七nmos管mc的源极相连;所述第四反相器v4的输出端与所述第五反相器v5的输入端相连。m个所述第七nmos管mc的漏极相连并用于输出所述检测电流id。

第五nmos管ma、第六nmos管mb及第七nmos管mc均包括m个。第五nmos管ma为偏置管,所述第六nmos管mb为检测管,所述第七nmos管mc为使能管。第五nmos管、第六nmos管及第七nmos管均包括m个。

举例来说,第一个检测单元51中,第五nmos管为ma1,第六nmos管为mb1、第七nmos管为mc1;第二个检测单元52中,第五nmos管为ma2,第六nmos管为mb2、第七nmos管为mc2;以此类推,第5m个检测单元中,第五nmos管为mam,第六nmos管为mbm、第七nmos管为mcm。

其中,m的取值与所述页缓存器中待编程单元的数量一致,每个待编程单元中设置一个检测单元。第五nmos管ma1~mam的宽长比与偏置电路11中的第一nmos管n1的宽长比一致,因此,当某个待编程单元编程失败时,其输出的电流与偏置电流是相同的,为iout。

当待编程单元每次编程结束后,对应检测单元中的比较电路将对从页缓存器中读取的数据及编程后的数据(将页缓存器写入闪存中的数据)进行比较,获取第二比较结果,第四反相器v4用于输出所述页缓存器中读取的数据及编程后的数据之间的第二比较结果;所述第五反相器v5用于将所述第二比较结果转换为电流信号,最终将对所有待编程单元的检测结果进行线与求和,获取最终的检测电流id。其中,若从页缓存器中读取的数据及编程后的数据一致,则说明该单元编程成功,输出的结果为“1”,输出的电流为0;若从页缓存器中读取的数据及编程后的数据不一致,则说明该单元编程失败,输出的结果为“0”,输出的电流为iout。

这里,参考图5,比较电路包括:第八nmos管m0、第九nmos管m1及第十nmos管m4;第六pmos管m2,第七pmos管m3;第六反相器v6及第七反相器v7;其中,

m0的源极接地,m0的漏极与m1的源极相连,m0的栅极用于接收使能信号。m1的栅极与v6的输出端、v7的输入端相连;v6和v7组成锁存器,用于保存页缓存器中向待编程单元待写入的数据;m1的漏极与m2的漏极相连。

m2的源极、m3的漏极及第五反相器v5的输入端相连,m2的栅极与m4的源极相连。

m3的栅极与使能信号ver_en的反向ver相连,m3的源极用于连接电源电压。

m4的栅极与页缓存的待编程单元相连,将读取到的编程后的数据存储在so中。m4的漏极与待编程单元的位线bitline相连,读出放大器(sa,senseamplifier)用于位线上的小信号进行识别并放大。

比较电路在工作时,若编程后的数据为0,则d_l=0,说明该待编程单元不需要编程。编程校验时,m1关闭,v5输入端处的信号ver被m3拉高。

若编程后的数据为1,则d_l=1,说明该待编程单元需要编程。编程校验时,若编程成功,读取的数据为1,m2关断,v5输入端处的信号为高电平,也即v4输出的结果为“1”,v5输出的电流为0;。若编程失败,读出的数据为0,m1和m2同时打开,v5输入端处的信号为低电平,也即v4输出的结果为“0”,v5输出的电流为iout。

继续参考图4,第一个检测单元为例,当对某个待编程单元编程成功后,第一个检测单元输出结果“1”,输出的电流为i1=0;第二个检测单元为例,当对某个待编程单元编程失败后,第二个检测单元会输出结果为“0”,输出的电流为i2=iout;以此类推,最终将所有检测单元输出的电流相加,即根据公式id=sum(i1:im)=x*iout生成检测电流id,其中,x为编程失败的单元数量,iout为所述编程失败的单元输出的电流。

作为一种可选的实施例,参考图6,跨阻放大器14包括:第八pmos管mp1,第九pmos管mp2,第十pmos管mp3,第十一pmos管mp4,第十二pmos管mp5,第十三pmos管mp6,第十四pmos管mp7,第十五pmos管mp8,第十一nmos管mn1,第十二nmos管mn2,第十三nmos管mn3,第十四nmos管mn4,第十五nmos管mn5,第十六nmos管mn6,第六电阻r6,第七电阻r7及偏置电流生成电路61。

这里,偏置电流生成电路61主要为跨阻放大器14提供一个参考偏置电流ib,为了使得跨阻放大器14输出的共模点在中间电平,该参考偏置电流ib与ir相同。

需要说明的是,电路61的结构与参考电流生成电路12的结构和尺寸完全相同,工作原理也完全相同。

具体地,所述偏置电流生成电路61包括:n+2个nmos偏置管及n+2个nmos使能管,所述n+2个nmos偏置管包括:偏置n管及n+1个偏置调节n管;n+2个nmos使能管包括:使能n管及n+1个偏置使能n管,n为整数;

所述n+2个nmos偏置管的栅极用于接收所述偏置电压;

所述n+2个nmos偏置管的源极接地;

所述使能n管的栅极用于接收电源电压,所述n+1个偏置使能n管的栅极分别接收对应的第三控制信号,每个nmos使能管的源极对应连接一个nmos偏置管的漏极,所述n+2个nmos使能管的漏极相连并用于输出所述参考偏置电流ib。

继续参考图6,使能n管为第十七nmos管mn7,n+1个偏置使能n管包括:第十九nmos管mn9至第二十一nmos管mn11,mn9和mn11之间存在n+1个nmos管。

偏置n管为第十八nmos管mn8,n+1个偏置调节n管包括:第二十nmos管mn10至第二十二nmos管mn12之前的nmos管,mn10和mn12之间还存在n+1个nmos管。

其中,mp1的漏极与mp2的源极相连并用于接收检测电流id;mp3的漏极与mp4的源极相连并用于接收参考电流ir;mp5的漏极与mp6的源极相连,mp7的漏极与mp8的源极相连;mp1的栅极、mp3的栅极、mp5的栅极及mp7的栅极与r6的一端相连,所述r6的另一端与偏置电流生成电路61的输出端相连;mp1的源极、mp3的源极、mp5的源极及mp7的源极用于接收电源电压。

mp2的栅极、mp4的栅极、mp6的栅极及mp8的栅极与r6的另一端相连;mp2的漏极与mn1的漏极相连并用于输出检测电压vd;mp4的漏极与mn3的漏极相连并用于输出端输出参考电压vr;mn1的栅极、mn3的栅极及mn5的栅极与r7的一端相连。

mn2的栅极、mn4的栅极及mn6的栅极与r7的另一端相连。mn1的源极与mn2的漏极相连,mn3的源极与mn4的漏极相连,mn5的源极与mn6的漏极相连,mn2的源极、mn4的源极及mn6的源极接地。

需要说明的是,mp1、mp3、mp5及mp7的长度相同,宽度比为2:2:1:1;mp2、mp4、mp6的长度相同,宽度比为1:1:1。

可以看出,跨阻放大器14中标记为62的部分采用的是套筒式的折叠共源共栅结构,折叠共源共栅的偏置电流等于ir。该结构能够快速地将参考电流ir转化为电压信号vr,将检测电流id转化为vd。

作为一种可选的实施例,参考图7,比较器15包括:第十六pmos管md1、第十七pmos管md2,第二十三nmos管mg1、第二十四nmos管mg2及第二十五nmos管mg3;其中,

md1的源极及md2的源极用于接收电源电压,md1的栅极与md2的栅极相连,md1的漏极与mg1的漏极相连;md1的栅极与跨阻放大器的第二输出端相连,用于接收vr。

md2的栅极与跨阻放大器14的第一输出端相连,用于接收vd,md2的漏极与mg2的漏极相连并用于输出第一比较结果。

mg1的源极、mg2的源极与mg3的漏极相连,mg3的源极接地,mg3的栅极用于接收偏置电压。

当参考电压vr大于检测电压vd时,比较器15输出的第一比较结果vc为“低”,可以用低电平标识,代表当前页中此时编程失败的单元数量未超出ecc纠错单元的最大纠错数量,因此可以视为编程成功,无需再执行预设的编程次数,提前结束对当前页的编程,提高编程效率。

当参考电压vr小于检测电压vd时,比较器15输出的第一比较结果vc为“高”,可以用高电平标识,代表此时编程失败的单元数量已经超出ecc纠错单元的最大纠错数量,因此可以视为编程失败,则判断当前编程的次数是否超出预设的编程次数,若超出,则舍弃编程后的当前页。

而当前编程的次数没有超出预设的编程次数,则调节当前电压,使得当前电压与预设的编程电压保持一致;对当前页进行再次编程。

这里,当比较器15输出第一比较结果后,锁存器16用于对第一比较结果进行存储。

基于同样的发明构思,本实施例还提供一种快闪存储器,详见实施例二。

实施例二

本实施例提供一种快闪存储器,如图8所示,快闪存储器包括:下载电路71、编程电路72及实施例以提供的检测电路73;其中,

一般来说,快闪存储器(可简称闪存)包括多个页,每页用来存储不同的数据,比如快闪存储的最大容量是256k,一页能存储的数据容量是2k,那么该快闪存储器就包括128页。

在闪存编程过程中,通常是对一整页同时进行编程。编程的方法是使用一个固定宽度和高度的电压脉冲作为编程电压,控制待编程单元的沟道中的电子在强电场作用下穿越到浮栅之上,使之在编程电压撤消后,待编程单元中的时钟存在一定电场,改变器件的开启电压,来存储数据。其中,穿越到浮栅中的电子数量决定了该存储单元的开启电压的高低,因此需要对电子数量进行严格控制,以避免数据出现错误。

在对每页的待编程单元进行编程之前,下载电路71需要将当前页对应的待编程数据下载到页缓存器中;这里,每页可以包括多个待编程单元(可简称单元)。

当待编程数据下载到页缓存器后,编程电路72用于根据预设的编程电压,对当前页进行编程,以将所述页缓存数据中的待编程数据写入当前页中。不难理解,编程的过程实质上就是向闪存中写数据的过程。

在对当前页编程结束时,检测电路73用于检测编程失败的单元数量;判断编程失败的单元数量是否超出纠错单元的最大纠错数量,并在编程失败的单元数量未超出纠错单元的最大纠错数量时,确定对当前页编程成功。这样只需得知编程失败的单元数量即可判断出当前页是否编程成功,耗时较少,因此可以提高编程速度。

这里,检测电路73的具体结构与实施例一提供的编程结果检测电路的结构完全相同,检测电路73包括:偏置电路11,参考电流生成电路12、检测电流生成电路13、第一开关电路sw1、第二开关电路sw2、跨阻放大器14、比较器15及锁存器16;其中,

偏置电路11的输出端与参考电流生成电路12的输入端、跨阻放大器14的输入端、检测电流生成电路13的输入端及比较器15的输入端相连,用于为参考电流生成电路12、检测电流生成电路13、跨阻放大器14及比较器15提供偏置电压vb。

参考电流生成电路12用于根据纠错单元的最大纠错数量生成参考电流ir;检测电流生成电路13用于在对当前页编程结束时,获取编程失败的单元的数量,根据所述编程失败的单元数量及对应的输出电流生成检测电流id。

跨阻放大器14用于将参考电流生成参考电压vr,将检测电流生成检测电压vd;比较器15用于对参考电压vr及检测电压vd进行比较,输出比较结果vc,根据比较结果vc确定所述编程失败的单元数量是否超出纠错单元的最大纠错数量;锁存器25用于对所述比较结果vc进行存储。

这里,偏置电路11,参考电流生成电路12、检测电流生成电路13、第一开关电路sw1、第二开关电路sw2、跨阻放大器14、比较器15及锁存器16的具体电路结构与实施例一所涉及的参考电流生成电路12、检测电流生成电路13、第一开关电路sw1、第二开关电路sw2、跨阻放大器14、比较器15及锁存器16的结构及功能完全相同,在此不再赘述。

基于同样的发明构思,本文还提供一种与实施例一对应的编程结果检测方法。

实施例三

相应于实施例一,本实施例还提供一种编程结果检测方法,应用在快闪存储器中,如图9所示,方法包括;

s810,对当前页编程结束后,检测编程失败的单元数量是否超出纠错单元的最大纠错数量;

本步骤中,在对当前页进行编程之前,需要将将当前页对应的待编程数据下载到页缓存器中。这里一般来说,快闪存储器(可简称闪存)包括多个页,每页用来存储不同的数据,比如快闪存储的最大容量是256k,一页能存储的数据容量是2k,那么该快闪存储器就包括128页。

在闪存编程过程中,通常是对一整页同时进行编程。编程的方法是使用一个固定宽度和高度的电压脉冲作为编程电压,控制待编程单元的沟道中的电子在强电场作用下穿越到浮栅之上,使之在编程电压撤消后,待编程单元中的时钟存在一定电场,改变器件的开启电压,来存储数据。其中,穿越到浮栅中的电子数量决定了该存储单元的开启电压的高低,因此需要对电子数量进行严格控制,以避免数据出现错误。

在对每页的待编程单元进行编程之前,需要将当前页对应的待编程数据下载到页缓存器中;这里,每页可以包括多个待编程单元(可简称单元)。

将当前页对应的待编程数据下载到页缓存器中后,然后根据预设的编程电压,对所述当前页进行编程,以将所述页缓存数据中的待编程数据写入所述当前页中。

s811,若所述编程失败的单元数量未超出纠错单元的最大纠错数量,则确定对所述当前页编程成功。

在对当前页编程结束时,利用编程结果检测电路检测编程失败的单元数量;判断编程失败的单元数量是否超出纠错单元的最大纠错数量,并在编程失败的单元数量未超出纠错单元的最大纠错数量时,确定对当前页编程成功。这样只需得知编程失败的单元数量即可判断出当前页是否编程成功,耗时较少,因此可以提高编程速度。

这里,编程结果检测电路的具体结构与实施例一提供的编程结果检测电路的结构完全相同,故而不再赘述。

基于同样的发明构思,本文还提供一种与实施例二对应的闪存编程方法。

实施例四

相应于实施例二,本实施例还提供一种闪存编程方法,应用在实施例二提供的快闪存储器中,快闪存储器包括多个页,如图10所示,方法包括:

s910,将当前页对应的待编程数据下载到页缓存器中;

一般来说,快闪存储器(可简称闪存)包括多个页,每页用来存储不同的数据,比如快闪存储的最大容量是256k,一页能存储的数据容量是2k,那么该快闪存储器就包括128页。

在闪存编程过程中,通常是对一整页同时进行编程。编程的方法是使用一个固定宽度和高度的电压脉冲作为编程电压,控制待编程单元的沟道中的电子在强电场作用下穿越到浮栅之上,使之在编程电压撤消后,待编程单元中的时钟存在一定电场,改变器件的开启电压,来存储数据。其中,穿越到浮栅中的电子数量决定了该存储单元的开启电压的高低,因此需要对电子数量进行严格控制,以避免数据出现错误。

在对每页的待编程单元进行编程之前,需要将当前页对应的待编程数据下载到页缓存器中;这里,每页可以包括多个待编程单元(可简称单元)。

s911,根据预设的编程电压,对所述当前页进行编程,以将所述页缓存数据中的待编程数据写入所述当前页中;

将当前页对应的待编程数据下载到页缓存器中后,然后根据预设的编程电压,对所述当前页进行编程,以将所述页缓存数据中的待编程数据写入所述当前页中。

s912,检测编程失败的单元数量是否超出纠错单元的最大纠错数量,并在所述编程失败的单元数量未超出纠错单元的最大纠错数量时,确定对所述当前页编程成功。

在对当前页编程结束时,利用检测电路检测编程失败的单元数量;判断编程失败的单元数量是否超出纠错单元的最大纠错数量,并在编程失败的单元数量未超出纠错单元的最大纠错数量时,确定对当前页编程成功。这样只需得知编程失败的单元数量即可判断出当前页是否编程成功,耗时较少,因此可以提高编程速度。

具体地,可参考图2,检测电路包括:偏置电路11,参考电流生成电路12、检测电流生成电路13、第一开关电路sw1、第二开关电路sw2、跨阻放大器14、比较器15及锁存器16;其中,

偏置电路11的输出端与参考电流生成电路12的输入端、跨阻放大器14的输入端、检测电流生成电路13的输入端及比较器15的输入端相连,用于为参考电流生成电路12、检测电流生成电路13、跨阻放大器14及比较器15提供偏置电压,为参考电流生成电路12及检测电流生成电路13提供偏置电流iout;

参考电流生成电路12用于根据纠错单元的最大纠错数量生成参考电流ir;检测电流生成电路13用于在对当前页编程结束时,获取编程失败的单元的数量,根据所述编程失败的单元数量及对应的输出电流生成检测电流id;其中,控制信号可以为trim信号。

跨阻放大器14用于将参考电流生成参考电压vr,将检测电流生成检测电压vd;比较器15用于对参考电压vr及检测电压vd进行比较,输出比较结果vc,根据第一比较结果vc确定所述编程失败的单元数量是否超出纠错单元的最大纠错数量;锁存器25用于对所述第一比较结果vc进行存储。

作为一种可选的实施例,参考图2,偏置电路11包括:第一pmos管p1、第二pmos管p2、第一nmos管n1、第二nmos管n2、第三nmos管n3、第四nmos管n4、第一电阻r1、第二电阻r2及电流调节电路21。电流调节电路21用于调节偏置电流iout的大小;电流调节电路21包括:第三pmos管p3、第四pmos管p4、第五pmos管p5、第三电阻r3、第四电阻r4、第五电阻r5、第一反相器v1、第二反相器v2及第三反相器v3。

这里,所述第一电阻r1的一端与所述第三nmos管n3的漏极、所述第四nmos管n4的栅极相连,所述第一电阻r1的另一端用于接收电源电压;

所述第四nmos管n4的漏极与所述第二pmos管p2的漏极、所述第二pmos管p2的栅极、所述第一pmos管p1的栅极以及所述第二nmos管n2的漏极相连;所述第四nmos管n4的源极、所述第三nmos管n3的源极、所述第一nmos管n1的源极以及所述第二nmos管n2的源极接地;

所述第二pmos管p2的源极用于接收所述电源电压;

所述第一pmos管p1的漏极与所述第一nmos管n1的漏极、所述第一nmos管n1的栅极、所述第二nmos管n2的栅极以及所述第三nmos管n3的栅极相连并适于输出所述偏置电压vb,所述第一pmos管p1的源极与所述第二电阻r2的一端相连;

所述第二电阻r2的另一端与与电流调节电路21相连,具体地,第二电阻r2的另一端所述第五电阻r5的一端及所述第三pmos管p3的漏极相连;

所述第五电阻r5的另一端与所述第四电阻r4的一端、所述第三pmos管p3的源极及所述第四pmos管p4的漏极相连;

所述第三pmos管p3的栅极与所述第一反相器v1的输出端相连;

所述第四电阻r4的另一端与所述第三电阻r3的一端、所述第四pmos管p4的源极及所述第五pmos管p5的漏极相连;

所述第四pmos管p4的栅极与所述第二反相器v2的输出端相连;

所述第三电阻r3的另一端与所述第五pmos管p5的源极相连并适于接收所述电源电压,所述第五pmos管p5的栅极与所述第三反相器v3的输出端相连。

这里,电流调节电路21在调节偏置电流iout的大小时,所述第一反相器v1的输入端连接所述第二反相器v2的输入端及所述第三反相器v3的输入端并适于接收预设的第一控制信号trim_c,所述控制信号trim_c用于控制p3~p5的开启个数来确定接入偏置电路11的电阻个数,进而控制串联至偏置电路11的电阻阻值,来实现对偏置电流iout大小的调节。

其中,p1、p2、n1、n2与r2~r5组成偏置电路11的主体,n1和n2组成第一电流镜,n1和n2的尺寸一致,因此第一电流镜可以确保n1和n2两路电流相同,p1和p2组成第二电流镜,p1和p2的长度一致,宽度比为n;因此p1是p2的n倍,那么在p1和p2的源极处会产生一个电压差,该电压差除以偏置电路11的电阻阻值可以得到偏置电流iout,r2为主体电阻,r3~r5为微调电阻,从r3到r5的阻值是按倍数增加的。n3、n4和r1组成偏置电路11的启动电路。

偏置电路11输出的偏置电流iout可以根据公式(1)确定:

在公式(1)中,up为第二pmos管p2的空穴迁移率,cox为所述第二poms管p2的单位面积栅氧化层电容,为第二pmos管p2的宽长比,rs为第一电阻r1、第二电阻r2、第三电阻r3、第四电阻r4及第五电阻r5的电阻之和,所述n为第一pmos管p1与所第二pmos管p2的宽度比。

偏置电流将iout在n1处转化为偏置电压vb,偏置电压vb提供给检测电流生成电路22。

这里,因偏置电路11中的pmos管和nmos管为关闭状态时,偏置电路依然会存在漏电电流,而漏电电流会影响偏置电流iout,为了避免漏电电流影响偏置电流iout,本实施例根据第一控制信号trim_cur<q:0>来调节iout,q的取值标准是使得漏电电流小于0.5*iout。本实施例中,q的取值可以为2。

作为一种可选的实施例,参考图3,参考电流生成电路12包括:k+2个nmos偏置管及k+2个nmos使能管,所述k+2个nmos偏置管可以包括:偏置n管nr_b及k+1个偏置调节n管nr_0到nr_k,nr_0到nr_k可以为:第一偏置调节n管……第k+1偏置调节n管。

k+2个nmos使能管可以包括:使能n管nr_en_b及k+1个偏置使能n管nr_en_0到nr_en_k,nr_en_0到nr_en_k可以为:第一偏置使能n管……第k+1偏置使能n管。

这里,k+2个nmos偏置管的栅极分别与偏置电路11的输出端相连,用于接收偏置电压;k+2个nmos偏置管的源极接地。

使能管nr_en_b的栅极用于接收电源电压vdd,k+1个偏置使能n管nr_en_0到nr_en_k的栅极分别接收对应的控制信号trim<k:0>,比如nr_en_0的控制信号为trim<0>,nr_en_k的控制信号为trim<k>。

每个nmos使能管的源极分别对应连接一个nmos偏置管的漏极相连,所述k+2个nmos使能管的漏极相连并用于输出参考电流ir。

nr_b偏置n管的尺寸为偏置电路11的第一nmos管n1的宽度的0.5倍,长度是相同的,因此电路开启时可以提供0.5*iout的电流。第一偏置调节n管nr_0的尺寸与n1的尺寸一致,开启时可以提供到1*iout的电流,第k+1偏置调节n管nr_k的宽度是n1的宽度的k倍,长度相同,开启时可以提供到k*iout的电流。这样,k+1个偏置使能管的栅极分别由对应的控制信号trim<k:0>控制。通过trim<k:0>的不同组合,参考电流生成电路12能够控制参考电流ir的值从(0.5*iout)到(2*2k*iout-0.5*iout)之间以步长iout进行变化。

这里,k值根据纠错单元的最大纠错数量确定。对应关系为:最大检测数量=(2*2k-1)。比如:当最大纠错数量为7时,k值为2,当最大纠错数量为15时,k值为3。

作为一种可选的实施例,参考图4,检测电流生成电路13包括:m个检测单元(分别为51、52……5m),每个检测单元均包括:第五nmos管ma、第六nmos管mb、第七nmos管mc、第四反相器v4及第五反相器v5。每个检测单元中还包括对应的比较电路。

这里,所述第五nmos管ma的源极接地,所述第五nmos管ma的栅极用于接收偏置电压,所述第五nmos管ma的漏极与所述第六nmos管mb的源极相连;所述第六nmos管mb的栅极分别与第四反相器v4的输入端及所述第五反相器v5的输出端相连,所述第六nmos管mb的漏极与所述第七nmos管mc的源极相连;所述第四反相器v4的输出端与所述第五反相器v5的输入端相连。m个所述第七nmos管mc的漏极相连并用于输出所述检测电流id。

第五nmos管ma、第六nmos管mb及第七nmos管mc均包括m个。第五nmos管ma为偏置管,所述第六nmos管mb为检测管,所述第七nmos管mc为使能管。第五nmos管、第六nmos管及第七nmos管均包括m个。

举例来说,第一个检测单元51中,第五nmos管为ma1,第六nmos管为mb1、第七nmos管为mc1;第二个检测单元52中,第五nmos管为ma2,第六nmos管为mb2、第七nmos管为mc2;以此类推,第5m个检测单元中,第五nmos管为mam,第六nmos管为mbm、第七nmos管为mcm。

其中,m的取值与所述页缓存器中待编程单元的数量一致,每个待编程单元中设置一个检测单元。第五nmos管ma1~mam的宽长比与偏置电路11中的第一nmos管n1的宽长比一致,因此,当某个待编程单元编程失败时,其输出的电流与偏置电流是相同的,为iout。

当待编程单元每次编程结束后,对应检测单元中的比较电路将对从页缓存器中读取的数据及编程后的数据(将页缓存器写入闪存中的数据)进行比较,获取第二比较结果,第四反相器v4用于输出所述页缓存器中读取的数据及编程后的数据之间的第二比较结果;所述第五反相器v5用于将所述第二比较结果转换为电流信号,最终将对所有待编程单元的检测结果进行线与求和,获取最终的检测电流id。其中,若从页缓存器中读取的数据及编程后的数据一致,则说明该单元编程成功,输出的结果为“1”,输出的电流为0;若从页缓存器中读取的数据及编程后的数据不一致,则说明该单元编程失败,输出的结果为“0”,输出的电流为iout。

这里,参考图5,比较电路包括:第八nmos管m0、第九nmos管m1及第十nmos管m4;第六pmos管m2,第七pmos管m3;第六反相器v6及第七反相器v7;其中,

m0的源极接地,m0的漏极与m1的源极相连,m0的栅极用于接收使能信号ver_en。m1的栅极与v6的输出端、v7的输入端相连;v6和v7组成锁存器,用于保存页缓存器中向待编程单元中待写入的数据;m1的漏极与m2的漏极相连。

m2的源极、m3的漏极及第五反相器v5的输入端相连,m2的栅极与m4的源极相连。

m3的栅极与使能信号ver_en的反向ver相连,m3的源极用于连接电源电压。

m4的栅极与页缓存器的待编程单元相连,将的编程后的数据存储在so中。m4的漏极与待编程单元的位线bitline相连,读出放大器(sa,senseamplifier)用于位线上的小信号进行识别并放大。

比较电路在工作时,若编程后的数据为0,则d_l=0,说明该待编程单元没有进行过编程。编程校验时,m1关闭,v5输入端处的信号ver被m3拉高。

若编程后的数据为1,则d_l=1,说明该待编程单元已进行过编程。编程校验时,若编程成功,读取的数据为1,m2关断,v5输入端处的信号为高电平,也即v4输出的结果为“1”,v5输出的电流为0;。若编程失败,读出的数据为0,m1和m2同时打开,v5输入端处的信号为低电平,也即v4输出的结果为“0”,v5输出的电流为iout。

继续参考图4,第一个检测单元为例,当对某个待编程单元编程成功后,第一个检测单元会输出结果“1”,输出的电流为i1=0;第二个检测单元为例,当对某个待编程单元编程失败后,第二个检测单元会输出结果为“0”,输出的电流为i2=iout;以此类推,最终将所有检测单元输出的电流相加,即根据公式id=sum(i1:im)=x*iout生成检测电流id,其中,x为编程失败的单元数量,iout为所述编程失败的单元输出的电流。

作为一种可选的实施例,参考图6,跨阻放大器14包括:第八pmos管mp1,第九pmos管mp2,第十pmos管mp3,第十一pmos管mp4,第十二pmos管mp5,第十三pmos管mp6,第十四pmos管mp7,第十五pmos管mp8;

第十一nmos管mn1,第十二nmos管mn2,第十三nmos管mn3,第十四nmos管mn4,第十五nmos管mn5,第十六nmos管mn6,第六电阻r6,第七电阻r7及偏置电流生成电路61。

这里,偏置电流生成电路61主要用于为跨阻放大器14提供一个参考偏置电流ib,为了使得跨阻放大器14输出的共模点在中间电平,该参考偏置电流ib与ir相同。

需要说明的是,偏置电流生成电路61的结构与参考电流生成电路12的结构和尺寸完全相同,工作原理也完全相同。

具体地,所述偏置电流生成电路61包括:n+2个nmos偏置管及n+2个nmos使能管,所述n+2个nmos偏置管包括:偏置n管及n+1个偏置调节n管;n+2个nmos使能管包括:使能n管及n+1个偏置使能n管,n为整数;

所述n+2个nmos偏置管的栅极用于接收所述偏置电压;

所述n+2个nmos偏置管的源极接地;

所述使能n管的栅极用于接收电源电压,所述n+1个偏置使能n管的栅极分别接收对应的第三控制信号,每个nmos使能管的源极对应连接一个nmos偏置管的漏极,所述n+2个nmos使能管的漏极相连并用于输出所述参考偏置电流ib。

继续参考图6,使能n管为第十七nmos管mn7,n+1个偏置使能n管包括:第十九nmos管mn9至第二十一nmos管mn11,mn9和mn11之间存在n+1个nmos管。

偏置n管为第十八nmos管mn8,n+1个偏置调节n管包括:第二十nmos管mn10至第二十二nmos管mn12之前的nmos管,mn10和mn12之间还存在n+1个nmos管。

其中,mp1的漏极与mp2的源极相连并用于接收检测电流id;mp3的漏极与mp4的源极相连并用于接收参考电流ir;mp5的漏极与mp6的源极相连,mp7的漏极与mp8的源极相连;mp1的栅极、mp3的栅极、mp5的栅极及mp7的栅极相连后,再与r6的一端相连;mp1的源极、mp3的源极、mp5的源极及mp7的源极用于接收电源电压。

mp2的栅极、mp4的栅极、mp6的栅极及mp8的栅极相连后,再与r6的另一端相连;mp2的漏极与mn1的漏极相连并用于输出检测电压vd;mp4的漏极与mn3的漏极相连并用于输出参考电压vr;mn1的栅极、mn3的栅极及mn5的栅极与r7的一端相连。

mn2的栅极、mn4的栅极及mn6的栅极与r7的另一端相连。mn1的源极与mn2的漏极相连,mn3的源极与mn4的漏极相连,mn5的源极与mn6的漏极相连,mn2的源极、mn4的源极及mn6的源极分别接地。

需要说明的是,mp1、mp3、mp5及mp7的长度相同,宽度比为2:2:1:1;mp2、mp4、mp6的长度相同,宽度比为1:1:1。

可以看出,跨阻放大器14中标记为62的部分采用的是套筒式的折叠共源共栅结构,折叠共源共栅的偏置电流等于ir。该结构能够快速地将参考电流ir转化为电压信号vr,将检测电流id转化为vd。

作为一种可选的实施例,参考图7,比较器15包括:第十六pmos管md1、第十七pmos管md2,第二十三nmos管mg1、第二十四nmos管mg2及第二十五nmos管mg3;其中,

md1的源极及md2的源极用于接收电源电压,md1的栅极与md2的栅极相连,md1的漏极与mg1的漏极相连;md1的栅极与跨阻放大器的第二输出端相连,用于接收vr。

md2的栅极与跨阻放大器14的第一输出端相连,用于接收vd,md2的漏极与mg2的漏极相连并用于输出第一比较结果。

mg1的源极、mg2的源极与mg3的漏极相连,mg3的源极接地,mg3的栅极用于接收偏置电压。

当参考电压vr大于检测电压vd时,比较器15会输出的第一比较结果vc为“低”,代表当前页中此时编程失败的单元数量未超出ecc纠错单元的最大纠错数量,因此可以视为编程成功,无需再执行预设的编程次数,提前结束对当前页的编程,提高编程效率。

当参考电压vr小于检测电压vd时,比较器15会输出的第一比较结果vc为“高”,代表此时编程失败的单元数量已经超出ecc纠错单元的最大纠错数量,因此可以视为编程失败,则判断当前编程的次数是否超出预设的编程次数,若超出,则舍弃编程后的当前页。

而当前编程的次数没有超出预设的编程次数,则调节当前电压,使得当前电压与预设的编程电压保持一致;对当前页进行再次编程。

本发明实施例提供的快速存储器及闪存编程方法能带来的有益效果至少是:

发明实施例提供了一种编程结果检测电路、检测方法、快闪存储器及编程方法,编程结果检测电路包括:偏置电路、参考电流生成电路、检测电流生成电路、第一开关电路、第二开关电路、跨阻放大器、比较器及锁存器;其中,所述偏置电路,用于为所述参考电流生成电路、所述检测电流生成电路、所述跨阻放大器提供偏置电压;所述参考电流生成电路,用于根据纠错单元的最大纠错数量生成参考电流;所述检测电流生成电路,用于根据编程失败的单元的数量生成检测电流;所述第一开关电路,用于在编程时隔离所述参考电流生成电路和所述跨阻放大器;所述第二开关电路,用于在编程时隔离所述检测电流生成电路和所述跨阻放大器;所述跨阻放大器,用于将所述参考电流转换为参考电压,将检测电流转换为检测电压;所述比较器,用于对所述参考电压及所述检测电压进行比较,输出第一比较结果,所述第一比较结果用于表征所述编程失败的单元数量是否超出纠错单元的最大纠错数量;锁存器,用于对所述第一比较结果进行存储;如此,在对每页编程结束时,检测电路判断编程失败的单元数量是否超出纠错单元的最大纠错数量,如果未超出最大纠错数量,并且此时还未达到最大预设的最大编程次数时,会直接结束对当前页的编程;相比现有技术中需要将预定的编程次数全部执行完毕后才可以确定编程失败的单元的数量,明显降低了耗时;并且本申请的方法相当于是在每个页缓存器中直接判断编程失败的单元数量是否超出纠错单元的最大纠错数量,相比现有技术中需要将编程失败的单元数量先全部读取到页缓存器,再读取到外部存储器(且读取到外部存储器每次最多只能读取32个字节),然后再进行判断的这种方法,可以降低确定过程的繁琐度,从而进一步降低耗时,提高编程速度,提高闪存的整体性能,进而使得快闪存储器可以满足存储要求较高的应用领域,进一步扩展了快闪存储器的应用领域。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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