1. SRAM基础认知:从晶体管到存储单元
SRAM(Static Random-Access Memory)作为现代计算机体系中的高速缓存担当,其核心优势在于数据访问速度比DRAM快5-10倍。我在芯片验证工作中发现,理解SRAM结构对排查缓存一致性问题和优化内存访问模式至关重要。
SRAM的"静态"特性源于其采用双稳态电路结构,只要保持供电就能维持数据状态。这与需要周期性刷新的DRAM形成鲜明对比。一个标准的6T存储单元由两个交叉耦合的反相器(PMOS+NMOS)和两个访问晶体管组成,这种结构使得单元在写入时需要克服原有状态的反抗力。
关键提示:6T单元中的晶体管尺寸比例直接影响读写稳定性。通常将反相器中的PMOS设计为NMOS的1.5-2倍宽度,以确保足够的噪声容限。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 6T存储单元深度解析
2.1 晶体管级电路工作原理
典型的6T SRAM单元包含:
- 两个驱动NMOS(M1、M2)
- 两个负载PMOS(M3、M4)
- 两个访问NMOS(M5、M6)
当字线(WL)为低电平时,访问晶体管关闭,内部反相器形成正反馈环路维持状态。例如存储"1"时:
- Q节点高电平 → M2导通 → Qb节点低电平 → M4导通
- 这个状态会自我维持直到下次写入操作
2.2 读写操作时序详解
写入操作:
- 预充电位线(BL/BLB)至VDD
- 激活字线(WL)至VDD
- 驱动目标位线(如写入0时拉低BL)
- 访问晶体管导通,新数据覆盖原有状态
- 字线失效,新状态被锁定
读取操作:
- 预充电位线对至VDD
- 激活字线
- 存储内容通过访问晶体管在位线上产生微小压差
- 灵敏放大器检测并放大压差
- 读取完成后字线失效
实测发现:读取操作是破坏性的,可能引起存储节点电压扰动。因此现代SRAM会采用读取恢复电路来补偿这种扰动。
3. SRAM阵列架构设计
3.1 典型阵列组织方式
一个32Kb SRAM模块通常组织为256行×128列:
- 行解码器将8位地址转换为256选1信号
- 列多路复用器通过128:1选择目标位线对
- 每个存储块包含局部灵敏放大器和写入驱动器
verilog复制// 简化的行解码器Verilog描述
module
