☰
一文搞懂 RAM:随机存取存储器核心原理、SRAM/DRAM 分类与系统定位
2026/10/17 6:44:18 网站建设 项目流程

一文搞懂 RAM:随机存取存储器核心原理、SRAM/DRAM 分类与系统定位

系列:微机原理与存储器系列(第 1 篇:RAM 基础原理篇)
摘要:本文从存储器分层体系切入,讲清随机存取存储器 RAM 的本质、易失性与随机访问特性,重点对比 SRAM 的 6T 单元与 DRAM 的 1T+1C 单元,解析刷新机制、性能指标、CPU 三总线连接、地址线计算与存储器扩展。关键词:RAM、SRAM、DRAM、ROM、EPROM、微机原理、存储器。
关键词/标签:微机原理存储器RAMSRAMDRAMROMEPROM嵌入式硬件
首图建议:统一系列风格,标注“系列 01:RAM 基础原理篇”。


1. 开篇:存储器分层体系与 RAM 的系统定位

核心结论:RAM 是 CPU 与存储体系之间的可读写、易失性桥梁;在典型微机系统中,SRAM 主要担任 Cache,DRAM 主要担任主存。

现代计算机的存储器不是单一器件,而是一个分层体系。越靠近 CPU,速度越快、容量越小、成本越高;越远离 CPU,速度越慢、容量越大、单位成本越低。典型层级如下:

CPU 寄存器 ↓ 速度最快、容量极小、成本极高 Cache(SRAM,静态随机存取存储器) ↓ 主存(DRAM,动态随机存取存储器) ↓ SSD / HDD / 外存 ↓ 离线存储 / 网络存储

在这个体系中,随机存取存储器(Random Access Memory,RAM)处于 CPU 与外部存储之间的关键位置。CPU 运行程序时,指令和数据通常先从外存加载到主存,再由 Cache 逐级送入 CPU。因此,RAM 不是“永久仓库”,而是“运行工作台”。

RAM 的系统定位可以概括为三点:

  1. 主存角色:由 DRAM 构成,存放正在运行的操作系统、进程、堆栈、全局变量和 I/O 缓冲。
  2. 缓存角色:由 SRAM 构成,放在 CPU 内部或附近,缓解 CPU 与主存之间的速度差距。
  3. 固件对照角色:只读存储器(Read-Only Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)以及 Flash 等非易失存储器,通常存放 BIOS、Bootloader、固件和常量参数;而 RAM 存放运行时可变数据。ROM/EPROM 也可“随机访问”,但 RAM 的核心标签是“可读写 + 易失性”。

从微机原理考点看,RAM 与 CPU 的连接离不开三组总线:地址线决定“访问哪个单元”,数据线决定“传多少位”,控制线决定“读还是写、什么时候选通”。这也是后文第 6 节的重点。


2. RAM 核心定义、分类与 SRAM/DRAM 总览

核心结论:RAM 的本质是“可读可写、随机访问、掉电易失”的半导体存储器;其两大主流分类是 SRAM 与 DRAM,分别对应速度优先和密度/成本优先。

2.1 RAM 的两个核心特性

第一,随机访问。
“随机存取”不是指数据随机,而是指访问任意存储单元所需时间与物理位置基本无关。相比之下,磁带是顺序存取,访问不同位置的时间差异很大。RAM 的地址译码机制使其能够直接定位目标单元。

第二,易失性。
RAM 依赖电力维持数据。一旦断电,SRAM 的双稳态状态和 DRAM 的电容电荷都会丢失。因此 RAM 不适合长期保存数据,只适合运行时存储。

2.2 RAM 的分类总览

按存储机理,RAM 主要分为:

分类英文全称存储单元是否刷新速度集成度成本典型用途
静态 RAMStatic Random Access Memory,SRAM6T 双稳态触发器不需要快低高Cache、寄存器堆、小容量高速缓冲
动态 RAMDynamic Random Access Memory,DRAM1T+1C需要较慢高低主存、显存、大容量内存

SRAM 的 6T 单元由六个 MOS 晶体管组成:两个 PMOS 上拉管、两个 NMOS 下拉管构成两个交叉耦合反相器,另外两个 NMOS 作为访问管。部分资料将其描述为“2 个 PMOS + 4 个 NMOS”,其中 4 个 NMOS 包含 2 个下拉管和 2 个访问管[[1]][[2]][[3]];主流标准 6T 结构也可理解为“2 PMOS + 2 NMOS 反相器 + 2 NMOS 访问管”[[4]][[5]]。

