Professional Documents
Culture Documents
目录
1 SSD介绍 4 SSD主控IC
2 SSD 接口种类和规格 5 SSD相关技术介绍
3 NAND FLASH 56 SSD smart值定读取方法
1 SSD介绍
一、SSD的定义
1. 固态硬盘(Solid State Disk、Solid State Drive,
简称SSD,准确的技术称呼应为固态驱动器)是一种基
于永久性存储器,如闪存,或非永久性存储器,同步动
态随机存取存储器(SDRAM)的计算机外部存储设备。
固态硬盘用来在便携式计算机中代替常规硬盘。虽然在
固态硬盘中已经没有可以旋转的盘状结构,但是仍依照
人们的命名习惯,这类存储器仍然被称为“硬盘”。
2. 其实目前大家通指的SSD和 Disk On Module(DOM)
都一种高效能,嵌入式的闪存盘(即电子硬盘),由控
制器单元(Controller)和存储单元(Flash IC)组成。
广泛应用于 军事、车载、工控、视频监控、网络监控、
网络终端、电力、医疗、航空、导航设备等领域。
1 SSD介绍
二、SSD与HD的区别
SSD与HD比较,拥有以下优点:
1. 启动快,没有电机加速旋转的过程。
2. 不用磁头,快速随机读取,读延迟极小。
3. 相对固定的读取时间。由于寻址时间与数据存储位置无关,因此磁盘碎片 不会影响读取时间。
4. 无噪音,因为没有机械马达和风扇,工作时噪音值为0分贝。
5. SSD工作状态下能耗和发热量较低。
6. 内部不存在任何机械活动部件,不会发生机械故障,也不怕碰撞、冲击、振动。
7. 工作温度范围更大。典型的硬盘驱动器只能在5到55℃范围内工作。而大多数SSD可在-
10~70℃工作,一些工业级的SSD还可在-40~85℃,甚至更大的温度范围下工作。(注:军工
级产品温度为-55~135℃)。
8. SSD体积小、重量轻。
2 SSD 接口种类和规格
SATA III PCIe G2 PCIe G3
PATA SATA I SATA II (2014~2015)
(2012~2013) (2016~2017)
(2005~2008) (2008~2009) (2010~2011)
ONFI 2.0
Toggle 1.0
• ATA-1(1994):是最早的IDE标准。
• ATA-2(1996):是EIDE的标准,支持PIO3,4和DMA1,2传输方式,最大数据传输速度
为16MB/s。
• ATA-3(1997):引入了SMART和安全特性,没有制定新的传输标准。
• ATA-4(1998):著名的“UDMA33”标准。引入了新的ATA命令和协议,最大数据传输速
度为33MB/s。
• ATA-5(2000):增加了一些新的ATA命令。最大数据传输速度为66MB/s。
• ATA-6(2000):UDMA100。 ATA-7(2002):UDMA133。
2 SSD 接口种类和规格
• PATA就是Parallel ATA,即并行ATA。Ultra ATA/133之前(包括Ultra ATA/133)都是PATA
• SATA 就是Serial ATA :点对点串行ATA,SATA的全称是Serial Advanced Technology
Attachment,是由Intel、IBM、Dell、APT、Maxtor和Seagate公司共同提出的硬盘接口
规范。它因为有更轻薄、更灵活的的接线,支持热插拔、功耗更低、安装简便性、内部散
热以及驱动器配置方面带来很多的好处、数据传输速率更快等优点,将慢慢代替PATA成为
硬盘接口的主流。
Serial ATA采用串行连接方式,串行ATA总线使用嵌入式时钟信号,具备了更强的纠错
能力,与以往相比其最大的区别在于能对传输指令(不仅仅是数据)进行检查,如果发现错
误会自动矫正,这在很大程度上提高了数据传输的可靠性。
版本 带宽 速度 数据线最大长度
2.5寸
2.5寸PATA接口 SATA
接口
mSATA
接口
M.2接口
2 SSD 接口种类和规格-SATA
2 SSD 接口种类和规格-SATA
SATA 接口定义
2 SSD 接口种类和规格-SATA
1.8寸SATA 尺寸
2 SSD 接口种类和规格-mSATA
mSATA 接口定义
2 SSD 接口种类和规格-mSATA
mSATA SSD尺寸
2 SSD 接口种类和规格-SATAe
• SATA Express,带宽最高可达8Gbps和16Gbps。 要达到最高的16Gbps带宽(现在最快
的SATA 3.0标准带宽为6Gbps),SATA Express标准将会如其名称所描述的,把SATA软
件架构和PCI-Express高速界面结合在一起。由于PCIe总线离CPU更近,基于PCIe接口的
存储盘具有更高的数据吞吐量和更低的延迟,因此越来越多的SSD固态盘选用了PCIe作为
数据传输接口。SATA Express就是在这个需求的背景下诞生的,其目的是想在SATA接口的
基础上进一步兼容PCIe数据传输模式。SATA Express就是一种SATA和PCIe之间的复用接
口,相同的接口可以同时支持PCIe和SATA两种物理接口。
2 SSD 接口种类和规格-SATAe
2 SSD 接口种类和规格-SATAe
• SATAe接口采用PCIe通路进行数据传输,提高了传输性能。在SATAe标准中可以直接采用
原生态的SATA接口,通过AHCI的方式进行数据访问;亦可以通过PCIe接口,采用
NV**CI的接口进行数据传输。
• SATAe接口只能支持SATA和PCIe,为了解决目前标准2.5"和3.5"外形存储设备带宽而设
计的,为了保证对SATA的向下兼容性,SATAe的接口占地面积过大。相对于M2小巧的接
口,SATAe简直巨大,而且带宽只有M.2 M键规格的一半(这还不算上M2可以用来自
CPU的PCIe 3.0,但SATAe目前只能用PCH提供的PCIe 2.0的差异),在有更大带宽的设
备时,新的瓶颈就会出现。 因此SATAe属于过渡标准,未来会被SFF-8639接口所替代。
目前,Intel已经放弃了对SATA Express接口的支持。
2 SSD 接口种类和规格-M.2接口
• M2是目前常见于无线网卡、3G网卡和部分小型SSD的Mini PCIe/mSATA的替代升级版,具备
小尺寸、低高度、集成度更高的优势
2 SSD 接口种类和规格-M.2接口
M2接口、板卡因尺寸规格(长宽高)和键位(Key)
不同,分为多种规格。
2 SSD 接口种类和规格-M.2接口
2 SSD 接口种类和规格-M.2接口
2 SSD 接口种类和规格-M.2接口
• M.2接口,是Intel推出的一种替代MSATA新的接口规范,也就是我们以前经常提到的NGFF,即
Next Generation Form Factor。
与mSATA相比,M.2主要有两个方面的优势:
• 第一是速度方面的优势。M.2接口有两种类型:
Socket 2和Socket 3,其中Socket2支持SATA、PCI-E X2接口,而如果采用PCI-E ×2接口标准,
最大的读取速度可以达到700MB/s,写入也能达到550MB/s。
而其中的Socket 3可支持PCI-E ×4接口,理论带宽可达4GB/s。
• 第二个是体积方面的优势。虽然,MSATA的固态硬盘体积已经足够小了,但相比M.2接口的固
态硬盘,MSATA仍然没有任何优势可言。
M.2标准的SSD同mSATA一样可以进行单面NAND闪存颗粒的布置,也可以进行双面布置,
其中单面布置的总厚度仅有2.75mm,而双面布置的厚度也仅为3.85mm。而mSATA在体积上的劣
势就明显的多,51mm×30mm的尺寸让mSATA在面积上不占优势,而4.85mm的单面布置厚度跟
M.2比起来也显得厚了太多。另外,即使在大小相同的情况下,M.2也可以提供更高的存储容量
2 SSD 接口种类和规格-SAS
• SAS(Serial Attached SCSI)即串行连接SCSI,是新一代的SCSI技术,和现在流行的Serial
ATA(SATA)硬盘相同,都是采用串行技术以获得更高的传输速度,并通过缩短连结线改善内部
空间等。SAS是并行SCSI接口之后开发出的全新接口。此接口的设计是为了改善存储系统的效
能、可用性和扩充性,并且提供与SATA硬盘的兼容性。
和SATA发展思路相同,由于并行SCSI的性能问题,造就了SAS接口技术。和SCSI时代相
同,SATA接口主要服务于消费级市场;SAS接口主要应用于企业级市场。和SATA接口相比,
SAS协议体系要庞大很多。SAS不仅是一个设备互连的总线,更为关键的是SAS技术打造了后端
存储网络。通过SAS网络可以将一定量的存储盘进行互连,形成后端存储网络。
• SAS的接口技术可以向下兼容SATA。具体来说,二者的兼容性主要体现在物理层和协议层的
兼容。在物理层,SAS接口和SATA接口完全兼容,SATA硬盘可以直接使用在SAS的环境中,
从接口标准上而言,SATA是SAS的一个子标准,因此SAS控制器可以直接操控SATA硬盘,但
是SAS却不能直接使用在SATA的环境中,因为SATA控制器并不能对SAS硬盘进行控制;在协
议层,SAS由3种类型协议组成,根据连接的不同设备使用相应的协议进行数据传输。其中串
行SCSI协议(SSP)用于传输SCSI命令;SCSI管理协议(SMP)用于对连接设备的维护和管理;
SATA通道协议(STP)用于SAS和SATA之间数据的传输。因此在这3种协议的配合下,SAS可以
和SATA以及部分SCSI设备无缝结合。
2 SSD 接口种类和规格-SAS
• 从外观上看SAS和SATA接口极为相似,
差别就在于中间是否存在缺口。对于
SATA接口,信号区和电源区之间是分离
的,中间存在缺口。而SAS接口中间没有
缺口,并且在此基础上增加了一组传输
信号。
2 SSD 接口种类和规格-SAS
• 当硬盘背板需要与导出转接卡相连时,可以采用如下图所示的连接线缆
2 SSD 接口种类和规格-SFF-8639
• SFF-8639接口又称之为U.2接口,这种
接口是在SAS接口的基础上发展起来的,
其可以兼容SATA、SAS、PCIe。SFF-
8639的接口定义如左图所示,
• 红色标注区域为PCIe信号;蓝色标注区
域为SAS/SATA信号。这种接口可以支
持多端口SAS,最多4个Lane的PCIe总
线。目前,这种接口被普遍应用在
NVMe SSD中,接口方式和SATA、
SAS盘保持一致:
自从2014年起,很多厂商陆续
推出了基于SFF-8639接口的
NVMe SSD,越来越多的服务
器厂商也将该类接口做成了服
务器的标配。可以说SFF-8639
必将有着辉煌的未来。
2 SSD 接口种类和规格-SFF-8639
3 NAND FLASH
• 现在的SSD使用闪存(Flash Memory)作为存储介质。相较于RAM来说,闪存是一种非易失
性存储器,保存数据是不需要消耗电力的。闪存同时还具有较低的读取延迟和良好的抗震性,
所以被移动设备广泛采用,其历史可以追溯到上世纪80年代。
• 1984年,东芝公司的舛冈富士雄博士(Masuoka Fujio)发明闪存,由于这种存储器的抹除流
程很像相机的闪光灯,最终被命名为闪存。
• 1988年,Intel生产出第一款商业性NOR Flash(闪存的一种)芯片。
• NOR Flash的擦除速度很慢,但提供完整寻址与数据总线,允许随机存取存储器上的任何区域,
NOR Flash多被用于ROM芯片,如主板上的BIOS芯片。
• 东芝在1989年的国际固态电路学会(ISSCC)上发表了另一种形式的闪存——NAND Flash。
NAND闪存擦除速度更快,但是没有随机存取外部寻址总线,它必须以区块形式进行读取。
NAND闪存也就是当前SSD使用的闪存形式。
3 NAND FLASH
• 第一阶段:沙子熔炼单晶硅
• 从沙子到颗粒的蜕变
• 沙子:脱氧后的沙子(尤其是石英)最多包含25%的硅元素,以二氧化硅SiO2的形式存在,这也是半导体制造产业的基础。
• 硅熔炼:硅净化熔炼成大晶体。通过多次净化后达到半导体制造需求的电子级硅,平均每一百万个硅原子中最多只有一个杂质原子。
• 单晶硅锭:最后得到纯度99.9999%的单晶硅锭。
3 NAND FLASH
• 第二阶段:硅锭切割成晶圆
• 硅锭切割:将硅锭横向切割成单个硅片,也就是我们常说的晶圆(Wafer)。因为是类圆柱体切割,横截面自然就是圆形了。
• 晶圆:切割出来的晶圆经过抛光后表面像镜面一样完美。现在的晶圆多为300毫米(12英寸)。
3 NAND FLASH
• 第三阶段:光刻
3 NAND FLASH
• 第四阶段:检测与封装
• 晶圆光刻完成之后,需要进行测试后进行封装,封装成为颗粒才能使用在SSD等各种设备上。
• 一片晶圆在出厂之前经由测试分类出好的晶粒(Good Die)和不良品(Ink Die)。
• 关于Ink Die的起源是这样的,以往封装设备还没有自动化的时候,需要人工在不良品上点上墨点作为标记,所以后来不良品就被成为Ink Die。
• 封装设备和技术进步以后,晶圆的测试会以坐标的方式区分Good Die和Ink Die,记录下来的资料就叫Mapping。
3 NAND FLASH
• 封测厂根据Mapping把Good Die取下来封装成颗粒,对于Flash来说有以下几种封装类型:
• TSOP II:类似于DRAM 4Mx16,2001年以前的小容量多是这种封装
• TSOP I:Thin Small Out-line Package,48脚封装
• BGA:Ball Grid Array,常见有100/132/136/152 Ball
• LGA:Land Grid Array,Apple产品应用倡导的封装形式。
• DBG(DICING BEFORE GRINDING)晶圆封装工艺流程示意图:
3 NAND FLASH
• 通过了测试的颗粒使用激光蚀刻打上原厂标:
3 NAND FLASH
NAND Flash的存储单元发展
约500次~3000次
ADD CONTENTS 擦写寿命
3K-10K次 说明:
擦写寿命
10万次 制程工艺和存储单元的发展,使得同
擦写寿命 样大小的芯片有更高密度和更多的存储单
TLC 元,Flash得以在容量迅速增加的同时,
MLC
还大幅降低了单位存储容量的成本。
SLC 但其弊端也轻易显现,从原来的
1bit/cell发展到后来3bit/cell, 计算更为复
杂,出错率不免更高,读写次数和寿命也
会更短。在这种情况下现有MLC 和 TLC
Flash 都需要搭配一颗高性能的控制芯片
来提供EDC和ECC、平均擦写等Flash管理。
3 NAND FLASH
单位
计算机存储信息的最小单位,称之为位(bit,以称为比特)。 存储器中所包含存储单元的
数量称为存储容量,其计量单位为Byte,简称B。
1Byte=8bit,1KB=1024B,1MB=1024KB,1GB=1024MB,1TB=1024GB。
•
3 NAND FLASH
读写方式
NAND FLASH 读是以Page来读,写是以Block来写。
3 NAND FLASH
数据存储一般是以page(页)
为最小单位存储的(典型的为
4KB),而128个page组成了一
个block(块),数据可以以
4KB大小的页来读取和写入,但
却只能以512KB(128 page)的块
大小来删除。当读取数据或者写
入到一个没有被使用过的page
上时,固态硬盘的速度是很快的,
但是覆写数据的话,就比较复杂
了,需要许多步骤来完成。步骤
可见左图:
3 NAND FLASH
3 NAND FLASH
3 NAND FLASH
4 SSD主控IC
SSD主控的发展
一般情况下,当LBA被操作系统更新后,只有随着之后的每次数据写入(其实等于覆盖),SSD主控制器才
知道这个地址原来早已经失效了。(之前认为每个数据都是有效的)在Win7里,由于Trim的引入解决了这
个问题,当某些文件被删除或者格式化了整个分区,操作系统把Trim指令和在操作中更新的LBA一起发给
SSD主控制器(其中包含了无效数据地址),这样在之后的GC操作中,无效数据就能被清空了,减少了写
入放大同时也提升了性能。 )
TRIM的支持需要以下三要素:
1. 系统: Win7, 2008R2 , Linux核心2.6.28以上。
2. 固件: SSD的厂商在固件里要放有Trim算法。
3. 驱动: MS的驱动,Intel的AHCI驱动目前支持。
RAID阵列里的盘明确不支持TRIM,不过RAID可以支持GC。
5 SSD相关技术
OP(Over-provisioning)预留空间:预留空间一般是指用户不可操作的容量,为实际物理闪存容量减去用户可用容
量。这块区域一般被用来做优化,包括磨损均衡,GC和坏块映射等等。
第一层为固定的7.37%,这个数字是如何得出的哪?1GB是1,000,000,000字节(10的9 次方),但是闪存的
实际容量是每GB=1,073,741,824,(2的30次方) ,2者相差7.37%。所以说假设1块128GB的SSD,用户得到的
容量是128,000,000,000字节,多出来的那个7.37%就被主控固件用做OP了。
第二层来自制造商的设置,通常为0%,7%和28%等,打个比方,对于128GB容量的SSD,市场上会有120G
和100G两种型号卖,这个取决于厂商的固件设置,这个容量不包括之前的第一层7.37%。
第三层是用户在日常使用中可以分配的预留空间,而用户也可以自己在分区的时候,不分到完全的
DOM/SSD容量来达到同样的目的。
预留空间虽然让SSD的可用容量小了,但是带来了减少写入放大,提高耐久,提高性能的效果。
5 SSD相关技术介绍
压缩
压缩可以通过减少所写入的数量,帮助提升整体性能,并延长设备的使用寿命
5 SSD相关技术介绍
写入放大(WA)
写入放大(WA)是闪存和固态硬盘之间相关联的一个属性,因为闪存必须先删除才能改
写(我们也叫“编程“),在执行这些操作的时候,移动(或重写)用户数据和元数据
(metadata)不止一次。这些多次的操作,不但增加了写入数据量,减少了SSD的使用寿命,
而且还吃光了闪存的带宽(间接地影响了随机写入性能)。
5 SSD相关技术介绍
5 SSD相关技术介绍
4K分区对齐
需要分区对齐的原因:
SLC NAND FLASH的页/块大小是2KB/128KB,MLC NAND FLASH的页/块大小是
2KB/256KB或4KB/512KB;NAND FALSH 是以页来读,块来擦写;也就是意味着每次可以分
别以2KB/2KB/4KB为单位来写入数据,但是每次擦除必须要以128KB/256KB/512KB来擦除数
据。
按照XP之前的起始位置放在LBA63(起始位置之前保留512Bx63=31.5KB)的分区方式,将
会导致NTFS分区每32(或64或128)个簇(以现在硬盘的大小,NTFS分区几乎全是4KB/簇),就
会有一个簇跨越了两个闪存块,当系统正好对跨块的簇进行操作时,就会导致需要擦除两个块
之后才能写入数据,或是要分别从两个块来读取这些4KB簇的数据,这就降低了读写数据的效
率(还会造成SSD/DOM在连续小档的写入时,系统可能会有一顿一顿的感觉,最坏的是还会
增加无谓的SSD/DOM额外写入动作)。
5 SSD相关技术介绍
注:Win7所谓针对SSD的最佳化支持,其中一环就是将分区的起始点从XP的第63个扇区(31.5KB处),向后移到
第2048个扇区(1MB处),如此不管SSD的读写基本block size是
4KB/8KB/16KB/32KB/64KB/128KB/256KB/512KB/1MB(都是1MB的因数),分割的起始点自然就会对齐
SSD的block size边界。
• CrystalDiskInfo软件,可以对本机内的目标
SSD 的SMART值进行抓取,也可以以对通过移
动硬盘转接盒(USB转SATA设备)转接的SSD
进行SMART值抓取,但要注意目标盘的选择;
• 各SSD主控SMART 值定义
各SSD主控SMAR
T值定义.xls