引言

很多朋友只知道固态硬盘机械硬盘快,但是却不知道固态硬盘为什么快?以及到底快在哪?上篇我们讲了机械硬盘SSH的工作原理,今天我们接着讲固态硬盘SSD的工作原理
上篇地址:硬盘的结构与工作原理

由上篇我们知道:机械硬盘的内部结构主要由马达、磁盘、磁头臂、磁头组成机械硬盘在工作的时候,磁头会悬浮于磁盘面上方几纳米的距离。

磁盘面上有很多的小格子,小格子内有很多的小磁粒。而磁头可以利用其变化的磁场改变磁盘磁粒极性,这样就做到写入和改写磁盘数据了

为了能够精准定位数据所在磁盘面上的位置,磁盘本身又被划分了无数的扇区和磁道。

假设:数据存放在磁盘的第五磁道的第7扇区上:

磁头就会先摆动到第5磁道上空,然后等待第七扇区转过来。当第七扇区转到磁头下面的时候,才可以读取数据,这就是机械硬盘的工作原理。

也正是因为机械硬盘是利用磁性极粒来存储数据的,所以机械硬盘通常又被称作磁盘。而固态硬盘同机械硬盘的工作原理完全不同,固态硬盘采用纯电子结构

一、什么是SSD?

固态硬盘(Solid State Drive),简称SSD(固盘),是用固态电子存储芯片阵列而制成的硬盘,由控制单元存储单元(FLASH芯片、DRAM芯片)以及缓存单元组成

区别于机械硬盘由磁盘、磁头等机械部件构成,整个固态硬盘结构无机械装置,全部是由电子芯片电路板组成。

二、SSD的组成

虽然SSD外表看起来只是一个方方正正的硬盘盒子,但内部结构却十分精妙,主要由以下几个部分组成:

1. 主控芯片

主控芯片是SSD的“大脑”,负责协调数据读写、错误校正、负载均衡等关键任务。其功能包括:

主流主控厂商包括Marvell、三星、慧荣等,不同主控的性能差异直接影响SSD的读写速度和稳定性。 

2. 闪存颗粒

作为硬盘,存储单元绝对是核心器件。在固态硬盘里面,闪存颗粒则替代了机械磁盘成为了存储单元。

闪存(Flash Memory)本质上是一种长寿命的非易失性(在断电情况下仍能保持所存储的数据信息)的存储器,数据删除不是以单个的字节为单位而是以固定的区块单位

这是SSD真正存储数据的地方。根据技术不同,NAND闪存分为以下几类:

当前,固态硬盘市场中,主流的闪存颗粒厂商主要有toshiba东芝、samsung三星、Intel英特尔、micron美光、skhynix海力士、sandisk闪迪等。

由于闪存颗粒是固态硬盘中的核心器件,也是主要的存储单元,因而它的制造成本占据了整个产品的70%以上的比重,极端一点说,选择固态硬盘实际上就是在选择闪存颗粒

一般来说,SLC用于企业级产品,而消费级SSD常用TLC或QLC。

3. DRAM缓存

控制器会使用缓存来暂时存储数据,提高读写效率。

由于固态硬盘内部的磨损机制就导致固态硬盘在读写小文件和常用文件时,会不断进行数据的整块的写入缓存,然而导出到闪存颗粒,这个过程需要大量缓存维系

特别是在进行大数量级的碎片文件的读写进程,高缓存的作用更是明显。

这也解释了为什么没有缓存芯片的固态硬盘在用了一段时间后,开始掉速

三、SSD的核心技术原理

3.1. NAND闪存如何存储数据?

浮栅晶体管存储电子的浮栅层、控制极G衬底P极D极S组成,如下图

我们将浮栅层中的电子数量高于一定值计为0,低于一定值计为1

1.写入数据

写入数据时,需要在控制极G施加一个高压,这样电子就可以穿过隧穿层,进入浮栅层,因为有绝缘层的存在,电子不能再向前移动了,就被囚禁在了浮栅层

而当我们把电压撤去,这些电子依然会被囚禁在浮栅层,因为隧穿层本质上也相当于绝缘体,所以电子们只能被关押着,这样一位数据就被存储进去了。

这些电子能被“囚禁”多长时间也就是固态硬盘能够存储数据的年限,一般一块新的固态硬盘能够保存数据的年限为10年因为随着时间的流逝,不断地有电子“越狱成功

越狱”的电子多到一定的数量,我们保存的数据就不见了

2.擦除数据

