聊聊固态硬盘(SSD)的接口和协议

固态硬盘固态驱动器(英语:Solid-state drive或Solid-state disk,简称SSD)是一种以集成电路制作的电脑存储设备。

最近如果你要买SSD,可能会频繁接触到M.2,NVMe,PCIe这几个名词。我上一次单独买SSD时,虽然已经是M.2接口了,但是当时没见NVMe协议,最近正好关心了SSD,就正好接机学习了解下。

  1. 接口:M.2是一种接口规范,与之类似的有U.2SATA接口mSATA接口,SATA Express接口,PCIe接口等。
    注意:SATA同时也是一种系统总线的名称,所以要区别SATA接口和SATA总线。SATA Express协议使用的接口是由两个传统的SATA样式的接口和一个小接口组成,因此也能当作两个SATA来用。
  2. 逻辑设备接口规范NVMe(NVM Express,或者Non-Volatile Memory Host Controller Interface Specification (NVMHCIS),AHCI(Advanced Host Controller Interface)
  3. 总线: SATA,SATA Express,PCI,PCI Express(PCIe)

 

下面这个短视频有很生动的介绍:

https://www.youtube.com/watch?v=alb6-zp52mA&t=505s

NVM Express(缩写NVMe),或称非易失性内存主机控制器接口规范(英语:Non-Volatile Memory Host Controller Interface Specification,缩写:NVMHCIS),是一个逻辑设备接口规范。它是基于设备逻辑接口的总线传输协议规范(相当于通讯协议中的应用层),用于访问通过PCI Express(PCIe)总线附加的非易失性存储器介质(例如采用闪存固态硬盘驱动器),虽然理论上不一定要求PCIe总线协议。NVMe是一种协议,是一组允许SSD使用PCIe总线的软硬件标准;而PCIe是实际的物理连接通道。

所以当下性能最佳的SSD的技术方案组合应该是:M.2接口+NVMe+PCIe。早些年在NVMe普及之前,有M.2接口+AHCI+SATA的SSD。SATA接口+AHCI+SATA总线的SSD也有,估计都是没有M.2接口的老电脑升级用吧,现在京东上都还有卖的。

 

References:

https://zh.wikipedia.org/wiki/PCI_Express

https://zh.wikipedia.org/wiki/SATA

https://zh.wikipedia.org/wiki/SATA_Express

       (SFFWG Renames PCIe SSD SFF-8639 Connector To U.2)

https://zh.wikipedia.org/wiki/NVM_Express

https://zh.wikipedia.org/wiki/M.2