基于虚拟扇区FLASH存储管理技术.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于虚拟扇区的 Flash 存储管理技术 文章作者:付助荣 王建华 文章出处:单片机及嵌入式系统应用 摘要:首先,针对闪存 Flash 的存储编程特点,提出一种基于虚拟扇区的闪存管理技术,使系统对Flash 的擦 写次数大大降低,从而提高 Flash 的使用寿命和整个系统的性能。然后,通过嵌入式系统电子名片管理器,介 绍这一技术的使用。随着闪存的广泛应用,对 Flash 的有效存储管理将有很大的实用意义和社会效益。 关键词:闪存Flash 虚拟扇区 VSS 存储管理 扇区分配表 SAT 引言 随着嵌入式系统的迅速发展和广泛应用,大量需要一种能多次编程,容量大,读写、擦除快捷、方便、简单,外围器件少, 价格低廉的非易挥发存储器件。闪存Flash存储介质就是在这种背景需求下应运而生的。它是一种基于半导体的存储器,具有 系统掉电后仍可保留内部信息,及在线擦写等功能特点,是一种替代EEPROM存储介质的新型存储器。因为它的读写速度比EEPROM 更快,在相同容量的情况下成本更低,因此闪存Flash将是嵌入式系统中的一个重要组成单元。 然而,由于Flash读写存储的编程特点,有必要对其进行存储过程管理,以使整个系统性能得以改善。 1 闪存 Flash 的存储编程特点 Flash写:由1变为0,变为0后,不能通过写再变为1。 Flash擦除:由0变为1,不能只某位单元进行擦除。 Flash的擦除包括块擦除和芯片擦除。块擦除是把某一擦除块的内容都变为1,芯片擦除是把整个Flash的内容都变为 1。 通常一个Flash存储器芯片,分为若干个擦除block,在进行Flash存储时,以擦除block为单位。 当在一个block中进行存储时,一旦对某一block中的某一位写0,再要改变成1,则必须先对整个block进行擦除,然 后才能修改。通常,对于容量小的block 操作过程是:先把整个block读到RAM中,在RAM中修改其内容,再擦除整个block, 最后写入修改后的内容。显然,这样频繁复杂的读-擦除-写操作,对于Flash的使用寿命以及系统性能是很不好的,而且系统 也常常没有这么大的RAM空间资源。一种基于虚拟扇区的管理技术可以有效地控制Flash的擦写次数,提高Flash的使用寿命, 从而提高系统性能。 2 基本原理 2.1概念 VSS(Visual Small Sector),虚拟小扇区:以它为单位读写Flash内容。 VSS ID(Visual Small Sector Identity),虚拟小扇区号:只通过虚拟扇区号进行存储,不用考虑它的真实物理地址。 SI(Sector Identity),分割号:一个擦写逻辑块中物理扇区的顺序分割号。 BI(Block Identity),块号:Flash芯片中按擦除进行划分的块号。 SAT(Sector Allocate Table),扇区分配表:一个擦写逻辑块中的扇区分配表。一个SAT由许多SAT单元组成,一个 SAT表对应一个Block,一个SAT单元对应一个VSS。 每个SAT单元最高两位为属性位,后面各位为VSS ID号。如果一个SAT单元由16位组成,则VSS ID最大可以达到16×1024; 而如果SAT单元由8位组成,则VSS ID最大可以达到64,具体约定由应用情况而定。 2.2 实现原理 把每个block分为更小的虚拟逻辑块(visual small sector),称为虚拟扇区,扇区大小根据应用而定。每个block前 面的一固定单元用于记录本block中扇区分配的使用情况(即扇区分配表),包括扇区属性及扇区逻辑号。图1为逻辑扇区划 分示意图。 在进行数据读写和修改时,以虚拟扇区块的大小为单位。要修改某一扇区的数据时,先读出这个扇区的内容,重新找一个 未使用的扇区,把修改后的内容写入这个新扇区。然后,修改原来扇区的属性值为无效,修改这个新扇区的属性为有效,拷贝 VSS ID号到新扇区对应的SAT单元中。 这样,当某一个block中的SAT属性都标为无效时,才对当前block进行擦写。可见,以虚拟扇区大小为单位的存储管理, 对F

文档评论(0)

xiaofei2001129 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档