支持高擦写次数的flash存储器电路的制作方法

文档序号:6740368阅读:242来源:国知局
专利名称:支持高擦写次数的flash存储器电路的制作方法
技术领域
本实用新型涉及存储器技术领域,特别涉及FLASH存储器领域,具体是指ー种支持高擦写次数的FLASH存储器电路。
背景技术
半导体存储器可分为挥发性存储器和非挥发性存储器两类,前者在掉电后会失去记忆的数据,后者即使在切断电源也可以保持数据。挥发性存储器又可分为DRAM(动态随机存储器)和SRAM (静态随机存储器)。而ROM则是非挥发性存储器,ROM在类型上根据用户是否可以写入数据而分为两类,一类是用户可以写入的R0M,另ー类是制造商在加工过程中写入的,称为MASK ROM。在用户可以写入的ROM中按写入方式分为OTP ROM (One Time Programmable ROM, 一次编程只读存储器)、EPROM (Erasable Programmable ROM,可擦写编程只读存储器)、EEPROM(Electrically Erasable Programmable ROM电子可擦写只读存储器)、FLASH memory (闪存)和 FRAM(Ferroelectric RAM,铁电随机存储器)等。FLASH是1980年代开发出来的一种存储器技术,它具有集成度高、写入时间短等优点,但缺点是写入新数据前需进行擦除操作,并且擦除时间较长(数十个ms),另外FLASH的擦写次数相比EEPROM和FRAM等同类型存储器来说不够高。FLASH、EEPR0M和FRAM的重写次数对比如下表所示
存储器类型f FLASH Γ EEPROM 「FRAM
重写次数IO4 I。5 IO5 I。6 IO10 IO12表I三种主流非挥发性存储器的重写次数对比注上表中所示的重写次数,仅表示业界エ艺技术的大致范围。不同的エ艺开发商由于エ艺技术的不同,所达到的重写次数指标也不尽相同,也可能会超出上表中所列的数字。对于FLASH存储器,由于写入新数据前需进行擦除操作,因此重写次数即等于擦写次数。FLASH共有3种操作擦除、写和读。擦除操作把所有位擦除为“ 1”,写操作可以把某一位从“ I”写为“0”,但不能从“O”写为“ I”。FLASH 一般划分为若干页,擦除操作的最小単位是页(不同代エ厂的术语可能有所不同),读写操作的最小单位是字节。不同代エ厂提供的FLASH IP闪存单元每页的字节数可能各不相同,从几十到几百不等,但一般都等于2的整数次方。由于FLASH本身的重写次数不够高,因此不适用于需要频繁更新数据的场合,一般用来存储程序或无需频繁更新的数据。在需要频繁更新数据的场合,以选用EEPROM居多。因此FLASH存储器由于其重写次数的制约,使其应用范围较为有限。在现有技术中,也有通过软件编程技术扩展FLASH擦写次数的方法,但此技术增加了软件开发的复杂度,并且,当程序长度受限时,此方法就难以适用。
实用新型内容本实用新型的目的是克服了上述现有技术中的缺点,提供无需采用软件编程技术,仅通过硬件的控制电路实现对于FLASH存储器读写的控制,从而提高FLASH存储器擦写次数,且结构简单,成本低廉,应用范围广泛的ー种支持高擦写次数的FLASH存储器电路。为了实现上述的目的,本实用新型的支持高擦写次数的FLASH存储器电路具有如下构成该支持高擦写次数的FLASH存储器电路,包括闪存单元和读写控制扩展电路单元,所述的闪存单元通过所述的读写控制扩展电路连接外部读写操作信号。该支持高擦写次数的FLASH存储器电路中,所述的读写控制扩展电路単元包括写入控制电路、读出控制电路和长度寄存器,所述的长度寄存器分别连接所述的写入控制电路和读出控制电路,所述的闪存单元通过所述的写入控制电路连接外部写操作信号,所述的闪存单元通过所述的读出控制电路连接外部读操作信号。该支持高擦写次数的FLASH存储器电路中,所述的FLASH存储器电路还包括外部扩展电路单元,所述的外部扩展电路单元连接于所述的读写控制扩展电路単元。该支持高擦写次数的FLASH存储器电路中,所述的外部扩展电路单元为嵌入式闪存控制电路。该支持高擦写次数的FLASH存储器电路中,所述的嵌入式闪存控制电路为单片机闪存控制电路。该支持高擦写次数的FLASH存储器电路中,所述的闪存单元包括多个FLASH存储页,每个闪存页均包括多个FLASH存储块,各闪存页均连接所述的读写控制扩展电路単元。采用了该实用新型的支持高擦写次数的FLASH存储器电路,由于其包括闪存单元和读写控制扩展电路单元,所述的读写控制扩展电路単元包括写入控制电路、读出控制电路和长度寄存器,所述的长度寄存器分别连接所述的写入控制电路和读出控制电路,所述的闪存单元通过所述的写入控制电路连接外部写操作信号,所述的闪存单元通过所述的读出控制电路连接外部读操作信号,使得该FLASH存储器电路在接收到外部写操作吋,能够首先根据长度寄存器中记录的数字,得到块长度,再对FLASH存储页进行以所述的块长度为间隔的扫描,读取并判断每ー块的数据标识,并将数据写入未曾写入数据的块,如果某页内所有的块都已写入数据,则启动对该页的擦除操作,擦除完成后再进行写入操作,从而提升闪存单元中内每ー FLASH存储页的利用率,从而有效提高擦写次数,以此提供一种结构简单,成本低廉,且应用范围广泛的ー种支持高擦写次数的FLASH存储器电路。

