一、前言

1.1 引言

进入 2019 年,随着国产厂商的杀入,固态硬盘(SSD)甚至被杀到了 1 元 1G 的价格,固态硬盘也逐渐在普通用户中普及开来。现在新购一台电脑,无论是笔记本还是台式机,固态硬盘基本上是必备的硬件。

但是固态硬盘和其他计算机硬件一样,参数众多,其中也是有一点门道的。这也是我写这篇文章的动力,希望帮助大家明白固态硬盘的相关知识。

1.2 你真的需要 SSD 吗?

固态硬盘的功能通俗点说就是加快数据传输的速度

因此如果你想提升系统的启动速度,或者是让应用打开速度变快,或者是文件读取速度变快,这是 SSD 所能够做到的。

但是如果你原本运行 PS、PR 等专业软件,或者打游戏卡,即使你装上 SSD 也无济于事,因为这取决于你的 CPU、显卡、内存等待因素。

二、闪存颗粒与主控

打一个形象的比喻,SSD 就是一个货物仓库,在这个仓库中,货物被放在一个个货架内。

SSD 最重要的就是闪存颗粒主控。按照例子,颗粒类型的不同就决定了一个货架上放了几件货物。主控就是这个仓库的控制中心,负责如何从仓库中找到某一个货物。

2.1 颗粒类别

2.1.1 SLC、MLC、TLC

传统的颗粒类别分为 SLCMLCTLC 三种。SLC 一般应用于企业级中,对于普通消费级市场,大多是都是 TLC,以及少量的 MLC。

SLC(Single-Level Cell,单层单元) 表示一个存储单元存放 1 bit 的数据;MLC(Multi-Level Cell,多层单元) 表示一个存储单元存放 2 bit 的数据;TLC(Triple-Level Cell,三层单元)表示一个存储单元存放 3 bit 的数据。

颗粒类别

在我们一开始的例子中,一个数据单元就是一个货架。在 SLC 中,一个货架就只放 1 个货物,其他的类推。

由于 SLC 货架只放了一个货物,因此找到这个货物的速度就很快,而且不容易出错。而 TLC 由于放了三个货物,想要找到一个货物还要在这个货架中进行查找,相对于 SLC 速度和正确率就下降了。而且由于 TLC 每个货架的使用频率高,负载大,比 SLC 也更容易坏掉。同时 SLC 由于一个货架只放一个货物,那么它的成本就更多。

架构 存储密度 擦写寿命 保存时间 读写速度 主控要求
SLC
MLC 较长
TLC 较长

下面正经说一下为什么 TLC 读取速度慢于 TLC,以及为什么使用寿命比 TLC 低。

我们知道,计算机中通过电压的高低来表示 0,1。对于 SLC,由于一个数据单元只存放 1 bit,因此只需要 2 个电压就能够表示。而 TLC 一个数据单元存放 3 bit,就需要 8 个电压才能够表示过来。施加不同的电压状态、尤其是相对较高的电压,需要更长的时间才能得以实现(电压不断增高的过程,直到合适的电压值被发现才算完成)。所以,在 TLC 中数据所需访问时间更长,因此读取速度更慢。

由于 TLC 采用多个不同的电压状态,加上存储容量多,击穿绝缘层次数也比其他介质多,于是加速了绝缘层的损耗过程。因此 TLC 的寿命要低于 SLC,一般能够达到 1000 ~ 2000 次擦写寿命,而 SLC 能够达到 3000 ~ 10000 次擦写寿命。由于我们买的大多是 TLC,因此 SSD 的使用寿命也就是 3 ~ 5 年左右。

2.1.2 QLC

2018 年市场上推出了 QLC(Quad-Level Cell),每个存储单元可以存放 4 bit 数据,但是由于刚出没多久,相关技术仍然不是很成熟,所以还有待观察,暂时不推荐普通用户购买。

2.2 颗粒厂商

虽然 SSD 品牌众多,但是能够有能力生产颗粒的却不多。

能够自主生产颗粒的品牌有:Intel、三星、镁光(英睿达)、东芝、闪迪、海力士

还有一些厂商虽然没有能力生产颗粒,但是使用原厂颗粒,这些品牌包括:建兴、浦科特

