4.1概述 A
一、存储器概述
1. 存储器的重要性
- 定义:存储器是计算机系统中最重要的部件之一,负责存储指令和数据。
- 功能:执行程序时所需的指令和数据来自存储器,程序的执行结果也保存在存储器中。
- 应用:存储各种文档和音像资料。
2. 冯诺依曼结构改进
- 传统结构:运算器是核心,数据的输入输出需要运算器参与,成为性能瓶颈。
- 改进结构:以存储器为核心,强调存储器的重要性。
二、存储器的分类
1. 按存储介质分类
- 半导体存储器:易失
- TTL逻辑存储器:集成度低,功耗高,速度快。
- MOS逻辑存储器:功耗低,集成度高,如内存条和U盘。
- 磁表面存储器:
- 磁盘:利用磁层磁化方向存储信息,分为磁道和扇区,非易失。
- 磁带:顺序存取,适用于大量数据备份。
- 磁芯存储器:
- 历史作用:曾作为计算机内存,提高系统速度,非易失。
- 原理:通过电流磁化磁芯,保存信息。
- 光盘存储器:利用激光和磁光材料存储信息,非易失性。
2. 按存取方式分类
- 随机存储器(RAM):
- 特点:存取时间与物理地址无关,可读可写。
- 分类:静态RAM(SRAM)和动态RAM(DRAM)。
- 只读存储器(ROM):
- 特点:只能读取不能写入,用于存储系统程序和参数。
- 分类:掩膜ROM、可编程ROM(PROM)、可擦写可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)。
- 顺序存取存储器:如磁带,信息按顺序存储和读取。
- 直接存取存储器:如磁盘,通过磁头寻址,直接访问指定扇区。
3. 按在计算机中的作用分类
- 主存储器:
- RAM:用户数据和程序的主要存储空间(可读可写)。
- ROM:存储系统程序和参数(只读)。
- 辅助存储器:
- 磁盘:硬盘和软盘,用于长期存储数据。
- 磁带:大容量备份存储。
- 光盘:只读或可写,用于数据分发和存储。
三、存储器的层次结构
1. 层次结构的意义
- 速度差异:不同存储器的访问速度差异显著。
- 容量与成本:大容量存储器通常速度较慢且成本较低。
- 层次结构:通过多层缓存提高系统整体性能,平衡速度、容量和成本。
2. 层次结构组成
- 寄存器:CPU内部,速度最快,容量最小。
- 高速缓存(Cache):介于CPU和主存之间,速度快,容量较小。
- 主存储器(内存):直接与CPU交互,速度中等,容量较大。
- 辅助存储器(外存):如磁盘和磁带,速度慢,容量大,非易失性。
- 脱机存储器:如远程存储和云存储,用于长期归档和备份。
3. 层次间协作机制
- 数据访问流程:CPU优先访问寄存器,未命中则依次访问Cache、主存和外存。
- 缓存机制:利用时间局部性和空间局部性原理,将频繁访问的数据缓存在高速层。
四、技术演进趋势
- 主存技术提升:如DDR5内存带宽增加,支持更高并发处理。
- 存储融合:非易失性内存(NVM)如3D XPoint的发展,模糊主存与辅存的界限。
- 分布式存储:云存储和边缘计算推动多级缓存协同工作,提高系统整体性能。
4.1概述B
一、用户核心关注指标分析
-
存取速度
- 关键需求:CPU与存储器间的数据交换延迟直接影响系统响应速度
- 典型场景:
• 实时系统需微秒级响应(如自动驾驶控制器)
• 科学计算要求高带宽(如HPC集群内存子系统) - 矛盾点:高速存储器(如SRAM)成本高昂,无法大规模使用
-
存储容量
- 需求驱动:
• 现代AI模型参数规模达TB级(如GPT-3需1750亿参数存储)
• 4K/8K视频处理需要大帧缓存空间 - 技术限制:DRAM单位面积存储密度受物理定律限制(当前最先进DDR5约64Gb/芯片)
- 需求驱动:
-
单位成本
- 经济考量:
• 企业级SSD价格约0.2/GB vs 企业级HDD0.2/GBvs企业级HDD0.03/GB
• 寄存器成本是DRAM的1000倍以上(因晶体管数量差异) - 折中方案:通过层次化设计将热点数据置于高速层
- 经济考量:
二、存储器层次结构解构
1. 金字塔层级划分
╭─────────╮
│ 寄存器组 │ ← 0.1ns级延迟,$500/GB
╰─────┬─────╯
│
╭─────▼─────╮
│ L1 Cache │ ← 0.5ns延迟,$100/GB
╰─────┬─────╯
│
╭─────▼─────╮
│ L2/L3缓存 │ ← 2-10ns延迟,$50/GB
╰─────┬─────╯
│
╭─────▼─────╮
│ 主存储器 │ ← 50-100ns延迟,$5/GB
╰─────┬─────╯
│
╭─────▼─────╮
│ SSD/HDD │ ← 1-10ms延迟,$0.1/GB
╰─────┬─────╯
│
╭─────▼─────╮
│ 磁带/云存储 │ ← 秒级延迟,$0.01/GB
╰───────────╯
一、金字塔层级划分与核心特性
计算机存储器采用多级分层结构,通过不同存储介质的协同工作实现速度、容量和成本的平衡。典型层次结构如下(按性能降序排列):
-
寄存器组
- 速度:0.1ns级延迟,直接集成于CPU内部2
- 容量:16-256个通用寄存器(x86架构为16个,RISC-V架构为32个)2
- 成本:$500/GB级别,采用高速SRAM工艺25
-
高速缓存(Cache)
- 层级划分:
• L1 Cache(分指令/数据缓存):0.5ns延迟,32-64KB容量24
• L2 Cache:2-10ns延迟,256KB-2MB容量2
• L3 Cache:10-30ns延迟,16-64MB容量2 - 技术特性:
• 使用SRAM实现高速访问6
• 缓存行(Cache Line)大小64-128字节,匹配空间局部性原理4
- 层级划分:
-
主存储器(DRAM)
- 速度:50-100ns延迟,通过DDR接口提升带宽(DDR5达6400MT/s)25
- 容量:8GB-2TB(消费级设备),服务器可达24TB2
- 技术演进:
• 3D堆叠技术(HBM)提升带宽密度5
• 非易失性内存(NVDIMM)实现数据持久化6
-
辅助存储器
- 固态存储(SSD):50-100μs延迟,QLC NAND实现8TB单盘容量56
- 机械硬盘(HDD):5-10ms延迟,20TB氦气盘技术成熟3
- 云存储:分布式架构支持EB级扩展,但存在秒级延迟3
二、层次间协作机制
1. 数据流动模型
CPU → 寄存器 → L1 Cache → L2 Cache → L3 Cache → 主存 → SSD/HDD
-
缓存命中流程:90%以上请求在L1-L3层完成响应4
-
缓存未命中处理:触发DMA控制器从主存加载数据2
2. 关键技术原理
-
缓存一致性协议:
• MESI协议维护多核CPU缓存状态同步24
• 写回策略(Write-back)减少总线占用6 -
虚拟内存管理:
• 页表映射实现48位虚拟地址空间(Linux系统)2
• TLB加速地址转换,命中率>99%时性能损失<1%4 -
预取算法:
• 步幅预取(Stride Prefetching)利用空间局部性4
• 机器学习驱动的适应性预取(如Intel ADAPT)5
三、性能优化策略
1. 速度与容量平衡
层级 | 访问速度 | 典型容量 | 成本/GB |
---|---|---|---|
寄存器 | 0.1ns | <1KB | $500 |
L1 Cache | 0.5ns | 32-64KB | $100 |
主存 | 50ns | 16-128GB | $5 |
SSD | 50μs | 1-8TB | $0.2 |
2. 典型应用场景
- 实时系统:增大L2缓存减少主存访问(如自动驾驶控制器)4
- 大数据处理:采用3D XPoint加速热数据访问(如Redis持久化)5
- AI训练:HBM显存实现>1TB/s带宽(如NVIDIA H100 GPU)2
四、技术演进趋势
- 非易失内存(NVM):
• 3D XPoint延迟<1μs,突破传统存储层级界限56 - 存算一体架构:
• 近内存计算(PIM)减少数据搬运能耗4 - 量子存储:
• 量子比特实现超密存储,实验室已达1000量子位规模3
该层次结构通过精心设计的存储介质组合,使计算机系统既能满足CPU的高速访问需求,又能提供近乎无限的数据存储空间12。随着新型存储技术的发展,传统金字塔结构正在向更扁平化的混合存储体系演进45。
2. 层次间协作机制
- 缓存一致性协议:MESI协议保障多级缓存数据同步
- 虚拟内存管理:
• 页表映射(4KB页大小典型设计)
• TLB加速地址转换(命中率>99%时性能接近物理内存) - 预取算法:
• 空间局部性:顺序预取(Stride Prefetching)
• 时间局部性:基于访问模式的适应性预取
三、关键技术实现原理
1. 缓存系统设计
// 典型三级缓存架构参数示例 CacheLevel l1 = { .size = 32KB, .associativity = 8, .latency = 4 cycles };CacheLevel l2 = {.size = 256KB,.associativity = 16,.latency = 12 cycles };CacheLevel l3 = {.size = 16MB,.associativity = 32,.latency = 36 cycles };
2. 虚拟内存实现
- 地址转换流程:
虚拟地址 → 页表查询 → 物理地址 → 缓存查找 → 内存访问
- 缺页处理:
▷ 触发异常 → 调入所需页 → 更新页表 → 重新执行指令
3. 存储介质特性对比
介质类型 | 读写延迟 | 耐久性 | 典型应用场景 |
---|---|---|---|
SRAM | 0.5-5ns | 无限次 | CPU寄存器/L1缓存 |
DRAM | 50-100ns | 10^15次 | 主存储器 |
3D NAND | 50-100μs | 10^3-10^4次 | SSD存储介质 |
HDD | 5-10ms | 机械寿命限制 | 冷数据存储 |
四、性能优化关键技术
-
缓存优化策略
- 组相联设计平衡命中率与电路复杂度
- 写回策略(Write-back)降低总线占用率
-
存储并行化
- 多通道内存技术(DDR5达64GB/s带宽)
- NVMe协议支持32条并行队列
-
新型存储技术
- 3D XPoint:延迟<1μs,耐久性达10^7次
- Z-NAND:SLC模式优化,读延迟6μs
五、层次结构设计收益
-
速度提升:
- L1缓存命中时访问速度比DRAM快100倍
- 缓存命中率90%时,等效访问速度提升10倍
-
成本节约:
- 混合使用高速/低速介质,系统存储成本降低80%
- 通过层次化将热点数据集中在10%的高速存储区
-
容量扩展:
- 虚拟内存机制使程序可使用超过物理内存的空间
- 分布式存储系统实现EB级数据管理
4.2 主存储器A
一、主存储器基本组成
1. 核心组件
- 存储体:由存储单元矩阵构成,每个单元存储固定位数的二进制数据(如32位/单元)
- MAR(Memory Address Register):地址寄存器,接收CPU发来的地址信号(如24位地址总线)
- MDR(Memory Data Register):数据缓冲寄存器,暂存读/写操作的数据
- 译码器:将地址转换为行列选择信号(如24位地址→2^24个单元选择)
- 读写控制电路:控制数据流向(读操作:存储体→MDR;写操作:MDR→存储体)
2. 与CPU连接
总线类型 | 功能描述 | 传输方向 | 典型规格 |
---|---|---|---|
地址总线 | 传递访问单元的物理地址 | CPU→主存 | 24位(16MB寻址) |
数据总线 | 传输读/写数据 | 双向 | 32位/64位 |
控制总线 | 传递读写信号、时序控制信号 | CPU→主存 | READ/WRITE/CLK |
==
二、存储单元地址分配
1. 编址方式对比
参数 | 字节编址(主流方案) | 字编址(特殊场景) |
---|---|---|
地址线24位容量 | 16MB(2^24 × 8bit) | 4MW(2^24 × 32bit) |
访问粒度 | 每次操作1字节(兼容性强) | 每次操作1字(效率高) |
典型应用 | x86/ARM架构 | 早期DSP处理器 |
2. 字节序(Endianness)
类型 | 存储规则 | 典型应用场景 | 示例(存储0x12345678) |
---|---|---|---|
大端序 | 高位字节存低地址 | 网络协议、Java虚拟机 | 12 34 56 78 |
小端序 | 低位字节存低地址 | x86架构、C/C++ | 78 56 34 12 |
数据对齐优化:32位系统推荐4字节对齐(地址末2位为00),避免跨字访问导致的性能损耗
三、主存技术指标
1. 核心参数对比
指标 | 定义 | 典型值 | 测量方法 |
---|---|---|---|
存取时间 | 地址有效→数据稳定输出的延迟 | DDR4:15-20ns | 示波器测tAA参数 |
存储周期 | 两次独立操作的最小时间间隔 | 存取时间×1.2-1.5 | tRC(行周期时间) |
带宽 | 单位时间传输数据量 | DDR5-6400:51.2GB/s | 频率×位宽×通道数 |
2. 性能优化原理
- 多Bank结构:DDR4内存包含16-32个Bank,支持并行访问
- 突发传输:单次地址访问连续传输8个64bit数据包(Burst Length=8)
- 双通道技术:128bit位宽组合(2×64bit通道),带宽翻倍
四、实践应用要点
-
内存条选型:
- 容量匹配:Windows系统建议≥16GB(2024年标准)
- 频率协调:需匹配CPU内存控制器规格(如i7-13700K支持DDR5-5600)
- 时序参数:CL-tRCD-tRP(如DDR4-3200 CL16优于CL18)
-
性能瓶颈分析:
// 示例:矩阵遍历效率对比 // 行优先(缓存友好) for(int i=0; i<1024; i++)for(int j=0; j<1024; j++)matrix[i][j] = 0;// 列优先(频繁缓存缺失) for(int j=0; j<1024; j++)for(int i=0; i<1024; i++)matrix[i][j] = 0;
性能差异:在DDR4-3200平台,行优先遍历速度可快5-8倍
-
新技术发展:
- HBM3:1024位宽堆叠显存,带宽达819GB/s(NVIDIA H100)
- CXL 2.0:内存池化技术,支持跨节点内存共享
- PCM相变内存:μs级延迟,擦写次数突破1E7次
4.2主存储器A2
半导体存储芯片技术详解
一、芯片基本结构
1. 核心功能模块
-
存储矩阵
- 由存储单元阵列构成,每个单元存储1位数据
- 典型排列方式:N×M矩阵(如256行×256列)
- 工艺类型:SRAM(6晶体管单元) / DRAM(1晶体管+1电容单元)
-
译码驱动电路
- 行译码器:选择指定行线(如8位地址→256行选择)
- 列译码器:选择指定列线(如8位地址→256列选择)
-
读写电路
- 灵敏放大器:放大存储单元微弱信号(DRAM读操作)
- 写入驱动器:提供足够写入电流(SRAM约50μA)
2. 接口信号说明
信号类型 | 功能描述 | 典型参数 |
---|---|---|
地址线 | 输入访问地址(A0-An) | 10位=1K单元 |
数据线 | 双向数据传输(D0-Dm) | 4位/8位/16位 |
片选(CS/CE) | 芯片使能信号(低电平有效) | TTL电平0.8V阈值 |
读写控制 | OE(输出使能)/WE(写使能) | 时序参数tOE=15ns |
二、译码驱动方式
1. 线选法(单译码)
-
工作原理:
直接使用地址线选择存储单元(如10位地址→1024单元)
示例:地址线A0-A9直接连接1024个单元选择线 -
特点:
✓ 电路简单,延迟小(tDEC=5ns)
✗ 地址利用率低(仅适合小容量存储)
✗ 功耗高(每次激活单一线)
2. 重合法(双译码)
-
矩阵式选择:
地址分为行地址(A0-A7)和列地址(A8-A15)
示例:16位地址→256×256=65,536单元 -
实现过程:
- 行译码器激活第X行(如X=10110011)
- 列译码器选择第Y列(如Y=11001001)
- 行列交叉点单元被选中
-
优势:
✓ 地址线利用率高(n位地址→2^(n/2)规模)
✓ 功耗优化(仅激活单行+单列)
✓ 适合大规模集成(现代DRAM主流方案)
三、芯片容量计算
1. 计算公式
存储容量 = 2^地址线数量 × 数据线位数
-
例1:14位地址线 + 1位数据线 → 16K×1位
2^14 ×1 = 16,384×1 = 16Kb
-
例2:13位地址线 + 8位数据线 → 8K×8位
2^13 ×8 = 8,192×8 = 64Kb
2. 容量扩展方法
- 使用8片16K×1芯片
- 连接方式:
- 地址线并联(A0-A13共享)
- 数据线分别连接D0-D7
- 片选信号并联(同一CS控制)
字扩展(增加存储单元)
- 使用4组16K×8模块
- 地址分配:
- 组0:0000H-3FFFH
- 组1:4000H-7FFFH
- 组2:8000H-BFFFH
- 组3:C000H-FFFFH
- 高位地址译码:
使用A14-A15通过2-4译码器生成片选信号
四、应用案例分析
64K×8存储器实现方案
需求:使用16K×1芯片构建64K×8存储器
实现步骤:
-
位扩展:8片16K×1 → 16K×8模块
- 数据位宽从1位扩展至8位
-
字扩展:4个16K×8模块 → 64K×8存储器
- 地址空间划分:每模块16K地址范围
- 片选逻辑:
module decoder_2x4( input [1:0] A_high, output reg [3:0] CS ); always @(*) begin case(A_high) 2'b00: CS = 4'b1110; 2'b01: CS = 4'b1101; 2'b10: CS = 4'b1011; 2'b11: CS = 4'b0111; endcase end endmodule
-
信号连接:
- 地址线:A0-A13(14位)→ 各模块地址输入
- 数据线:D0-D7 → 各模块对应数据位
- 控制信号:
- WE并联至所有模块
- OE并联至所有模块
物料清单:
组件 | 数量 | 规格 |
---|---|---|
16K×1存储芯片 | 32 | 14位地址 |
2-4译码器 | 1 | 74HC139 |
PCB板层数 | 4 | 信号完整性 |
五、技术参数对比
参数 | 线选法 | 重合法 |
---|---|---|
地址利用率 | 低(n→2^n) | 高(n→2^(n/2)) |
功耗 | 高(单线激活) | 低(行列交叉激活) |
最大容量 | 1K×8(10位地址) | 64K×8(16位地址) |
典型应用 | 小容量缓存 | 主流DRAM/SRAM |
本知识体系揭示了半导体存储芯片设计的关键技术,理解这些原理对存储器选型、系统优化及故障诊断具有重要意义。建议结合EDA工具进行电路仿真(如Multisim),加深对译码时序和信号完整性的理解。
4.2主存储器A3
半导体存储芯片译码驱动与RAM核心技术解析
一、译码驱动方式深度剖析
1. 线选法(单译码)
核心原理
- 线性译码:地址线直接控制所有存储单元选择线
- 硬件结构:n位地址→2ⁿ条选择线(如20位地址→1,048,576条线)
典型参数
地址位数 | 存储单元数 | 选择线数量 | 实际应用案例 |
---|---|---|---|
4 | 16 | 16 | 小容量EPROM |
10 | 1024 | 1024 | 嵌入式系统缓存 |
20 | 1,048,576 | 1,048,576 | 理论模型(不实用) |
限制条件
- 物理瓶颈:20位地址需要百万级金属走线
- 功耗问题:每次激活单个单元需驱动全部选择线
- 延迟缺陷:长距离走线导致信号延迟(典型值>50ns)
2. 重合法(双译码)
矩阵式选择原理
技术演进:
- 地址分割:将n位地址分为行地址(k位)和列地址(n-k位)
- 分层译码:
- 行译码器生成2ᵏ条行选择线
- 列译码器生成2ⁿ⁻ᵏ条列选择线
- 交叉激活:行列选择线交点单元被激活
性能对比
参数 | 线选法(20位) | 重合法(10+10位) |
---|---|---|
选择线总数 | 1,048,576 | 2,048 |
晶体管数量 | ~2×10⁶ | ~4,096 |
典型延迟 | 50ns | 15ns |
功耗(@100MHz) | 300mW | 80mW |
现代DRAM实现
- Bank结构:DDR4内存划分16-32个独立Bank
- 时序优化:
// DDR4典型访问时序 tRCD(RAS到CAS延迟) = 18ns tCL(CAS延迟) = 16ns tRP(行预充电时间) = 18ns
-
┌───────┬───────┐
│存储电容│访问晶体管│←字线
└───┬───┴───┬───┘
位线(BL) 互补位线(BLB)
二、静态RAM核心技术
1. 六管单元结构
Vdd
▲
T1│ │T2
├──┤
│ │
T3 T4 ←字线
▲ ▲
BL──┴──┴──BLB
晶体管功能:
- T1-T4:交叉反相器构成双稳态触发器
- T5-T6:行选择控制门管
- T7-T8:列选择控制门管(多单元共享)
2. 读写操作流程
读操作时序
- 行选通信号激活(T5-T6导通)
- 存储节点电压传输到位线(差分信号)
- 灵敏放大器放大信号(增益约10³)
- 列选通信号激活(T7-T8导通)
- 数据输出至I/O缓冲器
关键参数:
- 读延迟:2-5ns(22nm工艺)
- 保持功耗:0.1nW/bit
写操作时序
- 行选通信号激活
- 位线预充电至VDD/2
- 写入驱动器强制位线电压:
- 写"1":BL=1.2V,BLB=0V
- 写"0":BL=0V,BLB=1.2V
- 交叉反相器状态翻转(临界电流约50μA)
3. 先进SRAM技术
技术类型 | 原理描述 | 性能提升 |
---|---|---|
双端口SRAM | 独立读写端口 | 带宽提升100% |
低电压SRAM | 0.6V亚阈值工作 | 功耗降低70% |
3D堆叠SRAM | 硅通孔(TSV)垂直集成 | 密度提升3倍 |
4.2主存储器B
六管静态RAM基本电路的写操作及Intel 2114芯片解析
一、六管静态RAM基本电路的写操作原理
-
电路结构
基本存储单元由6个MOS管(T1-T6)构成双稳态触发器,T1-T4形成交叉耦合的反相器结构,T5-T6为行选控制门,T7-T8为列选控制门12。 -
写入逻辑
- 行地址选择信号(X)和列地址选择信号(Y)有效时,T5-T8导通,使存储单元与位线连通。
- 写放大器将输入数据转换为互补信号(如左侧写放大器经反相输出),确保A端和A'端写入相反电平(例如A=高电平、A'=低电平代表“1”态)。
- 强置互补电平覆盖触发器原有状态,完成数据写入。
二、Intel 2114静态RAM芯片结构与工作原理
-
芯片外特性
-
- 容量:1K×4位(1024个存储单元,每单元存储4位数据)。
- 地址线:A0-A9(10位地址,支持1K寻址)。
- 控制信号:
WE
(读写控制):低电平为写操作,高电平为读操作。CS
(片选):低电平时芯片被选中。
- 数据线:I/O1-I/O4(4位双向数据线)。
-
存储阵列布局
- 物理结构:4K个基本单元电路(1K×4位)布局为64×64阵列。
- 行列译码:
- 行地址(6位)经译码选中64行中的某一行。
- 列地址(4位)译码后每组选中一列,共四组(每组16列),实现四位同时读写2。
-
读写操作流程
- 读操作:
- 行、列地址译码后选中某一行和四列(每组一列)。
- 数据通过位线、列控制管和读放电路输出至I/O线2。
- 写操作:
- 互补数据信号通过写放大器驱动位线,强制触发器的A/A'端更新为写入值。
- 读操作:
三、关键设计细节
-
列选信号扩展
通过将64列分为四组(每组16列),每个列选信号(如Y0)同时控制四组中的同一列,实现四位并行操作。
示例:列地址“0000”使每组第0列被选中,四位数据通过四组位线同步传输2。 -
行列交叉选择
- 行地址译码选中某一行(如第0行)。
- 列地址译码选中四列(如每组第0列),交叉点上的四个单元同时完成读写2。
四、性能特点
- 静态保持:基于双稳态触发器,无需刷新即可保持数据(断电丢失)13。
- 高速访问:行列译码和并行传输机制缩短读写延迟23。
4.2主存储器C
Intel 2114静态RAM芯片的写操作详解
一、存储阵列结构
-
布局特点
- 64×64阵列:芯片包含64行和64列,存储单元总数为4K(4096个),容量为1K×4位(每个存储单元存储4位数据)。
- 列分组:64列被分为四组(每组16列),每个列选信号(如Y0)同时控制四组中的同一列,实现四位数据的并行写入。
-
地址译码机制
- 行地址:6位地址(如
000000
)选中某一行(如第0行),该行所有单元被激活。 - 列地址:4位地址(如
0000
)选中每组中的同一列(如每组第0列),四列同时被选中。
- 行地址:6位地址(如
二、写操作流程
-
信号控制
-
WE
(写使能):低电平表示写操作。 -
CS
(片选):低电平时芯片被激活。 - 数据输入:通过I/O1-I/O4输入四位数据。
-
-
操作步骤
- 行选中:行地址
000000
使第0行的行选信号有效,该行所有存储单元被激活。 - 列选中:列地址
0000
使每组第0列的列选信号有效,四列交叉点的存储单元被选中。 - 数据写入:输入的四位数据通过读写电路驱动,互补信号(如A和A')被强制写入选中单元的触发器结构中,覆盖原有状态。
- 行选中:行地址
动态RAM(DRAM)核心原理及典型芯片解析
一、DRAM存储原理
-
信息保存机制
- 电容电荷表示数据:
- 逻辑“1”:电容存储电荷(充电状态)。
- 逻辑“0”:电容未存储电荷(放电状态)。
- 刷新必要性:电容存在漏电问题,需定期刷新以维持数据。
- 电容电荷表示数据:
-
基本单元电路类型
- 三管动态RAM(如Intel 1103):
- 结构:包含存储电容(Cg)、控制管(T1-T3)及预充电管(T4)。
- 读写控制:
- 读操作:预充电后,读选择线激活T2,电容电荷决定读数据线电平(需反相输出)。
- 写操作:写选择线激活T3,数据线直接对电容充电/放电。
- 读操作:预充电后,读选择线激活T2,电容电荷决定读数据线电平(需反相输出)。
- 单管动态RAM(如Intel 4116):
- 简化结构:仅一个晶体管(T)和存储电容(C)。
- 读写控制:行选信号激活T,数据通过位线读写电容电荷。
- 简化结构:仅一个晶体管(T)和存储电容(C)。
- 三管动态RAM(如Intel 1103):
二、典型DRAM芯片分析
-
Intel 1103(三管DRAM)
- 容量:1K×1位,10位地址线(6位行地址+4位列地址)。
- 操作特点:
- 读操作:行地址译码激活读选择线,列地址选中位线输出数据(需反相处理)。
- 写操作:行地址激活写选择线,数据直接驱动电容状态。
- 刷新放大器:用于检测并恢复电容电荷,防止数据丢失。
-
Intel 4116(单管DRAM)
- 容量:16K×1位,7位复用地址线(分两次传输行/列地址)。
- 地址复用技术:
- 行地址锁存:首次输入7位行地址并锁存。
- 列地址锁存:第二次输入7位列地址,与行地址组合完成译码。
- I/O缓冲:数据通过输入寄存器和输出驱动器实现缓冲,提升稳定性。
三、DRAM刷新机制
-
刷新原因
- 电容漏电导致电荷流失,需定期刷新(典型周期为2ms~64ms)。
-
刷新方法
- 集中刷新:在固定时间窗口内刷新所有行,期间暂停正常访问。
- 分散刷新:将刷新操作分散到正常读写周期中,减少性能影响。
- 透明刷新:利用CPU空闲周期执行刷新,完全隐藏刷新时间。
总结对比
特性 | 静态RAM(2114) | 动态RAM(1103/4116) |
---|---|---|
存储原理 | 双稳态触发器 | 电容电荷 |
刷新需求 | 无需刷新 | 需定期刷新 |
单元复杂度 | 6管结构 | 三管或单管结构 |
功耗 | 较高(持续供电) | 较低(仅刷新时耗电) |
速度 | 快(无刷新延迟) | 较慢(受刷新影响) |
典型应用 | 高速缓存 | 主存储器 |
4.2主存储器D1
Intel 4116动态RAM芯片结构与工作原理
一、地址复用机制
Intel 4116芯片容量为16K×1位,需14位地址寻址,但仅提供7个地址引脚。其通过地址复用技术分时传输行地址和列地址:
- 行地址传输:首次输入7位行地址(A0-A6),锁存至行地址缓冲器。
- 列地址传输:第二次输入7位列地址(A0-A6),锁存至列地址缓冲器。
- 译码驱动:行地址经行译码选中128行中的某一行,列地址经列译码选中128列中的某一列,交叉点单元被激活。
二、存储阵列结构
- 128×128存储矩阵:16K个单管动态RAM单元(1个MOS管+1个电容)按128行×128列排列。
- 读放大器设计:
- 每列配备跷跷板电路(差动放大器),用于放大电容电荷信号。
- 工作原理:若放大器左侧为高电平(1),右侧自动变为低电平(0),反之亦然。
三、读操作流程
-
行地址选中(例如行地址
1111110
选中第63行):- 行选通信号(RAS)有效,第63行所有MOS管导通,电容电荷传输至对应列的读放大器左侧。
- 电荷状态判断:
- 电容有电荷(逻辑1)→ 读放大器左侧为高电平(1),右侧为低电平(0)。
- 电容无电荷(逻辑0)→ 读放大器左侧为低电平(0),右侧为高电平(1)。
-
列地址选中(例如列地址
0000000
选中第0列):- 列选通信号(CAS)有效,第0列MOS管导通,读放大器右侧电平通过位线传输至数据输出驱动。
- 信号反相处理:电容存储的0(无电荷)→ 读放大器右侧输出1;电容存储的1(有电荷)→ 输出0。
四、写操作流程
- 行地址与列地址选中(同上)。
- 数据输入与写入:
- 输入数据通过I/O缓冲器输入,经位线传输至读放大器右侧。
- 跷跷板效应:
- 写入1(高电平)→ 读放大器右侧为1,左侧为0 → 电容放电(存储0)。
- 写入0(低电平)→ 读放大器右侧为0,左侧为1 → 电容充电(存储1)。
- 两次反相补偿:写入时的反相与读出时的反相相互抵消,最终存储数据与输入一致。
五、关键设计特点
特性 | 说明 |
---|---|
地址复用 | 7位引脚分时传输14位地址,降低成本与封装复杂度。 |
读放大器作用 | 放大微弱电容电荷信号,提升读写可靠性。 |
信号反相机制 | 写入与读出各进行一次反相,确保数据一致性。 |
刷新需求 | 电容漏电需定期刷新(周期约2ms),通过行选通信号完成电荷恢复。 |
总结
Intel 4116通过地址复用和跷跷板式读放大器实现了16K×1位的高密度存储,其读写操作依赖行/列地址分时传输和信号反相补偿机制,典型体现了动态RAM的设计原理。
4.2主存储器D2
动态RAM的刷新机制与DRAM/SRAM对比分析
一、动态RAM(DRAM)刷新的必要性
-
电容漏电问题
- DRAM通过电容电荷存储数据(1:充电,0:放电),但电容体积微小,电荷会逐渐泄漏,导致数据丢失。
- 刷新周期:需定期对电容电荷再生(典型周期为2ms),否则存储的“1”会因漏电变为“0”。
-
刷新操作特点
- 行地址关联性:刷新仅与行地址相关,每次刷新选中一行内的所有存储单元,而非单个单元。
- 刷新放大器作用:在读写数据线间加入刷新放大器,可逐列放大信号并重写整行数据,恢复电荷状态。
二、DRAM的三种刷新方法
-
集中式刷新
- 原理:在固定时间窗口(如2ms)内集中完成所有行的刷新。
- 示例:
- 总周期:4000个存取周期(2ms / 0.5μs)。
- 前3872周期:用于正常读写操作。
- 后128周期:专用刷新,形成64μs死区(128行 × 0.5μs),期间CPU/IO无法访问DRAM。
- 缺点:死区占用约32%时间,降低系统可用性。
-
分散式刷新
- 原理:将刷新操作分散到每个存取周期中,读写周期延长为原两倍。
- 示例:
- 存取周期从0.5μs延长至1μs(0.5μs读写 + 0.5μs刷新)。
- 每1μs刷新一行,128行需128μs完成一轮刷新,2ms内重复刷新15.6次(过度刷新)。
- 缺点:频繁刷新导致性能下降,且刷新频率超出实际需求。
-
异步式刷新
- 原理:结合集中与分散刷新,将2ms均分为128段(每段15.6μs),每段末尾刷新一行。
- 优势:
- 死区仅0.5μs/段,可安排在CPU空闲期(如指令译码时),避免访问冲突。
- 刷新频率合理(2ms内每行刷新一次),平衡性能与可靠性。
三、动态RAM(DRAM)与静态RAM(SRAM)对比
对比维度 | 动态RAM(DRAM) | 静态RAM(SRAM) |
---|---|---|
存储原理 | 电容电荷(1:充电,0:放电) | 双稳态触发器(通过晶体管锁定状态) |
集成度 | 高(单管单元:1晶体管+1电容) | 低(六管单元:6晶体管构成触发器) |
引脚数 | 少(地址复用技术,行/列地址分时传输) | 多(需独立地址线,无复用设计) |
功耗 | 低(仅刷新时耗电) | 高(触发器电路持续导通,存在漏电流) |
价格 | 低(结构简单,成本低) | 高(电路复杂,芯片面积大) |
速度 | 较慢(需充放电和刷新操作) | 快(直接读写触发器,无延迟) |
刷新需求 | 需定期刷新(典型周期2ms) | 无需刷新 |
典型应用 | 主存储器(内存条) | 高速缓存(CPU缓存) |
四、DRAM与SRAM的应用场景
-
DRAM:
- 优势:高密度、低成本,适合大容量主存。
- 挑战:需配合刷新电路,访问速度受刷新周期限制。
-
SRAM:
- 优势:高速、无需刷新,适合小容量高速缓存。
- 挑战:功耗和成本高,难以大规模集成。
总结
- DRAM刷新机制是维持数据完整性的核心,三种刷新方式各有利弊,需根据系统需求选择。
- DRAM与SRAM的差异源于存储原理和电路设计,两者互补应用于不同层级存储体系(主存+缓存)。