1. NandFlash和NorFlash
Flash存储芯片,俗称闪存,因其具有非易失性、可擦除性、可重复编程及高密度、低功耗等特点,广泛地应用于手机、数码相机、笔记本电脑等产品。
根据制造技术的不同,可将Flash存储芯片分为两类:NorFlash和NandFlash。NorFlash的传输效率很高,但写入和擦除速度较慢;相比之下,NandFlash具有容量大、写速度快、芯片面积小、单元密度高、擦除速度快、成本低等优点,这些优点使得NandFlash更适合嵌入式系统的大容量数据存储使用。
从NorFlash读取数据的方式与从RAM读取数据相近,有分离的地址线和数据线,只要提供数据的地址,数据总线就可以正确地给出数据。基于以上原因,多数处理器可以将NorFlash作为XIP(Execute In Place,原地执行)内存使用,这意味着存储在NorFlash上的程序不需要复制到RAM中就可以直接执行。虽然从NorFlash读取数据很方便并且速度快,但与与NandFlash相比,NorFlash的写入速度会慢很多。
NandFlash的存取方式类似于硬盘,数据的存取以固定大小的区域进行,这些区域成为页,一般来说也的尺寸为512,2048或4096字节。另外各个页之间会有一些额外的空间用作存储检错或纠错的校验和。处理器不能直接对NandFlash进行数据的存取操作,必须通过NandFlash控制器进行。
向Flash中写入数据前必须将原有的内容擦除,擦除操作只能以块为单位进行,每个块由几个页构成。一个块的擦除次数是有限制的,通常称为Flash的擦除寿命。
NandFlash在嵌入式中的地位与PC机上的硬盘类似,用于保存系统运行所必需的操作系统、应用程序、用户数据、运行过程中产生的各类数据。NandFlash中的数据在掉电之后仍可永久保存。
一般而言,NorFlash用于存储程序,NandFlash用于存储数据。
2. DataFlash
Flash存储器按其接口可分为串行和并行两大类。串行Flash存储器大多采用I2C接口或SPI接口进行读写;与并行Flash存储器相比,所需引脚少、体积小、易于扩展、与单片机或控制器连接简单、工作可靠,所以串行Flash存储器越来越多地用在各类电子产品和工业测控系统中。
DataFlash是美国Atmel公司新推出的大容量串行Flash存储器产品,采用NOR技术制造,可用于存储数据或程序代码,其产品型号为AT45DBxxxx。
3. SDRAM
同步动态随机存储器,是有一个同步接口的动态随机存取内存(dynamic random access memory,简称DRAM)。
参考:
韦东山,嵌入式Linux应用开发完全手册
何永琪,嵌入式Linxu系统使用开发