DRAM 的 1T+1C 单元由一个晶体管和一个电容器构成,利用电容是否带电表示 0 或 1[[6]][[7]][[8]]。由于电容会漏电,DRAM 必须周期性刷新,这也是“动态”一词的来源[[9]][[10]][[11]]。

2.3 RAM 与 ROM/EPROM 的边界

类型可读可写掉电保持典型用途
RAM是是否运行变量、堆栈、主存、Cache
ROM是通常否/特殊条件是固化程序、启动代码
EPROM是紫外线擦除后写入是老式固件、实验教学
EEPROM/Flash是电可擦写是参数存储、固件、SSD

因此,在微机系统中常说“RAM 掉电丢失,ROM/EPROM/Flash 掉电保存”。RAM 的选择主要看速度、容量、功耗和成本;ROM/EPROM 的选择主要看非易失性和可更新性。


3. SRAM 原理:6T 存储单元、读写过程与应用

核心结论:SRAM 用交叉耦合反相器形成双稳态,不需要刷新;速度快、噪声容限设计关键,但单元面积大、成本高,因此主要用于 Cache。

3.1 6T SRAM 单元结构

标准 6T SRAM 单元由六个晶体管组成:

  • P1、P2:两个 PMOS 上拉管,源极接电源 VDD。
  • N1、N2:两个 NMOS 下拉管,源极接地 VSS。
  • N3、N4:两个 NMOS 访问管,也称选择管或传输管,栅极接字线 WL,源极分别接位线 BL 和互补位线 BLB,漏极接存储节点 Q 和 Qb。

其中,P1 与 N1 组成第一个 CMOS 反相器,P2 与 N2 组成第二个 CMOS 反相器;两个反相器的输出与输入交叉耦合,形成双稳态锁存器。第一节点 Q 和第二节点 Qb 储存互为反相且互锁的信息[[12]]。M1~M4 构成双稳态电路,用于锁存 1 位数字信号;M5、M6 为传输管,负责在读/写操作时将存储单元与外围电路连接或断开[[13]]。

结构示意图可简化为:

VDD ┌────┴────┐ P1 P2 │ │ Q ────┤ ├──── Qb │ │ N1 N2 │ │ GND GND WL ──┬──────────────┬── WL │ │ N3 N4 │ │ BL ──┘ └── BLB

该结构的关键是交叉耦合:若 Q 为高、Qb 为低,则 N2 导通、P1 导通,进一步维持 Q 高、Qb 低;反之亦然。因此只要不断电,状态可稳定保持,无需刷新。

3.2 SRAM 读操作过程

读操作大致分为四步:

  1. 预充电:位线 BL 和 BLB 被预充电到高电平。
  2. 字线选通:字线 WL 变为高电平,访问管 N3、N4 导通,存储节点与位线连接。
  3. 差分放电:若存储节点 Q 为低,则 BL 通过 N3 和下拉管 N1 放电,电压略微下降;BLB 保持高电平。反之则 BLB 下降。
  4. 感测放大:感测放大器检测 BL 与 BLB 之间的微小电压差,并放大为完整逻辑电平,输出数据。

读操作的关键稳定性问题是“读破坏”:如果访问管过强、下拉管过弱,读操作可能把存储节点拉高到反相器翻转阈值以上,导致数据意外翻转。因此设计中要保证下拉管电流大于访问管电流,即提高单元比,增强读稳定性[[14]][[15]]。

3.3 SRAM 写操作过程

写操作也分三步:

  1. 驱动位线:写驱动器把新数据送到 BL 和 BLB,例如写 0 时 BL 为低、BLB 为高。
  2. 字线选通:WL 拉高,访问管 N3、N4 导通。
  3. 强制翻转:强驱动的位线通过访问管改变存储节点 Q、Qb 的电平,覆盖原有状态,交叉耦合反相器随后锁定新数据。

写操作的关键是“可写性”:访问管和下拉管的总驱动能力必须强于另一侧上拉管,才能把原本为高的存储节点拉低,完成翻转。写能力与上拉比、访问管强度密切相关。

3.4 新型 6T 与读写分离思路

传统 6T SRAM 在读操作时,存储节点通过访问管直接连接位线,容易受到位线波动和噪声影响;读/写共用端口也可能降低噪声容限。对此,有研究提出读/写分开的新型 6T 结构:由 NMOS 管 M5、M6 负责读操作,NMOS 管 M1、M4 和 PMOS 管 M2、M3 完成写操作,使存储节点与读输出分离,读/写时仅一个位线参与工作,从而避免位线波动干扰存储节点,提高噪声容限和稳定性,并降低功耗[[16]]。

