【车载开发系列】FlashMemory基本概念
【车载开发系列】FlashMemory基本概念
- 【车载开发系列】FlashMemory基本概念
- 一. FlashMemory的特征
- 二. 常见的FlashMemory
- 1)NOR FlashMemory
- 2)NAND FlashMemory
- 3)区别与比较
- 三. FlashMemory另一种分类
- 1)CodeFlash
- 2)DataFlash
- 3)两者区别
- 4)两者联系
一. FlashMemory的特征
闪存,闪速存储器(Flash Memory)
是一种电可擦非易失性半导体存储器。由于采用的是非挥发性存储技术,闪速存储器在不加电状态下可以安全保存数据达十年以上。闪速存储器具有E2PROM那样的单管结构,制造成本低、体积小,且其存取时间仅为30ns,比E2PROM快得多。闪速存储器还兼有ROM和RAM两者的性能及高密度,因而是目前为数不多的既具备大容量、高速度,又具有非易失性、可在线擦写特性的存储器,闪速存储器市场发展十分迅速,其规模接近DRAM市场的1/4,与DRAM和SRAM一起成为存储器市场的三大产品。
二. 常见的FlashMemory
一种是传统的NOR闪存,其芯片内储存的数据可以直接读取,因而速度比较快,但是价格较高
另外一种是NAND闪存,这种闪存也称为固态硬盘,它内部数据以块为单位进行存储,地址线和数据线共用,使用控制信号选择。各种存储设备如优盘,主板BIOS芯片、MP3, Smart Media卡、Disk On Chip (DOC), PCMCIA卡等都是使用上面的两种芯片作为存储介质。
1)NOR FlashMemory
Intel是世界上第一个生产闪存并将其投放市场的公司。1988年,公司推出了一款256K bit闪存芯片。它如同鞋盒一样大小,并被内嵌于一个录音机里。后来,Intel发明的这类闪存被统称为NOR闪存。它结合EPROM(可擦除可编程只读存储器)和EEPROM(电可擦除可编程只读存储器)两项技术,并拥有一个SRAM接口。
2)NAND FlashMemory
第二种闪存称为NAND闪存。它由日立公司于1989年研制,并被认为是NOR闪存的理想替代者。NAND闪存的写周期比NOR闪存短90%,它的保存与删除处理的速度也相对较快。NAND的存储单元只有NOR的一半,在更小的存储空间中NAND获得了更好的性能。鉴于NAND出色的表现,它常常被应用于诸如CompactFlash、SmartMedia、 SD、 MMC、 xD、 and PC cards、USB sticks等存储卡上。
3)区别与比较
NOR和NAND的差别主要体现在操作方式和存储时间上有不同。
NOR和NAND是市场上两种主要的非易失闪存技术,当选择存储解决方案时,设计师必须权衡以下的各项因素:
NOR的读速度比NAND稍快一些。
NAND的写入速度比NOR快很多。
NAND的4ms擦除速度远比NOR的5ms快。
大多数写入操作需要先进行擦除操作。
NAND的擦除单元更小,相应的擦除电路更少。
三. FlashMemory另一种分类
flash可以分类分为codeflash和dataflash。 code flash主要用来存储程序,data flash主要用来存储参数。由于直接访问data flash的数据会影响程序运行的速度,所以在单片机初始化时需要将data flash中的数据拷贝到ram中,然后再访问数据。
1)CodeFlash
程序在这个flash运行时,几乎没有延时, 运行速度以时钟设置为准。
对Code Flash进行读写操作时候,特别要注意写的地址,因为如果写的不对,会覆盖到代码区,造成运行错误,同时对于擦除,是一块的数据都会直接擦除掉。
2)DataFlash
程序在这段flash运行时,每条语句都有延时, 最后的速度可能是以10M为时钟(举例) 这时候, 如果有与时序相关的语句在此执行(IIC等), 很有可能会出问题。
对Data Flash进行读写操作时候,特别要注意要等待Data Flash写完才能进行后续读写操作。
3)两者区别
Code Area代表这部分代码零等待,Data Area则不是零等待,这与整个Flash的大小有关
CodeFlash不常用,可擦写次数不一样,存储方式,命令不一样。
4)两者联系
两者操作方式基本一样,也都支持ECC,CodeFlash用来存放代码,DataFlash用做模拟EEPROM。另外就是DataFlash没有Shadow Sector和Boot Sector。