当前位置:首页>>生活

 从固态硬盘的原理看选购

  • 2022-06-14 10:33:00
  • 6

在开始写这段内容的时候,笔者也在想,固态硬盘的选购是否真的只是为大家推荐几款固态硬盘然后让大家一味地去购买。但是这样的话大家只能够去购买到现役的笔者推荐的型号,如果厂商再推出新产品的时候,或许大家又会无所适从。所以笔者决定与大家一起讨论固态硬盘的工作原理,让大家能够对固态硬盘有个充分的了解,这样大家才能够根据自己的判断去选购固态硬盘产品。那么话不多说,我们来看看固态硬盘的运行机制到底和机械硬盘有什么不同。

与机械硬盘的结构差异

前面笔者也提到了,固态硬盘与机械硬盘在结构上有着本质的差异性。机械硬盘是机械臂带动磁头,去读取碟片上的数据,而固态硬盘则是直接使用芯片进行读取。所以固态硬盘才会拥有机械硬盘所不能够拥有的优势。

图:机械硬盘与固态硬盘在原理上有本质的差异

但是正是因为这种差异性,导致机械硬盘无法在机械结构上作假。虽然市面上充斥着一定数量的二手或者返修的机械硬盘,但是没有人能够真正做出一块假的机械硬盘来,因为机械硬盘的制造需要极为干净且无尘的环境才可以,一般的小作坊是达不到这种水平的。但是反观固态硬盘就不一定了。只要有人能够拿到Flash颗粒以及主控,能够有焊接的条件,理论上就有能力制造假的固态硬盘。甚至会有奸商拿大容量U盘冒充固态硬盘,这种行为不仅可耻,也让消费者防不胜防。

NAND Flash的讨论

Flash(非易失闪存)本身分为NAND和NOR两种,由于NAND Flash再写入和擦除速度上有着更为出色的性能,所以是目前市面上所有固态硬盘所用的存储介质,也就是我们常提到的存储颗粒。

SLC与MLC之间的结构差异

Flash的工作原理简单来说,就是将电流通过对Flash中的栅极充电放电,来实现数据的写入和擦除工作。目前NAND Flash的类型分为三大类:SLC(Single Level Cell)、MLC(Multi Level Cell)以及TLC(Triple Level Cell)。

大家可能看着这些名词会感到一头雾水,那么笔者下面做一个形容:SLC就像是我们住的平房,进出虽然方便,但是可以使用的面积却是有限的。MLC和TLC就相当于在占地面积不变的情况下再盖成多层楼房,这样虽然人员进出没有原来方便,但是可以容纳更多的人。SLC的优势就是读写速度快,寿命长,但是相对的成本较高且能够提供的容量有限;MLC相比SLC在容量上就有很大的优势,且成本更低,但是相对的寿命和读写寿命和速度就不如SLC;TLC是最近厂商开始使用的Flash 类型,优点就是成本非常低廉,但是缺点就是读写次数比较有限,且性能相对较差。

图:SLC与MLC之间的结构差异

目前市面上使用SLC的固态硬盘由于售价太高,所以已经绝迹,中高端的固态硬盘会使用MLC Flash,而入门级或者主流产品会使用TLC Flash。对于追求性能的用户来说,使用MLC Flash的固态硬盘就是绝对的首选,当然,在价格上要稍微贵一些。而采用TLC Flash的固态硬盘虽然在寿命上可能不及MLC,但是价格更加便宜。如果你在购买固态硬盘方面没有太多的预算,也可以选择TLC Flash 的产品,对于日常应用来说也是没有一点问题的。

聊一聊主控芯片

抛开Flash颗粒,影响固态硬盘性能的另一个关键因素就是主控芯片。无论是什么类型,NAND Flash的读写次数(寿命)都是有限的。如何在保证性能的情况下让Flash的寿命更长就是主控芯片需要做的事情。与机械硬盘不同的是,NAND Flash只能进行“写入”或者”擦除”的工作,而不能有“覆盖”的操作。固态硬盘的写入数据时可以以页(Page)的方式写入,一般最小单位为4KB。

但是擦除的时候却只能以块(Block)的单位擦除,一般一个块为128~256页。如果按照这个规则来执行的话,如果想要将一个4KB的数据覆盖掉固态硬盘中的一个数据的时候,就需要先将一个块的数据移除后将块擦除,然后连带4KB一起再写回到块中。即使我们按照1块=128页来算的话,我们写入4KB的数据就需要固态硬盘进行512KB的写入操作,这对于Flash的寿命来说绝对是个噩梦。

