首页
/
行业洞察
/
正文
INDUSTRY INSIGHT · 深度
《计算机组成原理》3.3 动态随机存取存储器(DRAM)
📅 2026/11/4 2:33:09
✍️ 爱科研究院
👁 阅读 3,247
动态随机存取存储器DRAM是现代计算机主存最核心的器件。静态存储器 SRAM 依靠双稳态触发器保存信息每个存储单元需要大量晶体管而 DRAM 将信息存储在微小电容之上仅使用一只 MOS 管搭配电容单元结构极度精简存储密度远高于 SRAM成本低廉因此被大规模用作计算机的主存储器。但是 DRAM 存在两项根本特性信息依靠电容电荷保存电荷会自发泄漏必须定时刷新读出操作会破坏存储单元内部电荷属于破坏性读出读出之后必须执行再生操作这也是“动态”一词的由来。一、单管 DRAM 的工作原理单管 DRAM 的存储元由一个 MOS 管和存储电容构成。MOS 管相当于开关字线控制该管的导通与关断。电容上电荷量的高低用来记录二进制比特电容充有足够电荷表示存储信息“1”电容电荷基本放空则代表存储信息“0”。写入操作当字线给出高电平MOS 管导通。若写入逻辑 1位线上送入高电平电荷经过导通的 MOS 管对存储电容充电若写入逻辑 0位线为低电位电容内部储存的电荷将通过导通的 MOS 管释放电容放电完成置 0。写入结束字线置低MOS 管关断电容与外部电路隔离电荷暂时保存。读出操作是 DRAM 的难点属于破坏性读出。当字线选通、MOS 管导通时电容会和位线之间发生电荷再分配。存储电容容量极小在位线上引起的电压变化十分微弱必须依靠列方向配套的读出放大器灵敏放大器感知并放大电位差才能分辨原来存储的值。一旦读出电容内部电荷状态遭到扰动如果不及时写回原有信息就会直接丢失。因此在读出的同时读出放大器会立刻把放大后的信号重新送回存储电容对电容充电复原这个过程称为再生。也就是说一次完整的读操作天然附带一次对该行存储单元的再生这也是 DRAM 刷新机制的物理基础。输入缓冲器与输出缓冲器互锁保证读写操作不能同时发生防止总线冲突。对比 SRAMDRAM 的存储单元元件少、集成度高、单位比特功耗更低代价是外围控制电路复杂必须增加刷新、灵敏放大、地址锁存等配套硬件。例 3‑1单管单元定性分析假设单管 DRAM 的存储电容容量远小于位线寄生电容。存储元保存比特 1电容带有电荷。当字线选通电容与位线连通电荷被巨大的位线电容分流电位大幅下降。仅凭这个微小电压无法直接送到系统总线必须使用灵敏放大器放大信号并且立即把完整电平重新写回电容。倘若去掉再生回路读完一次单元信息直接损毁。二、DRAM 芯片逻辑结构以 1M×4 位芯片为例DRAM 的容量为 1\ \text{M} \times 4代表一共有 2^{20} 个可寻址单元每个单元输出 4 位数据完整寻址一共需要 20 位地址。为了减少芯片引脚DRAM 采用地址分时复用技术将全部地址分为行地址、列地址两组分两次送入芯片。行、列地址各占 10 比特一共只引出 10 根地址引脚引脚数量减半大幅降低封装成本。芯片内部设置行地址锁存器、列地址锁存器。行选通信号 \overline{\text{RAS}}Row Address Strobe在下降沿将地址线上送来的低 10 位锁存作为行地址随后列选通信号 \overline{\text{CAS}}Column Address Strobe有效锁存后送来的高 10 位列地址。行地址送到行译码器选中存储阵列完整一行列地址经过列译码在已经激活的行之中选出指定列完成单元定位。片选的功能也整合进 \overline{\text{RAS}} 和 \overline{\text{CAS}} 的控制逻辑之中不再设置独立的片选引脚。存储阵列可以看作一个巨大矩阵。行地址选定一整行之后该行上全部单元都连通到灵敏放大器整行数据被送入行缓冲再由列地址在行缓冲中挑选需要的数据位输出。只要后续访问仍然停留在已经打开的行就不需要重新发送完整行地址访问速度明显提升这就是页模式访问的原理。例 3‑2地址线复用计算。给定芯片规格1\ \text{M} \times 4总寻址位数\log_2(1048576)20。将地址平分为两段行地址、列地址各 10 位。芯片对外只引出 10 根地址引脚分先后两次传送行、列地址。如果不采用分时复用就必须引出 20 根地址线芯片封装体积、成本都会显著上升。三、DRAM 的读写时序DRAM 的全部操作严格依照时序信号驱动核心控制信号包括地址总线、\overline{\text{RAS}}、\overline{\text{CAS}}、读/写控制 \text{R}/\overline{\text{W}}、双向数据线。读周期首先将行地址送到地址引脚随后拉低 \overline{\text{RAS}}行地址锁存再送入列地址拉低 \overline{\text{CAS}}锁存列地址此时令 \text{R}/\overline{\text{W}}1设置为读出模式。经过一段固定延迟被选中单元的数据稳定送到数据引脚完成读出并且自动执行再生。直到整个读周期结束撤销选通信号。写周期行、列地址送入、锁存的流程和读周期完全一致区别在于在 \overline{\text{CAS}} 有效之前将 \text{R}/\overline{\text{W}} 置为低电平写使能同时将待写入的数据送到数据总线写入目标单元。从时序图上可以清晰看出一个完整读写周期从 \overline{\text{RAS}} 的下降沿启动直到下一次 \overline{\text{RAS}} 的下降沿为止这个间隔定义为 DRAM 的周期时间。访问 DRAM必须严格满足建立时间、保持时间的时序约束如果控制信号、地址信号之间的时间差不达标会造成地址锁存错误读写失败。四、DRAM 的刷新操作电容漏电是 DRAM 的固有缺陷即使完全不执行读写电容上的电荷也会慢慢泄漏经过一段时间保存的比特会出错。为维持信息必须周期性地给电容补充电荷这个操作叫做刷新。刷新以“行”作为基本单位一旦选中一行该行全部存储单元同时被灵敏放大器读出、放大、写回整行一次性完成电荷恢复不需要单独指定列地址。主流刷新策略分为三类集中式刷新、分散式刷新、异步刷新。集中式刷新在规定的最大刷新间隔典型值 64 ms之内集中划出一整段连续时间逐行完成全部行的刷新。在刷新进行期间存储器拒绝来自 CPU 的访问形成一段“死区”。集中式刷新逻辑简单但是死区过长会造成主存长时间不可用。分散式刷新将刷新分摊把每一次普通存取周期拉长每完成一次正常访问顺带刷新一行。这种方案没有长时间死区但主存的等效存取周期成倍拉长整体速度明显下降。异步刷新是工程上最常用的方案综合了前两种方案的优点。把总的刷新时间均匀分摊每隔一小段时间刷新一行既控制死区的长度又不会过度拖慢访存速度。例如一片 DRAM一共有 8192 行要求全部行必须在 64 ms 之内刷新完毕则平均每一行的刷新间隔为 64\ \text{ms}/8192 \approx 7.8\ \mu\text{s}每隔约 7.8 μs 启动一次单行刷新。现代 DRAM 在芯片内部集成了刷新计数器不需要外部控制器提供完整行地址硬件自动完成刷新控制极大降低了存储控制器的负担。例 3‑3异步刷新计算条件DRAM总行数 8192要求全部单元必须在 64 ms 内完成一轮刷新。求异步刷新的行间隔。T\frac{64\times 10^{-3}}{8192}7.8125\times 10^{-6}\ \text{s}7.8125\ \mu\text{s}也就是大约每隔 7.8 μs存储控制器安排一次单行刷新。每次刷新仅占用一个存储周期死区很短对系统运行的干扰最小。五、同步动态存储器SDRAM传统 DRAM 属于异步器件控制信号直接决定动作没有统一时钟基准。同步 DRAMSDRAM在 DRAM 的基础上引入全局时钟全部地址、命令、数据信号都同步参考时钟信号 CLK 的边沿实现同步控制大幅提升时序稳定性与传输效率。SDRAM 的核心命令激活、读、写、预充电、刷新由 \overline{\text{RAS}}、\overline{\text{CAS}}、\overline{\text{WE}} 的编码组合决定。操作的完整流程发送激活命令锁存行地址打开一行等待行激活延迟发送读或者写命令锁存列地址再经过列选通延迟CAS LatencyCL之后数据出现在数据引脚上。CL 是 SDRAM 的关键参数代表从列命令发出到数据真正输出所跨越的时钟周期数目。SDRAM 在芯片内部划分成多个独立存储体Bank可以在不同 Bank 之间交替执行命令在一个 Bank 执行读写的同时预先激活另外一个 Bank 的行隐藏行激活的延迟流水线式并行处理提高总线利用率。突发传输Burst是 SDRAM 的重要特性只需要给出起始列地址后续连续单元地址由芯片内部自动递增可以一次性读出一串连续数据省去反复发送列地址的开销非常适合图像、大块内存拷贝这类连续访问场景。六、双倍速率同步存储器DDR SDRAMDDRDouble Data Rate是 SDRAM 的改进版本俗称双倍速内存。普通 SDRAM 仅仅利用时钟上升沿采样、传输一组数据DDR 在同一个时钟周期同时利用上升沿、下降沿各传输一次数据在相同时钟频率之下理论数据传输速率直接翻倍而不需要把核心存储阵列的工作频率加倍控制电路压力更小。后续DDR2、DDR3、DDR4、DDR5 在 DDR 的基础之上进一步提高预取位宽、增加片内 Bank 的数量、优化差分信号、降低供电电压持续提升带宽是历代计算机主存的标准方案。七、带高速缓存的动态存储器CDRAMCDRAMCached DRAM直接在同一块 DRAM 芯片上集成一小块高速 SRAM充当片上缓存。当 CPU 访问存储单元如果目标所在的行已经存入片上 SRAM就可以直接从高速缓存读出不再需要完整的 DRAM 行激活流程访问延迟显著降低。CDRAM 将 DRAM 的大容量优势和 SRAM 的高速特性结合适合构建高性能存储子系统。八、DRAM 的校验与纠错DRAM 的存储单元密度极高在宇宙射线、噪声干扰下有可能发生比特翻转造成存储错误。为保证可靠性可以增加校验位。最简单的方案是奇偶校验增加一位校验位能够检测出单比特错但是不能定位、修复错误汉明码增加更多校验位不但可以检错还能够定位出错比特实现单比特纠错广泛用于服务器内存ECC 内存。校验位随同数据一同存入 DRAM读写时自动完成校验计算一旦发现错误硬件可以直接完成纠正保障大规模存储系统长期稳定运行。本章小结DRAM 依靠电容存储电荷以极低的成本实现巨大存储容量是现代主存的基石。单管单元的破坏性读出、分时复用地址、行刷新是区别于 SRAM 的三大标志性特点。从基础异步 DRAM发展到同步 SDRAM、DDR、CDRAM每一代改进都在解决原始 DRAM 的固有缺陷降低访问延迟、提高传输带宽、简化控制逻辑。DRAM 的时序、刷新、容量计算既是存储器硬件设计的核心也是考试的高频考点需要熟练掌握地址划分、刷新间隔、延迟参数的计算方法。
📌 标签:
工业官网
设计趋势
AI 建站
SEO
获取完整报告 →
RELATED ARTICLES
推荐阅读
2026/11/4 2:33:09
LabVIEW 局部变量为何引发竞争条件?四种同步机制
2026/11/4 2:33:09
4B 到底够不够:窄域微调的能力账本与被牺牲的部分
2026/11/4 2:33:08
DHCP详解:动态主机配置协议原理与配置
2026/11/4 3:18:11
48V转12V/15V DC-DC降压选型与外围设计避坑
2026/11/4 3:18:11
STM32与LCD实时波形显示:ADC/DMA双缓冲和局部刷新方案
2026/11/4 3:18:11
Spring Boot集成亚马逊SP-API实战:签名、沙箱与生产避坑指南
2026/11/4 3:18:11
Lampiao靶机渗透实战:从Drupal漏洞到内核提权
2026/11/4 3:18:11
从0搭建企业级知识库-技术指南
2026/11/4 3:13:10
ACOTPN算法:蚁群优化与时间Petri网结合的路径规划新方法
2026/11/4 0:02:45
AI辅助技术栈评估:提升研发决策效率60%
2026/11/4 0:02:45
从生成Token到直接决策:Jev如何重塑AI Agent工程实践
2026/11/4 0:02:45
32G统一内存跑大模型:内存账、TPS实测与端云分流
2026/11/3 4:05:41
面向复杂光照与角度的宠物面部识别鲁棒性增强策略
2026/11/3 4:05:35
DRV8818PWPR与R7FA8M1AHECBD工业步进驱动实战指南
2026/11/3 4:05:30
STM32与DRV8818双极步进电机驱动方案:从选型到调试全流程解析
2026/11/3 4:05:41
面向复杂光照与角度的宠物面部识别鲁棒性增强策略
2026/11/3 4:05:35
DRV8818PWPR与R7FA8M1AHECBD工业步进驱动实战指南
2026/11/3 4:05:30
STM32与DRV8818双极步进电机驱动方案:从选型到调试全流程解析