第1章:存储器芯片基础——SRAM、DRAM、Flash(NAND/NOR)的基本工作原理与结构差异
各位工程师朋友,大家好。我是老张,在芯片失效分析这行摸爬滚打了十几年。今天咱们开始聊存储器芯片,这是整个失效分析的基础。你想想看,不懂存储器怎么工作的,出了问题你连故障点都找不到。
这一章,我带你过一遍三种最主流的存储器:SRAM、DRAM、Flash(包括NAND和NOR)。我会从工作原理讲到结构差异,再聊到存储单元阵列和外围电路。嗯,都是干货,咱们直接开整。
1.1 SRAM:静态随机存取存储器
SRAM,全称Static Random Access Memory。说白了,就是只要不断电,数据就能一直保持。它不需要像DRAM那样定时刷新。
工作原理
SRAM的存储单元,核心是一个双稳态触发器。通常由6个晶体管组成(6T结构)。两个交叉耦合的反相器,加上两个访问管。数据就锁存在这个触发器里。
我个人习惯把SRAM比作一个跷跷板。要么左边高右边低(存1),要么左边低右边高(存0)。只要没人去推它,它就永远保持这个状态。
核心特点:
- 速度快:访问时间通常在几纳秒级别
- 功耗低:静态功耗极低,动态功耗看频率
- 面积大:一个6T单元比DRAM的1T1C大得多
- 易失性:断电数据丢失
存储单元阵列
SRAM的存储阵列,就是把这些6T单元排成行和列。行线叫字线(Word Line, WL),列线叫位线(Bit Line, BL)。
我在项目中遇到过一个问题:某款芯片的SRAM在高温下出现数据翻转。查了半天,发现是字线驱动能力不够,导致弱单元在高温下阈值电压漂移。嗯,这就是典型的阵列设计问题。
外围电路
SRAM的外围电路主要包括:
- 地址译码器:行译码和列译码,选通对应的存储单元
- 灵敏放大器:读取位线上的微小电压差,放大成逻辑电平
- 写入驱动:把数据强写入存储单元
- 控制逻辑:管理读写时序
避坑指南:我曾经在分析SRAM失效时,发现灵敏放大器的失调电压过大,导致读取错误。后来我建议设计团队在版图布局时,把灵敏放大器放在阵列中间,减少工艺偏差。效果很明显。
1.2 DRAM:动态随机存取存储器
DRAM,Dynamic Random Access Memory。它和SRAM最大的区别是:数据靠电容存储。电容会漏电,所以必须定时刷新。
工作原理
DRAM的存储单元是1T1C结构:一个晶体管加一个电容。晶体管是访问管,电容存电荷。有电荷代表1,没电荷代表0。
你想想看,电容再大也会漏电。所以DRAM需要每隔几十毫秒刷新一次。这就是“动态”二字的由来。
注意:DRAM的读取是破坏性读取。读一次数据,电容里的电荷就没了。所以读完之后必须立即写回去。这叫“读后重写”。
存储单元阵列
DRAM的阵列比SRAM密集得多。1T1C结构面积小,所以同样芯片面积下,DRAM容量可以做到SRAM的几十倍。
阵列中,字线控制晶体管的栅极,位线连接晶体管的漏极。电容接在源极和地之间。
外围电路
DRAM的外围电路比SRAM复杂:
- 行地址选通(RAS)和列地址选通(CAS):分时复用地址总线
- 刷新控制器:自动定时刷新所有行
- 灵敏放大器:DRAM的灵敏放大器更关键,因为信号非常微弱
- 电荷泵:产生字线的高电压,确保晶体管完全导通
我记得有一次分析DRAM的刷新失效,发现刷新周期设置得太长,导致电容漏电严重。后来调整了刷新频率,问题就解决了。所以做DRAM设计,刷新策略一定要算清楚。
1.3 Flash存储器:NAND与NOR
Flash是非易失性存储器,断电不丢数据。它分两种:NAND Flash和NOR Flash。两者工作原理类似,但结构和应用完全不同。
工作原理
Flash的存储单元是浮栅晶体管。在控制栅和沟道之间,多了一层浮栅。浮栅可以存储电荷,电荷的存在与否决定了晶体管的阈值电压。
编程(写)时,通过热电子注入或Fowler-Nordheim隧穿,把电荷注入浮栅。擦除时,通过隧穿效应把电荷拉出来。
NAND Flash
NAND Flash的存储单元是串联的。多个晶体管串在一起,形成一个NAND串。这种结构面积小,容量大,适合大容量存储。
- 读取:串行读取,速度慢
- 写入:以页为单位,速度快
- 擦除:以块为单位
- 应用:SSD、U盘、存储卡
NOR Flash
NOR Flash的存储单元是并联的。每个晶体管独立连接到位线。这种结构读取速度快,支持随机访问。
- 读取:随机访问,速度快
- 写入:速度慢
- 擦除:以扇区为单位
- 应用:代码存储、BIOS、嵌入式系统
结构差异总结:
| 特性 | NAND Flash | NOR Flash |
|---|---|---|
| 存储单元连接 | 串联 | 并联 |
| 读取速度 | 慢(串行) | 快(随机) |
| 写入速度 | 快(页写入) | 慢 |
| 擦除速度 | 快(块擦除) | 慢(扇区擦除) |
| 容量密度 | 高 | 低 |
| 典型应用 | 数据存储 | 代码存储 |
1.4 三种存储器的核心差异对比
咱们用一张表,把SRAM、DRAM、Flash(NAND/NOR)的核心差异说清楚:
| 参数 | SRAM | DRAM | NAND Flash | NOR Flash |
|---|---|---|---|---|
| 易失性 | 易失 | 易失 | 非易失 | 非易失 |
| 存储单元 | 6T | 1T1C | 1T(浮栅) | 1T(浮栅) |
| 读取速度 | 极快(~1ns) | 快(~10ns) | 慢(~10μs) | 快(~100ns) |
| 写入速度 | 极快 | 快 | 快(页写入) | 慢 |
| 刷新需求 | 无 | 有(~64ms) | 无 | 无 |
| 单元面积 | 大 | 小 | 极小 | 小 |
| 功耗 | 低 | 中(刷新功耗) | 低(待机) | 低 |
1.5 知识体系框架图
下面我用一张SVG图,把本章的知识体系串起来。你可以看到三种存储器的核心结构、工作原理和外围电路的逻辑关系。
1.6 实战中的几点体会
做失效分析这么多年,我总结了几条经验,分享给你:
- SRAM失效:最常见的是软错误(α粒子或中子引起的单粒子翻转)。我建议在设计中加入ECC纠错码,尤其是太空或高海拔应用。
- DRAM失效:刷新失效和电容漏电是两大杀手。我曾经遇到一批DRAM在低温下工作正常,高温下频繁出错。查出来是刷新周期没留够温度余量。
- Flash失效:浮栅电荷泄漏和氧化层击穿是主要失效模式。NAND的块擦除次数有限(通常几千到几万次),NOR的寿命更短。做失效分析时,一定要先看擦写次数。
小技巧:分析Flash失效时,我习惯先测阈值电压分布。如果分布变宽或出现双峰,基本可以判断是浮栅电荷泄漏或编程干扰。这个判断方法,我在多个项目中验证过,准确率很高。
好了,这一章的内容就到这里。三种存储器的基本原理和结构差异,你心里应该有数了。下一章咱们会深入聊存储器的测试方法和失效模式,到时候见。
公众号:蓝海资料掘金营,微信deep3321