[发明专利]一种FLASH存储器的数据擦写方法有效
申请号: | 201110235360.6 | 申请日: | 2011-08-17 |
公开(公告)号: | CN102306125A | 公开(公告)日: | 2012-01-04 |
发明(设计)人: | 闫瑞轩;王志波;汪澜 | 申请(专利权)人: | 深圳市共进电子股份有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 深圳汇智容达专利商标事务所(普通合伙) 44238 | 代理人: | 王志强 |
地址: | 518067 广东省深圳市南山区南海*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 flash 存储器 数据 擦写 方法 | ||
技术领域
本发明涉及数据存储技术领域,尤其涉及一种FLASH存储器的数据擦写方法。
背景技术
FLASH存储器是一种半导体存储器,具有集成度高、读取速度快、单一供电、再编程次数多等显著优点。FLASH存储器作为非易失数据存储设备,被广泛地应用于嵌入式系统中。单片机内的FLASH可以在线编程,也可以存储程序运行时的数据,但修改FLASH中的数据时需要先进行擦除,即修改一个字节的数据也要先擦除这个字节所在扇区的全部数据,然后再写入数据。传统的数据写入方法采用如下的过程:1.先将整个扇区的数据读出到缓存中;2。在缓存中修改数据;3.擦除扇区,将缓存中修改后的数据写回该扇区内。这种传统的方法存在以下不足:每改动扇区中的一个字节都要擦除整个扇区的数据,而某些数据需要频繁修改,该数据所在的扇区会被频繁擦除。由此可知传统的FLASH写入方法需要频繁的擦除数据,但是FLASH的擦除次数是有限的,使用传统方法进行上数据的写入和修改会大大降低FLASH的使用寿命。
发明内容
本发明的目的在于提供一种FLASH存储器的数据擦写方法,有效降低FLASH存储器的擦除次数,延长FLASH存储器的使用寿命。
本发明的目的是通过以下技术方案实现的。
一种FLASH存储器的数据擦写方法,包括:
在需要向扇区中写入数据时,首先判断该扇区的剩余空间是否足够存放当前待写入的数据,若足够,则将数据直接写入该扇区的空闲空间;若不够,则擦除该扇区后再写入数据;写入完成后记录本次写入数据的起始及结束地址信息,并更新有效数据地址信息为本次写入数据的首地址。
优选地,上述方法中,在每次向扇区中写入数据的过程中,将数据顺序写入扇区的空闲空间的最低地址。
优选地,判断扇区的剩余空间是否足够存放当前待写入的数据的方法为:读取上次写入数据的地址信息记录,将扇区的结束地址减去上次写入数据的结束地址得到扇区的剩余空间大小,比较剩余空间和当前待写入的数据的大小,若前者大于后者,则认定剩余空间足够存放当前待写入的数据,否则不够存放当前待写入的数据。
优选地,上述方法中,在判断出扇区的剩余空间足够存放当前待写入数据时,读取上次写入数据的地址信息记录,以上次写入数据的结束地址的下一字节开始写入当前待写入数据。
优选地,上述方法还包括:在第一次写入数据时,擦除整个扇区,从该扇区的起始位置开始写入。
与现有技术相比,本发明实施例具有以下有益效果:
本发明在扇区中顺序写入数据,以最后一次写入数据的地址为有效数据地址,而在扇区中剩余空间不足够写入数据时才擦除整个扇区并从其初始位置开始写入,这样明显大大减少了扇区的擦除次数,不仅提高了效率,而且延长了FLASH存储器的使用寿命。
附图说明
图1是本发明实施例中FLASH存储器的数据擦写方法流程。
图2是本发明实施例中扇区中数据的存放布局。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1所示,本实施例中FLASH存储器的数据擦写方法包括以下步骤。
101、在需要写入更新扇区中的信息时,判断上一次存放数据的记录是否存在,若存在,则执行步骤102;若不存在,则执行步骤103。
102、由于是第一次写入数据,按照普通流程,擦除整个扇区,并从该扇区的起始位置开始写入数据,记录本次写入数据的起始地址和结束地址,并更新有效数据地址信息为本次写入数据的首地址。
103、读取上次写入数据的地址信息记录,据此计算当前扇区中的剩余空间。计算方法为:将扇区的结束地址减去上次写入数据的结束地址记得到当前扇区的剩余空间大小。
104、判断剩余空间是否足够存放本次要写入的数据,若足够,则执行步骤105;若不够,则执行步骤106。
105、以上次写入数据的结束地址的下一字节为起始位置开始写入本次要写入的数据,记录本次写入数据的起始地址和结束地址信息,并更新有效数据地址信息为本次写入数据的首地址。
106、擦除整个扇区,从该扇区的开始位置写入数据,写入完成之后记录本次写入数据的起始地址和结束地址信息,并更新有效数据地址信息为本次写入数据的首地址。
107、等待下一次写入数据时,返回步骤101。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市共进电子股份有限公司,未经深圳市共进电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110235360.6/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置