2.3 原片、白片、黑片

颗粒厂商将认定合格的闪存颗粒,经过多重检测后,正规出售,这就是原片

而在成品检测中被认定不合格的瑕疵品,在封装好后被淘汰,被下游工厂买到,做成杂牌 SSD,这就是白片

黑片,就是原厂生产时的边角料,通过不正规手段流出,做成劣质 SSD,读写效果就是个大号 U 盘。

想要避免买到白片或这黑片,认准官方售卖渠道,各电商品牌直营、旗舰店即可。

2.4 主控

主控则是 SSD 的大脑,对 SSD 的重要性不言而喻。和颗粒一样,主控也不是任何品牌有能力能够生产的。

顶级的主控厂商包括:Marvell、三星Phoenix、Intel

其他还不错的主控厂商包括:东芝、慧荣SM、群联Phison

三、缓存

SSD 的缓存类型主要包括 DDR 缓存和 SLC 缓存两种。

3.1 DDR 缓存

和内存缓存同种,速度非常快。写入数据首先写入缓存,硬盘自己将数据从缓存读出写入。

3.2 SLC 缓存

SLC 缓存则是比较常见的缓存类型。前面说过消费级市场大多是 TLC 类型的 SSD,SLC 缓存就是将一定大小的空间其模拟为 TLC 来使用,读取时优先使用 SLC 缓存。

例如 SLC 缓存为 512MB,当读取文件小于 512MB 时,速度相当于 SLC,超出 512MB 的部分才是 TLC 真实的速度。这也就是为什么在写入大文件时开始非常快,但是随后会掉速。

四、总线与总线协议

继续接着例子,货物存放在货物仓库中,需要将它运输到目的地。可以选择走高速公路,也可以走国道、省道。

计算机中总线就相当于是数据运输的通道,而不同的总线协议就决定了数据传输的速度。

4.1 总线类别

SSD 中一般只有两种总线,即 SATA 总线和 PCI-E 总线。

SATA 总线的读取速度最大不超过 550 MB/S

PCI-E 总线分为 PCI-E x 1、PCI-E x 2、PCI-E x 4、PCI-E x 8、PCI-E x 16。其中 PCI-E x 8 和 PCI-E x 16 用于显卡,对于 SSD 则是 PCI-E x 2PCI-E x 4 总线。

PCI-E x 2 总线读取速度最高 1000 MB/S,PCI-E x 4 总线读取速度在 1500 MB/S ~ 3000 MB/S(由总线协议决定)。

4.2 总线协议

AHCI 协议是适配 SATA 总线的协议,它最多只能同时处理 1 个队列 32 个指令。

NVMe 协议是适配 PCI-E 总线的协议,它最多同时处理 65536 个队列 65536个指令。

在 PCI-E x 4 总线上,如果支持 NVMe 协议,其读取速度为 3000 MB/S;如果不支持 NVMe 协议,其读取速度为 1500 MB/S

五、物理接口

SSD 一般有以下三大类接口:SATA 接口PCI-E 接口M.2 接口

5.1 SATA 接口

如果你购买了 SATA 接口的 SSD,如下图,那么它只能够被插在主板的 SATA 插槽上,一般是硬盘位或者光驱位。

它的总线也就是 SATA 总线,因此其最大读取速度不超过 550 MB/S

SATA 接口固态硬盘

5.2 PCI-E 接口

如果你购买了 PCI-E 接口的 SSD,一般它是 PCI-E x 4 总线的,如下图,你需要将它插在主板的 PCI-E x 4 插槽上,如果主板上没有 PCI-E x 4 的插槽,也可以插在 PCI-E x 16 插槽上。

其速度根据它是否支持 NVMe 协议来决定,如果支持,其读取速度能够达到 3000 MB/S;如果不支持,其读取速度能够达到 1500 MB/S

PCI-E 接口固态硬盘

5.3 M.2 接口

5.3.1 大小尺寸

M.2 接口,早期也被叫做 NGFF 接口,在一些早期电脑上,对该接口的 SSD 的长度要求不一,因此出现了 M.2 2242M.2 2260M.2 2280 这三种主流的大小型号。

