闪存擦除方法与流程
未命名
09-21
阅读:131
评论:0

1.本发明涉及一种内存的擦除方法,尤其涉及一种闪存的擦除方法。
背景技术:
2.在闪存进行擦除时,是采用块为单位的一次性擦除操作,例如以大小为64k的块作为单位来进行块擦除。由于受限于制程均匀度或是缺陷,每个存储单元都存在差异,在擦除操作时会产生尾位(tailing bits)。这些尾位会导致慢速擦除(slow erase),进而使得擦除验证失败(erase verify fail)。当擦除验证失败时,内存便需要再次执行块擦除。
3.因此,以目前的块擦除的方式来进行整体的擦除时,因为擦除过程中很容易因为尾位的拖累,导致块中有些存储单元执行过多次的擦除,而过度对穿隧氧化层增加应力,进而造成穿隧氧化层的可靠度问题,例如数据的耐久性和保持性等。
4.因此,有必要发展出一种方法,在对闪存进行块擦除时,可以避免过度擦除,也可以降低擦除时间。
技术实现要素:
5.根据本发明一实施例,提供一种闪存的块擦除方法,对闪存的块进行块擦除,块具有一预定块大小。闪存的块擦除方法包括:设定m个分割块,其中m个分割块的每一个块大小均小于预定块大小;在最大擦除次数内,设定m个擦除次数门坎值,以产生(m+1)个擦除次数判断区间;在进行块擦除时,对块内的字节逐一进行擦除验证;当字节没有通过擦除验证时,检查字节的擦除次数;判断擦除次数是位于(m+1)擦除次数判断区间的哪一个特定区间;以及与特定区间相对应的块与多个分割块的一个,来进行块擦除,并且返回继续执行擦除验证,其中擦除次数在第1个擦除次数门坎值以下的第1个擦除次数判断区间,使用块的预定块大小进行块擦除,擦除次数在第j个(2≦j≦m+1)擦除次数判断区间,使用第(j-1)个分割块的块大小进行块擦除。
6.根据本发明一实施例,在上述闪存的擦除方法中,当字节通过擦除验证时,则继续对下一个字节进行擦除与擦除验证,直到完成预定块大小的块擦除为止。
7.根据本发明一实施例,在上述闪存的擦除方法中,m个分割块的块大小为可调整。根据本发明一实施例,在上述闪存的擦除方法中,m个分割块的数量为可调整。根据本发明一实施例,在上述闪存的擦除方法中,m个擦除次数门坎值在最大擦除次数内,可以调整。
8.根据本发明一实施例,在上述闪存的擦除方法中,闪存为nor型闪存。
9.根据本发明另一实施例,提供一种闪存的块擦除方法,对闪存的块进行块擦除,块具有一预定块大小。闪存的块擦除方法包括:在进行块擦除时,对块内的字节逐一进行擦除验证;当字节没有通过擦除验证时,检查字节的擦除次数;当字节的擦除次数超过一预定门坎值时,以低于预定块大小的分割块进行块擦除,并且返回擦除验证阶段继续执行擦除验证;以及当字节的擦除次数没有超过预定门坎值时,继续以预定块大小进行块擦除,并且返回擦除验证阶段继续执行擦除验证。
10.根据本发明一实施例,在上述闪存的擦除方法中,当字节通过擦除验证时,则继续对下一个字节进行擦除与擦除验证,直到完成预定块大小的块擦除为止。
11.根据本发明一实施例,在上述闪存的擦除方法中,擦除次数是在最大擦除次数以下且可调整。根据本发明一实施例,在上述闪存的擦除方法中,所述分割块的大小为可调整。
12.根据本发明一实施例,在上述闪存的擦除方法中,闪存为nor型闪存。
13.根据本发明又一实施例,提供一种闪存,包括:闪存数组;以及控制电路,耦接至闪存,以控制闪存数组的操作。当对闪存进行擦除操作时,控制电路执行:设定m个分割块,其中m个分割块的每一个的块大小均小于预定块大小;在最大擦除次数内,设定m个擦除次数门坎值,以产生(m+1)个擦除次数判断区间;在进行块擦除时,对块内的字节逐一进行擦除验证;当字节没有通过擦除验证时,检查字节的擦除次数;判断擦除次数是位于(m+1)擦除次数判断区间的哪一个特定区间;以及与特定区间相对应的分割块,来进行块擦除,并且返回擦除验证阶段继续执行擦除验证,其中擦除次数在第1个擦除次数门坎值以下的第1个擦除次数判断区间,使用块的预定块大小进行块擦除,擦除次数在第j个(2≦j≦m+1)擦除次数判断区间,使用第(j-1)个分割块的块大小进行块擦除。
14.根据本发明一实施例,在上述闪存中,控制电路更执行:当字节通过擦除验证时,则继续对下一个字节进行擦除与擦除验证,直到完成预定块大小的块擦除为止。
15.根据本发明一实施例,在上述闪存中,控制电路架构可调整m个分割块的块大小。根据本发明一实施例,在上述闪存的擦除方法中,控制电路架构可调整m个分割块的数量。根据本发明一实施例,在上述闪存的擦除方法中,控制电路架构在最大擦除次数内可以调整m个擦除次数门坎值。
16.根据本发明一实施例,在上述闪存中,闪存数组为由nor型闪存构成。
17.基于上述,根据本发明实施方式,可以降低擦除/编程的过度写入,以提高产品可靠度。此外,根据本发明实施方式,内存整体的擦除写入时间也可以降低。
附图说明
18.图1为根据本发明实施例的擦除操作的整体流程示意图;
19.图2a与图2b为本发明实施例与现有技术的擦除时间的比较图;
20.图3为本发明实施例的闪存的示意电路架构图。
21.附图标记说明
22.100:闪存
23.102:闪存阵列
24.104:控制电路
25.add:地址线
26.cmd:命令线
27.s100~s180:分割块擦除的操作步骤
具体实施方式
28.图1为根据本发明实施例的擦除操作的整体流程示意图。如图1所示,整个擦除操
作包括前段的预先编程步骤s100、块擦除步骤以及后续步骤s170的软编程。本发明实施例的擦除操作是在于一种新的块擦除方法。
29.如图1所示,开始对闪存进行擦除操作时,会先进行预先编程(pre-program)的步骤s100。通常在擦除操作之前,会先进行所谓的预先编程。预先编程可以让擦除后的存储单元的临界电压vt分布地较为紧密,而不会分布太广。因此,在擦除前可以将存储单元的临界电压vt分布进行编程成较为紧密状态。此步骤也是现有的闪存块擦除操作的其中一环,故在此不加以冗述。
30.接着,执行步骤s102、s104与s108,此些步骤是整个擦除操作中的块擦除。在此实施例中,以块大小为64kb作为说明例。在进行块擦除时,会以一个字节(byte)一个字节来进行。步骤s102会对一个字节进行擦除验证。
31.接着,在步骤s104,判断该字节是否通过擦除验证,如果通过,则进入步骤s108,判断目前的地址是否达到64kb。如果地址已经到达64kb,则表示该块已经完成擦除。接着,便执行步骤s170的软编程。步骤s170的软编程主要是使已经完成块擦除的内存块的擦除状态成为接近高斯分布的更紧密状态,以避免尾位效应。软编程可以降低过度擦除位,也可以减少漏电流。步骤s170的软编程可以包括如逐字节软编程(byte by byte soft program)和刷新编程(refresh program)等,其为现有的闪存块擦除的方式,故在此不加以冗述。
32.反之,如果在步骤s108,判断目前的地址尚未达到64kb,则在步骤s100,将内存块的地址增量(例如加1等),并回到步骤s104,对下一个字节执行擦除操作与擦除验证,直到整个64kb的块完成块擦除为止。
33.接着说明本发明的分割块擦除(partitioned block erase)操作的方式。当在步骤s104判断该字节没有通过擦除验证时,便会在步骤s106检查该字节的擦除次数(erase step)n。一般来说,在进行字节擦除时可能会执行多次的循环才能通过擦除验证。在现有技术的做法,擦除验证会执行到通过为止。因此,整个64kb的块擦除要通过擦除验证可能会花上很长的时间。
34.根据本发明实施例,闪存的控制电路会去检查该字节的擦除次数n,并且根据擦除次数n来对内存的块擦除的大小进行分割。亦即,当擦除次数过多,将会调整块的大小,并且以较小的块来进行块擦除。藉此达到降低对存储单元的过度擦除以及擦除时间。
35.在此,擦除次数n是可以依据需求来调整的,例如目前最大擦除次数可以是1024次,而使用者可以从1024来设定门坎值,例如可以是4、8、16、32、64、128、256
……
等。此外,最大擦除次数并不限定在1024次,此值可以依据实际产品的条件来设定,本发明并没有特定限定。在此实施例中,将以设定两个门坎值(图1中的32与128)来作为解说,但是实际应用操作并不设限于两个。
36.此外,根据本发明实施例,分割块擦除操作的分割层数(partition level),亦即分割块的数量,也可以由设计者(用户)来进行设定。此外,分割区域(partition region)的大小也是可以由设计者(用户)来进行设定。例如,可以由256kb来设定为4、16、32、64或128等。在以下的实施例中分割层数将以3层为例且分割区域的大小将以16kb和4kb为例等来进行说明,但此并非用以限制本发明的实施。
37.如图1所示,当在步骤s104判断该字节没有通过擦除验证时,便会在步骤s106检查该字节的擦除次数(erase step)n。接着,步骤s120判断该字节的擦除次数n是否小于或等
于第一擦除次数门坎值(在此例为32次,及擦除次数n在1-32之间)。如果擦除次数n小于或等于32次,则表示还没有过度擦除的问题。此时,则进行步骤s122,仍然进行原本64kb的块擦除;亦即维持原来的块擦除大小。接着,步骤s106将擦除次数n加1,并且回到步骤s102,进续进行擦除操作与擦除验证。
38.此外,如果在步骤s230判断擦除次数n大于32次,则进入步骤s130,进一步判断擦除次数n是否小于或等于第二擦除次数门坎值(在此例为128次)。如果擦除次数n小于或等于128次,即擦除次数n为33-128,则进入步骤s132。在步骤s132,控制电路会将块擦除的大小由原本的64kb调整为较小的第一分割块大小,在此例为16kb。接着,在步骤s134,进行16kb的擦除操作。接着,步骤s106将擦除次数n加1,并且回到步骤s102,进续进行擦除操作与擦除验证。
39.此外,如果擦除次数n大于128次,即擦除次数n为129-1023,则进入步骤s140。在步骤s140,控制电路会将块擦除的大小由原本的16kb调整为更小的第二分割块大小,在此例为4kb。接着,在步骤s134,进行4kb的擦除操作。接着,步骤s106将擦除次数n加1,并且回到步骤s102,进续进行擦除操作与擦除验证。
40.在上述实施例是以2个分割块和两个擦除次数门坎值来说明,但是分割块可以调整为更多个,擦除次数门坎值也可以对应地调整。
41.例如,闪存的控制电路可以进一步设定m个分割块,这些分割块的每一个块大小均小于预定块大小(即上述例子的64kb)。如果以上述两个分割块为例,即为16kb和4kb。
42.此外,控制电路可以在最大擦除次数内(如上述的1024次)进一步设定m个擦除次数门坎值,以产生(m+1)个擦除次数判断区间。如果以上述两个擦除次数门坎值为例,第一擦除次数门坎值是32,第二擦除次数门坎值是128,且第一擦除次数判断区间为0~32,第二擦除次数判断区间为33~128,第三擦除次数判断区间为129~1023。
43.此外,在步骤s102的擦除验证没有通过时,便会检查字节的擦除次数,并且在步骤s106判断擦除次数是位于(m+1)擦除次数判断区间的哪一个特定区间。例如,在步骤s120、s130判断擦除次数是在0~32、33~128和129~1023的哪一个特定区间。接着,便以对应该特定区间的块,来进行块擦除,并且返回擦除验证阶段以继续执行步骤s102的擦除验证。在上述图1的例子中,当擦除次数在第1个擦除次数门坎值(即32)以下的第1个擦除次数判断区间(即0~32),使用预定块大小进行块擦除。也就是说步骤s122此用原本的64kb来进行块擦除。
44.此外,擦除次数n在所述第j个(2≦j≦m+1)擦除次数判断区间,使用第(j-1)个分割块的块大小进行块擦除。例如,步骤s130为“是”时,擦除次数n在第2个擦除次数判断区间(33~128),此时便使用第1个分割块(即16kb)来进行块擦除(如步骤s132)。例如,步骤s130为“否”时,擦除次数n在第3个擦除次数判断区间(129~1023),此时便使用第2个分割块(即4kb)来进行块擦除(如步骤s150)。
45.如上所述,本发明的分割块擦除可以依据实际需要来调整分割块的数量、分割块的大小以及对应的擦除次数门坎值。藉此,可以降低擦除/编程的过度写入,以提高产品可靠度。此外,根据本发明实施方式,内存整体的擦除写入时间也可以降低。
46.图2a与图2b为本发明实施例与现有技术的擦除时间的比较图。图2a分别显示出本发明和现有技术的纯块擦除阶段和软编程阶段的擦除时间实验结果图。如图2a所示,结果
(1-1)表示本发明的分割块擦除的擦除时间,即使用图1所示的分割块16kb和4kb的擦除时间。结果(1-2)为相应于此分割块擦除作的软编程阶段的擦除时间。此外,结果(2-1)表示现有技术的一般块擦除的擦除时间,结果(2-2)为相应一般块擦除的软编程阶段的擦除时间。
47.由图2a可以看出,本发明的分割块擦除方法会去检查擦除次数来将块擦除的大小减小,这样的方式虽然在纯块擦除部分的擦除时间(如(1-1))会略大于现有技术的存块擦除时间(如(2-1)),但是与现有技术的软编程的擦除时间(如(2-2))相比,本发明的块擦除后段的软编程的擦除时间(如(1-2))是大为减少的。
48.图2b显示存储器的本发明实施例与现有技术整体擦除时间的测试结果示意图。如图2b所示,结果(1)为使用本发明实施例的分割块擦除的整体擦除时间,结果(2)为使用现有技术的一般块擦除的整体擦除时间。由此结果来看,相较于现有技术的方法,本发明实施例的分割块擦除的整体擦除时间降低了不少。
49.综上所述,虽然本发明实施例在进行对内存的块擦除时,会进行多次的擦除验证(如上述的检查擦除次数),这稍微增加了单纯进行块擦除的时间。但是,经过此步骤后,后续的软编程的时间可以缩短,故整体的擦除时间可以降低。而且,在没有通过擦除验证的状况下,会进一步检查擦除次数。如果擦除次数超过预设门坎值,则以较小的分割块来进行擦除,故可以减少不需要再擦除的字节过度的擦除。
50.图3为本发明实施例的闪存的示意电路架构图。闪存100至少包括闪存数组102和控制电路(控制逻辑)104。闪存还可以包括如列解码器、行解码器、高电压产生器、页地址闩锁/计数器、页缓冲器等等组件,这些与既有的闪存架构并无特别的差异,本领域技术人员可以任意地做修改与变动。
51.控制电路104可以通过命令线cmd与地址线add来对指定地址的存储单元(指定的字节、块、页等等)进行控制。控制电路104可以通过命令线cmd传送编程、阵列102。当控制电路104经由命令线cmd传送擦除命令后,便可以依据图1的擦除方式对闪存的存储单元进行寻址、设定块大小、分割块大小等等。控制电路104具体执行分割块擦除的操作已见于图1的说明,在此便不再冗述。
52.此外,上述例子是nor型闪存来说明,但是也可以应用到其他使用块擦除的内存,例如nand型闪存等。本发明对于闪存的类型并没有特别限定。
53.综上所述,根据本发明实施方式,可以降低擦除/编程的过度写入,以提高产品可靠度。此外,根据本发明实施方式,存储器整体的擦除写入时间也可以降低间。
54.最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
技术特征:
1.一种闪存的块擦除方法,所述块擦除方法是对所述闪存的块进行块擦除,所述块具有一预定块大小,其特征在于,所述块擦除方法包括:将所述预定块设定为m个分割块,其中所述m个分割块的中每一个块大小均小于所述预定块大小;在最大擦除次数内,设定m个擦除次数门坎值,以产生(m+1)个擦除次数判断区间;在进行所述块擦除时,对所述分割块内的字节逐一进行擦除验证;当所述字节没有通过所述擦除验证时,检查所述字节的擦除次数;判断所述擦除次数是位于所述(m+1)擦除次数判断区间的哪一个特定区间;以及对所述特定区间相对应的所述分割块进行所述块擦除,当进行所述块擦除结束后返回擦除验证阶段以执行所述擦除验证,其中所述擦除次数在第1个擦除次数门坎值以下的第1个擦除次数判断区间,使用所述预定块大小进行块擦除,所述擦除次数在第j个(2≦j≦m+1)擦除次数判断区间,使用第(j-1)个分割块的所述块大小进行块擦除。2.根据权利要求1所述的闪存的块擦除方法,其特征在于,当所述字节通过所述擦除验证时,则继续对下一个字节进行擦除与所述擦除验证,直到完成所述预定块大小的所述块擦除为止。3.根据权利要求1所述的闪存的块擦除方法,其特征在于,其中所述m个分割块的所述块大小为可调整。4.根据权利要求1所述的闪存的块擦除方法,其特征在于,所述m个分割块的数量为可调整。5.根据权利要求1所述的闪存的块擦除方法,其特征在于,所述m个擦除次数门坎值在所述最大擦除次数内,可以调整。6.根据权利要求1所述的闪存的块擦除方法,其特征在于,所述闪存为nor型闪存。7.一种闪存的块擦除方法,所述块擦除方法是对所述闪存的块进行块擦除,所述块具有一预定块大小,其特征在于,所述块擦除方法包括:在进行所述块擦除时,对所述块内的字节逐一进行擦除验证;当所述字节没有通过所述擦除验证时,检查所述字节的擦除次数;当所述字节的所述擦除次数超过一预定门坎值时,以低于所述预定块大小的分割块进行所述块擦除,并且返回擦除验证阶段以继续执行所述擦除验证;以及当所述字节的所述擦除次数没有超过所述预定门坎值时,继续以所述预定块大小进行所述块擦除,并且返回擦除验证阶段以继续执行所述擦除验证。8.根据权利要求7所述的闪存的块擦除方法,其特征在于,当所述字节通过所述擦除验证时,则继续对下一个字节进行擦除与所述擦除验证,直到完成所述预定块大小的所述块擦除为止。9.根据权利要求7所述的闪存的块擦除方法,其特征在于,所述擦除次数是在最大擦除次数以下且可调整。10.根据权利要求7所述的闪存的块擦除方法,其特征在于,所述分割块的大小为可调整。11.根据权利要求7所述的闪存的块擦除方法,其特征在于,所述闪存为nor型闪存。
技术总结
本发明提供一种闪存的块擦除方法,块擦除方法是对闪存的块进行块擦除,块具有一预定块。闪存的块擦除方法包括:在进行块擦除时,对块内的字节逐一进行擦除验证;当字节没有通过擦除验证时,检查字节的擦除次数;当字节的擦除次数超过一预定门坎值时,以低于预定块大小的分割块进行块擦除,并且返回擦除验证阶段继续执行擦除验证;以及当字节的擦除次数没有超过预定值时,继续以预定块大小进行块擦除,并且返回擦除验证阶段继续执行擦除验证。且返回擦除验证阶段继续执行擦除验证。且返回擦除验证阶段继续执行擦除验证。
技术研发人员:郑隆吉 郭盈杉 黄俊尧 郑如杰 庄育铮
受保护的技术使用者:华邦电子股份有限公司
技术研发日:2022.03.11
技术公布日:2023/9/20
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:一种PE管道卷边切除装置的制作方法 下一篇:一种整体可拆卸式电柜的制作方法