第4章 主存储器
主存储器是计算机各种信息的存储和交流中心,可与CPU、输入输出设备直接交换信息,起存储、缓冲和传递信息的作用。
4.1 主存储器分类、技术指标和基本操作
分类
| 分类方式 | 类型 | 说明 |
|---|---|---|
| 存取方式 | RAM(随机存取) | 任意单元存取时间相同 |
| ROM(只读) | 正常操作时只能读取,信息非易失 | |
| 存储原理 | SRAM(静态) | 触发器锁存,不需刷新 |
| DRAM(动态) | 电容存电荷,需定期刷新 | |
| 易失性 | 易失(RAM) | 断电后数据丢失 |
| 非易失(ROM/Flash) | 断电后数据保留 |
技术指标
- 存储容量:存储单元总数 = 字数 × 字长
- 存取时间:从启动存储操作到完成的时间
- 存取周期:连续两次独立存储操作的最短时间间隔(通常存取周期略大于存取时间)
- 带宽:单位时间传输的数据量 = 存储周期传送位数 / 存取周期
- 可靠性:平均无故障时间(MTBF)
基本操作
读操作:CPU将地址送MAR → 地址总线 → 主存 → CPU发读请求 → 主存将数据读出送数据总线 → MDR
写操作:CPU将地址送MAR → 地址总线 → 主存 → CPU将数据送MDR → 数据总线 → 主存 → 发写命令
4.2 读/写存储器(RAM)
SRAM(静态RAM)
- 每个存储位由6个晶体管组成触发器,状态写入后只要不断电就永久保持
- 不需刷新,读出不破坏数据
- 速度快(~1ns),集成度低,成本高(约DRAM的10倍)
- 用于Cache
DRAM(动态RAM)
- 每个存储位由1个晶体管+1个电容(1T1C)组成,电容存电荷表示0或1
- 电容会漏电,需定期刷新(64ms内全部刷新一遍)
- 读出是破坏性的,读完后需重写(再生)
- 地址分两次接收(行地址RAS# + 列地址CAS#),减少引脚数
- 集成度高,成本低,速度较慢(~50ns)
- 用于主存
DRAM地址复用
DRAM芯片内部存储阵列按行×列矩阵组织,地址分两次送入芯片:
第1拍:行地址选通(RAS#)→ 锁存行地址,打开整行
第2拍:列地址选通(CAS#)→ 锁存列地址,选中该行中的某列
效果:地址引脚数减半,代价是多一个时钟周期的访问延迟。
DRAM刷新
刷新周期:64ms
| 方式 | 说明 | 特点 |
|---|---|---|
| 集中刷新 | 连续完成所有行刷新 | 存在死区(不能访存) |
| 分散刷新 | 穿插在每次读/写周期中 | 无死区,但延长存取周期 |
| 异步刷新 | 定时刷新一行 | 折中方案 |
DDR SDRAM
| 代际 | 预取位数 | 电压 | 数据传输率 |
|---|---|---|---|
| DDR | 2-bit | 2.5V | 200~400 MT/s |
| DDR2 | 4-bit | 1.8V | 400~800 MT/s |
| DDR3 | 8-bit | 1.5V | 800~1600 MT/s |
4.3 非易失性半导体存储器
| 类型 | 编程方式 | 可擦除 | 特点 | 用途 |
|---|---|---|---|---|
| 掩模ROM | 掩模工艺出厂固化 | 否 | 成本最低,适合大批量 | BIOS、启动代码 |
| PROM | 用户一次性烧写(熔丝) | 否 | 写一次不可改 | 原型验证 |
| EPROM | 紫外线照射擦除后重写 | 是(整片擦除) | 可重复使用,擦除慢 | 开发阶段固件 |
| EEPROM | 电信号擦除,字节级修改 | 是(字节级) | 灵活但速度慢 | 参数存储 |
| Flash | 电擦除,按块操作 | 是(块级) | 速度快于EEPROM,密度高 | SSD、U盘、SD卡 |
Flash存储器:浮栅MOS管,通过浮栅上是否存有电荷表示1/0。NOR Flash支持随机读取(代码执行),NAND Flash密度更高(数据存储)。
4.4 存储器的组成与控制
位扩展
多个芯片的数据线并联,地址线共用,增加字长。例如8片1K×1位芯片组成1K×8位存储器。
字扩展
多个芯片的地址线连续编址,增加存储容量。例如4片1K×8位芯片组成4K×8位存储器,片选信号CS选择不同芯片。
字位同时扩展
同时增加字长和容量。例如用16片1K×4位芯片组成4K×8位存储器。
4.5 多体交叉存储器
多体交叉存储器由多个容量相同的存储模块组成,地址交叉编址,实现并行存取。
编址方式:模 m 交叉编址(m为模块数)
地址 = 模m的模块号 + 模块内地址
模块号 = 地址 mod m
模块内地址 = 地址 / m
模4交叉编址示例:地址03分别分布在模块03,地址4~7再依次分布。
多体交叉存储器配合超流水线CPU的取指操作,可在一个存储周期内连续访问多个模块,有效提高存储带宽。
考试重点
★★★ 第一梯队(必考)
| 考点 | 典型题型 |
|---|---|
| SRAM与DRAM对比(原理/刷新/速度/用途) | 对比表 + 简答 |
| DRAM刷新(集中/异步,死区计算) | 计算 + 方案分析 |
★★☆ 第二梯队
| 考点 | 典型题型 |
|---|---|
| DRAM地址复用原理 | 简答 |
| 主存与CPU连接(读/写时序) | 过程描述 |
| 位扩展/字扩展/字位同时扩展 | 设计题 |
| ROM分类对比(掩模ROM/PROM/EPROM/EEPROM/Flash) | 对比简答 |
| 多体交叉存储器工作原理 | 简答 |
★☆☆ 第三梯队
| 考点 | 典型题型 |
|---|---|
| 存储器的技术指标(容量/存取周期/带宽) | 计算 + 简答 |
| 地址译码方式(单译码/双译码) | 对比简答 |