一种增加TLCNand闪存使用周期的方法及其系统与流程

文档序号:12787818阅读:412来源:国知局
一种增加TLC Nand闪存使用周期的方法及其系统与流程

本发明涉及数据存储技术领域,尤其涉及一种增加TLC Nand闪存使用周期的方法及其系统。



背景技术:

Nand闪存作为一种低价、大容量的存储设备,在嵌入式系统中使用越来越广泛。SLC(Single-Level Cell)闪存为Nand闪存中的一种,SLC利用正、负两种电荷,一个浮动栅存储一个字节的信息,约10万次擦写寿命。TLC(Triple-LevelCell)闪存为目前市面上应用较为普遍的一种Nand闪存,TLC利用不同电位的电荷,一个浮动栅存储3个字节的信息,约500-1000次擦写寿命,对于TLC闪存来说,由于本身的擦写次数有限,频繁的大量写入数据是TLC闪存不能承受的。由此可见,如何提高TLC闪存的擦写寿命是亟待解决的问题。



技术实现要素:

本发明所要解决的技术问题是:提供一种可以增加TLC Nand闪存使用周期的方法及其系统,可以大大降低数码产品的成本。

为了解决上述技术问题,本发明采用的技术方案为:

一种增加TLC Nand闪存使用周期的方法,包括:

判断TLC Nand闪存的块中是否存在坏块;

若是,则将所述坏块设置为SLC存储模式。

本发明采用的另一技术方案为:

一种增加TLC Nand闪存使用周期的系统,包括:

判断模块,用于判断TLC Nand闪存的块中是否存在坏块;

设置模块,用于若是,则将所述坏块设置为SLC存储模式。

本发明的有益效果在于:由于SLC闪存的擦写寿命大于TLC闪存,所以将TLC Nand闪存中的坏块设置为SLC存储模式继续使用,可以增加TLC闪存的使用周期,大大降低数码产品的成本。

附图说明

图1为本发明的一种增加TLC Nand闪存使用周期的方法的流程图;

图2为本发明实施例一的一种增加TLC Nand闪存使用周期的方法的流程图;

图3为本发明的一种增加TLC Nand闪存使用周期的系统的结构示意图;

图4为本发明实施例二的一种增加TLC Nand闪存使用周期的系统的结构示意图;

标号说明:

1、判断模块;2、设置模块;3、创建模块;4、添加模块;5、新建模块;6、调用模块;11、读取单元;12、判断单元;13、判定单元。

具体实施方式

为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。

本发明最关键的构思在于:将TLC Nand闪存中的坏块设置为SLC存储模式继续使用,可以延长TLC Nand闪存的使用寿命。

请参照图1,一种增加TLC Nand闪存使用周期的方法,包括:

判断TLC Nand闪存的块中是否存在坏块;

若是,则将所述坏块设置为SLC存储模式。

从上述描述可知,本发明的有益效果在于:首先判断TLC Nand闪存中是否存在坏块,由于TLC Nand闪存可以操作在SLC存储模式,SLC闪存的擦写寿命大于TLC闪存,所以可将TLC Nand闪存中的坏块设置为SLC存储模式继续使用,大大降低数码产品的成本。

进一步的,所述“将所述坏块设置为SLC存储模式”之后还包括:

创建坏块表;

将所述坏块添加至所述坏块表。

由上述描述可知,将坏块添加至坏块表方便对坏块进行记录和查找。

进一步的,所述“判断TLC Nand闪存的块中是否存在坏块”具体为:

若对TLC Nand闪存的块中的一块进行擦除操作,则读取所述一块的错误更正码;

判断所述错误更正码是否满足可进行错误更正的预设条件;

若否,则判定所述一块为坏块。

由上述描述可知,当通过错误更正码不能更正块的错误时,即判断所述块为坏块。

进一步的,所述“将所述坏块添加至所述坏块表”之后还包括:

新建SLC空块列表,并将所述坏块对应的SLC块添加至所述SLC空块列表中;

当需使用SLC空块时,调用所述SLC空块列表的SLC块。

由上述描述可知,SLC空块列表中可以显示哪些SLC块为空块,即哪些SLC块可以调用替代TLC坏块进行存储。

请参照图3,本发明涉及的另一技术方案为:

一种增加TLC Nand闪存使用周期的系统,包括:

判断模块,用于判断TLC Nand闪存的块中是否存在坏块;

设置模块,用于若是,则将所述坏块设置为SLC存储模式。

进一步的,还包括:

创建模块,用于创建坏块表;

添加模块,用于将所述坏块添加至所述坏块表。

进一步的,所述判断模块包括:

读取单元,用于若对TLC Nand闪存的块中的一块进行擦除操作,则读取所述一块的错误更正码;

判断单元,用于判断所述错误更正码是否满足可进行错误更正的预设条件;

判定单元,用于若否,则判定所述一块为坏块。

进一步的,还包括:

新建模块,用于新建SLC空块列表,并将所述坏块对应的SLC块添加至所述SLC空块列表中;

调用模块,用于当需使用SLC空块时,调用所述SLC空块列表的SLC块。

实施例一

请参照图2,本发明的实施例一为:一种增加TLC Nand闪存使用周期的方法,既可以延长TLC Nand闪存的使用寿命,又可以大大降低数码产品的生产成本。包括:

S1、判断TLC Nand闪存的块中是否存在坏块,若是,则执行步骤S2。由于Nand闪存的工艺不能保证Nand的Memory Array在其生命周期中保持性能可靠,因此,Nand闪存在生产和使用过程中都会产生坏块。在生产过程中产生的坏块成为固有坏块,在使用过程中产生的坏块成为使用坏块。如果在第一个块的某个Page进行编程的时候发生了错误就要把这个块标记为坏块,首先就要把其他号的page里面的内容备份到另一个空的好块里面,然后,将这个块标记为坏块,当然这可能会犯“错杀”的错误。本实施例中,判断某一块是否为坏块的具体过程为:若对TLC Nand闪存的块中的一块进行擦除操作,则读取所述一块的错误更正码;判断所述错误更正码是否满足可进行错误更正的预设条件;若否,则判定所述一块为坏块。所述错误更正码即为ECC(Error Checking andCorrecting,错误检查和纠正)码,ECC码是将信息进行8比特位的编码,采用这种方式可以恢复1比特的错误,每一次数据写入内存时,ECC码使用一种特殊的算法对数据进行计算,其结果成为校验位。ECC码可以从逻辑上分离错误并通知系统,当只出现单比特错误的时候,ECC码才可以把错误改正过来,且不影响系统运行,此时ECC码满足可进行错误更正的预设条件。当ECC码不能对块的错误进行更正时,即判断所述块为坏块。

S2、将所述坏块设置为SLC存储模式。即,将坏块的存储模式设置为SLC模式继续使用,由于SLC闪存的擦写寿命大于TLC闪存,所以可以延长TLCNand闪存的使用寿命。

S3、创建坏块表。若TLC Nand闪存在出厂时自带坏块表,那么可以省略该步骤。

S4、将所述坏块添加至所述坏块表。

S5、新建SLC空块列表,并将所述坏块对应的SLC块添加至所述SLC空块列表中。即,所述SLC空块列表用于将已经替代了TLC存储模式的SLC块记录下来。

S6、当需使用SLC空块时,调用所述SLC空块列表的SLC块。SLC空块列表中由于记录了已经使用了的SLC块,所以可以显示哪些SLC块为空块,即哪些SLC块可以调用出来替代TLC坏块进行存储。

本实施例中,当TLC Nand闪存的坏块比率达到预设值时,就停止进行步骤S2,例如,当坏块比率达到50%时,停止将坏块设置为SLC存储模式的步骤,TLC Nand闪存就视为报废。

本实施例中,由于SLC闪存的擦写寿命大于TLC闪存,所以将TLC Nand闪存中的坏块设置为SLC存储模式,可以延长TLC Nand闪存的使用寿命,降低数码产品的生产成本。

实施例二

请参照图4,本发明的实施例二与实施例一中的方法相对应,为一种增加TLC Nand闪存使用周期的系统,包括:

判断模块1,用于判断TLC Nand闪存的块中是否存在坏块;所述判断模块包括:读取单元11,用于若对TLC Nand闪存的块中的一块进行擦除操作,则读取所述一块的错误更正码;判断单元12,用于判断所述错误更正码是否满足可进行错误更正的预设条件;判定单元13,用于若否,则判定所述一块为坏块;

设置模块2,用于若是,则将所述坏块设置为SLC存储模式。

创建模块3,用于创建坏块表;

添加模块4,用于将所述坏块添加至所述坏块表。

新建模块5,用于新建SLC空块列表,并将所述坏块对应的SLC块添加至所述SLC空块列表中;

调用模块6,用于当需使用SLC空块时,调用所述SLC空块列表的SLC块。

综上所述,本发明提供的一种增加TLC Nand闪存使用周期的方法及其系统,由于SLC闪存的擦写寿命大于TLC闪存,将TLC Nand闪存中的坏块设置为SLC存储模式,可以延长TLC Nand闪存的使用寿命,降低数码产品的生产成本。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

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