需要注意的是,[[17]] 仅包含书籍元数据与阅读引导,未提供可直接引用的技术正文,因此本节技术细节主要依据 [[18]][[19]]等资料。

3.5 SRAM 的应用定位

SRAM 的典型应用包括:

  • CPU 一级/二级/三级 Cache;
  • 寄存器堆、TLB、分支预测器;
  • 微控制器内部高速 RAM;
  • 网络交换芯片、FPGA 片内块 RAM;
  • 小容量、高速度、低延迟缓冲。

SRAM 不需要刷新,控制逻辑相对简单,速度极快;但每个单元 6 个晶体管,面积大、集成度低、成本高,因此不适合做 GB 级主存。


4. DRAM 原理:1T+1C 存储、刷新机制与应用

核心结论:DRAM 用 1 个晶体管和 1 个电容存储 1 位数据,密度高、成本低,但电容漏电导致必须定期刷新,因此适合做主存,而不是 Cache。

4.1 1T+1C 存储单元

DRAM 的基本存储单元由 1 个晶体管(1T)和 1 个电容器(1C)组成[[20]][[21]][[22]]。晶体管作为访问开关,栅极接字线 WL,源极/漏极分别接位线 BL 和电容。电容是否带电表示 0 或 1:

  • 写入 1:位线驱动高电平,晶体管导通,电容充电。
  • 写入 0:位线驱动低电平,晶体管导通,电容放电。
  • 读取:先预充电位线,再打开晶体管,电容与位线发生电荷分享,位线电压微小变化,感测放大器检测并放大。

当栅极施加电压时,数据电压放置在位线上并充电到存储电容器中[[23]][[24]]。这种结构只需 1T+1C,单元面积极小,因此 DRAM 集成度远高于 SRAM。

但 DRAM 读操作具有破坏性:电荷分享后电容电荷被扰动,读出后必须立即重写。此外,电容存在自然漏电,存储电荷会随时间泄漏,导致信息丢失,因此必须定期刷新[[25]][[26]][[27]]。

4.2 DRAM 刷新机制

刷新通常按行进行。刷新时,行地址被选中,整行数据被读出到刷新放大器,立即重写回原行;此时列选择信号为 0,数据不输出到总线[[28]][[29]][[30]]。刷新周期通常指“最大刷新间隔”,即所有行必须在该时间内完成一次刷新。老式 DRAM 常取 2 ms[[31]][[32]]现代 DRAM 常取 64 ms 或更长[[33]][[34]]。

三种典型刷新方式如下:

刷新方式实现思路优点缺点适用性
集中刷新刷新周期前半段正常读写,后半段集中逐行刷新所有行控制简单,正常访问时段连续存在“死时间”,刷新期间 CPU 无法访问很少使用[[35]][[36]][[37]]
分散刷新每个存取周期后立即刷新一行,存取周期被延长无死时间,操作连续存取周期显著延长,如 0.5 μs 变为 1 μs,高速性受损较少使用[[38]][[39]][[40]]
异步刷新将刷新均匀分配,每隔固定时间刷新一行消除死时间,又不过度延长存取周期,效率高控制稍复杂现代 DRAM 常用[[41]][[42]][[43]]

举例:若 64 ms 内需刷新 4096 行,则平均刷新间隔为 64 ms / 4096 = 15.625 μs,每隔 15.625 μs 刷新一行,即可满足要求[[44]][[45]][[46]]。

需要注意一个常见争议:[[47]] 提到“分散式刷新也称异步式刷新”,这与多数资料将集中式、分散式、异步式列为三种不同方式的观点冲突[[48]][[49]][[50]]。按照主流计算机组成原理教材,分散式与异步式应视为不同策略:分散式强调“每次访问后刷新一行”,异步式强调“均匀间隔刷新一行”。

4.3 DRAM 的技术演进与应用

DRAM 从早期异步 DRAM 发展到 SDRAM、DDR SDRAM、DDR2/3/4/5、LPDDR、GDDR、HBM 等。其核心趋势是:

  • 预取宽度增加;
  • 双沿传输;
  • Bank 并行;
  • 更高频率;
  • 更低电压;
  • 3D 堆叠与 HBM 高带宽封装。

DRAM 的典型应用是主存、显存、FPGA 外部存储、网络包缓冲等。它容量大、成本低,但延迟高于 SRAM,且需要刷新控制。


5. RAM 性能指标、SRAM/DRAM 对比与选型

