一,固态硬盘(SSD)的优势
固态硬盘(SSD)技术最近受到了许多关注–而且这有很合理的原因。它展示了这些年在主存储器技术上的首次重大进步。升级为SSD在性能上不只是较小的提升。SSD将用其具有革命性的随机访问速度、卓越的多任务处理能力、杰出的耐用性和可靠性来改变您的电脑使用体验。让我们来详细了解让SSD与众不同的秘密及其成为最重要的电脑更新工具的原因。
硬盘驱动器(HDD)的运行主要靠机械驱动头,它必须在快速旋转的磁盘上移动至访问位置。如果您见过HDD的内部构造,就会觉得它很像高科技的电唱机。换句话说,固态硬盘(SSD)没有移动部件,因而它可以同样的快速度和准确性访问驱动器的任何位置。这个区别在下面讨论的每个优势中都会涉及。
SSD性能显著优于传统硬盘(HDD)的其中一个原因是其超快的数据访问速度(发出请求和完成读写运行之间的延迟)。SSD的随机数据访问时间为0.1ms或更短,而主流2.5”HDD所用的时间约为10~12ms,甚至更长。就像您在下面对照表中所看到的,SSD的数据访问速度要比HDD快100倍,包括数据搜索时间和延迟。此外,HDD深受磁盘碎片的影响,而SSD则拥有始终如一的卓越性能,因为SSD用集成电路代替了物理旋转磁盘,而旋转磁盘必须等待主轴电机、磁头和磁头臂来找到数据位置,而SSD则可以用闪电般的速度轻松访问任何位置。
让我们用一个比喻继续了解SSD。假设您正在做蛋糕,并且需要收集所有配料。您有一个大房子和一个与之相匹配的厨房。面粉放在房间另一端的橱柜里,鸡蛋和牛奶在冰箱里,然而您把糖忘在了楼下的车里。将所有必需材料收集全可能花费相当长时间,因为您必须亲自到各个位置获取材料,然后再带到准备区域。想象一下,现在通过某种魔术,可以将所有东西立刻放在您的面前,而您则无需移动。那将节省多少时间呢?这个简单的比喻有助于解释SSD优于HDD的其中一个重要优势。无需等待机械驱动头转至其它位置,就像上面比喻中提到的您无需移动一样。结果会怎样?您电脑的响应性能将得到显著提升。
此外,SSD在延迟方面拥有显著的优势。想象一下您在早晨没喝咖啡和喝过咖啡后的状态和效率。HDD的速度感觉就像您喝咖啡前的状态,而SSD则代表您喝过几杯咖啡后的感受。此项衡量很重要,因为准备时间和实际查找数据的时间将影响用户的使用体验。
多任务处理能力和卓越速度。刚刚提到卓越的数据访问速度,让电脑在正常至高负荷的工作量下都可保持卓越性能。卓越的数据访问性能不会造成性能损失,也就是说您可同时打开多个应用程序而获得的延迟较少。SSD用户还可体验其性能在开机、关机、应用程序下载、网页浏览、应用程序安装和文件复制方面的显著提升。值得您高兴的是,对话框和旋转沙漏的出现没有以前那么频繁,这样就缩短了等待时间。此外,您还可快速开启和关闭电脑,无需延迟那么长时间,让您体验“休眠”和 “唤醒”的卓越状态,没有两者之间“昏昏沉沉”的状态了。 刚刚谈到的性能优势得益于SSD连续读写和随机读写的容量。超快的连续读写速度可以快速复制文件,且在处理大型文件和 视频时速度比较流畅。然而,它的随机性能,即每秒输入输出(IOPS)的测量值,也许是衡量SSD性能的最重要标准。 4K随机 写入占据了大部分的存储活动,是衡量写入小块随机数据时驱动器执行情况的标准(如,更改Word中的小部分内容然后保存)。占用用户大部分时间来处理的任务不是复制大型文件或安装应用程序,而是执行多任务(如电子邮件、网上冲浪、听音乐等)以及处理多种工作和媒体文件,这些任务受到IOPS的影响。SSD在IOPS方面的提升比传统HDD要高达200倍(结果可能会因HDD型号而异)。因此,三星在设计SSD产品线时将重心放在了随机读写性能上,为用户提供行业领先的高达100,000 IOPS的随机读写性能。您可以在现实工作中亲身体验并受益于这样的性能。
此外,无论存储多少数据,SSD都将保持始终如一的卓越性能。另一方面,当HDD容量已满或包含大量零散数据时,其性能会减弱50%。这是磁盘物理性的结果,即在驱动器使用初期时数据连续写入至磁盘片的外部区域(那里有更多可写入区域)。时间长了以后,外部区域已写满数据,驱动器的可写入区域逐渐变小,可存储的数据也越来越少。因此,如果需要更多存储空间,则驱动器需运动至下一个可写入扇区。此外,随着扩展使用,数据变得支离破碎,促使机械驱动头在磁盘片的内部和外部区域移动,进而影响驱动器的性能。 如果HDD的额定最大连续读写性能为160MB/s ,这样的性能只保证限于HDD的使用初期及整洁的状态下,经过一段时间使用后其性能 可能会下降至70-80MB/s。
您认为电唱机如何抵御健康方面的打击? 拾音臂和唱针是否能承受很大的外力?如果您太年轻不了解电唱机, 则可以想想CD 播放器,它被撞击多次后会怎样? 现在想想您的数码MP3 播放器。将这些设备进行比较,您对哪个设备最信得过并会在旅途中使用?无论何时,只要涉及到机械部件的复杂性,则发生部件损坏的风险就会增加。某些部件随着时间自然磨损,而其他部件则完全不能承受任何滥用。SSD可承受的振动(20G) 是HDD (0.5G)的40倍,可承受的冲击高达1500G (传统HDD可承受的冲击不超过350Gs)。这意味着即使SSD经历过几次震动,您的珍贵数据也不会丢失,您大可放心。它还意味着您可以在颠簸的火车上、飞机上观看视频,而无需担心跳帧。您可以为此欢呼雀跃了,因为您的笔记本电脑更便于旅行使用了。
记得盒式磁带吗? 如果不记得,那您很幸运。 与数码类产品(CD)相比,它们更容易出现故障。他们的物理磁带机制 在卡带、缠带和断带方面是出了名的,并且找歌的过程也是相当冗长而乏味的。下面来说一说CD,该数码类产品相比 盒式磁带的优势不仅表现在可靠性(不再有卡带或断带发生)上,还表现在可用性上。这与HDD和SSD的情况很类似。 无机械部件意味着更少的部件磨损和故障。
想象一下,您做任何事情都必须以最快的速度用尽全力才能完成。HDD的运行就是这样筋疲力尽。HDD在执行任何任务时,都必须加速旋转磁盘片至最大速度,在数据处理过程中消耗了大量能量。不仅如此,为了查找正确数据,它的机械读 取驱动头必须持续旋转至相应位置。而SSD摆脱了机械硬件的束缚,可以随意访问任何数据,且功耗较少。实际上, 三星840系列SSD在运行时的平均功率仅为0.127瓦,而HDD运行时的平均功率则为1.75瓦。此外,由于SSD能以超快速度完成任务,所以其处于闲置状态的时间比HDD要多(与HDD闲置状态的0.8瓦功率相比,840系列的功率仅为0.046瓦),进而SDD电池的使用寿命得到显著延长,也意味着当您外出使用电脑时,会减少寻找电源插座的时间。
将HDD更新为SSD可以让您的电脑运行更快,更耐用、性能更可靠。实际上,没有任何一个电脑更新工具可以像SSD这样为用户带来诸多益处。让您的电脑脱离那个脆弱、陈旧的机械存储器的限制,让您成为一个更快乐而高效的电脑用户。
二,硬盘基础知识---SATA,RAID
SATA是接口标准的名称,它可以使存储设备与主系统相连接,在当前情况下,它可以使SSD与电脑或笔记本相连接。它还可以促进所有存储功能的运行,从基础的输入/输出(或读取/写入)需求到先进的AHCI功能, 如底层命令队列(NCQ)、热插拔、电源管理和RAID。SATA已历经几次修订,每次更新换代,其性能都会得到显著提升。电脑配备SATA界面后,会直接影响SSD,使其性能最大化。鉴于此,了解每代SATA间的差异及其能为现代SSD提供多大的存储量至关紧要。
SATA I, 于2003年发行,又名SATA 1.5Gb/s,是第一代SATA的规格。顾名思义,它的传输速度可达1.5Gb/s。该早期版本不支持如原生命令队列等现代存储功能。最高传输速度约为150MB/s,比被它替换的最高速度为133MB/s 的PATA界面(又名UDMA 133)略胜一筹。
SATA 2.0,于2004年发行,又名SATA 3Gb/s,是第二代SATA的规格。它的传输速度可达300MB/s。该版本还引入原生命令队列(NCQ)功能,可以有效提升多任务处理性能。SATA 2.0 能处理市面上的最佳硬盘,但它无法承受铺天盖地而来的Flash设备(SSD)。在2005年以及此后购买的电脑可能会支持SATA 2.0。
SATA 3.0,于2009年发行,又名SATA 6Gb/s,是第三代SATA的规格。考虑到成本,它的传输速度可达600MB/s。除速度提升外,该版本还引入NCQ管理和增强电源管理功能,并且也支持列队TRIM(允许TRIM命令与输入/输出请求一同排列,其他早期版本都无法执行该操作)。现在随着SSD技术的不断发展,它已经可以支持SSD的超高速度,甚至已超越SSD的速度。多数现代SSD都支持该标准,但他们也向后兼容先前的标准。
mSATA以SATA 3.1 为基础而制,旨在应对笔记本电脑不断缩小的趋势。小巧的笔记本电脑需要使用更小的SSD,而SSD更小就要求连接器更小。配备mSATA界面的笔记本正在成为潮流,但其总体市场份额仍然相对较小。它的最高传输速度与标准SATA 3.0界面速度相当。
SATA Express于2013年最终确定, 由于采用PCI Express(PCIe)接口,其速度将超越SATA 6Gb/s,界面速度可能会提升到8Gb/s 或 16Gb/s(未来的速度可能会更高)。未来的主板将会同时提供高速版SATA及传统SATA设备的插槽。此外,SATA Express接口也能向后兼容标准SATA 3.0。
现在市场上多数的SSD都仅适用于SATA 6Gb/s (SATA 3.x),然而许多消费者使用的都是较旧的机型,并不支持最新版SATA。 幸运的是,SSD能够向后兼容旧版SATA,但它受到主机最大带宽的制约(如将SATA 6Gb/s SSD 连接到SATA 3Gb/s 的电脑上,尽管硬盘性能可达500MB/s,但最高迁移速度不会超过300MB/s)。在升级为SSD之前,了解当前电脑硬盘存储量很重要,这是因为如果迁移速度与其宣传的速率不相符,这样做可以尽量避免随之而来的失望情绪。
三星了解到许多人在家中或工作环境中仍在使用支持SATA 2.0的旧式电脑,这部分用户也能在升级为SSD之后受益颇多。三星在设计840系列 SSD的过程中,优化了其在所有新旧SATA界面的性能,如下图所示,同时连接到SATA 3Gb/s接口时,840系列远胜过830系列(SATA 6Gb/s) 和470系列(SATA 3Gb/s) SSD。
事实上,系统设置相同时,840系列SSD能轻松战胜市面上任何一种SATA 3Gb/s SSD。因此,购买840系列SSD让您一劳永逸,现在升级即可畅享SATA 3Gb/s系统的多种益处,同时,若升级到SATA 6Gb/s系统,SSD的性能会更加卓越。专为旧版SATA设计的驱动会受制于老化硬件,不能充分利用SATA界面的可用带宽。
说到电脑升级,市场上广泛使用的是SATA扩展卡,它保证能添加和/或升级现有系统中的SATA接口。然而他们受制于成本,也不能提供拥有其所需吞吐量的现代SSD,以使其性能最大化。因此,三星推荐您将840 系列SSD与本地 SATA 3.0 (6GB/s)接口相连接,挖掘其全部潜能。要定位本地SATA 3.0 (6Gbp/s) 接口相对简单,但需要注意细节。多数主板上都有SATA 3.0 和 SATA 2.0 接口,而且通常并排在一起,虽然他们一般都有颜色编码,但并没有行业标准定义哪种颜色代表哪版SATA。因此,要仔细阅读标签,以确定它是哪个接口。
AHCI,先进主机控制界面,是Intel出品的开放界面,可以使用先进SATA功能(如NCQ、热插拔、电源管理)。基本上,它为各种厂商的存储设备与主系统的连接都定义了一种标准方法,以便软件工程师可以利用该特殊功能。为畅享三星840或840 PRO 系列SSD的卓越性能,您需要通过BISO启动系统的AHCI模式。
如果系统中的AHCI 配置不当,则SSD的随机读取/写入性能会受制于队列深度1(QD1),严重限制传统硬盘驱动(HDD)在多任务处理时的性能提升(80-90%)。由于最新版Windows系统,包括Windows Vista及Windows 7系统,内部装有标准AHCI 驱动,所以无需您再手动安装。但某些旧版系统即使配有SATA 3 (6Gb/s)界面,也并不支持AHCI。三星Magician软件能够帮您确定电脑是否支持AHCI,和/或是否已启动AHCI。
多数现代电脑系统都支持AHCI模式并将其设置为默认启动。但如果由于某些原因您的系统并没有启动AHCI,您可以利用电脑中的BISO进行手动启动。启动过程会根据各系统BIOS版本而略有不同,但基本步骤相同:重启电脑,点击适当命令键(通常是DELETE键、F2、F20)进入BISO;然后找到“整合周边设置”或“存储配置”部分,把“配置SATA为”或“PCH SATA 控制模式”更改为“AHCI”。您可以查看电脑用户手册,用以指导特定机型的操作步骤。
理想情况下,在安装操作系统前就应通过BIOS启动AHCI模式。在较新版系统中,通常是这种情况。如果不是较新版系统,且在初始配置并不支持AHCI的Windows系统内,通过BIOS启动AHCI,那么电脑一般不会出现稳定问题。Windows XP系统中并不包含本地AHCI驱动,要启动AHCI模式更为复杂,因为用户需要为操作系统定位并安装合适的AHCI驱动。一般而言,电脑芯片集供应商(如Intel, AMD, nVIDIA) 会为Windows XP系统用户维修其生产的AHCI驱动。您最好去主板供应商或电脑供应商的网站咨询一下。
AHCI 模式展现了三星SSD卓越的能耗管理性能,因为若没有AHCI,SSD不能连接到主系统,并利用其先进的电源管理功能,如主机启动式电源管理(HIPM)和设备启动式电源管理(DIPM)。维持实体SATA界面(名为PHY)需要大量能耗, HIPM 及DIPM 可以使PHY 进入低能耗模式。经过一段预定休止状态后, 主机或设备之一会向PHY发送信号,让其进入低能耗状态。三星840及840 PRO系列积极利用DIPM, 使PHY进入低能耗模式,轻松赢得业界待机能耗最低的荣誉。 若没有HIPM 或 DIPM,能耗会急剧增长, 如下图所示, “C”硬盘并未使用该电源管理功能。一般说来,在笔记本系统中,该电源管理功能是默认启动项。而不受电池困扰的台式机,通常是在关闭该类功能的条件下运行——增加驱动能耗,以获取更卓越的性能。
AHCI 也会对三星SSD达到其最大随机QD32性能有所影响,因为AHCI可以运行原生命令队列(NCQ)功能。由于SSD速度超快,存储问题已不再是电脑系统的瓶颈。当主机出现延迟时,传统的HDD通常不会理睬,但NCQ能帮助SSD处理该情况。 此外,它还可以使SSD控制器处理平行命令,有效提升性能,减少延迟。
AHCI还可以用于启动“热插拔”,一种即插即用功能,无需关闭电脑即可在系统中插入或移除SSD。这对于以SSD为辅助驱动的多驱动系统来说非常便捷。无需退出所有运行的程序并关闭电脑,即可插入全新的辅助SSD来补充或替代当前使用的驱动,轻松省却所有不必要的步骤。
如果您使用的系统不支持AHCI,或您未能将其正常启动,系统会进入“IDE仿真”模式,它是一种兼容模式,可以模拟原来的 “整合驱动电子”ATA界面的功能。如果SSD不能发挥其所有潜在性能,或不能利用最新版SATA的所有功能,它也能在系统中正常运行。
要获取三星SSD的全部性能,必须开启AHCI。当您认为AHCI性能比预期低时,首先要查看AHCI是否配置得当。三星最新的Magician4.0软件能有助于确定是否支持AHCI和/或是否已启动。一旦设定好,AHCI能保证三星SSD拥有卓越性能,能耗超低,使用便利。
如今的SSD可以把当前SATA3.0界面的潜在性能发挥到极致。 超越标准单一驱动SATA配置性能的方法是,利用SATA的本地RAID支持功能将2个以上的硬盘组合到一起。
RAID,独立/廉价磁盘冗余阵列,是一种存储系统,其中多个驱动(至少2个)组合成一个逻辑单元。它可以提升性能、可靠性,或兼顾两者。驱动中的数据以不同的RAID阵列方式进行分布(称为RAID级别)。 最常见的RAID级别是RAID 0 和 RAID 1。随着Intel推出7系列芯片集以及最新的Intel快速存储技术(IRST) 驱动( 11.0 或之后),如今Intel已全力支持RAID 0 阵列的SSD技术,包括TRIM维护指令。过去,缺少适合RAID 0 的TRIM是挫败的源头,因为起初通过RAID阵列得以改善的性能,又由于缺少TRIM而导致的性能缺陷从而有所减缓。因此,随着TRIM增加了RAID 0支持,了解RAID技术以及选用它的人群与选择原因是非常有用的。
RAID 0,至少需要两个驱动,首要目的是提升速度,将分布于各个可用驱动的平行文件分成组块或条状,这样即可读取原始平行文件中较小的部分。该平行性使RAID 0可以显著提升SSD的性能。但若某个驱动出现故障,所有数据(已碎成组块)都会损毁;序列中添加的驱动数量越多,驱动损害的可能性也会随之增长。
RAID 1, 也至少需要两个驱动,可以把相同的数据写入多个驱动,性能与单一SSD相似。其目的是冗余配置。 正因为如此,只要至少一个驱动仍在运行,阵列就会持续工作。其存储量受制于阵列中最小驱动的存储量。它的首要目标是当硬盘故障时缩短故障时间。然而,虽然这一解决方案拥有冗余配置,但并不能代替其他较好的备份方案,因为它不能防止数据损坏和安全漏洞。
任何台式电脑用户都能相对轻松地在系统中运行RAID ,但只有一部分终端用户能够真正达到物有所值,从中受益。如上所述,每个操作的目的都有所不同。
RAID 0 拥有不可思议的读取和写入速度,适合需迅速修改或写入大型文件的个人,如经常使用Adobe Photoshop的平面设计师或使用Avid编辑数码视频文件的摄像师。一些游戏迷也很喜欢RAID带来的性能优势。但因为它缺少冗余配置,RAID 0 并不适合处理关键任务,需要添加一个强劲的后备系统。
RAID 1可以把相同数据写入两个或两个以上的驱动,适合处理关键任务,如不能经历严重故障的小型服务器。其速度与安装单个驱动时的速度相当,所以也就没有性能优势或劣势之说。唯一的益处是冗余配置,当某个SSD发生故障时,它让其能较为轻松地启动并运行。如上所述,虽然RAID 拥有冗余配置,但它依旧不是最佳的备份之选,因为它不能防止用户失误(如不小心删除文件)和数据损坏。
虽然看上去都一样,但不是所有NAND的构造都相同:SLC、2 bit MLC、3 bit MLC (也称为TLC)、同步、异步、ONFI 1.0、ONFI 2.0、Toggle 1.0、Toggle 2.0。对于外行来说,这些都是听不懂的术语。然而,随着SSD市场的日益复杂化,您也难以做出购买决策了。本文将帮您辨别各种NAND技术的区别,最终让您成为一名精明的SSD购买者。
NAND闪存技术是将数据存储在一组由浮栅晶体管制成的存储单元内,它通过一个氧化层绝缘,形成两道栅,分别是控制栅(CG,顶部)和浮动栅(FG,底部)。当对朝着加压方向连接的任意实体施加电压时,电子可以在控制栅和信道之间自由流动(见右表)。若要对一个存储单元进行编程,需向控制栅施加电压,吸引电子向上移动。被绝缘层电气绝缘的浮动栅捕获途径它向控制栅移动的电子。在正常工作条件下,它们每次可在此处停留多达几年。若要擦除一个存储单元,需向相反方向施加电压(即向信道施加),在此过程中,控制栅向下滑动,把电子引离浮动栅,使其进入信道。若要检测存储单元内的状态, 需向控制栅施加一个高电压。如果浮动栅持有电荷(电子被捕获),这个单元的阀值电压就会改变,影响控制栅发出的信号,因为该信号要通过此处进入信道。该单元的状态取决于完成这个回路所需的电流量。随着时间的推移,所有的这些电路活动会大大磨损该单元的物理结构。因此,每个单元的使用寿命是有限的,可以根据程序/擦除(P/E)周期来测定,还同时受到工艺尺寸(生产工艺)和单元内存储的位元数的影响。由于NAND存储的复杂性,还需要一些额外的管理过程,包括坏区管理、均衡磨损、垃圾回收(GC)、错误校正码 (ECC),以上这些都是设备固件通过SSD控制器进行管理。
应行业需求和专业知识的发展,NAND技术也在不断进步。简单来说,NAND闪存中存储的数据是以电荷的方式存储在每个NAND存储单元内的。单层式存储(SLC)NAND与多层式存储(MLC)NAND的区别在于每个 NAND存储单元一次所能储存的位元数。SLC NAND的每个存储单元仅能储存1bit数据。顾名思义,2 bit MLC NAND的每个存储单元上可储存2 bit数据,3 bit MLC NAND的每个存储单元上储存3 bit数据。
一个存储单元上一次储存的位数越多,该单元拥有的容量就越大,这样就可以节省制造成本,提高NAND的生产量——这种现象叫做“位元增长率”。近几年来,这种现象使得NAND技术不断拓展高容量存储器的使用范围。NAND技术最先应用到了容量适中的外部存储设备上(如USB存储设备)。随着该技术的不断成熟,它被应用到了许多如数码相机、MP3播放器和手机等数码设备中。它强大和持续的性能由此得到验证,使其进入了消费者, 以及最终进入了企业固态存储设备领域(SSDs)。NAND的普及和实用性的扩展是半导体技术发展的直接成果,它使得工程师能够把更多位元压缩到每个存储单元内。 容量就从百万位(MBs)激增到十亿位(GBs),因为生产商能够以更少的资金投入生产出相同NAND 位元容量的存储设备。这样一个需求增长、价格降低的自我强化型循环系统使得生产者无需增加供给成本,就能不断满足行业需求——即同时为消费者和设备制造商谋福利。
当然,向每个存储单元加入更多位的数据会使得状态难以辨别,并且可靠性、耐用性和性能都会降低。事实上,要确定 一个容器是满还是空(SLC)比确定它是四分之一满、半满、四之三满还是全满(MLC)要简单得多。这就是为什么3 bit MLC NAND需要比SLC花费高达4倍的时间进行写入,2.5倍的时间进行读取。每个单元存储更多位数据的另一个副作用就是它会加速NAND存储单元的性能退化。NAND存储单元的状态是由浮动栅内电子的数量决定的。在浮动栅上捕获电子的氧化层会随着每次的编程和擦除操作而受到磨损。当氧化层不断被磨损耗尽,电子被捕获,就会影响到该存储单元的整体电学性能,必然地,也会影响到后续的编程和擦除操作。由于氧化层被削弱,有时电荷会逸出浮动栅。对于SLC NAND来说,这不是什么大问题,因为它只有两种状态需要辨别;但对于3 bit MLC NAND来说,这就是个很严重的问题,因为它有八种状态需要辨别,而每种状态间的差别却很微小——仅几个电子的差异就能划分两种不同的状态。而更为复杂的情况是,随着工艺尺寸的每一次进步,氧化层变得越来越小——因为我们压缩了存储单元的尺寸,氧化层会变得更薄。而更薄的氧化层会磨损得更快,这就意味着存储单元的使用寿命降低。
生产商已经做出巨大努力来应对NAND技术的局限性。复杂的“基数排序”算法让像三星这样处于第一级的生产商只选择 最优质的NAND芯片用于SSD设备。先进的均衡磨损码可以确保NAND的存储单元受到均匀的磨损(防止早期驱动故障,维持性能稳定),而垃圾回收算法会预先准备好额外的存储空间(提升写入性能)。升级的错误校正码(ECC)能够检测并恢复由个别的NAND存储单元的自然磨损引起的位级错误。而预留空间可以支持这些维护性功能,确保SSD控制器总是有可用的置换空间来完成它的任务。作为一种预防措施,一些销售商选择在出厂前预置一定数量的强制性预留空间,也可以手动为更进一步提升性能预留出额外的空间(如在较高工作负荷的情况下)。
以上这些先进技术,这种提高存储密度的现代化趋势也有它方便的益处——容量更大、性能更强,因为增加SSD中的NAND芯片数量可以获得更多并行化处理,与SLC相比,有助于克服MLC NAND固有的程序时间缓慢的问题(同样的现象也解释了为什么各种基于NAND技术的设备中,相同或类似的NAND闪存会产生如此不同的性能、使用寿命和可靠性)。额外的剩余空间还有更多好处,可为控制器提供未用空间作为一种非正式的预留空间使用。 SSD经销商在NAND技术领域取得的所有进步降低了硬盘成本,满足了不断增长的用户群体对性能、耐用性和可靠性的需求。
NAND技术的上述成就以及其他后续成果将让历史重演。由于更加优惠的价格、不断增加的容量,整个信息技术和消费性电子产品行业获益匪浅,包括MP3播放器、智能手机、储存卡、USB闪存盘、汽车导航系统及其他数字时代的设备。现在是时候让个人电脑放弃传统的硬盘驱动(HDD)技术,迅速转向SSD,也可尽享同样益处。上面讨论的“位元增长率”的现象正在推动整个行业朝着更广的3 bit MLC NAND发展。事实上,我们可能很快会看到基于3 bit MLC NAND技术的产品开始占据SSD行业。 而在现实情况中,2 bit MLC NAND的性能和使用寿命特征都已大大超越了大多数运算任务的需求 。最近,甚至更少有应用环境对SLC的耐用性和可靠性有要求。因此,当我们向更高密度的存储技术发展时,现实的利益值得我们必须在性能和耐用性之间做出权衡。现今的NAND存储器的使用寿命远远比它所运行的设备要长。经销商选择牺牲一点点多余的使用寿命和性能来换取可观的成本效益,为更广泛的用户群体带来NAND技术及其许多超越了传统存储技术的优势。三星迈出了第一步,把3 bit MLC NAND引进了SSD市场,即840系列SSD,它拥有全面整合的设计方法、专利的控制器结构和固件算法,以及优质的NAND。如上所述,增加SSD的容量可增强其性能和耐用性,所以使用这种技术的SSD只有当存储密度增加时才能得到提升改善。因此,3 bit MLC NAND可能是下一个个人存储革命的开端。
所有的电子设备的核心都有一个控制信号原理,协调各种指令执行的速度,就像一名管理员使所有事物都同步运行。在过去,NAND设备使用过两种控制信号:“RE信号”(用于读取项目)和“WE”(用于写入项目)。然而,随着NAND的发展以及速度的不断提高,有必要引入一种新信号,叫做“频闪”。它已经应用到了所有的DDR NAND中,帮助控制器高速处理读取和写入数据。当收到来自主机的读取或写入项目后,它就启动——想象一只秒表,它可根据需求开始和停止。根据当前的任务,频闪信号的作用稍有不同。当写入项目时,它直接受到控制器的管理;而进行项目读取时,它更多地起到一个辅助的作用。 同步逻辑操作通过ONFI 2.0接口引入了ONFI NAND规格参数中。同步设备就像是一座“自由运转”的时钟,也就是说,只要这些设备能获得动力,时钟就将继续运转下去——就像一座标准的挂钟。这座时钟就是频闪的参照。现今的ONFI NAND应用避免了再次使用时钟而仅使用频闪。每一代Toggle NAND都是同步的。
DDR NAND的出现是提升NAND速度的一个重要突破。传统的NAND,也称为“单倍数据速率(SDR)”NAND,仅能在其控制信 号的“一端”进行数据处理。ONFI 1.0 和三星、东芝的第一代Toggle NAND都属于这一类。为加以说明,下图列举了一项读取操作。
相比之下,当今的NAND可以在其控制信息(或闪频,众所周知)的“两端”同时处理数据。这个原理与DDR RAM的工作原理相似(DDR表示“双倍数据速率”)。
Toggle DDR NAND的工作原理和上图的DDR NAND大致一样。协调NAND操作的频闪出现有节奏地波峰和波谷,Toggle DDR NAND能够在波峰和波谷上处理数据。同时在闪频的“两端”处理数据可明显提升速度和效率。 不同代的Toggle DDR和ONFI NAND的区别在于其自身闪频(同步ONFI NAND中的时钟)的运行速度(完成一个运行周期的速率)。
在NAND闪存行业,制造商对闪存技术的应用各有不同。三星和东芝生产Toggle NAND,而其他制造商开发的是ONFI NAND。 每一代NAND,无论是Toggle还是ONFI,它们的区别在于传输速度:ONFI 1.0 以及三星和东芝的第一代Toggle NAND(均为异步硬盘)的传输速度都能达到50MB/s,ONFI 2.x(同步)和 Toggle 1.0 NAND (异步)的传输速度分别为200MB/s和133MB/s, ONFI 3.0 和Toggle 2.0 (均为异步)的传输速度可达400MB/s。当今最新的NAND芯片不是Toggle 2.0 就是ONFI 3.x。
那为何要选择一个标准而不是其他?最新的ONFI NAND芯片,由于采用了同步、异步转换的方法,同时具备了同步逻辑和异步逻辑的反向兼容性。由于Toggle NAND总是处于异步,Toggle 2.0 NAND的复杂性降低了,反过来,当需要将芯片的尺寸设计得更小,并更快把下一代产品投入市场时,它的灵活性就得到了提升。此外,由于三星和东芝作为NAND行业市场领军者,Toggle NAND已成为该市场的主要标准。
各代中的个体NAND芯片的速度差别如何影像SSD的整体速度?这在实际操作中对您又有什么影响? 事实上,无论采用的是同步还是异步NAND,对SSD的性能都没有影响,真正能影响到性能的是NAND的产 品代(如SDR/ONFI 1.0、Toggle 1.0/ONFI 2.0等)。因此,当提及NAND的类型时,仅仅以“同步”或者 “异步”来指代产品的性能是不准确的。
4,关于SSD
SSD外表简约,内部构造却复杂精密。 为确保SSD保持最佳工作状态,SSD控制器必须对复杂的性能和使用寿命的优化算法进行有效管理。为了便于理解为何这些算法的设计和执行都对SSD体验。至关重要,了解NAND技术的局限性及其背后的技术知识十分必要。
控制器采用维护算法可以让您的SSD保持干净、整洁,在了解多种维护算法之前,我们需要了解一些关于NAND芯片读写数据的基本知识。数据的存储单位被称为“页” ,这个存储单位大小有限,且只有其内存是空的时候才能写入数据。因此,为了能在已包含数据的页中写入数据,必须要先进行擦除操作。擦除操作十分简单,但如果数据写入页组合成为“区块”,则即使数据以页为单位写入,只能以区块为单位进行擦除。为了便于理解页和区块的概念,我们用个比喻来说明。小时候很多人都玩过神奇画板,您可以一直在屏幕上画画直到把屏幕画满—想象画板上的每个图案都是一个独立的“页”,而所有的图案则集合成为“区块”,—但是当您想要擦除一些东西时,您不得不摇一摇神奇画板,所有内容都会被擦除。同理可推,每个NAND芯片中都有许多块神奇画板。此局限性显然对控制器管理存储数据的NAND闪存有着很大的影响。
了解以上所提到的局限性以后,我们来看一下如果想重新使用已经含有旧数据的页会怎样。如果SSD想重新使用现有的失效页,在擦除整个区块之前要将区块内其他(有效的)页复制到一个空的NAND单元。而SSD需要将全部的有效数据,包括旧数据和新数据重新写入存储单元。这个过程非常的复杂、耗时。这样,SSD控制器通过神奇的闪存转换层(FTL)避免直接的“重写”已有数据,闪存转换层是一个特别机制,有助于协调NAND闪存和主系统间的问题。利用FTL,SSD执行一个从逻辑到物理的映射,此映射系统称为逻辑区块寻址(LBA)。物理的NAND写入不要求直接与主系统要求的空间相对应。无需进行所有不必要的复制,和重新写入旧数据,SSD将新数据写入下一个空闲的页,并简单地将旧数据标记为“无效”。
实际上,刚刚提到的技术只有延迟是不可避免的—在某些时候无论SSD是否执行上面所说的复杂的重写过程,它都将有一些性能缺陷。让我们想象一下当驱动器容量已满时会怎样。随着SSD被写入越来越多的数据,可写入的空闲区块自然就会变少。然后SSD被迫主动地合并有效数据,并为了写入新的数据和执行维护提供空余的区块。移动和合并数据的过程需要花费时间,这被视为其性能下降,并要求有空闲空间才能完成数据的移动和合并。这也是为什么会有预留空间,它保证有一定的空闲空间供垃圾回收和维护活动使用,让垃圾回收算法通过数据合并来提前提供空闲空间—这对SSD的性能至关重要。
我们已经对SSD需要提供空闲区块保证可靠性的原因有一些了解,现在来了解一种SSD控制器准备空闲区块的方式吧。“垃圾回收”,虽然名称有一点误导,因为它实际是回收数据,而不是垃圾。但概念简单易懂。
从本质上讲,由于我们上面所讨论的细微差别,SSD会注重如何组织有效数据。它喜欢把数据整洁的放在一起,让其使用起来更高效,因为这种数据摆放方式比较容易找到空闲空间来写入。不幸的是,日常使用很难维持如此整洁,因为操作系统持续地写入和删除各种大小的数据,导致SSD内存储的数据杂乱的放在一起。垃圾回收弥补了这一缺陷,它通过梳理如奶酪般排列的数据来收集所有有效数据,并将其有序排列。如此一来,无效数据就被单独分离出来,并可被擦除,从而腾出更多的空闲空间,这意味着当您想在已经写满“垃圾”数据的页内写入新数据时,无需等待即可完成。 垃圾回收有两种方法,一种进行后台操作(当SSD闲置时),一种进行前台操作(当SSD处理数据时)。三星的SSD独家使用后者也可让SSD积极地管理数据并根据命令创建空闲区块。这样,在一个扩展的工作流程里驱动器也许没有时间处于空闲状态并准备空闲区块,但三星SSD通常已经在准备下一步了。下面的图表显示了SSD连续6个小时处理数据时的性能变化。840和840 PRO系列SSD性能基本持平,都处于较高水平,且与其他许多驱动器相比,840 PRO处于最佳性能的持续时间更久。
TRIM是现代操作系统启用的另一种SSD维护形式。当数据标记为要擦除或无效时,操作系统可通过它通知SSD. TRIM通过准备删除无效数据,让垃圾回收更有效。请记住,SSD也是一项全新科技,所以电脑仍被设计与传统的硬盘技术相接。与SSD不同硬盘没有读/写局限性—它可以轻松地在已存在数据的位置重新写入数据,无需提前擦除。所以,当操作系统“删除”数据时,数据保持不变。只是将数据占据的空间简单地标记为“空闲空间”,以后可以使用。默认情况下,电脑无法鉴别不是和长期合作的HDD一起工作,其操作系统也无法通知SSD一些数据不再有效及相对应的存储空间是空闲的。通过对SSD的介绍,现在有一个令人信服的原因来增加操作系统和存储设备之间的元件有效性。进入TRIM. TRIM 让操作系统通知SSD哪些数据不再有效,让SSD在执行垃圾回收时跳过无效数据,取代之前围着旧数据打转。一旦一个数据区块内所有页都包含无效数据,这个区块被认为是空闲的并会被清除。
操作系统每次删除一个文件,TRIM命令就会自动发送至SSD控制器。由于它需要操作系统支持,所以并非所有用户都可以使用本地TRIM功能。TRIM支持Windows 7 及后续版本的电脑。对于Macs, TRIM 仅支持苹果的OEM SSD,且不支持三星(或其他任何制造商)零件市场的SSD。旧版的Windows操作系统( Windows XP, Windows Vista )用户可以使用Magician软件内置的“性能优化”功能,按照要求(或通过用户指定计划)手动将TRIM命令传达给SSD。
除了在驱动器级别进行维护,SSD还要进行芯片级别的维护。在每个NAND单元,每页都包含一些额外容量中的额外字节,让SSD来存储“校验位”。错误校正码 (ECC)使用这些校验位来补偿那些在驱动器正常运行中失败的位元。当控制器检测到读写失败,它将让ECC试着从失败中恢复。如果不能恢复,固件的坏区块管理功能将放弃这个区块并让空闲的“备用区块”代替它。“坏区块”会在读写、编程、或擦除过程中发生,坏区块的主动管理可保证达到预期的SSD性能。
NAND闪存还有最后一个局限性:每个单元的使用寿命都有限,并只能承受一定数量的编程/擦除周期(称为P/E周期)。特定数量的P/E周期依赖于工艺技术(如27nm, 21nm, 19 nm等)和编程机制(如. SLC, MLC)。为了克服这些局限性,SSD固件采用损耗均衡算法来保证写入操作均匀分布在所有的NAND单元里。采用这个技术,就不会过度使用某些单独的存储单元,让其过早损坏。如果太多的存储单元都已损坏,那么整个区块将会像上面提到的那样被代替。SSD的备用区块也是有限的,所以为了延长驱动器的使用寿命还是要避免发生这些事情。
幸运的是,以上所有程序( TRIM除外,如果您使用的是旧版的Windows 操作系统)的发生都是透明的不会对用户操作进行干预。虽然特定的功能会有所改变,但大部分SSD都包含所有的这些功能。实际上,如果没有像损耗均衡和ECC(延长驱动器寿命和保护数据完整性)、TRIM、垃圾回收(维护SSD性能),SSD质量和用户体验将会受到影响。
5,通过“预留空间”最大化SSD使用寿命与性能
预留空间(OP),指在SSD中分配出定量的永久性空闲空间,是提升SSD性能及耐用性普遍采用的方法。一直以来,三星SSD中并没有采用强制预留空间。然而,随着840系列的推出,以及NAND制造工艺越来越复杂,三星选择在其主流驱动中采用最小量预留空间(840 PRO没有强制预留空间)。
SSD控制器负责管理硬盘中所有数据传输及存储这一繁重任务。NAND技术自身的复杂性需要在后台进行许多额外工作。数据写入并不是把数据放入空白存储区块这样简单。每个NAND单元的寿命有限——只能承受一定量的数据读写。要覆盖NAND上的原有数据需擦除整个NAND区块(该区块可能包含其他有效数据),这就额外增加了复杂性。因此,控制器要不断来回移动数据,使各个单元耗损均匀,并且预先准备“空闲区块” 供未来写入数据。
所有以上管理工作都需要SSD拥有 “交换空间”,当控制器运行时,它可以用作临时存储器。此时控制器会使用所有可用空闲空间,但当硬盘写满数据时,空闲空间会成得很珍贵。预留空间是留出最低量空闲空间的方法,用户与操作系统皆不可使用,唯有SSD控制器能将其作为“工作台”使用。
三星Magician软件能帮助用户设置SSD的预留空间。Magician软件中简单的图解预留空间工具可以推荐最佳预留空间大小(适用于用户工作量),然后即可一键配置SSD。该空间大小也可随时进行更改或调整。
然而某些硬盘,如 SandForce-driven SSD和全新840 系列SSD,都留出永久性预留空间。用户无法配置该最小量预留空间,其大小根据供应商不同而有所不同。预留空间的大小并没有“正确”一说,最好根据SSD存储量和具体使用情况而定。
如果您不想使用Magician软件的推荐,或者您是拥有不同需求的专业或更高级用户,您可以自行设置预留空间。 要确定预留空间的大小,您必须考虑特定的使用模式及SSD的容量。使用大容量SSD(250GB+)的用户只要不存储大量照片、视频或其它媒体文件,不太可能会使用硬盘的全部可用空间。因此,使用大容量SSD的普通用户无需留出额外的预留空间。SSD会使用任何可用空闲空间来执行其维护算法。另一方面,如果您的SSD容量较小,建议您留出一部分预留空间(硬盘所有空间的6.7%到10%),从而降低硬盘不小心被写满的风险。虽然硬盘写满数据没有什么危害,但会严重影响硬盘的性能。小容量硬盘更容易写满数据,从而侵占SSD控制器的工作空间,使其难以准备空闲块,也无法完成基本的维护任务。
同时,根据使用的应用程序和工作量大小,会推荐不同的预留空间率。您可能想知道这样做的原因。数据访问模式是决定因素。可产生频繁读写需求(尤其是随机读写需求)的活动会给SSD带来额外的压力,而这又增加了写入放大(实际NAND写入超过主机逻辑写入的现象)。繁重的工作量会使NAND单元的耗损更快,这样就增加了坏块管理的需求,控制器需要使受损单元停止运行。使NAND单元停止运行需要控制器将其中所有有效数据复制到(来自数量有限的“预留”块中)。若没有空白块可供使用,则电脑性能会受到极大影响。耗损均衡功能与坏块管理相辅相成,可有效降低使用预留空间的需求,保证数据均匀写入各个单元中这一过程也需要将数据从一个块拷贝到另个块,从而进一步增加空闲块的使用需求。为保证空闲空间可用,垃圾回收算法会整合优良数据并删除无效数据。但当清除无效区块时,该过程也需要把空闲块用作临时存储器。
预留空间通过有效增加控制器“工作台”的大小来帮助垃圾回收、耗损均衡和损坏区块管理,合并、移动或删除损耗单元,从而给予更多可用闲置空间。
以上所有任务都是WAF(写入放大)存在的原因——在SSD中写入数据并不像一对一操作那样简单。后台时刻都在执行复杂的任务处理。
在持续工作环境下,数据写满硬盘时,预留空间会直接影响SSD的性能。保证拥有闲置空间以完成以上讨论的NAND管理任务(垃圾回收、耗损均衡、坏块管理)意味着SSD不用再浪费时间准备所需空间,这一准备过程要对数据进行复制、删除并再复制,需要很多时间。另外一项优点是预留空间使SSD所有维护过程更加高效,保证足够的工作空间,从而有效降低WAF。想象一下这个场景:您是一位主厨,食台空间非常有限(比如食台长度如一只手臂,高度如半只手臂),在这个有限的区域内准备5道菜,您要浪费很多时间来回移动或收起食材,为其它任务腾出空间。现在想象着将工作空间扩大四倍,您可以把需要的一切放在手边,有效减少重复步骤(如从食品柜拿出盐再放回去),大大提高工作速度。SSD的运行也是如此。给予其更多的工作空间,它就能更加快捷、高效的完成任务,有效降低WAF,同时提升性能。
随着NAND处理技术不断进步,芯片本身变得越来越小。随着芯片的缩小,其存储可靠性大大降低。解决这一问题有许多方法,包括错误校正码(ECC)。如上所述,每次加重控制器的工作量时,它的“工作台”上都需要有更多空间,以高效处理任务。
840系列是首款采用3-bit MLC(又名TLC)技术的消费类SSD。顾名思义,该技术每单元内可存储3-bit数据,而较为常见的多层单元(MLC) NAND每单元可存储2-bit数据。正因为如上所述,芯片本身的大小也在缩小,事实上,我们正在努力将更多信息压缩到更小的空间里。然而,卓越的固件算法无所不能。基于3-bit MLC技术的三星840系列SSD配有强制预留空间,使用寿命远远超过以其为动力的硬件。