ssd|无缓SSD,真的不能碰吗?

ssd|无缓SSD,真的不能碰吗?

文章图片

ssd|无缓SSD,真的不能碰吗?

文章图片

ssd|无缓SSD,真的不能碰吗?

文章图片

ssd|无缓SSD,真的不能碰吗?

文章图片


自从三星在消费级SSD产品线主力980中采用无缓方案 , 从PCIe3.0到PCIe4.0 , 无缓的产品开始越来越多 , 但普通消费对它们抵触还是很大 。 无缓究竟是无良缩水还是可以接受的小便宜呢?

01、DRAM——固态硬盘的“缓存”
在一般的网络讨论中 , 有DRAM的SSD一般称为“有缓方案/产品” , 而有些则没有 , 被厂商称为DRAM-less , 用户一般称为无缓 。
固态硬盘将数据存储在一些被称为NAND闪存颗粒的内存单元上 。 在固态硬盘的使用期限内 , 数据会在这些单元中大量移动 。 在主控的控制下 , 它自动这样做 , 以确保没有任何一个存储单元因过度重复读/写而被超负荷磨损 , 提前达到颗粒使用寿命 , 这也是现在一般不建议高速固态硬盘分区的原因 , 因为分区可能导致(主要是老旧产品 , 目前主流的主控已经可以规避)数据只在某几颗颗粒中频繁读写 。
因此 , 你的固态硬盘在使用时需要保持一个数据在硬盘上的位置图 。 这样 , 当你想启动一个程序 , 运行一个游戏或打开一个文件时 , 你的SSD就知道在哪里可以找到它并自动调取出来 。 该“地图”存储在SSD的DRAM上 , 即动态随机存取存储器中 。

一个有DRAM缓存的SSD
对于无DRAM的固态硬盘 , 很多人认为 , 没有DRAM意味着没有硬盘的“地图” 。 然而 , 无DRAM的硬盘其实有一个硬盘的地图;它只是放在你的设备的NAND闪存颗粒中 。 NAND颗粒的读写速度 , 当然没有DRAM内存的读写速度快 , 因此“调用地图”的过程 , 比起有缓存的产品 , 自然会慢 。
02、DRAM≠SLC CACHE
当然 , 提到固态硬盘缓存大家还会知道一个SLC CACHE , 也有很多人把DRAM缓存和SLC CACHE混为一谈 。
而SLC Cache一般都是在TLC或者QLC闪存颗粒中 , 划分出一定的空间用来作为模拟SLC空间 。 这两者之间在物理上的就有本质的区别了 , 在DRAM缓存中的数据一断电就会消失 , 而在SLC Cache中的数据 , 如果没有擦除掉 , 是可以永久保存的 。

SLC CACHE颗粒空间占用巨大理论上SLC CACHE是越大越好 , 但是在实际应用中 , 如果SLC Cache越大 , 占用的空间将会越多 。 一个TCL颗粒的240GB SSD , 如果固件规划了SLC Cache空间大小为5GB , 那么就需要占用20GB 的TLC颗粒空间 。 这时你拷入一个10G的文件 , 那么在5G数据传输后就会掉速 , 直到SLC Cache中的数据写入正常的TLC中 , 才会恢复SLC的读写速度 。 如果提供50G SLC Cache空间 , 那么需要占用200GB的TLC空间 , 如果硬盘的写入达到100GB了 , 那么50G的SLC Cache就失效了 , 之后就只能一直用TLC的读写 。 这就是所谓的“出缓掉速“ 。
SLC CACHE的出缓掉速影响比DRAM的出缓掉速大得多 , 因为DRAM缓存一般存储”数据地图“为主 , 大小1~4GB(1GB的最多) , 而SLC CACHE往往还把数据本身写入这个缓冲区 。
采用SLC CACHE方案的SSD

还有一种使用全盘动态SLC仿真的SSD , 全盘模拟SLC Cache可以让硬盘不管什么容量的时候都可以使用SLC加速 。 而缺点就是SSD在一次性跑满剩余空间的一半容量就会开始掉回TLC的速度 , 必须要等一定的空闲时间才能恢复 , 所以盘的剩余空间越小就越容易出现掉速的问题 。 但全盘模拟SLC CACHE的写入放大会大大加剧SSD寿命衰减 。