常见存储器概念辨析:

RAM、SRAM、SDRAM、ROM、EPROM、EEPROM、Flash

存储器可以分为很多种类,其中根据掉电数据是否丢失可以分为RAM(随机存取存储器)和ROM(只读存储器),其中RAM的访问速度比较快,但掉电后数据会丢失,而ROM掉电后数据不会丢失。

ROM和RAM指的都是半导体存储器,ROM是Read Only Memory的缩写,RAM是Random Access Memory的缩写。ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是在掉电之后就丢失数据,典型的RAM就是计算机的内存。

RAM 又可分为SRAM(Static RAM/静态存储器)和DRAM(Dynamic RAM/动态存储器)。SRAM 是利用双稳态触发器来保存信息的,只要不掉电,信息是不会丢失的。DRAM是利用MOS(金属氧化物半导体)电容存储电荷来储存信息,因此必须通过不停的给电容充电来维持信息,所以DRAM 的成本、集成度、功耗等明显优于SRAM。SRAM速度非常快,是目前读写最快的存储设备了,但是它也非常昂贵,所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓冲。DRAM保留数据的时间很短,速度也比SRAM慢,不过它还是比任何的ROM都要快,但从价格上来说DRAM相比SRAM要便宜很多,计算机内存就是DRAM的。    DRAM分为很多种,常见的主要有FPRAM/FastPage、EDORAM、SDRAM、DDR RAM、RDRAM等。DDR RAM(Date-Rate RAM)也称作DDR SDRAM,这种改进型的RAM和SDRAM是基本一样的,不同之处在于它可以在一个时钟读写两次数据,这样就使得数据传输速度加倍了。这是目前电脑中用得最多的内存,而且它有着成本优势.

  而通常人们所说的SDRAM 是DRAM 的一种,它是同步动态存储器,利用一个单一的系统时钟同步所有的地址数据和控制信号。使用SDRAM不但能提高系统表现,还能简化设计、提供高速的数据传输。在嵌入式系统中经常使用。

ROM也有很多种,PROM是可编程的ROM,PROM和EPROM(可擦除可编程ROM)两者区别是,PROM是一次性的,也就是软件灌入后,就无法修改了,这种是早期的产品,现在已经不可能使用了,而EPROM是通过紫外光的照射擦出原先的程序,是一种通用的存储器。另外一种EEPROM是通过电子擦出,价格很高,写入时间很长,写入很慢。

Flash也是一种非易失性存储器(掉电不会丢失),它擦写方便,访问速度快,已大大取代了传统的EPROM的地位。由于它具有和ROM一样掉电不会丢失的特性,因此很多人称其为Flash ROM。FLASH存储器又称闪存,它结合了ROM和RAM的长处,不仅具备电子可擦出可编程(EEPROM)的性能,还不会断电丢失数据同时可以快速读取数据(NVRAM的优势),U盘和MP3里用的就是这种存储器。在过去的20年里,嵌入式系统一直使用ROM(EPROM)作为它们的存储设备,然而近年来Flash全面代替了ROM(EPROM)在嵌入式系统中的地位,用作存储bootloader以及操作系统或者程序代码或者直接当硬盘使(U盘)。

目前Flash主要有两种NOR Flash和NADN Flash。NOR Flash的读取和我们常见的SDRAM的读取是一样,用户可以直接运行装载在NOR FLASH里面的代码,这样可以减少SRAM的容量从而节约了成本。NAND Flash没有采取内存的随机读取技术,它的读取是以一次读取一块的形式来进行的,通常是一次读取512个字节,采用这种技术的Flash比较廉价。用户不能直接运行NAND Flash上的代码,因此好多使用NAND Flash的开发板除了使用NAND Flah以外,还作上了一块小的NOR Flash来运行启动代码。
  一般小容量的用NOR Flash,因为其读取速度快,多用来存储操作系统等重要信息,而大容量的用NANDFLASH,最常见的NAND FLASH应用是嵌入式系统采用的DOC(Disk On Chip)和我们通常用的"闪盘",可以在线擦除。

