一种FLASH存储器块擦电路及块擦方法与流程

文档序号:13735688阅读:731来源:国知局
一种FLASH存储器块擦电路及块擦方法与流程

本发明涉及集成电路设计领域,特别是flash存储器块擦电路及块擦方法领域。



背景技术:

flash存储器是一种非挥发存储器,经过擦除和编程后的数据存储在flash存储器中,即使在掉电的情况下也可以长久保存。页擦和块擦都是一种对flash的擦除动作,区别是页擦只针对的是一个页面进行擦除,而块擦是针对连续的几个页面进行擦除,为描述方便,本文所指的“块”是指4个连续的页面;“块内”指这4个连续页面中的页面;“块内地址”指的是块内所包含页面的地址;“块擦”是指针对1个以上连续的页面进行擦除。

在flash存储器中,由于工艺问题,生产出来的个别存储单元会有缺陷而不能正常工作,如果由于极少量的缺陷页就把整个flash存储芯片判别为失效芯片,会造成成本的严重浪费。一种常见的方法是如图1所示,在电路设计阶段把flash整个存储区域分为主存储区、特殊存储区、冗余存储区三个部分。在出厂测试环节把主存储区中的缺陷页面识别出来,然后用把缺陷页面地址记录在特殊存储区中,实际使用时根据特殊存储器区中存储的缺陷页面的地址,用冗余存储区中的页面替换缺陷页面。

当前在flash电路设计中,只有页擦时用冗余页替换的方法,而块擦是一种常见的操作流程,如图2所示。块擦开始后,首先对主存储区块地址执行块擦,然后判断特殊存储区中的缺陷地址add_error中是否有与块内第1个页面地址相同的,如果有则对当前缺陷页面地址对应的冗余存储区页面执行页擦,否则继续判断add_error中是否有与块内第2个页面地址相同的,如果有则对当前缺陷页面地址对应的冗余存储区页面执行页擦,否则继续判断add_error中是否有与块内第3个页面地址相同的,如果有则对当前缺陷页面地址对应的冗余存储区页面执行页擦,否则继续判断add_error中是否有与块内第4个页面地址相同的,如果有则对当前缺陷页面地址对应的冗余存储区页面执行页擦从而块擦结束,否则也块擦结束。

当前使用该块擦流程的对应的电路图,如图3所示。主存储区块擦电路305在块擦模式首先将输入的地址信号add_main对应的主存储区301地址main_block对应的区域进行块擦;然后特殊存储区302中的缺陷地址add_error经过读取电路304送到地址比较电路306中,如果有相同的地址则产生有效的冗余页面地址add_rdn,经过冗余存储区页擦单路输出电路307产生rdn_page把对1个冗余页面页擦;然后继续在add_error地址比较电路中比较当前块地址add_main的其他页面地址是否有与add_error中地址相同的情况,有的话继续把对应的冗余页面也擦,否则的话停止操作,整个块擦过程结束。

逻辑判断及译码的时间很短为小于10微秒,可以忽略,一次擦动作的时间terase一般是大于2毫秒,为主要时间。目前技术的块擦技术方案,单次操作消耗最大时间需要1次主存储区块擦和4次冗余页擦,总共消耗时间为5*terase。



技术实现要素:

为了减少块擦时间,尤其是包含对冗余页面擦除的块擦时间,本发明提出了一种新的flash存储器块擦电路和块擦方法。

本发明提供一种flash存储器块擦电路,所述flash存储器分为主存储区、特殊存储区和冗余存储区三个区域,其中,

主存储区块擦电路连接主存储区;

地址比较电路一端连接到主存储区块擦电路,另一端连接到冗余地址缓存器,冗余地址缓存器连接冗余存储区页擦多路输出电路,冗余存储区页擦多路输出电路连接到冗余存储区;

读取电路一端连接地址比较电路,另一端连接到特殊存储区;

地址比较电路将输入地址与特殊存储区的缺陷地址进行比较,然后输出冗余存储区页面地址到冗余地址缓存器中,一直到所有需要在块擦时擦除的缺陷页面全部被缓存,从而根据输入的一个以上冗余页面地址,同时选中所述一个以上冗余页面进行多路页擦,并同时对主存储区块地址页面执行块擦。

本发明还提供了一种使用flash存储器块擦电路的块擦方法,所述方法的具体步骤为:

