常用存储器分类

常用存储器分类1 存储器是计算机实现记忆功能的部件 用来存放程序和数据 是微机系统中重要的组成部分 存储器的容量越大 表明能存储的信息越多 计算机的处理能力也就越能充分展现 存储器系统由外存储器和内存储器两部分组成 其中内存储器用来存放当前运行的程序和数据 一般由一定容量的速度较高存储器组成 CPU 可直接用指令对内存储器进行读 写操作 内存储器的分类如下 2 RAM RandomAccess

1.存储器是计算机实现记忆功能的部件,用来存放程序和数据,是微机系统中重要的组成部分,存储器的容量越大,表明能存储的信息越多,计算机的处理能力也就越能充分展现。存储器系统由外存储器和内存储器两部分组成。其中内存储器用来存放当前运行的程序和数据,一般由一定容量的速度较高存储器组成,CPU可直接用指令对内存储器进行读/写操作。内存储器的分类如下:

常用存储器分类

2.RAM,“Random Access Memory”的缩写,被译为随机存储器,现在RAM 已经专门用于指代作为计算机内存的易失性半导体存储器。

 

2.1.SRAM静态随机存储器:存储单元以锁存器来存储数据,见图1。这种电路结构不需要定时刷新充电,就能保持状态(断电后数据还是会丢失),所以这种存储器被称为“静态(Static)” RAM。相比于DRAM,SRAM的特点是只要不撤除工作电源,所保存的信息就不会丢失;读出信息时不破坏原保存信息,一经写入可多次读出;存取速度较快,但功耗较大、存储容量较小,适用于不需要大容量存储器的系统,如单片机、工控机的内存和微机的高速缓存。SRAM 根据其通讯方式分为同步(SSRAM)和异步 SRAM,相对来说,异步SRAM 用得比较广泛。

常用存储器分类

                                                                                         图1 SRAM存储单元

2.2.DRAM动态随机存储器:存储单元以电容的电荷来表示数据,有电荷代表1,无电荷代表0,见图2。但时间一长,代表1的电容会放电,代表0的电容会吸收电荷,因此需要定期刷新,这就是“动态(Dynamic)”一词所形容的特性。

常用存储器分类

                                                                                          图2 DRAM存储单元

2.3.SDRAM:根据DRAM的通讯方式,又分为同步和异步两种,这两种方式根据通讯时是否需要使用时钟信号来区分。由于使用时钟同步的通讯速度更快,所以同步DRAM使用更为广泛,这种DRAM被称为SDRAM(Synchronous DRAM)。

2.4. DDR SDRAM:为了进一步提高SDRAM的通讯速度,人们设计了DDR SDRAM 存储器(Double DataRate SDRAM)。它的存储特性与 SDRAM 没有区别,但SDRAM只在上升沿表示有效数据,在1个时钟周期内,只能表示1个有数据;而DDR SDRAM在时钟的上升沿及下降沿各表示一个数据,也就是说在1 个时钟周期内可以表示2位数据,在时钟频率同样的情况下,提高了一倍的速度。至于DDRII和DDRIII,它们的通讯方式并没有区别,主要是通讯同步时钟的频率提高了。当前个人计算机常用的内存条是DDRIII SDRAM存储器,在一个内存条上包含多个DDRIII SDRAM芯片。

2.5. DRAM与SRAM的应用场合:对比DRAM与SRAM的结构可知DRAM 的结构简单得多,所以生产相同容量的存储器,DRAM的成本要更低,且集成度更高。而DRAM中的电容结构则决定了它的存取速度不如SRAM,特性对比见表1。在实际应用场合中, SRAM一般只用于CPU内部的高速缓存(Cache),而外部扩展的内存一般使用DRAM。

                                                                            表1 DRAM与SRAM对比

特性

DRAM

SRAM

存取速度

较慢

较快

集成度

较高

较低

生产成本

较低

较高

是否需要刷新

3.ROM,“Read Only Memory”的缩写,意为只能读的存储器,现在一般用于指代非易失性半导体存储器。

3.1. MROM:MASK(掩膜) ROM,存储在内部的数据是在出厂时使用特殊工艺固化,生产后就不可修改,其主要优势是大批量生产时成本低。当前在生产量大,数据不需要修改的场合,还有应用。

3.2. OTPROM:One Time Programable ROM,一次可编程存储器,出厂时内部没有资料,用户可以使用专用的编程器将资料写入,一经写入,不能更改。

3.3. EPROM:Erasable Programmable ROM,可重复擦写的存储器,解决了PROM芯片只能写入一次的问题,使用紫外线照射芯片内部擦除数据,擦除和写入都要专用的设备,现在基本被EEPROM取代。

3.4. EEPROM:Electrically Erasable Programmable ROM,电可擦除存储器。可以重复擦写,擦除和写入都是直接使用电路控制,不需要再使用外部设备来擦写。而且可以按字节为单位修改数据,无需整个芯片擦除。现在主要使用的 ROM 芯片都是EEPROM。