我们擦除固态硬盘上的数据其实就是在释放电子,即在衬底上施加高压,这样电子被吸出来,信息也就被擦除了

3.读取数据

浮栅层不存在电子时(存储数据为1),我们给控制级一个低压,由于电压低,电子只能被吸引到靠近隧穿层的位置,却无法穿过隧穿层,

因而源极漏极可以导通,形成电流。如果检测到电流,那么说明它没有储存电子,则读取数据为1

当浮栅层中存在电子时(存储数据为0),我们还给控制极一个低压,由于浮栅层里面的电子对这些电子有排斥作用,所以电子无法被吸引到靠近隧穿层的位置,

源极漏极不会导通,不会形成电流。如果无法检测到电流,那么说明浮栅层储存一定量电子,则读取数据为0

无数的浮栅晶体管堆叠在一块就可以存储大量的0和1,它们就类似于图书馆当中的书架一样,存储着无限的0101数据。

4.以TLC为例

每个单元可以表示8种不同的电压状态,编码为000~111。这种方式大幅提升了存储密度,但也使得写入变慢、寿命缩短。

3.2. 为什么SSD写入比读取慢?

SSD写入数据要经过两个步骤:

这意味着在修改数据之前,必须先读取整个块、修改其中的数据、擦除原块、再重新写入。这个过程叫写放大(Write Amplification)

3.3. 垃圾回收

由于写入数据只能落在“空页”,而删除操作只是标记为“无效”,SSD 控制器需要定期清理这些无效页。

原理:

  1. 找到包含大量无效页的块;

  2. 将其中有效数据拷贝到新块;

  3. 擦除旧块;

  4. 释放空间。

主动 vs 被动 GC

为了避免写放大对性能的影响,SSD会在后台自动进行“垃圾回收”——把有效数据从旧块复制出来,把无效数据擦除,腾出空间供写入。

这也解释了为什么SSD在使用一段时间后写入速度会下降。

3.4. 磨损均衡(Wear Leveling)

SSD使用的NAND闪存有写入寿命限制。每个(Block)大约只能擦写几千次(例如TLC约3000次,QLC更低),超过这个次数,数据就容易丢失或写入失败

如果你频繁对某些文件(如日志、缓存)读写,而这些数据总是落在某些块上,那么这些块就会提前老化失效,即便整块SSD还有大面积“健康”的空间,也可能因此提前报废

NAND闪存为了防止某些块频繁写入而过早损坏,控制器会均匀分配写入任务,使得所有存储块磨损均衡延长整盘寿命

四、纠错机制(ECC):容错的最后防线

随着 Cell 精度提升(TLC/QLC),SSD 出错率(Raw Bit Error Rate)也快速增加,因此必须依赖强大的纠错算法。

主流方案:LDPC(Low Density Parity Check)

LDPC 是现代 SSD 的主流纠错算法,具有:

补充机制:


五、并发架构:控制器设计决定极限速度

SSD 不像机械硬盘只有一个磁头,而是使用多个NAND通道(Channel)、封装(Die)、Plane 实现并发读写。

现代 SSD 控制器可以:

这种多维度并发架构,是 NVMe SSD 实现 5000+ MB/s 吞吐量的硬件基础


五、接口与协议演进:NVMe 的横空出世

NVMe,全称是 Non-Volatile Memory Express,它不是一块硬盘,而是一种通信协议,是为了闪存(如SSD)设计的一种高性能存储接口协议

传统的硬盘(HDD)和早期的SSD使用的是 SATA + AHCI 协议。这套协议最早是为机械硬盘设计的,处理速度有限,不能发挥SSD的全部性能。

NVMe 是闪存专用的“数据传输协议”,让SSD跑得更快。

接口
带宽
协议
特点
SATA3
6Gbps
AHCI
兼容性好,性能瓶颈明显
PCIe 3.0 x4
32Gbps
NVMe
专为闪存设计,支持多队列、高并发
PCIe 4.0/5.0 x4
64Gbps/128Gbps
NVMe
新时代存储接口标准

NVMe 支持 65535 个并行队列(每队列最多64K命令),相比 AHCI 的单队列、32命令,极大地发挥 SSD 并发优势。

总结

SSD的迅猛发展,不只是硬件结构的叠加,更是底层算法、并发设计、纠错机制、协议优化和接口带宽协同作用的结果。

从FTL地址转换,到路径冲突优化;从Cell电荷精密控制,到自动擦写与磨损迁移;从错误纠正到指令级调度,它们共同编织出“快、稳定、持久”的存储体验