主控芯片就是通过一系列的算法,将每次写入动作的实际写入量将至最低,而我们将实际写入量与写入数据量的比值称作写入放大。刚才笔者举得例子,写入放大就高达128(倍),而理想中的写入放大就是1。目前市面上固态硬盘所使用的主控芯片能够将写入放大趋近于1。而Sandforce主控的压缩算法甚至可以让写入放大值小于1,这样就可以大大提高固态硬盘整体的寿命。就目前厂商的青睐以及市场的口碑上看,Sandforce SF-2281、Marvell 88SS9174、三星S4LN021X01等主控无论是在性能还是稳定性上都有着不错的表现,大家可以优先选择采用这些主控芯片组的固态硬盘。另外还有一些主控主打性价比,比如说JMicron JMF667H,虽然在性能上不如前面的那些顶级主控,但是胜在较低的售价,整体来说也是一种不错的选择。

图:主控对于固态硬盘的寿命以及性能起着决定性的作用

除此之外,其实主控芯片还有很多更为复杂的算法,笔者不再做详细的介绍。可见,主控芯片在固态硬盘中的作用有多么的重要了吧。

Flash颗粒的同步以及异步

或许有的朋友会有疑问,那就是在主控芯片组和闪存颗粒一样的情况下,为什么硬盘之间仍然会有很大的性能差异。笔者给出的答复就是:Flash颗粒本身有两种设计:同步设计以及异步设计。

简单来说,在ONFI2.0及之后的标准下,同步闪存通过同步时钟控制锁存信号,所以能够工作在更高的频率下,所以同步模式下的Flash颗粒吞吐量更大,性能更为出色。但是同步工作模式对于颗粒的品质要求更高,所以在售价上更为昂贵。另外,三星和东芝指定的ToggleDDR标准虽然使用的是异步设计,但是由于像DDR内存一样同时使用信号的上升沿和下降沿,所以性能仍然非常不错,这一点需要大家了解。

固态硬盘的品牌与研发优势

固态硬盘的主控芯片的品牌有很多,比如像Intel、Marvell、Sandforce、Indilinx、Samsung、JMicron、Toshiba、Phison等。而Flash颗粒的品牌也有很多:Samsung、Toshiba、Micron、Hynix、Intel等。如果大家把两种元器件的厂商进行配对的话,就会发现有些厂商既做主控芯片又做NAND Flash。笔者将这样的现象就成为品牌优势。

虽然固态硬盘的品牌众多,但是真正能够研发固态硬盘相关技术的厂商却寥寥无几,在此之上拥有独立生产固态硬盘零件的厂商更是少之又少。拥有自主研发以及生产能力的厂商本身就具有先天的优势,他们能够第一时间拥有最新的技术,并且可以在芯片售价或者其他方面拥有绝对的话语权。其中最具代表性的厂商应该就属Samsung(三星)了。

三星的固态硬盘全面采用自家的主控以及颗粒,这样在前期的制造成本,以及后期的技术支持以及产品维护上就拥有优势。三星固态硬盘目前也是市面上好评如潮的产品之一。而那些只能依靠购买其他厂商芯片以及主控的厂商,就只能依靠自身的品牌优势,但是这在固态硬盘的发展过程中就会逐渐处于被动的地位。

固态硬盘的寿命

我们再将目光转回到固态硬盘本身。刚才笔者说了这么多,都在强调固态硬盘本身寿命的有限性。固态硬盘发展到现在,不仅仅是为了性能提升而发展,更多地是在和使用寿命作斗争。这其中,有着矛盾的关系在里面。

我们已经知道,固态硬盘为了能够在售价上更为低廉而开始大量使用TLC Flash。TLC Flash的另一大劣势就是可擦写次数少,再加上不断更新的制程让NAND Flash的寿命进一步缩短。事实上,固态硬盘使用的NAND Flash的使用寿命是在慢慢缩短的,为了不让固态硬盘整体的寿命缩短,主控芯片就要在算法上进一步优化。

所以在主控同样的情况下,笔者建议大家尽可能选购MLC Flash的产品。而在使用同样类型的Flash 的情况下,主控越先进,整体的使用寿命就越长。当然对于消费者来说,付出的代价就是金钱,大家需要在价格和寿命之间做出自己的选择。

  • 关注微信