RAM(Random Access Memory)的全名为随机存取记忆体,它相当于PC机上的移动存储,用来存储和保存数据的。它在任何时候都可以读写,RAM通常是作为操作系统或其他正在运行程序的临时存储介质(可称作系统内存)。

不过,当电源关闭时RAM不能保留数据,如果需要保存数据,就必须把它们写入到一个长期的存储器中(例如硬盘)。正因为如此,有时也将RAM称作“可变存储器”。RAM内存可以进一步分为静态RAM(SRAM)和动态内存(DRAM)两大类。DRAM由于具有较低的单位容量价格,所以被大量的采用作为系统的主记忆。

ROM(Read Only Memory)的全名为唯读记忆体,它相当于PC机上的硬盘,用来存储和保存数据。ROM数据不能随意更新,但是在任何时候都可以读取。即使是断电,ROM也能够保留数据。但是资料一但写入后只能用特殊方法或根本无法更改,因此ROM常在嵌入式系统中担任存放作业系统的用途。现在市面上主流的PDA的ROM大小是64MB以及128MB。

RAM和ROM相比,两者的最大区别是RAM在断电以后保存在上面的数据会自动消失,而ROM就不会。
由于ROM不易更改的特性让更新资料变得相当麻烦,因此就有了Flash Memory的发展 ,Flash Memory具有ROM不需电力维持资料的好处,又可以在需要的时候任意更改资料 ,不过单价也比普通的ROM要高。

SRAM速度非常快,是目前读写最快的存储设备了,但是它也非常昂贵,所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓冲。动态RAM(Dynamic RAM/DRAM)保留数据的时间很短,速度也比SRAM慢,不过它还是比任何的ROM都要快,但从价格上来说DRAM相比SRAM要便宜很多,计算机内存就是DRAM的。
       DRAM分为很多种,常见的主要有FPRAM/FastPage、EDORAM、SDRAM、DDR RAM、RDRAM、SGRAM以及WRAM等,这里介绍其中的一种DDR RAM。
      DDR RAM(Date-Rate RAM)也称作DDR SDRAM,这种改进型的RAM和SDRAM是基本一样的,不同之处在于它可以在一个时钟读写两次数据,这样就使得数据传输速度加倍了。这是目前电脑中用得最多的内存,而且它有着成本优势,事实上击败了Intel的另外一种内存标准-Rambus DRAM。在很多高端的显卡上,也配备了高速DDR RAM来提高带宽,这可以大幅度提高3D加速卡的像素渲染能力。
        内存工作原理:内存是用来存放当前正在使用的(即执行中)的数据和程序,我们平常所提到的计算机的内存指的是动态内存(即DRAM),动态内存中所谓的"动态",指的是当我们将数据写入DRAM后,经过一段时间,数据会丢失,因此需要一个额外设电路进行内存刷新操作。
         具体的工作过程是这样的:一个DRAM的存储单元存储的是0还是1取决于电容是否有电荷,有电荷代表1,无电荷代表0。但时间一长,代表1的电容会放电,代表0的电容会吸收电荷,这就是数据丢失的原因;刷新操作定期对电容进行检查,若电量大于满电量的1/2,则认为其代表1,并把电容充满电;若电量小于1/2,则认为其代表0,并把电容放电,藉此来保持数据的连续性。
         ROM也有很多种,PROM是可编程的ROM,PROM和EPROM(可擦除可编程ROM)两者区别是,PROM是一次性的,也就是软件灌入后,就无法修改了,这种是早期的产品,现在已经不可能使用了,而EPROM是通过紫外光的照射擦出原先的程序,是一种通用的存储器。另外一种EEPROM是通过电子擦出,价格很高,写入时间很长,写入很慢。
        举个例子,手机软件一般放在EEPROM中,我们打电话,有些最后拨打的号码,暂时是存在SRAM中的,不是马上写入通过记录(通话记录保存在EEPROM中),因为当时有很重要工作(通话)要做,如果写入,漫长的等待是让用户忍无可忍的。

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,因为其读取速度快,多用来存储操作系统等重要信息,而大容量的用NAND FLASH,最常见的NAND FLASH应用是嵌入式系统采用的DOC(Disk On Chip)和我们通常用的"闪盘",可以在线擦除。目前市面上的FLASH 主要来自Intel,AMD,Fujitsu和Mxic,而生产NAND Flash的主要厂家有Samsung和Toshiba及Hynix。

