内存学习(3):DRAM的基础存储结构(存储层级、读写过程,刷新与暂存)

DRAM(动态随机储存器)的内部工作原理简述 内部结构 DRAM芯片(动态随机储存器)可被分为d个超单元,每个超单元由w个DRAM单位组成。这样的芯片储存了dw位信息。超单元被组织成阵列。每个超单元都有自己的地址:(i,j)。i表示行,j表示列。 在上图的DRAM芯片中,由16个超单元,每个超单元的w=8(所含字节的位数),4行4列。信息可以通过引脚进行传输。每个引脚携带一位的信号。图中有两组引脚,2个addr引脚,用于传输超单元的行与列的地址。8个data引脚,可传送一个字节的信息。DRAM芯片会与内存控制器相连,内存控制器可以与DRAM芯片进 阅读详情

1 DRAM背景简介

DRAM,全称为 Dynamic Random Access Memory ,中文名是“动态随机存取存储器”。所谓“动态”是和“静态”相对应的,芯片世界里还有一种 SRAM 静态随机存取存储器的存在。

笼统地说,DRAM 的结构比 SRAM 更简单,面积占用更小,适合制作大容量的存储芯片;而 SRAM 结构复杂一些,一般使用六个晶体管,面积消耗大,但是读写速度快,而且因为 SRAM 只用到晶体管,所以在工艺上和逻辑芯片相兼容,我们可以在逻辑芯片上直接集成 SRAM 。

因为 DRAM 结构简单、面积消耗小,所以一般用 DRAM 制作逻辑芯片外的大容量存储芯片,比如内存芯片。如果学过计算机组成或微机原理的相关内容,大家一定知道内存芯片和 CPU 是分离的,CPU 通过总线访问内存芯片,从内存芯片中读取数据,而这个内存芯片就是用 DRAM 制成的。

2 DRAM基本单元(Cell)

image-20231105180419376

所谓 DRAM ,是指上图所示的一个电路,为了和 DRAM 芯片相区分,把图一的电路称作一个 cell 。图中的 CMOS 晶体管涉及到数字电路的知识。简单来说,CMOS 晶体管是一个电子开关,当给晶体管最上面的一端(称作栅极)加上电压或是取消电压,晶体管两端就可以流过电流。cell 中的小电容是存储信息的关键,小电容可以存储电荷,现在规定当电容存有电荷,cell存储比特信息“ 1 ”;当电容不存有电荷,存储比特信息“ 0 ”。

当要读取 cell 的存储值,首先打开电子开关(即晶体管),然后根据导通后的电容是否会进行充放电信息获得存储值。如果 cell 保存“ 1 ”,即电容存有电荷,那么当打开开关,电容就会放电;如果 cell 保存“ 0 ”,即电容不保存电荷,那么打开开关之后电容不会放电。

当要向 cell 中写入值,仍然先打开电子开关,然后在电子开关的另一侧施加电压。如果要写入“ 1 ”,则施加高电压,此时电流会通过晶体管向电容充电;如果要写“ 0 ”,则让电子开关另一端接地。施加电压一段时间后即可断开开关,此时 cell 已经保存好写入值,因为电容很小,所以施加电压的时间会很短。

2.1 Cell阵列

image-20231105181243973

一个 cell 只能存储一比特信息,即“ 0 ”和“ 1 ”,为了存储大量信息,需要构建起 cell 阵列。cell 阵列的视觉图如上图。可以看到每行 cell 的晶体管的栅极都是连在一起的,即都连在字线上,这意味着给字线施加电压,字线对应的一行cell都会被打开。当一行 cell 被打开,cell 电容就会向位线充放电,一行中的每个 cell 都与一条位线直接相连,读取位线的电压变化,即可知道 cell 的存储信息。

  • word line:字线(用来控制读取哪一个字,一个字是有若干个字节组成,由若干*8个位组成)。之所以叫字线,是因为给这根线通电,一行 cell 都会被打开,在计算机里八位等于一个字节,多个字节等于一个字,因此多个 cell 组合起来就是多个字,因为这根线可以打开多个字,所以叫字线
  • bit line:位线。之所以叫位线,是因为在读取信息时,每一根线上的电压波动都代表一位比特信息,一根线代表一位,所以叫做位线

