用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心解决方案电子通信

车载MP3中Flash文件系统的设计与应用

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-01-10 22:34:49
系统开启后能够判断出上次系统中存在的问题并作出相应的处理。

(3)坏块管理

由于Flash内部会有坏块,因此Flash存储管理系统需要对Flash进行坏块管理。本文对坏块的管理分以下两种情况:

①初始坏块处理。Flash存储器在使用前可能会有坏块,而且这些坏块是随机分布的。所以,Flash文件管理系统在系统执行读写操作之前先建立一个坏块表,然后对Flash存储器进行初始化扫描以发现坏块,并将坏块标记为不可用,加入到坏块表中。

②操作过程中坏块处理。在擦除或者编程过程中发生错误时,Flash文件管理系统将该块中其它页的数据重新拷贝到一个新的空块中,然后再将该块标记为坏块,加入到坏块表中。在这个处理过程中,由于对Flash的擦除或者编程操作都会使得Flash存储单元块的内容改变,所以Flash文件管理系统一旦发现Flash存储器的存储单元块成为坏块后便不再对该块进行擦除或编程操作,以免将坏块标志位数据清除掉,而是将该块标记为坏块,并将其加入坏块表中。

Flash文件管理系统在进行上述坏块管理后,坏块单元对用户应用是完全透明的。这大大方便了用户的使用,也达到了车载MP3播放系统的目的。

(4)均衡擦写次数

由于Flash有一定的使用寿命,一般可擦除的次数为10~100万次,所以随着使用次数的增加,会有一些单元逐渐变得不稳定或失败。因此,要尽量避免频繁地对同一块地址操作,以免造成局部单元提前损坏;同时,由于擦除操作耗时较多,也应减少擦除操作,应该尽量达到擦写次数均衡。为此,本文设计了Flash更新算法和磨损程度检测算法。

Flash更新算法是将Flash中要更新的数据直接写入一个空块中,降低由于Flash先擦除后写入的特性带来的对块的频繁擦除;同时,也提高了Flash的使用效率,加快了操作速度。磨损程度检测算法是在对Flash进行写入前必须先对Flash进行坏块扫描,以确保不会将数据写入坏块从而此起数据的丢失。这样设计也是为了提高车载MP3播放系统的可靠性。

2.2 FAT设计

在Flash文件管理系统的基础上,还建立了FAT文件系统来对文件操作进行管理。将FAT文件系统具体分为以下四部分:

(1)FAT的引导区

该引导区存放代码所需的信息及最重要的文件系统信息。这些信息包括了Flash存储器的类型、容量以及划分成多少个簇;每个簇包含多少扇区、FAT表数目、保留扇区数、根目录的首簇号及根目录入口数、版本信息等等。引导扇区是在格式化Flash时生成的。

(2)FAT的文件分配表

文件分配表存放文件所占用的存储空间族链以及Flash存储器的占用和空闲空间的情况,非常重要。为了防止文件分配表损坏而引起文件的丢失,该系统中保存了两个相同的文件分配表FAT1和FAT2,以改善其安全性。在文件系统的操作中,程序对FAT表结构的两个备份进行顺次修改,以此确保Flash存储器上总是存有一整套完好的文件分配表。

系统对FAT表的访问原理如下:访问文件时先从要目录中找到该文件的目录项,从中读出首簇号。然后,目录中找到该文件的目录项,从中读出首簇号。然后在FAT中找到从该首簇号开始的簇链,簇链上的簇号即为文件在逻辑扇区中占用的扇区号链,这样便可以进行数据读写了。

(3)FAT的根目录区

FAT的根目录区是固定大小的紧跟在FAT表后的区域。本文将从FAT区之后紧跟的32个扇区作为根目录区,可以保存512个目录项。每个目录项记录了该文件的文件名、文件属性、文件大小、文件创建的日期和时间以及文件在数据区中所占的首簇号,即该文件在FAT表中的入口等数据。

(4)FAT的数据区

数据区存在文件的数据内容。文件系统对数据区的存储空间是按簇进行划分和管理的。该系统中,定义1Cluster=32sector,一个文件总是占用若干个整簇,文件所使用的最后一簇剩余空间就不再使用。

由图1可以看出,该FAT文件系统提供文件的格式化,文件的打开、删除、关闭,文件的读写、查找等基本的功能。通过Flash文件系统对文件的操作进行管理后,该车载播放系统便可以实现选曲、添加删除歌曲、下载歌曲、音量调节等一系列功能了。

3 应用

通过这样的设计,Flash的存储性能有了较大的改善,而且系统的可靠性也很好。即使在Flash写操作异常终止频发的最恶劣工作条件下,也不会丢失数据,更不会损坏非常重要的文件分配表结构而造成系统的崩溃;因此,本文所设计的Flash文件系统能很好地适合于车载MP3播放系统的应用。



上一页  [1] [2] 

Tags:

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:2,515.62500 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号