news 2026/6/2 14:02:02

【SSD】闪存的总结与梳理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【SSD】闪存的总结与梳理

1.从闪存架构上来梳理

1.1 Package

Package上可能是封装单Die或者多Die堆叠的。

1.2 Target/LUN/Die

Target中有多LUN堆叠,或者单Die;

LUN是Die的逻辑对应;

Volume 是host对LUN操作的地址对象,可以通过操作Volume来实现操作CE选中Die等,所以可以理解为Volume是LUN的逻辑寻址单元。

1.3 Plane

为了提升闪存的读写速度,在每个闪存中设置了一个或者多个寄存器,例如镁光的data register和cache register,能够提升并行传输的速度。

1.3.1 multi-plane

multi-plane是在一个Die里面进行的,主要目的是加速,通过对多plane操作传输速度;思考问题,

  • 可以使用任意个plane做multi-plane吗?

可以使用任意个Plane进行multi-plane操作

  • 擦除也有multi-plane吗

擦出也有multi-plane,而且擦除multi-plane必须对同一编号的Block进行擦除,这是物理结构导致的,因为擦除就是施加大电压大电流,有物理结构上来看,NAND会把所有 Plane 的同编号 Block,连接到同一个高压驱动模块上;当执行 Multi-Plane 擦除时,只需要给这个高压模块加一次电,就可以同时给所有 Plane 的同编号 Block 施加擦除高压

  • 读/写/擦除的multi-plane有什么区别

写:操作的页需要有相同的chip地址,die地址,不同block地址,page地址,但plane地址不同。

读:plane,block和page地址都可以不同。

擦除:操作的块需要有相同的chip地址,die地址,block地址,但plane地址不同。

1.3.2 Cache写和正常写

这个也是为了加速,由于SSD缓存写到Cache中的速度和Cache写到flash的Page中的速度不匹配,可以使用Cache写加快数据传输。

1.3.3 读干扰,写干扰会作用到整个Plane层面

读干扰和写干扰的的底层逻辑都是由于读写过程中,对一些不需要读写的WL施加了导通电压,造成了不必要的写入,这样的干扰会对Plane中的所有block造成影响。

有没有硬件隔离?例如同一个Plane上的每一个Block都有属于自己的WL。

1.3.4 擦除会作用到plane上去

擦除是对整个Block而言的,整个Plane都共用一套物理衬底,但在这块基底上,会通过离子注入工艺,划分出一个个独立的 P 型阱区(P-Well),这种电气隔离特性,可以控制某一块Block的擦除;但是擦除高压会通过硅基底的寄生电容,耦合到相邻 Block 的 P-Well 上,也就是擦除A‘block的时候,Plane里面的所有Block都会收到影响。

1.3.5 Plane的寻址选地址在哪

Plane的寻址地址在Block的最低位

1.4 Block

1.4.1 block是最小的擦除单元

1.4.2 写数据;先擦后写

1.4.3 Block内部的Page需要执行顺序写的规则

在物理地址上,Block内部的Page是必须执行循序写的要求,也就是Page -Page1 写到Page x,但是对host端输入的逻辑地址而言,可以是随机写的,也就是逻辑1到逻辑100,可以是逻辑1对应物理地址的block 4,Page 3,偏移地址 4;

1.4.4 Block里面所存的Cell单元的类型要一致,例如都是TLC的类型的Cell;

1.4.5 闪存寻址中Block本身无需按照循序读写。

1.5 Page

1.5.1 Page是最小的读写单元

Page的读写寻址是从按顺序Page 0-Page1-Page x的。

1.5.2 Page中空间的划分

用户空间和OOB区的划分是在Page中,OOB区存在坏块标记表,ECC纠错校验码等。

1.5.3 Block结构中一条WL代表着1个Page。

1.5.4 XLC对应的Page都在同一个Block里面。

读取XLC的Page可以是任意顺序,但是写入XLC必须按Lower->upper Page 顺序实现。

1.5.5 column地址是Page内的最小偏移地址

也是Page内某一个字节的读写起始地址,这个地址覆盖了用户数据区和OOB区。

1.5.6 Page下逻辑存在的Frame

Page下逻辑存在frame是一种数据形式,分为Data,spare,crc,Ecc,bcm

1.6 Cell