2.2 Cell阵列的读取

cell 的读取依靠小电容充放电,电容充放电导致位线产生电压波动,通过读取位线电压波动即可获取信息。小电容充放电所产生的电压波动是很微弱的,充放电所造成的电压波动的时间也是很短的,因此很难直接读取充放电信息,为此 cell 阵列的读取使用到了“ sense amplifier ”,即读出放大器。

读出放大器可以捕捉到微弱的电压波动,并根据电压波动的情况在本地还原出 cell 的电容电压,而且放大器内还有锁存器,可以把还原出来的电容电压值保存起来,这样一来 cell 保存的信息就从 cell 电容转移到了放大器本地。

image-20231105182455087

每条位线都要接到一个放大器中,效果图如上。在读取 cell 行(之后也称作单元行)前,需要把每根位线都 precharge(预充电)到电容电压/供电电压最大值的一半,如果供电电压是 3 V,那么就预充电到 1.5 V。预充电完毕后打开字线,单元行中每个 cell 电容或是向位线放电,或是由位线充电。放电者位线电压上升一点,充电者位线电压下降一点。放大器可以捕捉位线上的电压波动,继而在本地还原、暂存对应 cell 电压。

在这里插入一些自己个人的理解:

  • 如果存储值为0,没有电荷,预充到1.5V后,即使电容两段电压略高于0V,也一定进行充电。
  • 如果存储值为1,存在电荷,
RAM、SRAM、DRAM、SDRAM、DDR、ROM、PROM、EPROM、EEPROM、NAND FLASH、NOR FLASH傻傻分不清楚?一文讲清它们的区别 在电子领域中,我们经常提到RAM、SRAM、DRAM、SDRAM、DDR、ROM、PROM、EPROM、EEPROM、NAND FLASH、NOR FLASH等,它们都是常见的存储类型,但是却在结构、功能和应用场景上存在着显著的差异。有些朋友可能不太能区分,今天我们就来依次介绍一下。 阅读详情

相关推荐

DRAM:DRAM入门指南及工作原理

DRAM 1T1C 的电路结构(存储0/1的最小单元)主要由一个晶体管(MOSFET)和一个电容器(Capacitance)组成。当电容器充电时,表示存储的数据为 “1”;当电容器放电时,表示存储的数据为 “0”。

weixin_42896509的博客 4156

[DRAM Memory Address Mapping]DRAM的结构原理剖析

如果你有内存测试和内存地址Decode这方面的需求,可以私信我,我们一起进步!

2401_86762342的博客 1766

DRAM存储原理与刷新机制:从1T1C结构到内存暂存技术

在计算机存储层次中,DRAM作为主存承担着数据暂存的关键角色,它介于高速Cache与大容量SSD之间,用容量、速度与成本的平衡支撑起整个系统的运行。DRAM的存储单元采用1T1C结构,通过电容上的电荷表示逻辑0和1,但电容会自然漏电,使得数据只能维持毫秒级时间,必须依靠周期性刷新来“续命”。刷新机制不仅决定了数据可靠性,也悄悄占用着内存带宽,影响系统性能。理解行激活、列访问、预充电这组时序操作,以及刷新对延迟和带宽的消耗,有助于开发者在内存调优、稳定性测试和应用部署中做出更合理的决策。无论是数据库、缓存系统

weixin_29178069的博客 319

深入解析DRAM:从存储单元到刷新机制,理解内存“暂存”本质

计算机存储体系按速度与成本划分为多级缓存结构,其中动态随机存取存储器(DRAM)凭借单位容量成本优势成为主存的绝对主力。其核心单元由1个晶体管和1个电容构成,依赖电容上的电荷表示0和1,但电荷会随时间泄漏,因此必须通过周期性的刷新操作维持数据,这正是“动态”与“暂存”的本质。理解这一原理,就能解释内存延迟为何居高不下、顺序读与随机读性能差距悬殊等常见现象。从工程实践看,无论是数组遍历、数据库预读,还是内存条的超频与选购,底层都受DRAM的存储结构与访问时序影响。系统梳理存储金字塔、单元结构、读写流程、刷新机

weixin_31292729的博客 257

SRAM与DRAM存储器原理详解及应用

