固态硬盘的原理和作用(固态硬盘的原理)
固态硬盘的简称是其英文缩写SSD:Soild State Disk。
而机械硬盘名字是HDD:Hard Driver Disk,它也不是液态或固态材质制造的,而是以铝合金材质的磁盘作为存储介质,马达来驱动盘片旋转,并由磁头来读写数据。
这就是机械硬盘的基本构成,这与光盘的一些特性比较类似。
【机械硬盘】:无法突破瓶颈 首先我们还要简单了解机械硬盘(HDD)的基本工作原理。
当机械硬盘需要读写数据时,将会接到指令,然后磁头会移动到相应位置,盘片也会转动以便让数据发生操作的区域到达指定位置。
这些动作所需要的时间就是寻道时间和潜伏周期,由于需要发生装置的移动,这些过程都需要几毫秒的时间。
当然,对于人类来说,几毫秒的时间并不算很久,为什么我们经常会觉得机械硬盘经常会很慢,甚至用久了会更慢呢?这是由于操作系统的读写机制造成的:硬盘被分为若干个区域作为最基本的操作单位,这个单位被叫做“扇区”,当一个新数据写入时,会选择一个或几个扇区进行数据写入,这些扇区的位置都是挨着的,从逻辑上说它们是连续的,无论在读取还是写入的时候所需时间都比较短。
而问题的关键在于:所有数据都不是在简历之后就永远放在那里不会改变了,当原先写入的数据修改时,比如增加内容、数据量加大,而紧挨着原有扇区的位置已经有了其他数据,这些新数据就要写入到其他位置去,那么我们在操作系统中看到的一个文件,在实际物理地址上并不是连续的,那么在再次读取该文件时,磁盘要进行的工作量就会加大,在最恶劣的情况,磁头和盘片会进行多次移动和转动,最后的工作时间也是成倍的增加。
这种情况在我们实际使用中并不少见,比如打开一个程序要很久,这是因为程序要加载很多系统文件、组件,这些东西都要从硬盘中逐一读取,比如游戏的加载时间,有大量的数据要读取,并且数据并不一定是连续的,甚至大部分都不可能是连续的。
以及,我们从使用经验上来看,都会觉的电脑会越用越慢,慢道受不了了,重装系统会让速度有所恢复,都是万恶的HDD工作原理造成的可以说,磁盘存储技术的发展并不慢,不过仅限于存储密度方面,随着单位面积存储容量的提高,我们可以享用到更高容量的硬盘,但是读写数据的速度上并没有太大突破。
因为决定寻道时间、潜伏周期的关键因素:磁头移动速度和磁盘转动速度都已经接近了极限,继续增加会带来其他不利因素:比如成本增加、噪音、温度的增加等等。
换言之,在人类科技水平没有重大突破之前,HDD的构造不会发生改变,工作机制不会产生重大变化,其读写性能也就不会有突破了。
认识SSD:为什么这么快 前边简单介绍了HDD的基本构造和工作原理,当然,关于硬盘的详细解析还有很多很多内容,不过我想我已经说清楚了HDD的最大弊端所在,它的物理移动:磁头移动和盘片转动造成了读写速度慢,越是不连续的文件,读写速度就越慢。
这个对不连续的文件进行读写的操作,我们称之为随机读写,实际上,我们在日常使用中绝大多数硬盘读写操作都是随机类型的,而SSD与HDD的最大差异就在于随机读写速度。
这就是由SSD的基本构造决定的。
SSD的系统接口、供电部分,以及驱动方式都与HDD没有差别,其主要改变是构成单元和物理工作方式。
SSD的内部构造包括PCB板、主控制器芯片和闪存芯片,有些产品还会有缓存。
SSD最基本的单位就是闪存芯片,英文名字叫做Nand Flash,这是一种非易失性内存芯片,通过充电、放点的方式写入和擦除数据,速度相当快。
由于在读写操作中完全通过电路来传输信号,因此不会存在类似HDD那样移动磁头、旋转盘片等动作,因此大大减少了处理时间。
然而,Nand Flash也分为几种,目前消费级SSD甚至不少企业级SSD都是用MLC(多层单元)闪存,这种闪存的写入性能不如SLC(单层单元)闪存,寿命也较之短很多,但是价格要低很多。
就算这样,目前SSD的成本也没有降低到人人都能接受的程度,价格仍然是影响SSD进一步普及的障碍。
切割后的Nand Flash芯片 一块SSD是由多个Nand flash闪存颗粒组成的,我们可以将每一个闪存颗粒看作是一个独立的存储单位,然后由主控制器将他们做了一个RAID并联。
也就是说SSD的读写是“多线程”的,每次的工作并不会只局限于一个颗粒之上,主控可以让数据分解并同时在不同颗粒上进行写入,这样以来速度自然会更快了。
这也是SSD速度快的原因之一。
当然,主控要做的事情远非这么简单。
SSD的心脏:主控制器介绍 SSD闪存也是有最小操作单元的,和机械硬盘相比,Nand Flash的一个比较特殊的区别是写入与擦出操作最小单位不同,写入最小单位为4KB,这个4KB大小的单元称之为“页”(Page),而擦除则为512KB,叫做“块”(Block)。
也就是说,在空白单元上写入,可以以页为单位来进行,但是若要删除这个数据,就需要将整个块进行擦除操作。
并且当有一个块中的数据需要删除时,会先对需要删除的数据进行标记而非真正物理擦出,然后当再次需要在同一物理位置写入之时,会将有效数据保留,复制到新的块上,然后擦写原来的块。
听起来似乎很复杂,简单的说,SSD的写入机制就是原本需要写入1MB大小的数据,实际操作量是会大于这个数值的,具体是多少,就要看主控制器的算法是否具备高效率,而实际随机写入速度则取决于运算速度是否够快。
和HDD的相同之处是,SSD也需要逻辑地址来管理,然而操作系统的逻辑地址最小单位是512B,SSD的最小写入单位则是4KB,这其中就需要CPU、芯片组和主控制器依次工作。
除此之外,主控制器还要负责分配每个闪存芯片的任务量,全盘闪存状态的监控,各个块的管理,数据校验等等,工作相当多而繁杂,这也是为什么在一些新主控上会使用到ARM双核心处理器,因为主控的性能会直接影响到SSD的速度。
主控和闪存,谁更重要? 关于主控和闪存,并非寥寥几行字可以完全详细说清楚的。
不过我们现在已经对他们有了基本的认知:闪存是基本存储单元,而主控制器则是SSD的心脏,负责运算和任务分配,两者的结合才是一款SSD性能的真正体现。
那么,主控和闪存,到底哪个更重要呢? 常见的Intel闪存 答案其实是显而易见的,两者都重要。
如果主控能力不足,会无法完全发挥闪存高速存取的特性,而如果闪存品质较低,那么主控再强也无济于事。
不过目前市场上SSD主控方案基本只有两大类:SandForce出品的SF-2281系列主控好Marvell出品的88SS9174主控,市面上90%以上的产品都采用上述两款主控。
闪存芯片方面,目前Nand Flash芯片同样分为两大阵营:镁光、Intel、海力士使用ONFI标准闪存,分为同步和异步两种,同步闪存的速度更快。
而三星、东芝、Sandisk则使用了Toggle DDR标准。
这两种标准的接口、传输速率都不一样,当然,抛离主控是无法对比两者谁的性能更好的,此外不同制造商的闪存之间也多少存在差异。
此外,闪存还会依据体质在出厂后划分为不同的等级,性能也有好坏之分。
SSD的闪存芯片和主控制器都可以说是半导体行业最尖端的技术结晶,绝非山寨工厂可以模仿制造的。
但是闪存和主控的销售却都是开放的,无论Intel、镁光、三星,还是Sandforce、Marvell,都会将自己的产品出售给别人。
这样以来制造SSD却不是什么困难的事情,所以我们会看到近两年来固态硬盘厂商如雨后春笋一般滋生,除了我们熟知的存储品牌之外,还不断有新面孔出现。
购买了主控和芯片之后,生产一款SSD并不困难,甚至还有无所不能的代工厂负责组装测试,一些厂商只需要贴牌出售即可。
但是他们之间的品质或多或少会有差异。
难道相同主控和闪存组成的SSD之间,性能表现、质量也不同?这又是什么缘故呢?答案是“固件”。
固件是写入到电路中的基本控制程序,负责集成电路的基本运行、控制和协调工作。
它是电子产品最底层的软件,SSD也不例外。
与其他电子产品一样,SSD也有产品存在设计缺陷、Bug等问题,小则性能降低,重则全盘报废。
由于SSD是一个新兴产品,各家厂商又急于抢占市场,SSD产品发生问题的几率并不低,至少和HDD相比要高一些。
并且数据一旦丢失恢复有相当大的难度甚至成为不可能的任务,那么固件的及时更新、稳定、可靠就成为SSD的关键了。
主控供应商会提供固件,而不同SSD制造商与主控厂商之间也有不同程度的合作,这就使得不同产品之间的固件形成差异,除了性能之外,稳定性、寿命等问题是更加无法预知却对SSD影响很大的问题。
有实力的厂商在固件更新、售后服务、技术支持等方面会更出色一些,这对于任何商品来说都是一样的。
但是选SSD并非一定要选择知名品牌,毕竟有成熟稳定的方案和固件,或者出自可靠的代工厂,产品也一样可以用的放心。
SSD的使用:合理设置发挥最佳性能●使用原生SATA 6Gbps接口 SSD和HDD一样都使用SATA接口进行数据传输。
近两年内推出的主板大部分都已经标配了SATA 6Gbps接口,接口速率为6Gbps,比如Intel平台的P67、Z68、H67,7系列全系,AMD 9系、A75芯片组主板,对应的笔记本移动平台芯片组SATA 6Gbps支持特性也一致。
不过部分主板除了芯片组原生SATA 6Gbps接口之外,还会提供第三方SATA 6Gbps接口,需要注意的是做为系统盘的SSD尽量不要使用这些接口,否则由于第三方桥接芯片带来的延迟,以及SATA控制器的性能等问题,SSD的性能表现与使用原生接口相比会有一些差距。
而对于不支持SATA 6Gbps的主板来说,使用原生SATAII接口在随机读取上也不逊色于第三方接口。
●使用AHCI模式 在很久之前,存储系统使用的是IDE传输模式,而硬件设备接口规范发展至SATA接口之后,这一模式却得以保留下来。
由于SATA接口下的AHCI模式拥有NCQ技术、支持热插拔,因此对于SSD的性能和寿命都有着比较大的影响。
需要注意的是,个别主板不支持AHCI模式。
比如Intel H61芯片组主板,AHCI模式被软件方式屏蔽(一些厂商会破解开放以支持)。
在这样的主板上使用SSD会让产品性能发挥受到限制,同时降低使用寿命。
●4KB对齐 很多用户都知道这个词,那么它到底是什么意思呢?前边我们介绍过,SSD中闪存最小操作单元是4KB,而大部分机械硬盘扇区为512B,因此如果如果没有选择正确的逻辑地址与物理地址的对应关系,那么操作系统在下达指令时对SSD来说会进行额外的无用计算,完全浪费CPU、控制器的资源。
因此我们需要让其4KB分区对齐。
重新安装Windows 7操作系统或使用新版本Ghost都可以实现。
●不要频繁跑分 如果说前三条是菜鸟小白级用户常常容易忽略的,那么最后一条可是一些高手和老DIY玩家也容易犯的错误:跑分。
由于闪存的特殊性质,跑分会大大影响使用寿命。
尤其是诸如Crystal Disk Mark这样的软件,一次测试真实写入量可以多达几十个G,甚至可能比你一个月实际使用量还大。
因此,如无特殊需要尽可能避免跑分。
●开机通电有特效 与机械硬盘不同,SSD内部拥有非常复杂的主控制器,甚至一款好的主控处理器CPU性能比一台上网本的CPU还要强。
当SSD性能突然下降、出现Bug等特殊状况时,根据主控特性和固件能力,开机通电不仅行任何操作,或者仅连接电源线不接数据线,此时如果主控有恢复、还原等特殊功能,就会开始工作。
因此,当你的SSD发生什么意外时,通电开机,没准可以返老还童甚至起死回生!。