资料介绍
随着嵌入式技术的不断发展,嵌入式系统的应用越来越广泛,人们对于嵌入式系统功能的要求也越来越高,相应地其大容量数据存储和管理变得越来越重要。相对硬盘而言,FLASH等非易失性存储器具有体积小、功耗低、成本低、抗震强等优点,已在嵌入式系统中被大量作为存储设备使用,而大容量非易失数据存储方案的应用还存在成本和软件支持方面的问题需要克服。大页NAND FLASH具有写入速度快、容量大、成本低等优点,适合于需要进行数据存储的场合。YAFFS2作为专门支持大页NAND FLASH的文件系统在U-Boot和嵌入式Linux上一直没有得到正式支持。本文结合部队应用实际,在嵌入式Linux系统中实现了大页NAND FLASH和YAFFS2文件系统的结合,为装备的数据存储处理搭建起了小型的智能化平台。本文内容安排如下,首先介绍系统存储方案特点和YAFFS2数据在大页NAND FLASH上的储存方式,然后详细叙述系统移植和文件系统制作过程,最后对移植结果进行测试。
l 系统存储方案设计
某国产化设备用于取代随装多台套设备,除完成原设备的数据记录功能外,还需进行数据翻译、判读,数据分析处理,二维显示和三维动态复现等功能;同时,需存储装备长时间工作输出的所有原始数据信息,类似黑匣子功能,以供事后分析使用。具有程序量大,数据需实时存储,且数据存储量大的特点。板上存储设备包括SDRAM和FLASH,SDRAM为易失性存储器,作为程序的运行空间和记录数据的缓存空间;FLASH为非易失性存储器,用于存储系统软件程序和记录数据。
嵌入式系统中应用的FLASH主要有NORFLASH和NAND FLASH两种。NOR FLASH的块大小范围为64~128 KB,其容量一般为l~32 MB,可作为嵌入式设备的启动设备,适合于代码存储。NAND FLASH的块大小范围为8~64 KB,容量一般为8~512 MB,适合于数据存储。它们之间的主要差别有以下几点。
(1)速度。在写数据和擦除数据时,NANDFLASH支持整块擦写操作,其速度比NOR FLASH要快得多,两者相差近千倍;读取时,NAND FLASH要先向芯片发送地址信息进行寻址才能开始读写数据,而NOR FLASH的操作则是以字或字节为单位进行的,直接读取,所以读取数据时,NOR FLASH效率更高。
(2)容量和成本。NOR FLASH的每个存储单元与位线相连,增加了芯片内位线的数量,不利于存储密度的提高。在面积和工艺相同的情况下,NANDFLASH的容量比NOR FLASH要大得多,生产成本更低。
(3)易用性。NAND FLASH的I/O端口采用复用的数据线和地址线,必须先通过寄存器串行地进行数据存取,各个产品或厂商对信号的定义不同,增加了应用的难度;NOR FLASH有专用的地址引脚来寻址,较容易与其他芯片进行连接,另外还支持片上执行XIP(eXecute In Place),应用程序可以直接在FLASH内部运行,简化了产品设计。
(4)可靠性。由于FLASH的电器特性,在读/写数据过程中,会产生比特位反转,造成一位或几位数据错误。NAND FLASH位反转的几率比NOR FLASH高,在使用时需要使用EDC/ECC算法。NANDFLASH还可能会随机分布坏块。
(5)耐久性。FLASH由于写入和擦除数据时会导致介质的氧化降解,导致芯片老化,所以并不适合频繁地擦写,NAND FLASH的擦写次数是100万次,而NOR FLASH只有10万次。
基于以上分析,为了满足经常性的进行实时快速大容量数据存储和较长使用寿命的要求,采用NANDFLASH来存储操作系统和数据,其复杂操作、比特位反转和坏块等问题可以通过文件系统解决。NORFLASH因为出现位反转和坏块的几率小,并且读取速度快,用来存储启动程序,能保证正常启动系统的前提下提高设备反应时间。整个系统的存储空间分配如图1所示。
整个系统存储空间由SDRAM,NOR FLASH,NAND FLASH组成。其中,sDRAM分成程序空间(Prog Space)和数据空间(Data Space)。NORFLASH存储系统启动程序U-Boot;NAND FLAsH分成程序空间(Prog Space)和数据空间(Data Space),程序空间中固化存储Linux操作系统和YAFFS2文件系统及相应的应用程序,在U-Boot的控制下,通过页传输方式读入SDRAM程序空间中;数据空间中存储来自前端的原始数据,该数据在SDR-AM中打包,以页方式将数据写入NAND FLASH中,提高数据写入速度。
对小页NAND FLASH的文件系统支持已有比较多的编程实例可借鉴,而对本文使用的大页NANDFLASH的编程支持还没有完整的说明。因此,移植嵌入式操作系统,以建立对大页NAND FLASH支持的文件系统是该存储方案需解决的关键问题。
l 系统存储方案设计
某国产化设备用于取代随装多台套设备,除完成原设备的数据记录功能外,还需进行数据翻译、判读,数据分析处理,二维显示和三维动态复现等功能;同时,需存储装备长时间工作输出的所有原始数据信息,类似黑匣子功能,以供事后分析使用。具有程序量大,数据需实时存储,且数据存储量大的特点。板上存储设备包括SDRAM和FLASH,SDRAM为易失性存储器,作为程序的运行空间和记录数据的缓存空间;FLASH为非易失性存储器,用于存储系统软件程序和记录数据。
嵌入式系统中应用的FLASH主要有NORFLASH和NAND FLASH两种。NOR FLASH的块大小范围为64~128 KB,其容量一般为l~32 MB,可作为嵌入式设备的启动设备,适合于代码存储。NAND FLASH的块大小范围为8~64 KB,容量一般为8~512 MB,适合于数据存储。它们之间的主要差别有以下几点。
(1)速度。在写数据和擦除数据时,NANDFLASH支持整块擦写操作,其速度比NOR FLASH要快得多,两者相差近千倍;读取时,NAND FLASH要先向芯片发送地址信息进行寻址才能开始读写数据,而NOR FLASH的操作则是以字或字节为单位进行的,直接读取,所以读取数据时,NOR FLASH效率更高。
(2)容量和成本。NOR FLASH的每个存储单元与位线相连,增加了芯片内位线的数量,不利于存储密度的提高。在面积和工艺相同的情况下,NANDFLASH的容量比NOR FLASH要大得多,生产成本更低。
(3)易用性。NAND FLASH的I/O端口采用复用的数据线和地址线,必须先通过寄存器串行地进行数据存取,各个产品或厂商对信号的定义不同,增加了应用的难度;NOR FLASH有专用的地址引脚来寻址,较容易与其他芯片进行连接,另外还支持片上执行XIP(eXecute In Place),应用程序可以直接在FLASH内部运行,简化了产品设计。
(4)可靠性。由于FLASH的电器特性,在读/写数据过程中,会产生比特位反转,造成一位或几位数据错误。NAND FLASH位反转的几率比NOR FLASH高,在使用时需要使用EDC/ECC算法。NANDFLASH还可能会随机分布坏块。
(5)耐久性。FLASH由于写入和擦除数据时会导致介质的氧化降解,导致芯片老化,所以并不适合频繁地擦写,NAND FLASH的擦写次数是100万次,而NOR FLASH只有10万次。
基于以上分析,为了满足经常性的进行实时快速大容量数据存储和较长使用寿命的要求,采用NANDFLASH来存储操作系统和数据,其复杂操作、比特位反转和坏块等问题可以通过文件系统解决。NORFLASH因为出现位反转和坏块的几率小,并且读取速度快,用来存储启动程序,能保证正常启动系统的前提下提高设备反应时间。整个系统的存储空间分配如图1所示。
整个系统存储空间由SDRAM,NOR FLASH,NAND FLASH组成。其中,sDRAM分成程序空间(Prog Space)和数据空间(Data Space)。NORFLASH存储系统启动程序U-Boot;NAND FLAsH分成程序空间(Prog Space)和数据空间(Data Space),程序空间中固化存储Linux操作系统和YAFFS2文件系统及相应的应用程序,在U-Boot的控制下,通过页传输方式读入SDRAM程序空间中;数据空间中存储来自前端的原始数据,该数据在SDR-AM中打包,以页方式将数据写入NAND FLASH中,提高数据写入速度。
对小页NAND FLASH的文件系统支持已有比较多的编程实例可借鉴,而对本文使用的大页NANDFLASH的编程支持还没有完整的说明。因此,移植嵌入式操作系统,以建立对大页NAND FLASH支持的文件系统是该存储方案需解决的关键问题。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- 嵌入式系统系列丛书-时间触发嵌入式系统设计模式 0次下载
- 嵌入式linux系统中常用的文件系统
- 嵌入式系统
- 嵌入式的固件烧录方式
- 嵌入式linux和桌面linux的区别
- 嵌入式系统定义
- DSP与MCU在嵌入式系统中的应用
- 如何实现Linux内核移植和yaffs2根文件系统制作 9次下载
- 嵌入式硬件系统教程之嵌入式存储技术的详细资料说明 14次下载
- 超大容量NANDFlash文件系统-YAFFS2在Linux下的实现 11次下载
- 分析YAFFS文件系统在Linux系统中的构建 0次下载
- 基于ARM和DSP的嵌入式导航计算机方案设计
- 基于J2ME的金融POS应用安全方案设计
- YAFFS嵌入式文件系统应用研究
- 一种嵌入式系统本地数据存储方案的设计与研究
- 嵌入式fpga是什么意思 992次阅读
- 什么是嵌入式系统?嵌入式系统的具体应用 2096次阅读
- 分享一种嵌入式系统自动化测试的详细方案 2522次阅读
- 嵌入式系统的全面解析 3146次阅读
- 如何实现嵌入式系统远程调试 5077次阅读
- 嵌入式Linux启动时间优化的秘密之二文件系统 4987次阅读
- 具备M2M功能的嵌入式网络解决方案将成为未来的走向 944次阅读
- 基于μC/OS嵌入式操作系统的嵌入式数据管理设计 1178次阅读
- 基于嵌入式实时系统的提高构件化嵌入式操作系统性能的方案设计 780次阅读
- 关于嵌入式系统以及其在印刷设备中的解决方案及应用浅析 629次阅读
- 嵌入式环境下的轻量级GUI系统解决方案设计详解 7480次阅读
- 关于嵌入式软件系统测试策略和方案设计详解 9081次阅读
- 随机存储器在嵌入式操作系统中的应用设计详解 1315次阅读
- 基于Nand Flash 存储技术的嵌入式linux 系统设计 1520次阅读
- 典型的嵌入式系统设计 2650次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 6基于FPGA的C8051F单片机开发板设计
- 0.70 MB | 2次下载 | 免费
- 751单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21548次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183278次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多