NAND Flash和NOR Flash的比较

  NAND则是高数据存储密度的理想解决方案,NOR一般只用来存储少量的代码;NOR主要应用在代码存储介质中。NOR的特点是应用简单、无需专门的接口电路、传输效率高,它是属于芯片内执行(XIP, eXecute In Place),这样应用程序可以直接在(NOR型)flash闪存内运行,不必再把代码读到系统RAM中。在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。NOR flash带有SRAM接口,有足够的地址引脚来寻址,可以很容易地存取其内部的每一个字节。NOR flash占据了容量为1~16MB闪存市场的大部分。NAND结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于flash的管理和需要特殊的系统接口。

性能比较:

  ● NOR的读速度比NAND稍快一些。

  ● NAND的写入速度比NOR快很多。

  ● NAND的4ms擦除速度远比NOR的5s快。

  ● 大多数写入操作需要先进行擦除操作。

  ● NAND的擦除单元更小,相应的擦除电路更少。

易于使用:

  可以非常直接地使用基于NOR的闪存,可以像其他存储器那样连接,并可以在上面直接运行代码。

  由于需要I/O接口,NAND要复杂得多。各种NAND器件的存取方法因厂家而异。

  在使用NAND器件时,必须先写入驱动程序,才能继续执行其他操作。向NAND器件写入信息需要相当的技巧,因为设计师绝不能向坏块写入,这就意味着在NAND器件上自始至终都必须进行虚拟映射。

总结如下:

Nand Flash:适合大容量数据存储,类似硬盘;

Nor Flash:适合小容量的程序或数据存储,类似小硬盘;

SDRAM:主要用于程序执行时的程序存储、执行或计算,类似内存,主要应用于嵌入式系统中()。

SRAM :主要应用于计算机缓存;

DRAM :主要应用于计算机内存;

Nor Flash有自己的地址线和数据线,可以采用类似于memory的随机访问方式,在Nor Flash上可以直接运行程序,所以Nor Flash可以直接用来做boot,采用Nor Flash启动的时候会把地址映射到0x00上。

Nand Flash是IO设备,数据、地址、控制线都是共用的,需要软件区控制读取时序,所以不能像Nor Flash、内存一样随机访问,不能EIP(片上运行),因此不能直接作为boot。

PS:为什么不能再NAND 上运行程序?

代码执行主要就是指令取值和数据存取, 对于指令存取和数据存取,CPU 直接将要预取的指令或者数据的地址发到系统总线上,对于ARM (就是AXBI) 总线, 这个地址会根据Soc之钱的地址编码送到不同的控制器,对于NAND Flash 根本就没有地址线,只有数据线。 NAND Flash 的读取是要靠软件代码经过 NAND Flash controller 发相关的命令和要地址等数据到NAND Flash芯片内部的控制器, 命令和地址都是经过数据线传送的。一般需要多个周期, 由于需要数据读写,需要软件介入,所以说他不是XIP 的。XIP 从某种意义上说是 CPU 送出的地址能否不经过任何软件直接能够寻址到相关的存储单元。所以Nor Flash/SRAM/SDRAM 都是XIP 的,而Nand Flash 等就不是XIP 了。
--------------------- 
作者:六角雅阁 
来源:CSDN 
原文:https://blog.csdn.net/liujiaoyage/article/details/37930475?utm_source=copy 
版权声明:本文为博主原创文章,转载请附上博文链接!

