新闻中心

EEPW首页 > 汽车电子 > 设计应用 > 车载MP3中Flash文件系统的设计与应用

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

作者:时间:2010-01-08来源:网络收藏

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

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文件系统能很好地适合于播放系统的应用。



上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