Cell是最小的储存单元,Cell里存储数据为1,2,3bit分别对应的闪存类型是:SLC,MLC,TLC.

例如MLC的一个Cell对应着2个Page。

1.6.1 读写擦除的电气原理

读:通过阈值电压来判断

写:正常都是先擦后写,擦过的Block中每个Cell都是”1“;给想要写入的WL上加入高压,实现数据”0“写入。

擦除:在衬底上施加高压

2.名词梳理

2.1 tPROG

就是Flash编程时间,发生在Cache缓存和Page的交互过程中,速度慢,是影响Flash性能的主要时间因素。

2.2 写放大

写放大=flash实际写入量/host写入量

垃圾回收,磨损均衡,读写干扰,各类搬移的情况。

3.闪存的特性

3.1.读干扰,写干扰和擦除干扰的区别

读干扰和写干扰是在读写过程中由于在非读写Page上添加的导通电压,导致的轻微写入,这种损伤是非永久性损伤,可以通过定期重读写消除;

擦除干扰是由于擦除次数过多导致绝缘氧化层变薄,电子更容易泄漏,这种是永久性损伤,长期用以形成坏块。

3.2.闪存坏点(bcm坏点管理)

闪存坏点就是数据的某个bit发生了错误;而bcm就是如果对坏点进行管理的方式?例如使用ECC纠错管理;怎么进行坏点管理?

3.3.闪存坏块

坏块就是当闪存块接近擦写最大次数的时候,会导致Cell永久性损伤,而且使用的越久,损伤的单元越来越多,而且ECC纠错都难以纠正过来,这样的闪存块就形成了坏块?

ECC纠错的单位是什么?

3.4.闪存的时序图

3.4.1 时序图上数据发送的顺序

按顺序是:命令--地址--数据

3.4.1 warmup

在高速数据的传输过程中不做Warmup容易出错,做warmup表现是数据采样之前就多发几个DQS,这几个DQS是带着数据的。

3.4.2 采样过程

在DQS的双边沿对稳定的数据进行采样。但是也分读和写,写的时候DQS双边沿对齐数据中心;读的时候双边沿对齐数据边沿。

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

Java微服务架构设计:打造可扩展的分布式系统

在当今快速发展的技术环境中,构建高效、灵活且可扩展的系统已成为企业实现数字化转型的关键。Java,作为一门成熟且广泛应用的编程语言,在微服务架构设计中扮演着至关重要的角色。本文将深入探讨如何利用Java微服务架构打造可扩展的分布式系统…

作者头像 李华
网站建设 2026/6/2 14:00:47

如何安全地为《杀戮尖塔》安装模组:ModTheSpire终极指南

如何安全地为《杀戮尖塔》安装模组:ModTheSpire终极指南 【免费下载链接】ModTheSpire External mod loader for Slay The Spire 项目地址: https://gitcode.com/gh_mirrors/mo/ModTheSpire ModTheSpire是一款专为《杀戮尖塔》设计的强大模组加载器&#xff…

作者头像 李华
网站建设 2026/6/2 13:54:02

DIY专业级USB麦克风:从电路设计到3D打印的完整制作指南

1. 项目概述:为什么选择DIY高品质USB麦克风?几年前,为了在游戏里和队友清晰沟通,我花了几百块买了个市面上口碑还不错的USB麦克风。到手一试,人声是录进去了,但总感觉闷闷的,背景的键盘声和风扇…

作者头像 李华
网站建设 2026/6/2 13:52:56

Lance视频编辑功能深度体验:5个案例教你玩转智能视频修改

Lance视频编辑功能深度体验:5个案例教你玩转智能视频修改 【免费下载链接】Lance 项目地址: https://ai.gitcode.com/hf_mirrors/bytedance-research/Lance Lance是字节跳动推出的3B参数统一多模态AI模型,能够原生支持图像与视频的理解、生成和编…

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

web 美团 mtgsig

声明本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!分析图启动流程在这里,发起xm…

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

基于W5100S与CircuitPython的Pico网络时钟实现

1. 项目概述:为你的Pico装上“网络时钟”在物联网和嵌入式开发里,时间是个既基础又关键的东西。想想看,一个环境监测节点记录的数据,如果时间戳是乱的,你根本没法分析温度变化的趋势;一个智能家居的联动场景…

作者头像 李华