论文部分内容阅读
随着电子技术的不断发展,嵌入式系统越来越多地在控制类、消费类、通讯类等电子产品广泛应用,嵌入式技术也越来越和人们的生活紧密结合。同时,计算机硬件的发展以及数据量的增加,对存储设备的要求也越来越高。本论文深入研究了嵌入式系统中数据存储和数据交换,提出了一套完整的嵌入式系统中数据存储和数据交换的设计方案,并详细介绍了其实现过程。Flash存储器由于体积小、功耗低、性能稳定等特点在便携式电子产品中得到了广泛的应用。Flash存储器主要有两种形式:Nor Flash和Nand Flash。Nor Flash具有XIP特性,可以直接在芯片上执行代码,而且读取速度较快。Nand Flash存储密度大、容量大、生产工艺简单、性价比高,但是控制方式复杂而且可能会存在一定的坏块。SD卡是近年来流行的大容量便携式存储卡。本系统中,我们以Flash和SD卡作为数据存储介质。在存储介质的选择方面,在系统内部采用了体积小、容量大、成本低的Flash,并采用Nor和Nand Flash相结合的方案:在Nor Flash上存储与系统相关的软件和程序,在Nand Flash上存储用户数据。系统外部采用安全性高、容量大、性能佳的SD卡作存储容量扩展。实现了基于Atmel公司ARM系列MCU的Flash存储器和SD卡的硬件电路的设计及底层驱动程序的设计。为了有效的管理存储介质上的数据,同时为了方便与PC进行数据交换,必须采用一种标准的格式组织数据,这就需要用文件系统把数据以文件的形式组织起来。本文分别根据Nor和Nand Flash数据存储和操作特点,分析了JFFS2和YAFFS的特点以及各自的存储方式、断电保护、损耗平衡、垃圾回收等一系列的策略和机制,并在Nor和Nand Flash上实现并优化了这些管理机制。在SD上则采用目前主流操作系统(Windows, Linux等)所支持的FAT16文件格式,完成了从磁盘格式化到文件的读写等标准API函数,实现了嵌入式系统的高速数据交换。