提高FLASH使用寿命的方法技术

技术编号:8241507 阅读:256 留言:1更新日期:2013-01-24 22:25
本发明专利技术公开了一种提高FLASH使用寿命的方法,所述FLASH用于存储用户数据,将FLASH划分为两个以上的能够完整存储所述用户数据存储单元,两个以上的存储单元轮流存储数据,而不再对固定存储单元存储内容,造成某一个存储单元被多次反复读写,使存储单元被循环使用,避免了某个存储单元被多次使用造成FLASH出现坏扇区,提高了FLASH的使用寿命。

【技术实现步骤摘要】

本专利技术涉及数据存储
,特别是涉及一种提高FLASH使用寿命的方法
技术介绍
随着电子技术的发展,电子设备的功能日益丰富,为了实现电子设备的功能,人们需要把各种的数据存储到相应的电子设备的存储芯片中,一般采用FLASH存储器进行存储。FLASH存储器又称闪存,是一种非易失性存储器,广泛应用于嵌入式系统中,集合了只读内存(ROM)和随机存储器(RAM)的长处,不仅具备电子可擦除可编程的性能,还可以快速读取数据,使数据不会因为断电而丢失。·FLASH存储器可以进行读写操作,在进行写操作之前要先进行擦除,FLASH存储器按照块为单位进行擦除,当对FLASH进行同一地址高频率的擦写操作后,FLASH会很快出现坏扇区从而影响存储器的正常使用。
技术实现思路
基于上述不足,有必要提供一种提高FLASH使用寿命的方法,以解决高频率的擦写操作影响FLASH使用寿命的问题。一种提高FLASH使用寿命的方法,所述FLASH用于存储用户数据,包括以下步骤从FLASH中划出两个以上的存储单元,所述每一存储单元的数据存储区能够完整存储所述用户数据;每一次更新所述用户数据时,将更新后的用户数据存储在另一非当前存储单元中;所述两个以上的存储单元依次轮流存储所述用户数据。在其中一个实施例中,所述每个存储单元还包括身份编码存储区和状态标识存储区,分别用于存储身份编码和状态标识;其中,当所述存储单元的数据存储区为空时,所述状态标识为全新;写准备工作就绪时,所述状态标识为准写;写工作完成后,所述状态标识为写完;存储单元被废弃时,所述状态标识为废弃。在其中一个实施例中,所述状态标识全新的数据标识为OxFF,所述状态标识准写的数据标识为OxFC,所述状态标识写完的数据标识为OxR),所述状态标识废弃的数据标识为 0x00。在其中一个实施例中,所述更新用户数据的步骤具体包括以下步骤写数据初始化,读取所述状态标识为写完的存储单元的地址;读取下一个存储单元状态标识;如果所述下一个存储单元的状态标识位全新,则将所述下一个存储单元状态标识为准写,写入存储数据以及身份编码,然后将所述状态标识为写完,最后将上一次状态标识为写完的存储单元的状态标识置为废弃;如果所述下一个存储单元的状态标识位不为全新,则继续判断与所述下一个存储单元相邻的下一存储单元的状态标识。在其中一个实施例中,如果所述下一个存储单元的状态标识位不为全新并且为准写时,将所述存储单元状态标识为废弃。在其中一个实施例中,进一步包括以下步骤将所述FLASH划分为一个以上的逻辑块,每个所述逻辑块包括一个以上的所述存储单元;判断所述状态标识为写完的存储单元所在的逻辑块是否已写满; 如果未写满,则查找该逻辑块中状态标识为全新的存储单元,并将用户数据存储在该全新的存储单元中;如果已写满,则查找并擦除下一个逻辑块,并将用户数据存储在该下一个逻辑块的第一个存储单元中。在其中一个实施例中,还包括读数据的步骤,具体为读数据初始化;扫描状态标识,判断所述状态标识是否为写完;如果否,则继续扫描下一个存储单元,如果扫描全部存储单元未扫描到状态标识为写完的存储单元,则提供默认数据;如果是,则检验身份编码是否合法;如果合法,则读取相应数据并返回存储单元的地址;如果不合法,则将其状态标识为废弃,继续扫描下一个存储单元。在其中一个实施例中,对每个存储单元进一步设置擦写次数状态位,所述擦写次数状态位存放于所述存储单元,记录所在存储单元的擦写次数;写数据时,初始化过程读取上一次存储单元的擦写次数;每次写入数据后擦写次数加I。在其中一个实施例中,所述各个逻辑块大小相同,所述各个存储单元大小相同。上述提高FLASH使用寿命的方法,所述FLASH用于存储用户数据,将FLASH划分为两个以上的能够完整存储所述用户数据存储单元,两个以上的存储单元轮流存储数据,而不再对固定存储单元存储内容,造成某一个存储单元被多次反复读写,使存储单元被循环使用,避免了某个存储单元被多次使用造成FLASH存储器出现坏扇区,提高了 FLASH存储器的使用寿命。附图说明图I为本专利技术提高FLASH存储器使用寿命方法的较佳实施例的流程图;图2为图I中的FLASH存储器一较佳实施例的数据结构图;图3为本专利技术提高FLASH存储器使用寿命方法的较佳实施例中写数据流程图;图4为本专利技术提高FLASH存储器使用寿命方法的较佳实施例中读数据流程图。具体实施例方式一种提高FLASH使用寿命的方法,该FLASH用于存储用户数据。该方法包括将FLASH划分为两个以上的存储单元,每一存储单元的数据存储区能够完整存储用户数据,每一次更新所述用户数据时,将更新后的用户数据存储在另一非当前存储单元中,用两个以上的存储单元依次轮流存储用户数据,而不再对固定存储单元存储内容,造成某一个存储单元被多次反复读写, 使存储单元被循环使用,避免了某个存储单元被多次使用造成FLASH存储器出现坏扇区,提高FLASH存储器使用寿命。上述提高FLASH使用寿命的方法可以应用于使用FLASH存储数据的电视机,以及其它有数据读写频繁,数据长度相对固定,使用FLASH存储等特点的嵌入式设备,可提高设备使用寿命。如图I所示,为本专利技术提高FLASH存储器使用寿命方法的较佳实施例的流程图。该方法包括以下步骤步骤S110,从FLASH存储器中划出两个以上的存储单元,每一存储单元的数据存储区能够完整存储所述用户数据。步骤S120,每一次更新用户数据时,将更新后的用户数据存储在另一非当前存储单元中。步骤S130,利用两个以上的存储单元依次轮流存储所述用户数据。上述提高FLASH存储器使用寿命的方法,利用两个以上的存储单元依次轮流存储所述用户数据,而不再对固定存储单元存储内容,造成某一个存储单元被多次反复读写,使存储单元被循环使用,避免了某个存储单元被多次使用造成FLASH存储器出现坏扇区,提高了 FLASH存储器使用寿命。请参照图2,图2为图I中的FLASH存储器一较佳实施例的数据结构图。如图2所示,在FLASH存储器中,按照FLASH的物理结构,将FLASH划分为一个以上的逻辑块(BANK),每个逻辑块划分为一个以上的存储单元。当前逻辑块写满时,继续在下一个逻辑块存储。将FLASH存储器划分为若干个逻辑块,当一个逻辑块中所有的存储单元都存满时,判断与该逻辑块相邻的下一逻辑块的存储单元是否都存满,如果没有存满则存储在该下一逻辑块的存储单元中,如果存满,则擦除该下一逻辑块,包括擦除逻辑块包含的所有存储单元数据存储区中存储的数据,这样避免了对某个存储单元进行频繁的写入擦除操作,减少FLASH的磨损,延长FLASH存储器的使用寿命。每个存储单元设置身份编码存储区和状态标识存储区,分别用于存储身份编码和状态标识。当存储单元的数据存储区为空时,状态标识为全新;写准备工作就绪时,状态标识为准写;写工作完成时,状态标识为写完;存储单元被废弃时,状态标识为废弃。上述身份编码,用于在读取数据时判断该存储单元是否合法,合法则读取数据,不合法则将该存储单元状态标识为废弃,并重新查找新的有合法的身份编码的存储单元,如果查找完所有的存储单元未找到有合法的身份编码的存储单元则导入程序的默认值。上述状态标识包括全新、准写、写完和废弃四个状态,本文档来自技高网...

【技术保护点】
一种提高FLASH使用寿命的方法,所述FLASH用于存储用户数据,其特征在于,包括以下步骤:从FLASH中划出两个以上的存储单元,所述每一存储单元的数据存储区能够完整存储所述用户数据;每一次更新所述用户数据时,将更新后的用户数据存储在另一非当前存储单元中;所述两个以上的存储单元依次轮流存储所述用户数据。

【技术特征摘要】

【专利技术属性】
技术研发人员:李新乐康婷霞
申请(专利权)人:TCL光电科技惠州有限公司
类型:发明
国别省市:

网友询问留言 已有1条评论
  • 来自[美国加利福尼亚州圣克拉拉县山景市谷歌公司] 2014年12月05日 19:49
    所谓寿命是指从出生经过发育成长成熟老化以至死亡前机体生存的时间通常以年龄作为衡量寿命长短的尺度由于人与人之间的寿命有一定的差别所以在比较某个时期某个地区或某个社会的人类寿命时通常采用平均寿命平均寿命常用来反映一个国家或一个社会的医学发展水平它也可以表明社会的经济文化的发达状况
    0
1