本发明专利技术公开了一种NAND FLASH坏块管理系统,包括NAND FLASH接口控制单元、坏块管理单元、非易失性存储器接口控制单元和非易失性存储器,所述NAND FLASH接口控制单元连接NAND FLASH阵列,所述NAND FLASH接口控制单元连接坏块管理单元,所述坏块管理单元通过非易失性存储器接口控制单元连接非易失性存储器。所述的非易失性存储器是EEPROM。所述的坏块管理单元基于FPGA。
【技术实现步骤摘要】
本专利技术属于集成电路存储
,特别涉及一种NAND FLASH坏块管理系统及方法。
技术介绍
FLASH,是一种电子式可清除程序化只读存储器的形式,允许在操作中被多次擦或写的存储器。这种科技主要用于一般性数据存储,以及在电脑与其他数字产品间交换传输数据,如储存卡与U盘。闪存是一种特殊的、以宏块抹写的EEPROM。早期的闪存进行一次抹除掉就会清除掉整颗芯片上的数据。闪存是非易失性的存储器。这表示单就保存数据而言,它是不需要消耗电力的。与硬盘相比,闪存也有更佳的动态抗震性。这些特性正是闪存被移动设备广泛采用的原因。闪存将数据存储在由浮闸晶体管组成的记忆单元数组内,在单阶存储单元(Single-level cell, SLC)设备中,每个单元只存储I比特的信息。而多阶存储单元(Mult1-level cell, MLC)设备则利用多种电荷值的控制让每个单元可以存储I比特以上的数据。NOR型闪存内部记忆单元以平行方式连接到比特线,允许个别读取与程序化记忆单元。这种记忆单元的平行连接类似于CMOS NOR闸中的晶体管平行连接。NOR型闪存面世后,成为比现有的EPROM与EEPROM存储器更经济、更方便的复写型只读存储器。NOR的传输效率很高,在I?4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。NAND型闪存内部记忆单元以顺序方式连接,类似于NAND闸。顺序连接方式所占空间较平行连接方式为小,降低了 NAND型闪存的成本。因为采用顺序连接方式及去除字符组的接触点,NAND型闪存记忆单元的大型闸格所占面积只有NOR型记忆单元的60%。NAND结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于flash的管理需要特殊的系统接口。为了能够有效使用NAND FLASH,需要在读写操作前建立坏块表,用于屏蔽坏块,防止破坏数据有效性。
技术实现思路
本专利技术的目的是提供一种NAND FLASH坏块管理系统及方法。本专利技术的技术方案是,一种NAND FLASH坏块管理系统,包括NAND FLASH接口控制单元、坏块管理单元、非易失性存储器接口控制单元和非易失性存储器,所述NAND FLASH接口控制单元连接NAND FLASH阵列,所述NAND FLASH接口控制单元连接坏块管理单元,所述坏块管理单元通过非易失性存储器接口控制单元连接非易失性存储器。进一步的,所述的非易失性存储器是EEPR0M。进一步的,所述的坏块管理单元基于FPGA。一种NAND FLASH坏块管理方法,所述的NAND FLASH坏块管理方法包括更新坏块表,具体步骤如下:按照块地址递增的顺序遍历NAND FLASH阵列的每一个块单元;查看当前块的首个OOB区域,如果该区域的第一个字节为00H,表示该块单元为坏块,如果不为00H,那么对该块进行擦除操作,如果状态寄存器显示擦除成功,则进行误码检测,否则将首个OOB区域的第一个字节数据编程为OOH用于标记该坏块,同时在坏块表中将该地址代表的块标记为坏块。进一步的,所述的误码检测通过写入全O数据,再通过读取操作检验非O个数来判断误码个数,重复进行若干次,若超过纠错性能则标记为坏块。进一步的,所述坏块表保存在片上RAM中。进一步的,所述误码检测完成后,将片上RAM保存的坏块表写入到非易失性存储器的相应存储区域,用于更新坏块表。进一步的,更新坏块表时,跳过当前坏块,对其余块进行包括擦除和误码检测。一种NAND FLASH坏块管理方法,所述的NAND FLASH坏块管理方法包括读取坏块表,当读取坏块表时,通过比较三份备份判断是否发生掉电事件,如果三份备份数据相同,则坏块保存过程中过程完整,数据有效,如果不同,则选取坏块数量最多的备份作为有效坏块表,更新其余两份备份。进一步的,进行更新坏块表操作。本专利技术的技术方案在系统上电后,根据需求决定更新坏块表或读取坏块表。系统更新坏块表时,跳过现有坏块,对其余块进行坏块检测,包括擦除检测以及误码检测。检测完成后更新坏块表。系统读取坏块表时,通过比较三份备份判断是否发生掉电事件。如果三份备份数据相同,则坏块保存过程中过程完整,数据有效。如果不同,则选取坏块数量最多的备份作为有效坏块表,更新其余两份备份,同时建议重新进行坏块检测更新操作。在上述实现NAND FLASH坏块管理的方法中,对坏块的检测分为擦除检测和误码检测两部分。擦除检测通过对选中块进行擦除操作,根据擦除结果判断选中块的有效性。误码检测通过对通过擦除检测的块进行数据写入和读出比对,判断误码出现次数,超过现有系统的误码校验能力,则标记为坏块。在上述实现NAND FLASH坏块管理的方法中,对坏块的更新通过三次写入来防止掉电等特殊情况带来的数据有效性的破坏。本专利技术提及的OOB区域,OOB是out of band缩写,带外的意思。最初基于NandFlash的硬件特性:数据在读写时候相对容易错误,所以为了保证数据的正确性,必须要有对应的检测和纠错机制,此机制被叫做EDC(Error Detect1n Code)/ECC(Error CodeCorrect1n,错误码纠正,或者Error Checking and Correcting),所以设计了多余的区域,用于放置数据的校验值。本专利技术可以提高坏块表的有效性,提高NAND FLASH在使用过程中存储读取数据的准确性,提高效率。【附图说明】图1是本专利技术的设计结构示意图;图2是本专利技术的NAND FLASH坏块检测程序流程图;图3是本专利技术的在系统中的应用示意图。【具体实施方式】如图1所示,本专利技术包括NAND FLASH的接口控制单元,非易失性存储器的接口控制单元以及坏块管理单元。非易失性存储器可以为EEPROM,比常规的写入在NAND FLASH的OOB区域带来更高的数据有效性。如图2所示,按照块地址(Block Address)递增的顺序遍历NAND FLASH阵列的每一个块(Block)单元,查看当前块(Block)的首个OOB区域,如果该区域的第一个字节(Byte)为8’h00,表示该Block单元为坏块。如果不为8’h00,那么对该块进行擦除操作,如果状态寄存器显示擦除成功,则进行误码检测,否则将首个00B区域的第一个字节(Byte)数据编程为8’ h00用于标记该坏块,同时在嵌入式系统片上RAM的坏块表中将该地址代表的块(Block)标记为坏块。误码检测通过写入全O数据,再通过读取操作检验非O个数来判断误码个数,重复进行三次,若超过纠错性能则标记为坏块。在NAND FLASH阵列完成上述操作后,将片上RAM保存的坏块表写入到EEPROM的相应存储区域,用于更新坏块表。如图3所示,系统中的FPGA通过本专利技术控制NAND FLASH,并将坏块数据通过本专利技术与EEPROM进行交互。【主权项】1.一种NAND FLASH坏块管理系统,其特征在于,包括NAND FLASH接口控制单元、坏块管理单元、非易失性存储器接口控制单元和非易失性存储器, 所述NAND FLASH接口控制单元连接NAND FLASH阵列, 所述NAND FLASH接口控制单元连接坏块管理单元, 所述坏块管理单元通本文档来自技高网...
【技术保护点】
一种NAND FLASH坏块管理系统,其特征在于,包括NAND FLASH接口控制单元、坏块管理单元、非易失性存储器接口控制单元和非易失性存储器,所述NAND FLASH接口控制单元连接NAND FLASH阵列,所述NAND FLASH接口控制单元连接坏块管理单元,所述坏块管理单元通过非易失性存储器接口控制单元连接非易失性存储器。
【技术特征摘要】
【专利技术属性】
技术研发人员:周仕成,殷科军,舒汀,唐斌,郁文贤,黄飞,
申请(专利权)人:上海交通大学,上海无线电设备研究所,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。