常见储存器件的分辨(RAM、SRAM、SDRAM、ROM、FLASH、Nand Flash、Nor Flash、DDR、eMMC)
存储器:
按照存储介质的不同,将存储器分为光学存储、半导体存储和磁性存储三大类。
下面在半导体存储器大类中,按照存储器的实现技术原理来进行详细分类。
- 光学存储
- CD
- DVD
- 磁性存储
- 磁带、软盘、机械硬盘
- 半导体存储
- RAM(Random-Access Memory): 随机存取存储器
- SRAM(Static RAM): 静态随机存取存储器
- DRAM(Dynamic RAM): 动态随机存取存储器
- SDRAM(Synchronous DRAM): 同步动态随机存储器
- DDR SDRAM(Double Data Rate SDRAM):双倍速率同步动态随机存储器,目前主流的内存类型
- ROM(Read-Only Memory):只读存储器
- EEPROM(Electrically Erasable Programmable ROM):电可擦写可编程只读存储器
- FLASH(Flash Memory):闪存
- NAND FLASH
- NOR FLASH
ROM:
通常掉电后数据不会消失的半导体存储器都泛称为 ROM 了。
比如手机参数里所说的 ROM 通常就是指 NAND FLASH 类存储器。但这些 ROM 基本上都是不支持执行代码的。
NOR FLASH:
内存类接口,其最大的特点是norflash里面的程序可以直接运行,不必再把代码读到系统的RAM中,所以norflash能够直接用来做boot。
2440开发板是2M的norflash,有自己的地址线和数据线,能够采用类似于memory的随机訪问方式,但不能向内存直接写,需单独设置操作。
传输速度高、写入和擦除速度低,擦除前需要置零,读取比nand快,适合做代码存储并片上执行,
norflash的读取速度比nandflash稍快,但擦写速度比nandflash慢非常多。
NAND FLASH
I/O类接口:存储密度大,擦除简单,擦除和写入比nor快很多,但需要特殊的系统接口单元。类似电脑的硬盘,CPU从里面读取数据的速度很慢,他里面的代码也不能直接运行,要想运行需要把nandflash里面的数据读到内存里面,然后CPU才能执行,但是他的集成度很高,成本很低。属于IO设备,数据、地址、控制线都是共用的,须要软件区控制读取时序,所以不能像nor flash、内存一样随机訪问,不能EIP(片上执行)。因此不能直接作为boot。适合用来作大量数据存储的。
注:UFS/eMMC是一种内嵌式存储器的标准规格(基于闪存介质的基础上集成主控芯片,而且拥有标准接口),而不是指具体的存储器,也不是指接口。
eMMC(embedded Multi Media Card:嵌入式多媒体存储卡): nandflash + 主控ic+mmc卡 便于开发
eMMC内部主要可以分为Flash Memory、Flash Controller以及Host Interface三大部分。
绝大部分的EMMC内部用的是Nand Flash,
NAND Flash直接接入Host时,Host端通常需要有NAND Flash Translation Layer,即NFTL或者NAND Flash文件系统来做坏块管理、ECC等的功能。
eMMC则在其内部集成了Flash Controller,用于完成擦写均衡、坏块管理、ECC校验等功能。相比直接将NAND Flash接入到Host端,eMMC屏蔽了NAND Flash的物理特性,可以减少Host端软件的复杂度,让Host端专注于上层业务,省去对NAND Flash进行特殊的处理
UFS(Universal Flash Storage:通用闪存存储)不论是数据传输技术,还是工作模式,UFS都全面领先于eMMC,5G时代的到来,旗舰手机的ROM都至少是UFS3.0以上了。
RAM:
是随机存储内存,断电数据丢失,存储短时间使用程序。是用来存储当前数据的,比如手机程序运行时需要占用内存,是为机器运行软件提供内存的芯片
SRAM:
DRAM:
SDRAM: