SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解固态硬盘概念固态驱动器(SolidStateDrive),俗称固态硬盘,固态硬盘是用固态电子存储芯片阵列而制成的硬盘,因为台湾英语里把固体电容称之为Solid而得名。SSD由控制单元和存储单元(FLASH芯片、DRAM芯片)组成。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也完全与普通硬盘一致。被广泛应用于军事、车载、工控、视频监控、网络监控、网…

大家好,又见面了,我是你们的朋友全栈君。

固态硬盘

概念

固态驱动器(Solid State Drive),俗称固态硬盘,固态硬盘是用固态电子存储芯片阵列而制成的硬盘,因为台湾英语里把固体电容称之为Solid而得名。SSD由控制单元和存储单元(FLASH芯片、DRAM芯片)组成。固态硬盘在接口的规范和定义、功能及使用方法上与普通硬盘的完全相同,在产品外形和尺寸上也完全与普通硬盘一致。被广泛应用于军事、车载、工控、视频监控、网络监控、网络终端、电力、医疗、航空、导航设备等诸多领域。

其芯片的工作温度范围很宽,商规产品(0~70℃)工规产品(-40~85℃)。虽然成本较高,但也正在逐渐普及到DIY市场。由于固态硬盘技术与传统硬盘技术不同,所以产生了不少新兴的存储器厂商。厂商只需购买NAND存储器,再配合适当的控制芯片,就可以制造固态硬盘了。新一代的固态硬盘普遍采用SATA-2接口、SATA-3接口、SAS接口、MSATA接口、PCI-E接口、NGFF接口、CFast接口、SFF-8639接口和M.2 NVME/SATA协议。

 

接口

目前固态硬盘的主要接口有:

SATA接口

作为目前应用最多的硬盘接口,SATA 3.0接口最大的优势就是成熟。普通2.5英寸SSD以及HDD硬盘都使用这种接口,理论传输带宽6Gbps,虽然比起新接口的10Gbps甚至32Gbps带宽差多了,但普通2.5英寸SSD也没这么高的需求,500MB/s多的读写速度也够用。

 

 

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

mSATA接口

mSATA接口,全称迷你版SATA接口(mini-SATA)。是早期为了更适应于超级本这类超薄设备的使用环境,针对便携设备开发的mSATA接口应运而生。可以把它看作标准SATA接口的mini版,而在物理接口上(也就是接口类型)是跟mini PCI-E接口是一样的。

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

 

mSATA接口是SSD小型化的一个重要过程,不过mSATA依然没有摆脱SATA接口的一些缺陷,比如依然是SATA通道,速度也还是6Gbps。诸多原因没能让mSATA接口火起来,反而被更具升级潜力的M.2 SSD所取代。

 

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

M.2接口

M.2接口是Intel推出的一种替代mSATA的新的接口规范,也就是我们以前经常提到的NGFF,即Next Generation Form Factor。

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

 

M.2接口的固态硬盘宽度22mm,单面厚度2.75mm,双面闪存布局也不过3.85mm厚,但M.2具有丰富的可扩展性,最长可以做到110mm,可以提高SSD容量。M.2 SSD与mSATA类似,也是不带金属外壳的,常见的规格有主要有2242、2260、2280三种,宽度都为22mm,长度则各不相同。

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

 

不仅仅是长度,M.2的接口也有两种不同的规格,分别是“socket2”和”socket3”

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

 

看似都是M.2接口,但其支持的协议不同,对其速度的影响可以说是千差万别,M.2接口目前支持两种通道总线,一个是SATA总线,一个是PCI-E总线。当然,SATA通道由于理论带宽的限制(6Gb/s),极限传输速度也只能到600MB/s,但PCI-E通道就不一样了,带宽可以达到10Gb/s,所以看似都为M.2接口,但走的“道儿”不一样,速度自然也就有了差别。

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

 

上图为M.2接口走SATA通道的速率

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

 

上图为M.2接口走PCIE通道的速率

 

M.2接口(NVMe协议)

NVM Express(NVMe),或称非易失性内存主机控制器接口规范(Non-Volatile Memory express),是一个逻辑设备接口规范。他是与AHCI类似的、基于设备逻辑接口的总线传输协议规范(相当于通讯协议中的应用层),用于访问通过PCI-Express(PCIe)总线附加的非易失性内存介质,虽然理论上不一定要求 PCIe 总线协议。

此规范目的在于充分利用PCI-E通道的低延时以及并行性,还有当代处理器、平台与应用的并行性,在可控制的存储成本下,极大的提升固态硬盘的读写性能,降低由于AHCI接口带来的高延时,彻底解放SATA时代固态硬盘的极致性能。

NVMe具体优势包括:

①性能有数倍的提升;

②可大幅降低延迟;

③NVMe可以把最大队列深度从32提升到64000,SSD的IOPS能力也会得到大幅提升;

④自动功耗状态切换和动态能耗管理功能大大降低功耗;

⑤NVMe标准的出现解决了不同PCIe SSD之间的驱动适用性问题。

延时更低:

说到NVMe标准对比AHCI标准的优势,其中之一就是低延时。因为AHCI标准本身就是为高延迟的机械硬盘而设,虽然SSD发展至今,主流产品已经开始不能满足性能的高速发展,特别是在延迟方面。而面向SSD产品的NVMe标准,降低存储时出现的高延迟,就是其要解决的问题之一。

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

NVMe SSD可有效降低延迟(图片来自网络)

在软件层方面,NVMe标准的延时只有AHCI的一半不到,NVMe精简了调用方式,执行命令时不需要读取寄存器;而AHCI每条命令则需要读取4次寄存器,一共会消耗8000次CPU循环,从而造成大概2.5微秒的延迟。

IOPS大增:

NVMe的另一个重点则是提高SSD的IOPS(每秒读写次数)性能。目前市面上性能不错的SATA接口SSD,最多只会测试到队列深度为32的IOPS能力,其实终究原因这是AHCI的上限,其实许多闪存主控可以提供更好的队列深度。而NVMe则可以把最大队列深度从32提升到64000,SSD的IOPS能力也会得到大幅提升。

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

队列深度的大幅提升(图片来自网络)

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

 

低延时和良好的并行性的优势就是可以让SSD的随机性能得到大幅度提升,这是950PRO系列SSD的现场跑分,它的随机性能表现绝对是一流的,在任何队列深度下都能发挥出极佳的速度。

功耗更低:

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

更先进的能耗管理(图片来自网络)

NVMe加入了自动功耗状态切换和动态能耗管理功能,设备从能耗状态0闲置50ms后可以迅速切换到能耗状态1,在500ms闲置后又会进入能耗更低的状态2。虽然切换能耗状态会产生短暂延迟,但闲置时这两种状态下的功耗可以控制在非常低的水平,因此在能耗管理上,相比起主流的SATA接口SSD拥有较大优势,这一点对增加笔记本电脑等移动设备的续航尤其有帮助。

驱动适用性广:

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

主流操作系统逐渐开始支持NVMe(图片来自网络)

NVMe标准的出现解决了不同PCIe SSD之间的驱动适用性问题,NVMe SSD可以很方便的匹配不同的平台、系统,无需厂家提供相应的驱动就可以正常工作,目前WindowsLinux、Solaris、Unix、VMware、UEFI等都加入了对NVMe SSD的支持。

 

PCI-E接口:

在传统SATA硬盘中,当我们进行数据操作时,数据会先从硬盘读取到内存,再将数据提取至CPU内部进行计算,计算后写入内存,存储至硬盘中;而PCI-E就不一样了,数据直接通过总线与CPU直连,省去了内存调用硬盘的过程,传输效率与速度都成倍提升。简单的说,我们可以把两种通道理解成两辆相同的汽车,PCI-E通道的汽车就像是在高速上行驶,而SATA通道的汽车就像是在崎岖山路上行驶。很显然,PCI-E SSD传输速度远远大于SATA SSD。

SATA、mSATA、M.2、M.2(NVMe)、PCIE固态硬盘接口详解

 

目前PCI-E接口通道有PCI-E 2.0 x2及PCI-E 3.0 x4两种,最大速度达到32Gbps,可以满足未来一段时间的使用,而且早期PCI-E硬盘不能做启动盘的问题早解决,现在旗舰级SSD大多会选择PCI-E接口。

虽然PCI-E SSD有诸多好处,但也不是每个人都适合。PCI-E SSD由于闪存颗粒和主控品质问题,总体成本较高,相比传统SATA固态硬盘价格贵一些。另外,由于PCI-E会占用总线通道,入门以及中端平台CPU通道数较少,都不太适合添加PCI-E SSD,只有Z170,或者是X79、X99这样顶级平台,才可以完全发挥PCI-E SSD的性能。总的来说,如果你是一个不差钱的土豪,那么就 PCI-E SSD吧!

 

