文章目录

  • 1.SRAM和DRAM区别
    • 为什么DRAM需要不断的刷新
    • 寻址方式寻址方式
  • 2.ROM和RAM
    • RAM
    • DRAM原理
  • Flash
  • Reference

1.SRAM和DRAM区别

DRAM用作内存比较多,SRAM用作cache比较多。

从名字上看,SRAM与DRAM的区别只在于一个是静态一个是动态。SRAM不需要刷新电路就能够保存数据,所以具有静止存取数据的作用。而DRAM则需要不停地刷新电路,否则内部的数据将会消失。
SRAM存储一位需要花6个晶体管

而DRAM只需要花一个电容和一个晶体管。

cache追求的是速度所以选择SRAM,而内存则追求容量所以选择能够在相同空间中存放更多内容并且造价相对低廉的DRAM。在我们的PC待机时消耗的电量有很大一部分都来自于对内存的刷新。

为什么DRAM需要不断的刷新

DRAM的数据实际上是存在电容里的。而电容放久了,内部的电荷就会越来越少,对外就形成不了电位的变化。而且当对DRAM进行读操作的时候需要将电容与外界形成回路,通过检查是否有电荷流进或流出来判断该bit是1还是0。所以无论怎样,在读操作中都破坏了原来的数据。所以在读操作结束后需要将数据写回DRAM中。在整个读或者写操作的周期中,计算机都会进行DRAM的刷新,通常是刷新的周期是4ms-64ms。

寻址方式寻址方式

SRAM和DRAM的寻址方式也有所不同。虽然通常我们都认为内存像一个长长的数组呈一维排列,但实际上内存是以一个二维数组的形式排列的,每个单元都有其行地址和列地址,当然cache也一样。而这两者的不同在于:

对于容量较小的SRAM,可以将行地址和列地址一次性传入到SRAM中,而如果对DRAM也这样做的话,则需要很多很多根地址线(容量越大,地址越长,地址位数越多)。所以分别传送行地址和列地址到DRAM中。先选中一整行,然后将整行数据存到一个锁存器中,等待列地址的传送然后选中所需要的数据。这也是SRAM比DRAM快的原因之一。

2.ROM和RAM

ROM和RAM指的都是半导体存储器,ROM是Read Only Memory的缩写,RAM是Random Access Memory的缩写。

ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是在掉电之后就丢失数据,典型的RAM就是计算机的内存。

RAM

有两大类,一种称为静态RAM(StaticRAM/SRAM),SRAM速度非常快,是目前读写最快的存储设备了,但是它也非常昂贵,所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓冲。另一种称为动态RAM(Dynamic RAM/DRAM),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后,经过一段时间,数据会丢失,因此需要一个额外设电路进行内存刷新操作。具体的工作过程是这样的:一个DRAM的存储单元存储的是0还是1取决于电容是否有电荷,有电荷代表1,无电荷代表0。但时间一长,代表1的电容会放电,代表0的电容会吸收电荷,这就是数据丢失的原因;刷新操作定期对电容进行检查,若电量大于满电量的1/2,则认为其代表1,并把电容充满电;若电量小于1/2,则认为其代表0,并把电容放电,藉此来保持数据的连续性。

Flash

需要的时候再来补吧

Reference

https://www.cnblogs.com/nano94/p/4014082.html
https://www.cnblogs.com/heart2futrue/p/8440647.html