步骤1:块擦开始;

步骤2:判断特殊存储区中的缺陷地址中否有与块内第1个页面地址相同的;

如果有相同的,则缓存当前缺陷页面地址对应的冗余存储区页面地址;

如果没有相同的,则继续判断特殊存储区中的缺陷地址中否有与块内第2个页面地址相同的;

步骤3:判断特殊存储区中的缺陷地址中否有与块内第2个页面地址相同的;

如果有相同的,则缓存当前缺陷页面地址对应的冗余存储区页面地址;

如果没有相同的,则继续判断特殊存储区中的缺陷地址中否有与块内第3个页面地址相同的;

步骤4:判断特殊存储区中的缺陷地址中否有与块内第3个页面地址相同的;

如果有相同的,则缓存当前缺陷页面地址对应的冗余存储区页面地址;

如果没有相同的,则继续判断特殊存储区中的缺陷地址中否有与块内第4个页面地址相同的;

步骤5:判断特殊存储区中的缺陷地址中否有与块内第4个页面地址相同的;

如果有相同的,则缓存当前缺陷页面地址对应的冗余存储区页面地址,然后对当前缺陷页面地址对应的冗余存储区所有页面同时执行页擦,与此同时,对主存储区块地址页面执行块擦;

如果没有相同的,最后特殊存储区中的缺陷地址与块内4个地址都不相同,则只对主存储区块地址页面执行块擦;

步骤6:块擦结束。

本发明的有益效果是,对于包含多个冗余面擦除的块擦操作,单次操作消耗最大时间约为1*terase,与现有的块擦方法相比,时间大大减少。本发明在电路上实现硬件代价很小,而对块擦操作时间的节省效果显著。

下面结合附图和具体实施方式对本发明做进一步说明。

附图说明

图1是现有的flash整个存储区划分图。

图2是现有的块擦方法流程图。

图3是现有的块擦电路结构图。

图4是本发明具体实施例的块擦方法流程图。

图5是本发明具体实施例的块擦电路结构图。

具体实施方式

如图4所示,是本发明具体实施例的块擦方法流程图。块擦开始后,首先判断特殊存储区中的缺陷地址add_error中否有与块内第1个页面地址相同的,如果有则缓存当前缺陷页面地址对应的冗余存储区页面地址,如果没有相同的,则继续判断特殊存储区中的缺陷地址add_error中否有与块内第2个页面地址相同的,如果有则缓存当前缺陷页面地址对应的冗余存储区页面地址,如果没有相同的,则继续判断特殊存储区中的缺陷地址add_error中否有与块内第3个页面地址相同的,如果有则缓存当前缺陷页面地址对应的冗余存储区页面地址,如果没有相同的,则继续判断特殊存储区中的缺陷地址add_error中否有与块内第4个页面地址相同的,如果有则缓存当前缺陷页面地址对应的冗余存储区页面地址,然后对当前缺陷页面地址对应的冗余存储区所有页面同时执行页擦,与此同时也对主存储区块地址页面执行块擦。如果没有最后特殊存储区中的缺陷地址add_error与块内4个地址都不相同,则只对主存储区块地址页面执行块擦。至此,完成了完整的块擦流程。

图5是本发明对应的块擦电路图。在特殊存储区502中的缺陷地址add_error经过读取电路504后被送到地址比较电路506中,与输入地址add_main进行比较,输出的冗余页地址add_rdn依次缓存在冗余地址缓存器507中,然后生成冗余存储区页对应的地址信号add_rdn_0到add_rdn_3,最后输入地址add_main在主存储区块擦电路505输出块擦地址main_block到主存储区501的块区域,并且冗余存储区页擦多路输出电路508输出页擦冗余页面地址rdn_page_0到rdn_page_3到冗余存储区的页区域。从而实现了同时对主存储区块擦,和对块内对应的冗余页面一起多路页擦的操作。

本发明并不限于上文讨论的实施方式,以上对具体实施方式的描述旨在于为了描述和说明本发明涉及的技术方案。基于本发明启示的显而易见的变换或替代也应当被认为落入本发明的保护范围;以上的具体实施方式用来揭示本发明的最佳实施方法,以使得本领域的普通技术人员能够应用本发明的多种实施方式以及多种替代方式来达到本发明的目的。

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