什么是SATA Express?

更新版本的SATA如何提高PC速度

SATA或串行ATA在计算机存储方面取得了巨大成功。 界面上的标准化可以简化计算机和存储设备之间的安装和兼容性。 问题在于串行通信的设计已经达到了极限,许多固态驱动器受到接口性能的限制而不是驱动器。 正因为如此,需要开发计算机和存储驱动器之间新的通信标准。 这是SATA Express为弥补性能差距而采取的措施。

SATA或PCI-Express通信

现有的SATA 3.0规格仅限于6.0Gbps带宽,大约可以达到750MB / s。 现在接口和所有的开销,这意味着有效的性能被限制在600MB / s。 目前许多固态硬盘已经基本达到这个极限,需要某种形式的更快的接口。 SATA Expess是其中一部分的SATA 3.2规范,它允许设备选择是否要使用现有的SATA方法,确保与旧设备的后向兼容或使用更快的PCI ,从而在计算机和设备之间引入了新的通信手段- 高速巴士。

传统上,PCI-Express总线用于CPU和外围设备(如图形卡,网络接口,USB端口等)之间的通信。根据当前的PCI-Express 3.0标准,单个PCI-Express通道最多可处理1GB / s使其比当前的SATA接口更快。 这是一条PCI-Express通道可以实现的,但设备可以使用多条通道。 根据SATA Express规范,带有新接口的驱动器可以使用两条PCI-Express通道(通常被认为是x2),具有2GB / s的潜在带宽,几乎是之前SATA 3.0速度的三倍。

新的SATA Express连接器

现在新的界面还需要一个新的连接器。 它可能看起来有些相似,因为连接器实际上将两个SATA数据连接器和第三个稍微小一点的连接器组合在一起,该连接器处理基于PCI-Express的通信。 两个SATA连接器实际上是全功能的SATA 3.0端口。 这意味着计算机上的单个SATA Express连接器可以支持两个较旧的SATA端口。 当您想要将更新的基于SATA Express的驱动器插入连接器时,会出现问题。 无论驱动器是基于旧的SATA通信还是较新的PCI-Express,所有SATA Express连接器都将使用全宽。 所以,一个SATA Express可以处理两个SATA驱动器或一个SATA Express驱动器。

那么,为什么基于PCI-Express的SATA Express硬盘不使用单个第三个连接器而不是两个SATA端口? 这与基于SATA Express的驱动器可以使用任何一种技术的事实有关,因此它需要两者都具有接口。 除此之外,许多SATA端口都与PCI-Express通道相连,以便与处理器进行通信。 通过直接将SATA-Express接口与SATA Express驱动器配合使用,您可以切断与连接到该接口的两个SATA端口的通信。

命令接口限制

SATA实际上是在设备和计算机中的CPU之间传递数据的一种方式。 除了这一层之外,还有一个命令层在其上运行,以发送关于应该写入存储驱动器和从存储驱动器读取的命令的命令。 多年来,这一切都由AHCI(高级主机控制器接口)处理。 这已经非常标准化,基本上可以写入目前市场上的所有操作系统。 这有效地使SATA驱动器即插即用。 不需要额外的驱动程序。 虽然这项技术与较慢的较旧技术(如硬盘驱动器和USB闪存驱动器)运行良好,但它确实阻挡了更快的SSD。 问题是,虽然AHCI命令队列可以在队列中保存32条命令,但由于只有一个队列,因此它一次只能处理一条命令。

这是NVMe(非易失性存储器快速)命令集进入的地方。它总共具有65,536个命令队列,每个命令队列可以保存每队列65,536个命令。 实际上,这允许并行处理存储命令到驱动器。 这不利于硬盘驱动器,因为驱动器头仍然有效地限制为单个命令,但是对于具有多个存储器芯片的固态驱动器,它可以通过同时向不同的芯片和单元写入多个命令来有效地增加它们的带宽。

这听起来不错,但有一点问题。 这是一项新技术,因此它不适用于市场上大多数现有操作系统。 实际上,大多数需要安装额外的驱动程序,以便驱动器可以使用新的NVMe技术。 这意味着为SATA Express驱动器部署最快的性能可能需要一些时间,因为软件必须与AHCI的首次引入类似。 值得庆幸的是,SATA Express允许驱动器使用这两种方法中的任何一种,因此您仍然可以使用AHCI驱动程序中的新技术,稍后可能会转向更新的NVMe标准以提高性能,尽管可能需要重新格式化驱动器。

通过SATA 3.2规格添加了SATA Express的一些其他功能

现在,新的SATA规范不仅增加了新的通信方法和连接器。 他们中的大多数都是针对移动计算机的,但也可以让其他非移动计算机受益。 最显着的省电功能是新的DevSleep模式。 这实质上是一种新的电源模式,它允许存储系统几乎完全关闭,从而减少睡眠模式下的功耗。 这应该有助于提高特殊笔记本电脑的运行时间,包括围绕SSD设计的超极本和低功耗。

SSHD(固态混合驱动器)的用户也将从新标准中受益,因为他们已经投入了一套新的优化。 在当前的SATA实施中,驱动器控制器将根据它看到的要求确定哪些项目应该缓存并且不应该缓存。 使用新的结构,操作系统可以基本上告诉驱动器控制器它应该保存在缓存中哪些项目,这可以减少驱动器控制器上的开销并提高性能。

最后,还有一个用于RAID驱动器设置的功能。 RAID的用途之一是数据冗余。 如果发生驱动器故障,驱动器可能会被更换,然后数据将从校验和数据中重建。 实质上,他们已经在SATA 3.2标准中建立了一个新流程,通过识别哪些数据被损坏而不是哪些数据可以帮助改进重建流程。

实施和为什么没有抓住

自2013年底以来,SATA Express一直是官方标准,但直到2014年春季发布英特尔H97 / Z97芯片组之前,它还没有开始进入计算机系统。即使现在具有新界面的主板也有在启动时没有驱动器可以使用新界面。 这可能是因为围绕操作系统支持新命令排队以充分利用SATA Express的问题。 至少目前的实现允许SATA Express连接器与现有的SATA驱动器配合使用。 这应该有助于缓解那些在驱动器可用之后现在就购买技术的实施。

接口尚未真正引起注意的原因在于M.2接口。 这是专门用于使用笔记本电脑中使用的较小外形的固态驱动器,也适用于台式机系统。 硬盘仍然很难超越SATA标准。 M.2具有更多的灵活性,因为它不依赖于较大的驱动器,但也可以使用四条PCI-Express通道,这意味着比两条SATA Express更快的驱动器。 在这一点上,消费者可能永远也看不到SATA Express被采用。