3.5.FLASH 存储器:又称闪存,也是可重复擦写的储器,容量一般比EEPROM 大得多,且在擦除时,一般以多个字节为单位。如有的 FLASH 存储器以 4096 个字节为扇区,最小的擦除单位为一个扇区。根据存储单元电路的不同, FLASH 存储器又分为 NOR FLASH 和 NAND FLASH,见表2。

                                                            表2 NOR FLASH与NAND FLASH特性对比

特性

NOR FLASH

NAND FLASH

同容量存储器成本

较贵

较便宜

集成度

较低

较高

介质类型

随机存储

连续存储

地址线和数据线

独立分开

共用

擦除单元

以“扇区/块”擦除

以“扇区/块”擦除

读写单元

可以基于字节读写

必须以“块”为单位读写

读取速度

较高

较低

写入速度

较低

较高

坏块

较少

较多

是否支持XIP

支持

不支持

NOR与NAND 的共性是在数据写入前都需要有擦除操作,而擦除操作一般是以“扇区/块”为单位的。而NOR与NAND特性的差别,主要是由于其内部“地址/数据线”是否分开导致的。

由于NOR的地址线和数据线分开,它可以按“字节”读写数据,符合CPU的指令译码执行要求,所以假如NOR上存储了代码指令,CPU给 NOR一个地址, NOR就能向CPU返回一个数据让CPU执行,中间不需要额外的处理操作。

而由于NAND的数据和地址线共用,只能按“块”来读写数据,假如NAND 上存储了代码指令,CPU给NAND地址后,它无法直接返回该地址的数据,所以不符合指令译码要求。表2中的最后一项“是否支持XIP”描述的就是这种立即执行的特性(eXecute In Place)。

若代码存储在NAND上,可以把它先加载到RAM存储器上,再由CPU执行。所以在功能上可以认为 NOR是一种断电后数据不丢失的RAM,但它的擦除单位与RAM有区别,且读写速度比RAM要慢得多。

另外, FLASH的擦除次数都是有限的(现在普遍是10万次左右),当它的使用接近寿命的时候,可能会出现写操作失败。由于NAND通常是整块擦写,块内有一位失效整个块就会失效,这被称为坏块,而且由于擦写过程复杂,从整体来说NOR坏块更少,寿命更长。由于可能存在坏块,所以FLASH存储器需要“探测/错误更正(EDC/ECC)”算法来确保数据的正确性。

由于两种FLASH存储器特性的差异,NOR FLASH一般应用在代码存储的场合,如嵌入式控制器内部的程序存储空间。而NAND FLASH一般应用在大数据量存储的场合,包括SD卡、 U盘以及固态硬盘等,都是NAND FLASH类型的。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233133.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Spring Boot实战第七章-SpringBoot Web开发-Thymeleaf模板引擎

    Spring Boot实战第七章-SpringBoot Web开发-Thymeleaf模板引擎

    2021年5月16日
    128
  • 月神带你逻辑漏洞挖掘

    月神带你逻辑漏洞挖掘业务逻辑漏洞挖掘由于程序逻辑不严谨或逻辑太过复杂,导致一些逻辑分支不能正常处理或处理错误,统称为业务逻辑漏洞JSRC安全小课堂第125期,邀请到月神作为讲师就如何通过技术手段挖掘业务逻辑下的漏洞为大家进行分享。同时感谢小伙伴们的精彩讨论。京安小妹:业务逻辑漏洞常见发生位置?月神:要是按细节来说,每一处都可以是发生位置。每种类型的APP都有自己的常见漏洞位置。例如购买,出售,每一条协议的关键参数。京安小妹:业务逻辑漏洞的分类?月神:本文中特定值指的是指当系…

    2022年6月4日
    66
  • BufferedWriter详解[通俗易懂]

    BufferedWriter详解[通俗易懂]字符缓冲流缓冲流:BufferedWriter高效读写支持输入换行符可以一次写一行,一次读一行。案例/**BufferedWriter*使用字符缓冲流写入文件**/publicclassTestBufferedWriter{publicstaticvoidmain(String[]args)throwsException{//1.创建一个缓冲流FileWriterfw=newFileWriter(

    2022年6月10日
    31
  • Python学习之路40-属性描述符

    Python学习之路40-属性描述符Python学习之路40-属性描述符

    2022年4月20日
    46
  • winzip15.0许可证

    winzip15.0许可证

    2021年12月30日
    62
  • vue定时器定时执行任务_vue 定时器

    vue定时器定时执行任务_vue 定时器对于程序员来说,经常会遇到项目周期短的状况。白天开会讨论需求,晚上加班写代码,熬夜发版本,上线改Bug。工作日就是:开会、写代码、倒水、上厕所、抽烟、改Bug,一天最开心的时刻就是带薪拉屎。好不容易到了周末,有时还会通宵玩游戏,半个月也不运动一次。再好的身体,也会被这种高强度的工作,无规律的生活所击垮。随着年龄越来越大,加上每天久坐不起来运动运动,这样下去身体真的顶不住,久坐有挺多危害的: 久坐可能会导致心脑血管疾病增加 久坐可能会导致免疫力低下 久坐可能会导致损脑伤胃

    2022年10月1日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号