ARM中ROM,RAM,FLASH区别相关推荐

  1. 常用存储器(ROM/RAM/FLASH/SDRAM/SRAM/DDR/EEPROM/emmc)

    单片机 ROM /RAM/FLASH区别 1.ROM,RAM和FLASH在单片机中的作用 ROM--存储固化程序的(存放指令代码和一些固定数值,程序运行后不可改动) c文件及h文件中所有代码.全局变量 ...

  2. 基础——ROM, RAM, FLASH, SSD, DDR3/4, eMMC, UFS, SD卡, TF卡,相互关系

    1. 关系 ROM, RAM, FLASH闪存, SSD, DDR3/4, eMMC, UFS, SD卡, TF卡, 这几个名词在手机和电脑等数码产品的参数中经常出现,单独看还明白是什么,放在一块,他 ...

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

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

  4. 存储设备总结 ROM RAM FLASH EEPROM SRAM DRAM

    注意每个字母代表的单词 主要分为ROM和RAM两类,加了不同功能而已 ROM:(Read Only Memory)程序存储器 只读,永久存储 在单片机中用来存储程序数据及常量数据或变量数据,凡是c文件 ...

  5. 手机ROM/RAM的区别

    在智能手机还没有普及的年代,人们购买手机很少人会去关注手机的硬件配置,更不会有多少人去关心硬件配置中ROM和RAM的大小,但是随着目前智能手机爆发式的增长,越来越多人开始关注手机的硬件,因为硬件水平目 ...

  6. arm 中的nor flash 和 nand flash

    ) 闪存芯片读写的基本单位不同    应用程序对NOR芯片操作以"字"为基本单位.为了方便对大容量NOR闪存的管理,通常将NOR闪存分成大小为128KB或者64KB的逻辑块,有时候 ...

  7. ROM RAM FLASH CPLD

    ROM 只读存储器 -固定ROM -可编程ROM -PROM -EPROM -E2PROM -Flash Memory 闪存 RAM 随机存储器 -SRAM 静态 用触发器 -DRAM 动态 用电容 ...

  8. ROM、FLASH 和 RAM 的区别

    此文章部分转载于知乎,对应链接为:Choris 的回答.以下是正文: 初学 MCU 的人,经常会看到 ROM, RAM, FLASH,而且会被这些词汇搞得晕头转向.本文对这些概念进行了厘清,并介绍了这 ...

  9. flash 和 eeprom 区别和关系、nor flash和nand flash区别

    1.FLASH存储器和EEPROM存储器的区别 2.EEPROM介绍及与Flash区别_VirtuousLiu的博客-CSDN博客_eeprom 3.基础--ROM, RAM, FLASH, SSD, ...

最新文章

  1. SAP PM入门系列21 - IE07 Equipment List (Multilevel)
  2. 皮一皮:现在当爹妈的不容易...
  3. 我的vExpert之路-传递正能量!
  4. 如何在Ubuntu18.04安装Tesla T4板的驱动程序
  5. 关于最近实践 Bert 的一些坑
  6. 从 Eclipse 到 IDEA,就像从金字塔到太空堡垒!
  7. 解决 SQL 注入的另类方法
  8. jQuery 的第一个例子
  9. 从勒索病毒加密的SQLServer数据库中恢复数据
  10. SpringBoot 动态设置响应头的content-type
  11. python软件长什么样子图片_使用Python把多个图片拼接成为长图
  12. 阿里云盘已经正式开放(获得1T永久免费空间,25MB/s下载速度)
  13. 尾注后添加正文(word 2007)
  14. protobuf 中 repeated fields 细节
  15. C++进程间通信的十一种方法
  16. 崇实大学 计算机专业,2020年崇实大学Times世界排名
  17. 游戏显示无法连接服务器怎么回事,Game Center无法连接服务器怎么办 五种方法任你选择...
  18. 深度分析DD哪些数据会引起国安注意?
  19. ubuntu deepin-wine 微信之后打不开
  20. 做人十条原则 做到了就离成功不远了

热门文章

  1. 不要再问我跨域的问题了
  2. 简单明了 - Git 使用超详细教程
  3. oracle中rownum和row_number()的区别
  4. Android 通信 EventBus
  5. Linux文件系统构成
  6. Oracle lower() Upper()函数
  7. mysqldump参数详细说明(转)
  8. 阿里云上Kubernetes集群联邦
  9. DenyHosts 加固centos系统安全
  10. Python 错误和异常小结[转]