SSD接口:PCIe是物理接口还是协议的两种观点
观点1:PCIe 只是一种协议,而不是物理接口
作者:褚道长
链接:https://www.zhihu.com/question/48972075/answer/521468195
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
1. 物理接口
M.2 , U.2 , AIC, NGFF 这些属于物理接口。
像 M.2 可以是 SATA SSD 也可以是 NVMe(PCIe) SSD。金手指上有一个 SATA/PCIe 的选择信号,来区分两者。很多笔记本的M.2 接口也是同时支持两种类型的盘的。
- M.2 , 主要用在 笔记本上,优点是体积小,缺点是散热不好。
- U.2,主要用在 数据中心或者一些企业级用户,对热插拔需求高的地方。优点热插拔,散热也不错。一般主要是pcie ssd(也有sas ssd),受限于接口,最多只能是 pcie 4lane
- AIC,企业,行业用户用的比较多。通常会支持pcie 4lane/8lane,带宽上限更高
2. 高速信号协议
SAS,SATA,PCIe 这三个是同一个层面上的,模拟串行高速接口。
- SAS 对扩容比较友好,也支持双控双活。接上SAS RAID 卡,一般在阵列上用的比较多。
- SATA 对热插拔很友好,早先台式机装机市场的 SSD基本上都是SATA的,现在的 机械硬盘也是SATA接口居多。但速率上最高只能到 6Gb/s,上限 550MB/s左右,现在已经慢慢被pcie取代。
- PCIe 支持速率更高,也离CPU最近。很多设备 如 网卡,显卡 也都走pcie接口,当然也有SSD。现在比较主流的是PCIe 3.0,8Gb/s 看起来好像也没比 SATA 高多少,但是 PCIe 支持多个LANE,每个LANE都是 8Gb/s,这样性能就倍数增加了。目前,SSD主流的是 PCIe 3.0x4 lane,性能可以做到 3500MB/s 左右。
3. 传输层协议
SCSI,ATA,NVMe 都属于这一层。主要是定义命令集,数字逻辑层。
- SCSI 命令集 历史悠久,应用也很广泛。U盘,SAS 盘,还有手机上 UFS 之类很多设备都走的这个命令集。
- ATA 则只是跑在SATA 协议上
- NVMe 协议是有特意为 NAND 进行优化。相比于上面两者,效率更高。主要是跑在 PCIe 上的。当然,也有NVMe-MI,NVMe-of之类的。是个很好的传输层协议。
4. 总结
M.2,U.2,AIC 是物理规格,像是 公路,铁路。
PCIe,SATA,SAS 是 模拟高速接口,像是 县道,省道,高速这样。速率上限不同
SCSI,ATA,NVMe 是传输层协议,命令集。就是跑在路上面的小车,只是有 跑车 和 面包车 之分。
所以,如果要买SSD的话,不是只看 M.2就完事了 ,得分清了 是 SATA 的,还是 NVMe 的,看看主板支持的到底是哪种。否则,买回来的东西可能会用不了!
M.2 SATA 接口与M.2 PCIe接口不同
一则很好的问答:
观点2:PCIe 既是协议,也是一种物理接口(但这种接口很少见了)
目前,固态硬盘的接口主要有SATA、mSATA、PCIe、m.2四种,下面,我们就这四种接口展开来讲。
SATA
SATA(Serial Advanced Technology Attachment)是一种电脑总线,负责主板和大容量存储装置(如硬盘及光驱)之间的数据传输,主要用于个人电脑。其于2000年11月由国际串列式ATA组织所制定,取代旧式PATA接口,因采用串行方式传输数据而得名。在数据传输上这一方面,SATA的速度比以往更加快捷,并支持热插拔。
相比于其他接口,SATA接口最大的优势便在于它的兼容性。目前,很多主板以及一些笔记本电脑都保留了SATA接口,这意味着,几乎所有的电脑都能支持SATA接口固态硬盘升级。
而相对于传统机械硬盘而言,SATA接口的固态硬盘表现也不差,在随机读写速度上都有巨大的提升。不过,由于SATA接口的最大传输速度的限制,SATA接口的固态硬盘读写速度普遍只能达到500MB/s,在随机读写速度上,一般也不超过10万IOPS,对于追求性能来说的人来说,这显然是无法满足的。
mSATA
mSATA接口是针对超极本的轻薄设备而开发的,通俗点讲就是缩小版的SATA固态硬盘,而本质上仍然是SATA固态硬盘。
不过,由于它不仅拥有SATA固态硬盘的速度限制,又没有了SATA固态硬盘的兼容性和通用性,因此,它很快被淘汰,被最新的m.2接口所取代。
PCIe
为了解决SATA固态硬盘的速度瓶颈,很多固态硬盘厂商将目光瞄向了电脑主机板上的PCIe接口,希望通过PCIe比SATA大得多的频宽来获得更快的速度。实际结果也不负期待,PCIe接口固态硬盘确实非常快。
PCIe属于高速串行点对点双通道高带宽传输,所连接的设备分配独享通道带宽,不共享总线带宽,主要支持主动电源管理,错误报告,端对端的可靠性传输,热插拔以及QOS等功能。它的主要优势就是数据传输速率高,而且还有相当大的发展潜力。
目前PCIe硬盘接口通道有PCIe 2.0x2和PCIe 3.0x4两种,最大速度可达32Gbps。而且早期PCIe不能做启动盘的问题已经解决,现在旗舰级SSD大多会选择PCIe接口。
PCIe 硬件接口
只是,出于体积、兼容性和制造成本的限制,再加上会占用主机板接口,所以它注定无法大范围普及。所以,目前市面上PCIe接口的固态硬盘并不多。M.2
M.2接口是Intel推出的一种替代mSATA的新的接口规范,可以兼容多种通信协议,如sata、PCIe、USB、HSIC、UART、SMBus等。
M.2接口的固态硬盘宽度22mm,单面厚度2.75mm,双面闪存布局也不过3.85mm厚,但M.2具有丰富的可扩展性,最长可以做到110mm,可以提高SSD容量。M.2 SSD与mSATA类似,也是不带金属外壳的,常见的规格有主要有2242、2260、2280三种,宽度都为22mm,长度则各不相同。
不仅仅是长度,M.2的接口也有两种不同的规格,分别是“socket2”(B key)和”socket3”(M key)。看似都是M.2接口,但其支持的协议不同,对速度的影响可以说是千差万别,M.2接口目前支持两种通道总线,一个是SATA总线,一个是PCI-E总线。
当然,SATA通道由于理论带宽的限制,极限传输速度也只能到600MB/s,但PCI-E通道就不一样了,理论硬盘接口速度高达32Gb/s。所以看似都为M.2接口,但走的“道儿”不一样,速度自然也就有了差别。
由于很好的平衡了速度、体积和成本等优势,M.2接口的固态硬盘已经成为主流,尤其在笔记本电脑领域中得到广泛利用。
最后
目前,市面上主要以SATA和M.2接口的固态硬盘为主,前者能够方便老电脑的升级,而后者得益于在各方面的平衡优势在近几年的主板和新电脑中占据主导地位。至于PCIe和mSATA接口的固态硬盘,受限于成本和速度等因素,如今已不常见。