好了,带客官看过这么多固态硬盘的接口,相信这篇文章也一定能让你学到不少的知识。对于固态硬盘又多了更多的了解,希望可以帮助到大家。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/130174.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • CCriticalSection类的使用「建议收藏」

    CCriticalSection类的使用「建议收藏」当多个线程访问一个独占性共享资源时,可以使用“临界区”对象。任一时刻只有一个线程可以拥有临界区对象,拥有临界区的线程可以访问被保护起来的资源或代码段,其他希望进入临界区的线程将被挂起等待,直到拥有临界区的线程放弃临界区时为止,这样就保证了不会在同一时刻出现多个线程访问共享资源。      CCriticalSection类的用法非常简单,步骤如下:      定义CCrit

    2022年7月20日
    20
  • 超详细的tomcat的下载安装和配置教程「建议收藏」

    超详细的tomcat的下载安装和配置教程「建议收藏」tomcat运行的前提是安装并配置了JDK,若没有安装配置JDK,先去安装配置JDK。如下链接:JDK_1.8的下载安装和环境变量的配置【详细步骤】一、下载tomcat1.进入tomcat的下载tomcat下载官网2.点击进入,点击:v8.5.73/3.选择bin4.选择:apache-tomcat-8.5.73-windows-x64.zip,点击即可下载二、tomcat安装1.解压到指定的位置,我解压后的如下2.配置环境变量①配置环境变量,此电脑—>属性—&gt

    2022年5月19日
    34
  • 初识python廖雪峰_Python3-廖雪峰学习笔记「建议收藏」

    初识python廖雪峰_Python3-廖雪峰学习笔记「建议收藏」Key-value存储方式,在放进去的时候,必须根据key算出value的存放位置,这样,取的时候才能根据key直接拿到valuedict是用空间来换取时间的一种方法,用在需要高速查找的地方。dict的key必须是不可变对象通过key计算位置的算法称为哈希算法,要保证hash的正确性,作为key的对象就不能变的对象a的内容是’abc’,是指,a本身是一个变量,它指向的对象的内容才是abc’对于不变…

    2025年7月7日
    2
  • 安全帽识别软件使用中常见问题分析[通俗易懂]

    安全帽识别软件使用中常见问题分析[通俗易懂]一、安全帽识别软件的主要功能是什么?安全帽识别是通俗的说法,相对准确的名称应该是安全帽佩戴检测,是用深度学习的算法对视频流进行分析,通过人工智能来判断视频中的人是否未佩戴安全帽,如果未佩戴,则触发告警规则。二、安全帽识别软件的技术成熟吗?2012年人工智能领域的卷积神经网络迎来重大突破,深圳强美随即将此尖端技术应用于工业安全监控,因为掌握海量样本数据的先天优势,鹰眸安全帽(佩戴检测)识别系…

    2022年5月19日
    54
  • html中表单的校验的插件,jquery表单验证插件validationEngine「建议收藏」

    html中表单的校验的插件,jquery表单验证插件validationEngine「建议收藏」插件的特色:封装强悍、例子充足(基本都验证类型都被囊括)、调用轻便注意事项:1.演示版本为v2.2.4;2.v2.0以下的版本参数并不完全通用;对validationEngine.jquery.css文件进行修改,修改如下:1.提示内容字体改为宋体;2.去除中各浏览器的私有属性(各浏览器已经支持圆角和阴影,不再需要加私有属性)。对jquery.validationEngine.js文件…

    2022年9月28日
    2
  • python猴子摘桃问题_python解决简单实际问题

    python猴子摘桃问题_python解决简单实际问题如何实现猴子摘香蕉问题,只需要几点即可1.猴子与箱子的位置关系2.箱子与香蕉的位置关系3.猴子有无摘到香蕉猴子摘到香蕉的前提条件1.猴子与箱子在一起2.箱子与香蕉在一起3.猴子在箱子上面4.猴子没有摘到香蕉猴子可能存在的几种位置状态1.箱子和猴子不在一起2.猴子跟箱子在一起且不跟香蕉在一起3.猴子不在箱子上并且猴子跟箱子在一起4.猴子在箱子上并且箱子跟香蕉在一起以及猴子没有摘取香蕉5.猴子在箱子上但箱子不跟香蕉在一起6.猴子取到香蕉根据上述开始

    2022年9月26日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号