核心结论:RAM 选型本质是在速度、容量、成本、功耗之间折中;SRAM 胜在速度,DRAM 胜在密度和成本,二者不是替代关系,而是层级互补关系。

5.1 关键性能指标

指标定义关键点
存取时间(Access Time,TA)从发出读/写命令到数据完成读/写所需时间反映单次访问延迟
存储周期(Cycle Time,TC)连续两次访问存储单元所需最小时间间隔DRAM 因恢复/刷新,TC 通常大于 TA;SRAM 中 TC 常接近 TA
存储容量可容纳的存储单元总数常用字(Word)或字节(Byte)表示
带宽单位时间存取的信息量带宽 = 数据宽度 / 存储周期 × 效率
功耗动态功耗、静态功耗、刷新功耗之和SRAM 待机功耗较高;DRAM 刷新功耗显著
集成度单位面积可集成的存储单元数DRAM 单元面积远小于 SRAM
成本每 MB/GB 价格SRAM 昂贵,DRAM 便宜约 1/100 或更低
可靠性噪声容限、软错误率、刷新稳定性SRAM 需读/写稳定性设计;DRAM 需刷新和 ECC

5.2 SRAM 与 DRAM 对比

对比维度SRAMDRAM
存储单元6T 双稳态触发器[[51]][[52]]1T+1C[[53]][[54]][[55]]
是否刷新不需要需要,按行刷新[[56]][[57]][[58]]
典型存取时间1~50 ns,常见 <10 ns35~180 ns,具体取决于代际
存储周期接近存取时间大于存取时间,存在恢复/预充电
单元面积大,约 140~280 F² 或 50~120 F²小,约 6~12 F²
集成度低高,约为 SRAM 的 16 倍或以上
典型容量KB~MB 级GB 级
成本高低,约为 SRAM 的 1/100 或更低
功耗待机功耗较高,读写功耗中等静态功耗较低,刷新动态功耗高
典型用途Cache、寄存器堆主存、显存
易失性是是

从表中可见,SRAM 和 DRAM 的差异并非“谁更好”,而是“谁更适合哪一层”。CPU 需要极低延迟,所以用 SRAM 做 Cache;主存需要大容量低成本,所以用 DRAM。ROM、EPROM、Flash 则负责非易失存储,形成完整层级。

5.3 选型原则

  • 速度优先:选 SRAM,如 Cache、寄存器堆、小 FIFO。
  • 容量/成本优先:选 DRAM,如主存、显存、大缓冲。
  • 非易失优先:选 ROM、EPROM、EEPROM、Flash,如固件、启动代码、参数区。
  • 低功耗嵌入式:片内 SRAM + 片内 Flash 常见;外部大容量可用 LPDDR。
  • 高带宽计算:HBM、GDDR 等 DRAM 变体用于 GPU/AI 加速器。

6. 微机系统中的 RAM:CPU 连接、容量计算、扩展与总结

核心结论:CPU 通过地址线选单元、数据线传数据、控制线定操作;存储容量由地址线数量和数据线数量共同决定;存储器扩展分为位扩展、字扩展和字位同时扩展。

6.1 地址线、数据线、控制线的作用

总线作用与 RAM 的关系
地址线传输地址信号,确定 CPU 访问哪个存储单元地址线数量 n 决定可寻址单元数 2^n;低位接芯片地址,高位用于片选译码
数据线在 CPU 与存储器之间传输数据数据线数量 m 对应存储字长;若芯片位数不足,需位扩展
控制线控制读写时序和芯片选通包括 OE、WE、CS、MREQ、RD、WR;DRAM 还有 RAS、CAS

典型连接逻辑:

CPU ├── 地址总线 A0..An ──┬── 低位地址 → RAM 芯片地址引脚 │ └── 高位地址 → 译码器 → 片选 CS# ├── 数据总线 D0..Dm ──── RAM 数据引脚 └── 控制总线 ├── RD# / OE# → 读使能 ├── WR# / WE# → 写使能 └── MREQ# → 存储器请求

对于 DRAM,地址线常分时复用:先送行地址,RAS# 锁存;再送列地址,CAS# 锁存。因此 DRAM 引脚中常见:

A0..An : 行/列地址复用输入 RAS# : 行地址选通,低有效 CAS# : 列地址选通,低有效 WE# : 写使能,低有效 D/Q : 数据输入/输出 VDD/VSS : 电源/地

SRAM 典型引脚:

A0..An : 地址输入 D0..Dm : 数据双向 CS# : 片选,低有效 OE# : 输出使能,低有效 WE# : 写使能,低有效 VDD/VSS : 电源/地

