存储 频道

上手先入门!突破性产品SSD知识讲解

        【IT168 评论】SSD可以说是现在电脑上最突破性的产品了,让许多升级后依然觉得电脑很慢的朋友得到了不少解决。然而不少朋友对SSD的认知还是停留在HDD阶段。那么,SSD与传统的HDD到底有什么不同呢?

  SSD工作原理:

  SSD数据处理都要进行加电处理,加电的过程等同于HDD硬盘的数据写入操作,它被成为“Program(编程)”,断电的过程电位恢复,这相当于HDD硬盘的擦除数据,这里成为“Erase(擦除)”,完整的一次P/E循环就是NAND的写入循环,从这里也可以看出SSD要想写入数据就需要恢复默认电位,也就是以“擦除”为前提,这个特性决定了SSD的数据写入方式,也会带来其他的一系列问题。

  最直接的影响就是SSD寿命,因为P/E循环次数是有限的,浮栅极不像HDD的GMR(巨磁阻尼)效应那样是永久的,存在次数限制。

  SSD的闪存类型:

  SLC的每个存储单元内存储1个Bit,称为单阶存储单元(Single-Level Cell,SLC),速度最快,耐久度最高,价格也最高。主要用于服务器市场上。

  MLC的每个存储单元内存储2个Bit,因此叫多阶存储单元(Multi-Level Cell,MLC),速度比SLC慢,耐久度也比SLC低一些,当价格也降低了,更容易被消费级市场接受。

  TLC(三阶存储单元,Triple-LevelCell,TLC)的每个存储单元内可以存储3个Bit。由于每个单元可以存储更多的数据,TLC的成本进一步降低,但是随之而来的是写入速度和耐久度的再次降低。当然,现在市场上也有唯一一个采用TLC的SSD:三星的840,当然官方标注其P/E只有1K次,至于是否值得购入各位买家见仁见智。

  写入放大:

  在SSD写入过程中,SSD实际需要写入的数据量跟本机写入的数据量是不一致的,说得专业一点就是SSD写入过程中数据被无谓增加了的,这就是SSD的写入放大(Write Amplification)问题,二者存在一个比值叫做写入放大率(Write Amplification Factor,简称WAF)WAF=SSD实际写入的数据量/本机写入的数据。

  当前block有63个page写入了数据,还留下4KB空间,此时如果写入4KB数据,理论上正好填满整个block,但是SSD不能直接覆盖写入数据,其他63个page的数据必须先复制到内存中,然后将整个blokc清空,要写入的这个4KB数据会在内存中与前面的63个page中的数据混合到的一起,然后再重新写入到一个block中。

  按照这个情况,原本只是写入4KB的数据变成了256KB,足足为前者的64倍。当然现在的SSD许多在算法上做了不少优化,写入放大并不会向之前所举的例子这么夸张,而Sandforce在这方面也做得非常之好。

  AHCI很重要:

  AHCI支持NCQ,在开启AHCI之后SSD的各项性能大大提升。其中关闭AHCI时,多队列深度(QD)性能并没有提升(甚至下降),当开启后则大大不同。而通常日常应用都会在QD1-3之间浮动,那么开启AHCDI后对系统性能提升是有不少的帮助。

  4K对齐

  最初硬盘容量是被切分成每扇区512个字节来进行文件管理和存储的,而现在主流硬盘容量已经攀升到1TB甚至更高,再用老标准去管理现超大容量的硬盘不但显得繁琐,而且降低效率,因此将每个扇区512字节改成每个扇区4096个字节,就是所谓的“4K扇区”。而4K对齐能使SSD性能大大提升。

  如果知道自己的SSD是4K对齐?那么从AS SSD Benchmark上面可以显示出,如果第一个显示OK即为已开启AHCI(或Raid),第二个显示OK即为4K对齐。以上图为例我们影驰的Thunder GT128 Pro已经4K对齐且系统开启AHCI了。

  其实4K对齐非常简单,只需要拿WINDOWS7以上的系统对硬盘进行格式化就可以了。

  本次简单先为大家讲解一些SSD基础原理的小知识,那么,我们下次将会为大家带来其他的入门知识。购买一款SSD很容易,如何用好还是需要注意不少细节。那么我们下期再见!

  上次我们已经为大家介绍了一些SSD的基础小知识,相信大家已经了解了不少,现在我们再为大家介绍一些SSD的小基础知识。

  闪存的基本组成:

  闪存基本由Page、Block、Plane组成,而page是最基本的组成,大小一般是4KB(现在也有不少闪存的Page是8KB的),每个block通常包含64个page,容量是256KB,也有128个page的,容量就是512KB。接着,多个block(区块)再组成plane,而plane就是就是闪存中的一颗核心了,而我们看到的闪存片其实是多颗die封装在一起的,一般是2-8颗,而整个SSD上则会由多片闪存组成。

  SSD数据操作:

  在系统中,数据写入是以page为单位的,SSD写入新数据擦除原有的数据,但是擦除过程只能以block为单位,要清除就得擦除整个block单元,哪怕只写入了一个page的文件。

  那么,实际我们只有4B的数据看似只需要写入4B的数据,在HDD里的确只需要覆盖写入4B数据,但是在SSD上则不同,必须得先重新写入8B数据,清空了BLOCK再把这8B数据重新COPY写入一次。实际则是写入了16B数据。

  SSD的OP空间:

  OP预留空间(Over-provisioning)是指SSD保留一部分闪存空间留作他用,这部分空间用户不可操作,容量大小一般是由主控决定的。除了第一级OP空间之外,多数主控还支持二级OP空间,具体容量和配置由厂商自己决定,所以128GB闪存作出的SSD有128GB、120GB乃至100GB之分,也就是说OP空间分别是0、7%、28%,其他容量依此类推。

  简单来说,OP空间可以简单理解为SSD预留的交换空间,从前面的介绍来看,OP空间在GC垃圾回收、WL耗损平衡、减少写入放大等多个方面都有作用。

  Trim指令:

  TRIM是基于SATA控制器的一个指令,一旦有文件删除或者分区格式化,操作系统就会发TRIM指令给SSD主控告诉它某处的数据已经删除了,SSD因而知道那些数据是能动那些不能动的,之后就可以进行清空操作以恢复性能了。当然,清空操作并不是每个主控都会立即进行的。

  而有了Trim指令后,因为主控已经非常清楚那些数据是没有用的,那么在GC效率大大提高。并且在写入数据不会“撞板”,还能有效减少写入放大,大大提高SSD的寿命。而在Windows7以上的系统都支持Trim指令了,这个功能也得到了普及。

  相信通过2期解说很多朋友已经了解到SSD许多细节与工作原理,由于SSD工作原理与HDD大不一样,相信这两期解说帮助了不少新手入门的朋友!我们有机会再见!

0
相关文章