SRAM和DRAM详解相关推荐

  1. 易失性存储DRAM详解

    DRAM是一种半导体存储器,主要的作用原理是利用电容内存储电荷的多寡来代表一个二进制bit是1还是0.与SRAM相比的DRAM的优势在于结构简单,每一个bit的数据都只需一个电容跟一个晶体管来处理,相 ...

  2. ROM、RAM存储器原理详解以及DRAM、SRAM、SDRAM 、FLASH存储器的介绍

    目录 概述 一.ROM 1. 介绍 2. 硬件结构 二.RAM 1. 介绍 2. 硬件结构 三.DRAM 四.SRAM 五.DRAM与SRAM的区别 SRAM DRAM 六.SDRAM 七.FLASH ...

  3. 【嵌入式开发】 Bootloader 详解 ( 代码环境 | ARM 启动流程 | uboot 工作流程 | 架构设计)

    作者 : 韩曙亮 博客地址 : http://blog.csdn.net/shulianghan/article/details/42462795 转载请著名出处 相关资源下载 :  -- u-boo ...

  4. U-Boot 之五 详解 U-Boot 及 SPL 的启动流程

      在之前的博文 Linux 之八 完整嵌入式 Linux 环境介绍及搭建过程详解 中我们说了要一步步搭建整个嵌入式 Linux 运行环境,今天继续介绍 U-Boot 相关的内容.我所使用的硬件平台及 ...

  5. Cache超清晰逻辑详解----不一致性(待更)

    文章目录 Cache超清晰逻辑详解 造成Cache与主存内容不一致的原因主要有两个: cache更新协议中的算法 解决Cache不命中的情况: 在多机系统中解决不一致性: 1.共享cache法 2. ...

  6. 《嵌入式Linux软硬件开发详解——基于S5PV210处理器》——1.2 S5PV210处理器

    本节书摘来自异步社区<嵌入式Linux软硬件开发详解--基于S5PV210处理器>一书中的第1章,第1.2节,作者 刘龙,更多章节内容可以访问云栖社区"异步社区"公众号 ...

  7. 朱老师ARM裸机学习笔记(四):S5PV210启动过程详解

    常用器件特性 内存: SRAM 静态内存 特点就是容量小.价格高,优点是不需要软件初始化直接上电就能用 DRAM 动态内存 特点就是容量大.价格低,缺点就是上电后不能直接使用,需要软件初始化后才可以使 ...

  8. NAND FLASH 内存详解与读写寻址方式

    目录: 第一章 绪论 1.1 课题来源 1.2 研究背景与意义     1.2.1 Flash介绍     1.2.2 NAND Flash介绍     1.2.3 NAND Flash与NOR Fl ...

  9. NAND_FLASH_内存详解与读写寻址方式

    一.内存详解 NAND闪存阵列分为一系列128kB的区块(block),这些区块是 NAND器件中最小的可擦除实体.擦除一个区块就是把所有的位(bit)设置为"1"(而所有字节(b ...

  10. 计算机缓存Cache以及Cache Line详解

    转载: 计算机缓存Cache以及Cache Line详解 - 围城的文章 - 知乎 https://zhuanlan.zhihu.com/p/37749443 L1,L2,L3 Cache究竟在哪里? ...

最新文章

  1. mysql x64界面配置版下载_MySQL下载安装、配置与使用(win7x64)
  2. Java final、static final 讲解
  3. 揭秘!双11万亿流量下的分布式缓存系统 Tair
  4. P1459 三值的排序 Sorting a Three-Valued
  5. vs文件上传失败--超过最大字符限制
  6. php性能优化 --- laravel 性能优化
  7. 解决mysql中表字符集gbk,列字符集Latin1,python查询乱码问题
  8. centos7.0查看IP
  9. php 标签页切换,vue.js实现标签页切换效果
  10. 笨办法学 Python · 续 练习 23:三叉搜索树
  11. Vcenter5.5+vmwarePowercli6.5+powershell5批量创建虚拟机
  12. PhpStorm中如何使用FTP功能
  13. 大数据算法 十大经典算法
  14. 基于JQUERY的WEB在线流程图设计器GOOFLOW 0.5版
  15. 自己开发的一套实用故障报修管理系统【分享推荐大家】
  16. 嵌入式系统 - 任务管理
  17. 无线网络和本地连接同时启用后,无线网络无法使用。
  18. 车厢调度(信息学奥赛一本通 - T1357)
  19. 关于视频流媒体服务器的学习记录
  20. 机器学习中的K-means算法原理与R语言实例

热门文章

  1. Linux下php导出excel失败且浏览器报错500
  2. 在用mybatis时报错java.lang.AbstractMethodError: com.mysql.jdbc.ServerPreparedState
  3. 第六章 第九节 焦点与tab顺序
  4. 前端页面设计 | 博客系统
  5. 555555555 5555555555 55 55555555
  6. 计算机中的c盘d盘,怎么把电脑中的D盘转换成C盘并删除原C盘系统
  7. Springboot+jwt+shiro实现用户权限控制
  8. 如何查看计算机连接的打印机驱动,打印机已经连接电脑了。360驱动大师怎么检查不出来打印机驱动在那里?...
  9. 使用PHP实现网易云音乐数据的获取
  10. 渝粤题库 陕西师范大学 《教育社会学》作业