news 2026/6/23 14:17:58

存储⑤—深入浅出SSD-SSD存储介质:闪存

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
存储⑤—深入浅出SSD-SSD存储介质:闪存

存储⑤——深入浅出SSD-SSD存储介质:闪存

闪存物理结构

SLC、MLC、TLC和QLC

SLC(Single Level Cell):一个存储单元存 1bit数据
MLC(Multiple Level Cell):一个存储单元存 2bit数据
TLC(Triple Level Cell):一个存储单元存 3bit数据
QLC(Quad-Level Cell):一个存储单元存 4bit数据

规律:n bit的单元共有2的n次方个状态,单元存储 bit 数越多,单位容量成本越低,但寿命、性能会随之下降

闪存芯片组织方式

NAND 闪存由大到小层级:
颗粒封装→Die 裸片→Plane 平面→Block 擦除块→Page 页→Cell 存储单元。
Cell(存储单元):基础存储单元,分 SLC/MLC/TLC/QLC,单单元存 1~4bit;
Page(页):读写最小单位;
Block(擦除块):擦除最小单位;
Plane(平面/Bank)/Die(裸片/晶粒):支持并行操作,提升读写性能。

关键操作边界
①读、写(Program):最小单位 Page
②擦除(Erase):最小单位 Block
③硬件并行单元:Plane、Die、独立 Package 颗粒
④容量密度 / 寿命区分:最底层 Cell 类型(SLC→QLC 容量升高、擦写寿命递减)

闪存实战

闪存命令集

闪存寻址

两种闪存寻址体系:五层硬件层级寻址(控制器全局寻址)和ONFI行列地址寻址(颗粒内部总线寻址)

五层硬件层级寻址

①定义:SSD 控制器管理多颗闪存颗粒时,从整机阵列到存储页的完整分层定位链路,覆盖外部多颗粒硬件阵列 + 颗粒内部全部层级。

②寻址分段(从高位到低位,逐级筛选)
颗粒号:多颗粒阵列,通过片选信号选定目标封装芯片;
Die (LUN) 号:选中芯片内独立裸片,Die 可并行读写;
Plane 号:Die 内平面,地址占用 Block 地址最低 bit,支持多平面并发操作;
Block 地址:擦除最小单元,磨损均衡、垃圾回收操作单位;
Page 地址:读写最小单元,定位块内目标数据页。

③核心用途:控制器侧硬件调度、并发管理、FTL 逻辑地址转完整物理地址,覆盖多颗粒整机架构。

ONFI(Open NAND Flash Interface/开放 NAND 闪存接口) 行列地址寻址

①定义:控制器下发给单颗闪存颗粒的命令地址规范,仅描述单颗芯片内部的地址,不含外部颗粒片选,分为行、列两段地址。

②两段地址拆分
(1)行地址 Row Address
用于定位到完整一页,等价于五层寻址中「Die+Plane+Block+Page」部分,
ONFI 标准位域结构:
LUN(Die)地址 → Block地址(低位嵌入Plane编号) → Page地址

(2)列地址 Column Address
Page 内部字节偏移,锁定一页内具体读写的数据位置。

③核心用途:闪存芯片底层通信,发送读写 / 擦除命令时传递页地址与页内偏移。

读、写、擦除时序

读时序(命令:00h → 30h)

传输阶段
①先发读命令00h;
②依次传输 5 个地址周期:2 个列地址 (C1/C2)+3 个行地址 (R1/R2/R3);
③发送结束命令30h。

状态与数据输出
①发完30h后,状态寄存器SR[6]置 Busy,闪存将 Page 数据载入页缓存;
②等待tWB、tR等就绪延时,SR[6]变回 Ready;
③通过 DQx 总线输出页数据 DOUT。

特点:地址包含列偏移,支持读取页内任意位置数据。

写(编程)时序(命令:80h → 10h)

传输阶段
①先发写起始命令80h;
②传输地址:2 列地址 + 3 行地址,完整写入时列地址通常为 0;
③等待tADL延时后,向闪存页寄存器传输待写入数据 DIN;
④数据全部下发后,发送编程确认命令10h。

状态与介质编程
①收到10h后SR[6]置 Busy,闪存执行介质编程tPROG;
②编程完成后SR[6]切为 Ready,写操作结束。

关键约束:不从头整页写入易引发数据错误。

块擦除时序(命令:60h → D0h)

传输阶段
①先发擦除起始命令60h;
②仅传输 3 个行地址 R1/R2/R3(无列地址,擦除最小单位为 Block,无需页内偏移);
发送擦除确认命令D0h。

状态与擦除动作
①收到D0h后SR[6]置 Busy,执行块擦除tBERS;
②擦除完成后SR[6]恢复 Ready。

