https://zhuanlan.zhihu.com/p/415817808
目前市场上的固态硬盘简单来说共有SATA、PCIE、M.2和U.2四种接口类型。
早期,为了更适应于超极本这类超薄设备的使用环境,针对便携设备开发的mSATA(mini SATA)接口应运而生。你可以把它看作标准SATA接口的mini版,物理接口跟mini PCIe接口一样。
mSATA接口是SSD小型化的一个重要过程,不过mSATA依然没有摆脱SATA接口依然是SATA通道,速度是6Gbps。诸多原因没能让mSATA 接口火起来,反而被更具升级潜力的M.2 SSD所取代。
接口类型具体到协议上来说又能分为上层协议和传输协议,他们之间错综复杂的关系可以用下图来表述。
关系图传输总线
总线就像一条公路,公路上的车好比总线上的电信号;公路的大小和车流量就决定了公路的车流量,故总线的位宽大小和传输频率决定了一次传输中能够提供的最大速度。常见的总线类型有:
PCIE是一切的根,所有外设都是由PCIE演化而来。下表给出PCIe 2.0和PCIE 3.0标准速率,实际速率却很难达到这个理论值。
服务器领域中使用的传输总线,已经很少人用了。
民用领域由PATA到SATA,服务器领域由SCSI到SAS。SAS控制器可以兼容SATA的设备,但是SATA控制器不能兼容SAS设备。
SAS 1.0达到3Gbps,每一代翻2倍。
FC接口很稀缺,是基于网络传输协议下诞生的接口。起源于SCSI,但速度远远超过SCSI,最新FC通道速度可以达到16Gbps。
传输规范、传输标准,也就是数据传输的方式。
(1)PATA(并行ATA)
(2)PATA只支持数据部分进行CRC校验
(3)IDE盘不支持热插拔
(4)需要设置主从盘跳线
Serial ATA Advanced Host Controller Interface,串行ATA高级主控接口/高级主机控制器接口,IDE速度太低,协议老旧,所以有了AHCI;但AHCI是为了机械硬板而产生的产物,现在SSD已经普及,所以不再说明。
· 协议特性
(1)简介:Serial Advanced Technology Attachment即为Serial ATA,串行高级技术附件。SATA接口是一种基于行业标准的串行硬件驱动器接口。
(2)优势:串行接口结构简单,支持热插拔,传输速度快,执行效率高。
与传统ATA相比,具备了更强大的纠错能力,很大程度上提高了数据传输的可靠性。
还节省空间,有利于机箱内部的散热,线缆之间的串扰也得到了有效控制。
对数据和指令封包进行循环冗余校验(CRC),使得单bit和双bit的错误都能被检测出来。
SATA不需要设置主从盘跳线。
· 支持的接口类型
主要有5中接口形式:SATA、Half-slim、mSATA、mini-mSATA、B-key M.2、1.8寸 micro-SATA等。
· SATA接口pin脚定义
说明:SATA 3.1之后,没有3.3V,第3脚为休眠脚。
一种建立在M.2接口上的类似AHCI的一种协议,是专门为闪存类存储设计的协议。
具体优势包括:
①性能有数倍的提升;
②可降低延迟超过50%;
面向PCIe SSD产品的NVMe标准能有效降低控制器和软件接口部分的延迟,最主要是能让SSD走PCI-E通道直连CPU,有效降低了数据延迟,其次,NVMe精简了调用方式,AHCI每条命令则需要读取4次寄存器,一共会消耗8000次CPU循环,从而造成2.5μs的延迟,而NVMe执行命令时则不需要读取寄存器。
③NVMe PCIe SSD可提供的IOPs十倍于高端企业级SATA SSD;
新的协议还能大大提高SSD的IOPS(每秒读写次数)性能,理论上,IOPS=队列深度/ IO延迟,所以增加队列深度,就可以有效提升SSD的IOPS。传统的ACHI标准下队列深度最多能达到32,但是在NVMe标准下,这一数值可以达到64000,是以前的2000倍。
④自动功耗状态切换和动态能耗管理功能大大降低功耗;
⑤支持未来十年技术发展的可扩展能力。
平时所说的SATA接口通常是指2.5寸规格的固态硬盘,它只使用AHCI协议,最大队列深度QD32,对于家用完全没有瓶颈。SATA3.0接口将持续读写速度限制在550MB/s左右。
2.5寸这个数值并非很多人想象的硬盘对角线长度,而是机械硬盘内部硬盘盘片的直径。到了固态硬盘时代,闪存芯片替代了磁盘成为存储介质。没有了盘片直径后固态硬盘依然按照原来2.5寸标准的大小去制造,这样可以最大限度的兼容各种台式与笔记本电脑的硬盘位。
在传统SATA硬盘中,当我们进行数据操作时,数据会先从硬盘读取到内存,再将数据提取至CPU内部进行计算,计算后再反馈给内存,最后写入至硬盘中;
而PCIe接口就不一样了,数据直接通过总线与CPU直连,省去了内存调用硬盘的过程,传输效率与速度都成倍提升。
简单的说,我们可以把两种通道理解成两辆相同的汽车,PCIe通道的汽车就像是在高速上行驶,而SATA通道的汽车就像是在崎岖山路上行驶。很显然,PCIe SSD的传输速度会远大于SATA SSD。
虽然PCIe SSD有诸多好处,但也不是每个人都适合。PCIe SSD由于闪存颗粒和主控品质极高,总体成本也相对较高,相比传统SATA接口固态硬盘的售价要贵一些。另外,由于PCIe会占用总线通道,入门以及中端平台CPU通道数较少,也不太适合使用PCIe SSD。只有配合Z170、X99这样顶级平台,才可以完全发挥PCIe SSD的性能。
M.2是当前最复杂、最多变的固态硬盘接口。它和当前已经被淘汰的mSATA一样,属于多功能接口,再相同的外观下可以支持不同的针脚定义(传输协议)以及不同的上层协议。最早出现的M.2固态硬盘使用了与2.5寸SSD相同的SATA AHCI协议,除了外观不同,他们在性能表现上和2.5寸SATA版本基本没有区别。
SATA协议的M.2固态硬盘在接口处有2个缺口,学名叫B Key和M Key,他们的存在是为了向电脑主机表明自己的身份(选择需要使用的协议)。
一个SATA缺口的M.2固态硬盘通常可以肯定使用了NVMe协议。但是两个缺口却不能作为判定SATA协议的依据,因为两个缺口下也能支持PCIE传输协议,同样可以是NVMe固态硬盘。
与mSATA相比,M.2主要有两个方面的优势。第一是速度方面的优势。M.2接口有两种类型:Socket 2(B key——ngff)和Socket 3(M key——nvme),其中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也可以提供更高的存储容量。
M.2接口,最初叫做NGFF(Next Generation Form Factor),宽度22mm,单面厚度2.75mm,双面闪存布局也不过3.85mm厚。M.2接口产品有丰富的可扩展性,最长可以做到110mm,可以提高SSD容量。此外,M.2接口可以同时支持SATA及PCI-E通道,后者更容易提高带宽,如果是采用SATA通道的M.2接口固态硬盘,则读写速度在550MB/s左右。
目前主要用在服务器领域。U.2原名叫SFF-8639,如果光听这个代号,估计没有多少人能真正地把他记正确,所以在后期INTEL将他改名为U.2,这样一来,先不管它是什么接口,至少朗朗上口了。U.2接口的最大特色就是高速低延迟低功耗,支持NVMe标准协议,并且走的是PCI-E 3.0 x4通道,理论传输速度高达32Gbps,而SATA只有区区6Gbps,比SATA快了足足5倍多。
总结
以上是固态硬盘的接口和协议,虽然普及的不是很深入,但是网友可以根据自己的实际情况来提升自己的电脑。
坚持,每天学习一点点知识,让我们每天进步一点点。