图I为本实用新型的支持高擦写次数的FLASH存储器电路的结构示意图。图2为本实用新型的支持高擦写次数的FLASH存储器电路中的读写控制扩展电路单元的结构示意图。图3为本实用新型的支持高擦写次数的FLASH存储器电路中的闪存单元的结构示意图。图4为本实用新型的支持高擦写次数的FLASH存储器电路中的闪存单元中的闪存块的数据结构图。
具体实施方式
为了能够更清楚地理解本实用新型的技术内容,特举以下实施例详细说明。请參阅图I所示,为本实用新型的支持高擦写次数的FLASH存储器电路的结构示意图。在一种实施方式中,该支持高擦写次数的FLASH存储器电路包括闪存单元和读写控制扩展电路単元,所述的闪存单元通过所述的读写控制扩展电路连接外部读写操作信号。其中,所述的读写控制扩展电路単元,如图2所示,包括写入控制电路、读出控制电路和长度寄存器,所述的长度寄存器分别连接所述的写入控制电路和读出控制电路,所述的闪存单元通过所述的写入控制电路连接外部写操作信号,所述的闪存单元通过所述的读出控制电路连接外部读操作信号。在一种优选的实施方式中,如图3所示,所述的闪存单元包括多个FLASH存储页,每个闪存页均包括多个FLASH存储块,各闪存页均连接所述的读写控制扩展电路単元。在一种更优选的实施方式中,所述的FLASH存储器电路还包括外部扩展电路单元,所述的外部扩展电路单元连接于所述的读写控制扩展电路単元。该外部扩展电路单元为嵌入式闪存控制电路。所述的嵌入式闪存控制电路可以为单片机闪存控制电路。在实际应用中,本实用新型的FLASH存储器电路的总体结构图如图I所示。其中,FLASHIP—般由代エ厂提供,包含FLASH単元和读写电路;读写控制扩展电路位于FLASH IP的外围,用于扩展FLASH的擦写次数,是本实用新型的主要部分;其它电路(可选)位于读写控制扩展电路的外国,即本实用新型所述的FLASH电路不仅可用于纯FLASH存储电路,也可用于嵌入式FLASH电路,如FLASH型MCU等。读写控制扩展电路包括长度寄存器、写入控制电路和读出控制电路。其中,长度寄存器用于记录每次需更新的字节数,并记为η ;写入控制电路根据长度寄存器中记录的数字η,得到块长度,并记为I。对FLASH页进行以I为间隔扫描,读取并判断每ー块的数据标识,并将数据写入未曾写入数据的块。如果某页内所有的块都已写入数据,则启动对该页的擦除操作,擦除完成后再进行写入操作;读出控制电路,在读操作时,根据长度寄存器中记录的数字n,得到I。对FLASH页以I为间隔进行扫描,读取并判断每ー块的数据标识,如果当前块存储的是有效数据,则将数据读出。在FLASH IP的外围加入图I中的读写控制扩展电路以后,应用软件/硬件无需再对FLASH做擦除操作,由扩展电路自行产生擦除操作。并且,应用软件/硬件对FLASH的所有读写操作均经过扩展电路转换以后再发给FLASH IP,应用软件/硬件对FLASH的所有读写操作不再以字节为单位进行寻址,只需对FLASH的页进行寻址,简化了应用软件/硬件的设计。图3是FLASH页的逻辑划分图。将ー个FLASH页划分为若干块。姆ー块都可用于存放需更新的数据,但在某ー时刻,只有一个块中存放的是有效数据。显然,页的字节数m应远大于块长度I。因此,应选择页字节数远大于I的FLASH IP,如果现有的FLASH IP无法满足此要求,可向代エ厂定制。图4是ー个块的数据结构图。块的开头是数据标识,长度为I字节;随后的字节I 字节η即为数据内容;最后一个字节为校验字节。在对FLASH页作擦除操作后,所有块的数据标识为“OxfT”,表示所有块为空闲块(未写入过数据)。定义ー个数据有效标志和数据过期标志,如果某ー块的数据标识内容为数据有效标志,表示该块为有效块(包含有效数据);如果某ー块的数据标识内容为数据过期标志,表示该块为过期块(包含的数据已经失效)。作为ー个最佳实施例,校验字节的校验方式采用累加和校验(将字节I 字节η的内容相加,并将结果中超出一字节的进位舍去,即得到累加和)。图2是本实用新型中的读写控制扩展电路的框图。读写控制扩展电路接收外部读/写操作,转换后产生对FLASH IP的操作信号。注当图I中的“外部扩展电路单元”存在时,外部读/写操作可能来自“外部扩展电路单元”,也可能来自整个电路外部;当图I中的“外部扩展电路单元”不存在时,外部读/写操作来自电路外部。当电路初始化时,应向长度寄存器写入需更新数据的字节数,随后的每次读/写操作,写入控制电路或读出控制电路都将从长度寄存器中读出该字节数,用于对FLASH页的寻址。写入控制电路的工作原理是接收到外部写操作后,读取长度寄存器的内容,加上数据标识和检验字节(可选)的长度,得到I。从FLASH页的低地址开始,依次扫描每ー块并读取当前块的数据标识进行判断。如果当前块为过期块,则扫描下ー块;如果当前块为有效块(包含上一次写操作时写入的数据),则启动一次写操作,将当前块的数据标识写为数据过期标志(执行本次写入操作后,上一次写入的数据即为过期数据);如果当前块为空闲块,则启动一次写操作,将待写入的数据写入当前块,同时向当前块的数据标识写入数据有效标志,向当前块的校验字节写入经组合逻辑运算得到的校验数据(可选)。由于FLASH的特性是写操作可以把某一位从“I”写为“0”,但不能从“O”写为“1”,因此上节中所述将有效块的数据标识写为数据过期标志的操作决定了若数据有效标志中的“O”在数据过期标志中的对应位也必须是“O”。作为ー个最佳实施例,取数据有效标志为“0xA5”,数据过期标志为“0x00”。如果扫描完整个FLASH页,每ー块的数据标识都不等于“Oxff ” (说明每一块都已写入过数据),则写入控制电路将启动一次对FLASH页的擦除操作,擦除完成后再重新执行扫描和写入数据的操作。读出控制电路的工作原理是接收到外部读操作后,读取长度寄存器的内容,加上数据标识和检验字节(可选)的长度,得到I。从FLASH页的低地址开始,依次扫描每ー块并读取当前块的数据标识进行判断。如果当前块为过期块,则扫描下ー块;如果当前块为有
效块,则将数据读出。如果,有效块中存在如图4所示的校验字节,则读出有效块中的数据前先使用组合逻辑对数据进行校验,校验正确后才将数据读出。采用了该实用新型的支持高擦写次数的FLASH存储器电路,由于其包括闪存单元和读写控制扩展电路单元,所述的读写控制扩展电路単元包括写入控制电路、读出控制电路和长度寄存器,所述的长度寄存器分别连接所述的写入控制电路和读出控制电路,所述的闪存单元通过所述的写入控制电路连接外部写操作信号,所述的闪存单元通过所述的读出控制电路连接外部读操作信号,使得该FLASH存储器电路在接收到外部写操作吋,能够首先根据长度寄存器中记录的数字,得到块长度,再对FLASH存储页进行以所述的块长度为间隔的扫描,读取并判断每ー块的数据标识,并将数据写入未曾写入数据的块,如果某页内所有的块都已写入数据,则启动对该页的擦除操作,擦除完成后再进行写入操作,从而提升闪存单元中内每ー FLASH存储页的利用率,从而有效提高擦写次数,以此提供一种结构简单,成本低廉,且应用范围广泛的ー种支持高擦写次数的FLASH存储器电路。
在此说明书中,本实用新型已參照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本实用新型的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。
权利要求1.一种支持高擦写次数的FLASH存储器电路,其特征在于,所述的FLASH存储器电路包括闪存单元和读写控制扩展电路单元,所述的闪存单元通过所述的读写控制扩展电路连接外部读写操作信号。
2.根据权利要求I所述的支持高擦写次数的FLASH存储器电路,其特征在于,所述的读写控制扩展电路单元包括写入控制电路、读出控制电路和长度寄存器,所述的长度寄存器分别连接所述的写入控制电路和读出控制电路,所述的闪存单元通过所述的写入控制电路连接外部写操作信号,所述的闪存单元通过所述的读出控制电路连接外部读操作信号。
3.根据权利要求I所述的支持高擦写次数的FLASH存储器电路,其特征在于,所述的FLASH存储器电路还包括外部扩展电路单元,所述的外部扩展电路单元连接于所述的读写控制扩展电路单元。
4.根据权利要求3所述的支持高擦写次数的FLASH存储器电路,其特征在于,所述的外部扩展电路单元为嵌入式闪存控制电路。
5.根据权利要求4所述的支持高擦写次数的FLASH存储器电路,其特征在于,所述的嵌入式闪存控制电路为单片机闪存控制电路。
6.根据权利要求I至5中任一项所述的支持高擦写次数的FLASH存储器电路,其特征在于,所述的闪存单元包括多个FLASH存储页,每个闪存页均包括多个FLASH存储块,各闪存页均连接所述的读写控制扩展电路单元。
专利摘要本实用新型涉及一种支持高擦写次数的FLASH存储器电路,其包括闪存单元和读写控制扩展电路单元,读写控制扩展电路单元包括写入控制电路、读出控制电路和长度寄存器,长度寄存器分别连接写入控制电路和读出控制电路,闪存单元通过写入控制电路连接外部写操作信号,并通过读出控制电路连接外部读操作信号。采用该种结构的使得该FLASH存储器电路,进行写操作时,首先读取长度寄存器中的块长度,再对存储页进行以块长度为间隔的扫描,判断每一块的数据标识,将数据写入未曾写入数据的块,若所有的块都已写入,则进行擦除后再行写入,以此提升存储页的利用率,提高擦写次数,提供一种结构简单,成本低廉,且应用范围广泛的支持高擦写次数的FLASH存储器电路。
文档编号G11C16/10GK202473263SQ201220099378
公开日2012年10月3日 申请日期2012年3月16日 优先权日2012年3月16日
发明者赵海, 邱丹, 陈长华, 顾宇飞, 高庆 申请人:无锡华润矽科微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1