M.2 固态硬盘大小

但是随着时间推移,目前基本上都是 M.2 2280 大小的 SSD,只有一些早期机型上需要考虑大小问题。

5.3.2 M 型接口 与 M&B 型接口

M 型接口只有一个缺口,下方的金手指块部分有 5 个金手指,如下图所示。

M 型接口

M 型接口它是 PCI -E 总线,具体速度根据它的实际总线和协议来决定。

  1. 如果是 PCI-E x 2 总线,读取速度为 1000 MB/S
  2. 如果是 PCI-E x 4 总线且支持 NVMe 协议,读取速度超过 2000 MB/S
  3. 如果是 PCI-E x 4 总线且不支持 NVMe 协议,读取速度将小于 1500MB/S

M&B 型 接口有两个缺口,上方的金手指块部分有 6 个金手指,如下图所示。

M&B 型接口

M&B 型接口支持 SATA 总线PCI-E x 2 总线。

  1. 如果是 SATA 总线,读取速度不超过 550 MB/S
  2. 如果是 PCI-E x 2 总线,读取速度不超过 1000 MB/S

5.3.3 B key 插槽与 M key 插槽

选购 M.2 接口,除了看接口类型,还要看主板的插槽类型。

由于历史原因,早期的主板采用了 B Key(Socket 2) 插槽,缺口朝左。而现在主流的插槽为 M Key(Socket 3) 插槽,缺口靠右。

M.2 主板插槽区别

5.3.4 接口与插槽的兼容性

由于插槽的引脚数不同,因此要根据实际的插槽来选择不同类型的 M.2 接口的固态硬盘。

  1. 对于早期的 B Key 插槽,只能够选择 M&B 型接口,也就是有两个缺口的 SSD。
  2. 对于 M key 插槽,除了能够选择 M 型接口 外,也可以选择 M&B 型接口。但是由于 M 型接口速度更快,因此优先选择 M 型接口。

六、读写速度

总线与总线协议赋予了一块 SSD 的理论读写速度,但是实际的读写速度各品牌不一,那么如何才能比较一台 SSD 的速度好坏呢。

AS SSD 这款软件是常见的 SSD 测速工具,可以帮我们进行读写速度测试。

6.1 顺序读写速度 与 4K 随机读写速度

在上图中的第一行 Seq,即顺序读写速度。这是被广大卖家主要吹嘘的一个速度指标,但是它却不是我们主要关心的问题。

顺序读写速度,主要是读写大文件时的速度,例如拷贝1个 10G 的电影。但是我们实际使用中,大文件的拷贝是比较少见的,更多的是多个小文件的拷贝。而多个小文件的拷贝就要看第二行 4K的速度,也就是 4K 随机读写速度

比较的好坏也很简单,越大越好。进入商品的评价区即可,许多人都会晒跑分图,多看几个心中有数即可。

6.2 4K 对齐

固态硬盘的读写操作与机械硬盘不同,固态硬盘读写的最小单位叫“页”,因为固态硬盘是以闪存作为存储介质的,所以不能像机械硬盘那样覆盖写入。所以每次要写入新数据,就必须先把原有的数据擦除,而擦除的最小单位叫“块”(块大于页,一个块是由很多页组成的)。

因为传统的分区偏移尺寸一直是从63扇区开始(63X512B=31.5KB),那么就会造成用户的第一个数据的前 4KB 会存放在系统逻辑扇区的 31.5 到 35.5KB 之间,这样持续下去的话,后面所有数据都会卡在 2 个物理扇区容量之间,如果卡在2个扇区之间,那么每次写入时就会变成 读-擦-写 的操作,性能就下降了。

因此,如果写入一个 4KB 的数据,实际上是有 2 次写入操作的,4K 对齐就是让操作系统的最小分配单元和闪存的一个页对应起来,这样写入 4KB 数据时就能一次完成。

实现 4K 对齐也很简单,在新买回来,对 SSD 进行格式化分区时,在分区软件上选择 对齐扇区的整数倍 即可。在 AS SSD 软件中,最上方有两行绿色的 OK ,表示 4K 对齐成功。