特点:只需要 Block 行地址,单次擦除整 Block 内所有 Page。

闪存特性

闪存寿命

以 P/E 擦写循环衡量,SLC>MLC>TLC>QLC,单元存储比特越多寿命越短;靠磨损均衡、冗余 OP 空间、降低写放大来延长整体寿命。

MLC 使用特性

一个存储单元存 2bit,一根字线分高低两页,需按顺序编程;
电荷区间窄,读写干扰更强、擦写寿命弱于 SLC,但存储密度更高、成本更低,需要更强 ECC 纠错。

读干扰

原理:对同一 Block 内任意 Page 执行读取操作时,读取电压会轻微改变同字线相邻存储单元的电荷,多次高频读取后,相邻 Cell 电荷偏移,出现比特错误。

关键规则
①干扰范围:仅影响同一 Block内未擦除的其他 Page,跨 Block 无影响;
②触发条件:上万次重复读同一 Block 后故障概率显著上升;
③应对方案:
1.后台刷新:高频读取的 Block 定期重新编程,恢复偏移电荷;
2.均衡读访问逻辑,避免长期集中读取同一个 Block;
3.ECC 实时修正读干扰产生的少量错误比特。

数据保存期

定义:指闪存断电后,电荷稳定留存、数据可正确读出的最长时间,核心影响因素:
颗粒类型:SLC > MLC > TLC > QLC,比特越多,电荷区分窗口越小,保存时间越短;
老化程度:Block 擦写次数越接近寿命上限,电荷泄漏速度越快;
温度环境:高温大幅加速电荷流失,低温有利于长期保存。

闪存数据完整性

闪存随使用、存储时长增加易出现比特翻转,制程越小故障越突出

读错误来源

闪存数据发生错误,主要有以下几个原因
①擦写老化:P/E 次数增多,氧化层老化,电荷不稳,原始误码率上升。
②电荷流失:断电后电子缓慢泄漏,阈值电压左移,电平判读出错。
③读干扰:频繁读同块,加压造成相邻单元轻微充电,阈值电压右移。
④单元耦合:相邻 Cell 电容互相干扰,周边状态改变会偏移自身阈值电压。
⑤原生写错误:MLC 两段编程依赖低位页数据,底层出错会直接写入错误电平。

SSD 依靠 5 类技术保障数据可靠
①ECC 纠错:校验并修正页内少量比特错误;
②RAID 数据恢复:多颗粒冗余,单颗颗粒损坏可恢复数据(固态硬盘的RAID一般采用RAID 5。);

(RAID 5:由至少 3 块硬盘组成,数据与校验信息分散存储在所有磁盘上,无单独校验盘。任意一块盘损坏时,可通过其余盘的数据 +校验位计算还原丢失数据)

③重读 Read Retry:调整读取电压重试,修复阈值偏移引发的读错;
④扫描重写 Read Scrub:后台巡检冷数据,提前刷新衰减页面;
⑤数据随机化:打散规律电平分布,降低单元间耦合干扰。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/23 14:15:32

网盘直链解析工具终极指南:告别限速,掌握高效下载的完整方案

网盘直链解析工具终极指南:告别限速,掌握高效下载的完整方案 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中…

作者头像 李华
网站建设 2026/6/23 14:13:33

段码屏的生产流程

从开模打样到模组组装 全工序详解📌 流程概览:段码屏的生产过程主要包括开模与打样阶段、前段 Array 工序(ITO图形蚀刻)、中段 Cell 工序(成盒制造)以及后段 Module 工序(模组组装)…

作者头像 李华
网站建设 2026/6/23 13:53:00

mba论文国内外研究现状怎么查

mba论文国内外研究现状怎么查 深夜,电脑屏幕的光映着你疲惫的脸。导师那句“文献综述太单薄,国内外研究现状梳理不清”的评语,像根刺一样扎在心上。你明明搜了知网、万方,甚至翻墙看了谷歌学术,可面对海量文献&#x…

作者头像 李华
网站建设 2026/6/23 13:40:57

服务监控指标体系建立

服务监控指标体系建立:保障业务稳定运行的核心支柱 在数字化时代,服务的稳定性和性能直接影响用户体验和企业声誉。无论是电商平台的订单处理,还是金融系统的实时交易,任何服务中断都可能造成巨大损失。建立科学的服务监控指标体…

作者头像 李华
网站建设 2026/6/23 13:13:48

DSP56303主机接口与ESSI编程:异构系统通信与音频处理实战

1. 项目概述与核心价值 在音频处理、通信基带或者任何需要实时信号处理的嵌入式系统里,我们常常会遇到一个经典架构:一个主控MCU(比如ARM Cortex-M系列)负责系统管理、协议栈和用户交互,而一个专用的数字信号处理器&am…

作者头像 李华