存储器系统是计算机硬件架构中不可或缺的部分,其主要功能是暂存数据和指令以供处理器(CPU)使用。存储器系统包含从高速缓存(Cache)到主内存(如RAM),再到辅助存储器(如硬盘驱动器)的多种类型。本章旨在为读者提供存储器系统的基本概念、结构和分类,并且为后续章节深入讨论SRAM、DRAM等存储技术打下基础。存储器系统的发展经历了从磁带到磁盘、半导体存储器等几个阶段,不断在速度、容量和成本效益方面取得平衡。存储器系统设计的核心在于优化存储层次结构,以减少处理器的访问延迟,提升数据的存取效率。

weixin_35749786的博客 1880

操作系统笔记(含王道计算机考研——操作系统课件)

操作系统(OS) 笔记根据B站王道计算机考研——操作系统视频整理所得,视频链接:https://b23.tv/0I2qex 视频中所用课件:链接:https://pan.baidu.com/s/101bFWm0Tv0emNpEneidYPA 提取码:y3dd 1.计算机系统概述 1.简介 什么是操作系统? 操作系统(Operating Ststem, OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境,它是

拧发条鸟的博客 6万+

CXL Virtual Hierarchy (VH) Enumeration理解

在 CXL 3.0 协议中,CXL Virtual Hierarchy (VH) Enumeration 是一种针对 CXL 虚拟层级(Virtual Hierarchy) 设计的设备枚举机制,它允许软件将物理连接的 CXL 设备抽象为多个逻辑层级(虚拟层级),从而实现更灵活的资源管理和拓扑扩展。与传统的 PCIe 枚举相比,CXL VH 枚举在协议特性、拓扑抽象和资源分配机制上有显著差异。本质:VH 是一个逻辑上的设备层级结构,可能与物理连接拓扑不同。

Summer的博客 995

STM32F103ZE驱动PMW3901光流模块,从SPI配置到数据读取的完整避坑指南

本文详细解析了STM32F103ZE驱动PMW3901光流模块的全过程,从SPI配置、硬件连接到数据读取与处理,提供了完整的避坑指南。重点介绍了SPI参数配置、初始化序列优化、运动数据滤波等关键技巧,帮助开发者快速实现精准的光流检测。

weixin_42631411的博客 501

从亚稳态到流片失败:SpyGlass CDC在5G芯片设计中的避坑指南

本文深入探讨了在复杂5G芯片设计中,如何利用SpyGlass CDC工具构建高效的时钟域交叉验证流程,以避免因亚稳态问题导致的流片失败。文章结合实战经验,详细解析了从约束编写、时钟复位完整性检查到层次化验证和特殊场景处理的全过程,并强调了精准的检查约束是确保验证有效性的基石,旨在帮助设计团队安全跨越异步时钟域的雷区。

weixin_29168153的博客 440

WorldPop数据集

WorldPop数据集介绍

qq_43874102的博客 1万+

基于STM32与CAN总线的多电机协同控制系统设计与实现

本文详细介绍了基于STM32与CAN总线的多电机协同控制系统设计与实现。该系统采用分布式架构,通过CAN总线实现多节点通信,结合梯形加减速算法和同步控制策略,有效解决了工业自动化中多电机同步性差的问题。文章涵盖硬件设计、通信协议、抗干扰措施及实战调试经验,为工业应用提供高可靠性解决方案。

tech5的博客 958

arduino uno spi驱动12864

arduino uno spi驱动12864

yvee的博客 2054

FPGA实现CAN接口(SJA1000)

学无止境,善于积累,每天积累一点点,成功就在眼前,加油! 1 CAN总线简介 CAN(Controller Area Network,控制器局域网 )总线是一个多主机异步串行总线,也是国际上应用最广泛的现场总线之一。在现场总线中,它是惟一被ISO国际标准化组织批准的现场总线。由于其成本低、容错能力强、支持分布式控制、通信速率高等优点在汽车、工业控制、航天等领域得到广泛应用。特别是由于CAN总线具有...

m0_46498597的博客 1万+

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

上一篇: 内存学习(2):内存分类与常用概念2(SDRAM与DDR)
下一篇: 内存学习(4):内存分类与常用概念3(ROM)
呆呆象呆呆
博客等级 码龄9年 1761粉丝 328原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值