具体引脚以数据手册为准,但上述命名是微机原理考题中的常见形式。

6.2 由地址线计算存储容量

核心公式:

存储单元数 = 2^地址线数量 总容量(bit) = 2^地址线数量 × 数据线数量 总容量(Byte) = (2^地址线数量 × 数据线数量) / 8

例子:

若地址线 n = 10,数据线 m = 8: 存储单元数 = 2^10 = 1024 总容量 = 1024 × 8 bit = 8192 bit = 1024 Byte = 1 KB

若地址线 n = 20,数据线 m = 8:

容量 = 2^20 × 8 bit = 1 M × 8 bit = 1 MB

若地址线 n = 20,数据线 m = 16:

容量 = 2^20 × 16 bit = 2 MB

考点速记:

  • 地址线决定“有多少个单元”;
  • 数据线决定“每个单元多少位”;
  • 片选译码决定“用哪一片”;
  • 读写控制决定“读还是写”;
  • DRAM 的 RAS/CAS 决定“行地址还是列地址”。

6.3 存储器扩展的常用方法

扩展方式目的连接方法例子
位扩展增加存储字长地址线、片选线、控制线并联;数据线分别接到数据总线不同位2 片 1K×4 组成 1K×8
字扩展增加存储单元数量数据线、控制线并联;低位地址并联;高位地址经译码器产生片选2 片 1K×8 组成 2K×8
字位同时扩展同时增加字数和字长先位扩展成目标字长,再字扩展成目标容量16 片 1K×4 组成 8K×8

注意一个常见易错点:用 1K×4 芯片组成 8K×8 存储器,需要 8 组字扩展 × 2 组位扩展 = 16 片,而不是 8 片。因为 8 片 1K×4 只能组成 8K×4,字长仍缺 4 位。

位扩展示意:

CPU 数据线 D0..D7 │ ┌─────┴─────┐ │ │ 1K×4 芯片1 1K×4 芯片2 D0..D3 D4..D7 地址线共用,CS# 共用

字扩展示意:

CPU 高位地址 → 译码器 → CS0# → 1K×8 芯片1 → CS1# → 1K×8 芯片2 数据线 D0..D7 并联 低位地址 A0..A9 并联

6.4 系统连接与考点总结

在微机系统中,RAM 与 CPU 的连接可以概括为:

  1. 地址线连接:CPU 低位地址接所有芯片的地址输入;高位地址接译码器,译码输出接各芯片片选。
  2. 数据线连接:CPU 数据总线按位连接;若芯片位数不足,进行位扩展。
  3. 控制线连接:读信号、写信号、存储器请求信号按芯片要求连接;DRAM 还需 RAS/CAS 和刷新控制。
  4. 容量计算:先算地址线对应单元数,再乘数据线位数,得到总 bit 数,除以 8 得到 Byte。
  5. 扩展判断:字数不够做字扩展;位数不够做位扩展;两者都不够做字位同时扩展。

一个完整的系统定位图如下:

┌──────────────┐ │ CPU │ │ 寄存器/Cache │ ← SRAM └──────┬───────┘ │ 地址/数据/控制总线 ┌──────┴───────┐ │ 主存 DRAM │ ← 运行时程序与数据 └──────┬───────┘ │ ┌──────┴───────┐ │ ROM/EPROM/Flash │ ← 固件、启动代码、参数 └──────────────┘

结语:RAM 是微机系统的“运行工作台”

RAM 的核心可以压缩成三句话:

  1. 随机访问:访问时间与物理位置基本无关。
  2. 易失性:掉电即丢失,适合运行时数据,不适合长期保存。
  3. 分层互补:SRAM 快而贵,做 Cache;DRAM 大而廉,做主存;ROM/EPROM/Flash 非易失,做固件和参数存储。

从微机原理考试角度看,必须掌握:SRAM 6T 与 DRAM 1T+1C 的结构差异;DRAM 为什么刷新、三种刷新方式的死时间/存取周期影响;地址线数量与容量计算;位扩展、字扩展、字位同时扩展的连接方法;以及 CPU 地址线、数据线、控制线在存储器接口中的作用。

下一篇预告:RAM 芯片命名解密:常见型号、参数含义与基础配置指南。
系列闭环:

  • 第 1 篇:RAM 基础原理篇(本文)
  • 第 2 篇:RAM 芯片命名解密:常见型号、参数含义与基础配置指南(待更新)
  • 第 3 篇:ROM/EPROM/EEPROM/Flash 原理与选型(待更新)
  • 第 4 篇:存储器扩展与地址译码实战(待更新)

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询