ROM、RAM、DRAM、SRAM、SDRAM区别及特点相关推荐

  1. 学习笔记——SRAM、DRAM、SDRAM区别

    SRAM.DRAM.SDRAM区别 RAM:即随机存储器或者易失性存储器,因为断电后就失去保存的数据. RAM分为SRAM和DRAM:   SRAM(synchronous random-access ...

  2. ROM,RAM,DRAM,SDRAM,SRAM

    ROM和RAM指的都是半导体存储器,ROM是Read Only Memory的缩写,RAM是Random Access Memory的缩写.ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是 ...

  3. RAM 大全-DRAM, SRAM, SDRAM的关系与区别

    ROM和RAM指的都是半导体存储器,ROM是Read Only Memory的缩写,RAM是Random Access Memory的缩写.ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是 ...

  4. DRAM,SRAM,SDRAM的关系与区别

    存储器(Memory)是计算机系统中的记忆设备,用来存放程序和数据.计算机中全部信息,包括输入的原始数据.计算机程序.中间运行结果和最终运行结果都保存在存储器中.它根据控制器指定的位置存入和取出信息. ...

  5. DRAM, SRAM, SDRAM 的关系与区别

    DRAM,动态随机存取存储器,需要不断的刷新,才能保存数据.而且是行列地址复用的,许多都有页模式. SRAM,静态的随机存取存储器,加电情况下,不需要刷新,数据不会丢失,而且,一般不是行列地址复用的. ...

  6. 路由器中Rom/Ram/NVRAM/FLASH的区别

    路由器采用了以下几种不同类型的内存,每种内存以不同方式协助路由器工作. A.只读内存(ROM).  B.闪存(FLASH).  C.随机存取内存(RAM).  D.非易失性RAM(NVRAM). 1. ...

  7. 单片机中的ROM,RAM和FLASH的作用

    本文部分参考自:http://blog.sina.com.cn/s/blog_98ca54fc01017y4t.html 并在此基础上进行整理,添加了关于flash的问题. 之前从较为抽象的角度介绍了 ...

  8. ROM、RAM、SRAM、DRAM、Flash、SDRAM区别

    文章目录 前言 一.ROM.RAM 1.ROM(Read Only Memory) 2.RAM(Random Access Memory)随机存储器 二.SRAM.DRAM.SDRAM 1.SRAM( ...

  9. RAM、 ROM 、SRAM 、DRAM 、SDRAM 、DDR (2、3、4)SDRAM辨析

    乍一看,这么多RAM,ROM是不是感觉大脑发懵,且听我一一道来. 在了解其他概念之前,我们要首先知道,什么是存储器 存储器 存储器是用来存储程序和各种数据信息的记忆部件 许多存储单元的集合,按单元号顺 ...

  10. RAM、SRAM、DRAM、SDRAM、DDRSDRAM等之间的区别

    关于SRAM.DRAM.SDRAM等这样的词条,比较容易混淆,通过查找资料做个总结. 首先看下面这张图:   RAM(random access memory)随机存储器.存储单元的内容可按需随意取出 ...

最新文章

  1. 功率谱密度相关方法MATLAB实现
  2. Codeforces 1196B Odd Sum Segments
  3. 淘宝客网站的链接跳转形式
  4. Linux(13)-文件权限,chmod
  5. ERDAS IMAGINE 2015安装步骤(绝对正确,不正确,我给你远程安装)
  6. 从单机到2000万QPS: 知乎Redis平台发展与演进之路
  7. SDUT 3399 数据结构实验之排序二:交换排序
  8. 虚幻引擎自带的创建插件的插件
  9. 文件上传中的临时上传路径问题
  10. vep格式用什么播放器linux,vep格式视频用什么播放器打开
  11. ubuntu20.04安装qq音乐并解决闪退问题
  12. 前端实现很哇塞的浏览器端扫码功能
  13. minimum在java中的意思_Java Calendar getMinimum()方法与示例
  14. Android 系统服务
  15. 2021了,为什么说音视频技术是技术风口?Android音视频开发这么吃香
  16. echarts省市区id(区域编码)实现地图下钻点击(data赋值自定义属性值,geojson信息获取)
  17. swt包下载,swt包引入(一个简单的SWT程序实例及详解)
  18. 电影评论 R文本挖掘-情感分析
  19. linux系统wav驱动下载,linux下alsa架构音频驱动播放wav格式文件
  20. vue-player 官网demo示例

热门文章

  1. VTK笔记——医学图像等值面提取(Marching Cubes)
  2. 苹果官网首页页面设计
  3. 传奇服务器M2道士毒文件,传奇版本M2里面【Envir】文件功能说明
  4. 每天学点统计学——指数
  5. TD式创新:中国标准横空出世 回归主流的TDD LTE
  6. 机器人模型和机器人状态
  7. 路径规划-Minimum snap轨迹优化
  8. Android获取缓存大小和清除缓存功能实现
  9. img标签在div中水平垂直居中--两种实现方式
  10. PostMan中文插件支持8.12.2