在AT45DB161实现YAFFS文件系统
YAFFS(Yet Another Flash File System)文件系统是专门针对NAND闪存设计的嵌入式文件系统。在YAFFS中,文件是以固定大小的数据块进行存储的,块的大小可以是512字节、1024字节或者2048字节。YAFFS利用NandFlash提供的每个页面16字节或64字节的Spare区(备用区)空间来存放ECC和文件系统的组织信息,能够实现错误检测和坏块处理。
AT45DB161D是一款串行接口的FLASH存储器。AT45DB161D支持RapidS串行接口,适用于要求高速操作的应用。RapidS串行接口兼容SPI,最高频率可达66MHz。AT45DB161D的存储容量为17,301,504位,组织形式为4,096页,每页512或528页。除了主存储器外,AT45DB161D还包含2个512/528字节的SRAM缓冲区。缓冲区允许在对主存储器的页面重新编程时接收数据,也可写入连续的数据串。通过独立的“读-改-写”三步操作,可以轻松实现EEPROM仿真(可设置成位或字节)。为了实现简单的在系统重复编程,AT45DB161D并不需要高输入电压来支持编程。对于许多要求高容量,低引脚数,低电压和低功耗的商业级或工业级应用来讲,AT45DB161D是最佳的选择。
YAFFS提供了直接调用模式,可以方便移植到 none-OS或者light-weightedOS中。附件是将YAFFS移植到Freescale MQX实时操作系统的源代码和工程,可以在FRDM-K64上运行。YAFFS非常适合none-OS或者是light-weightedOS,使用YAFFS需要关注的是RAM的消耗,适合小量文件(<20)。如果不想使用MQX默认的MFS(FAT32文件系统),YAFFS可以作为一个文件系统的备选方案。
|