固态硬盘(SSD)不同的接口

固态硬盘(SSD)不同的接口,第1张

固态硬盘 (SSD) 很快对这些接口提出了新的重大性能要求,因为 SSD 的数据速率已经从几十 MB/sec 增加到GB/sec 。除了数据速率的增长,SSD 中缺乏机械运动也导致了每秒钟输入和输出 *** 作的数量(IOPS) 增加,即存储设备能够实现的 IOPS 数量。这篇文字讨论了不同的接口,并且对所遇到的各种性能和兼容性权衡进行了比较。

《企业级和消费级SSD汇总》1、企业级SSD:三大替代构筑行业高增长,国产替代空间广阔2、中国企业有机会在3D NAND Flash领域实现弯道超3、消费级闪存指南4、企业级SSD接口比较5、中国企业级SSD行业发展洞察

SATA 接口

SATA 是为点到点连接设计的一种低成本接口,可以通过线缆或者印刷线路板 (PCB) 走线实现。主机连接面向高级主机控制器接口 (AHCI),通常驻留于主机芯片集上面,如同主机适配器位于 PCIe 总线上面。这个接口有几个设计问题,可能使得每个指令产生 1μs 或更多总线开销。对于一个 4KB 传输需要 10μs 的 HDDs 来说,这不是主要的问题,但是 SSD 能够在 2μs 或者更少之内传输 4KB 数据——因而这个开销变得更值得注意,SATA 接口无兴趣成为一个高性能海量存储接口。

SATA 仍然适合用作低成本 SSD 接口,在这里,成本 而非性能是主要的决定因素。SATA 架构也可以合并到一个管理 SATA 指令集的主机适配器中,并不会真正包含物理的 SATA 接口 (PHY) (图 1)。

固态硬盘(SSD)不同的接口,7e862530-37ac-11ed-ba43-dac502259ad0.png,第2张

SAS 接口

SAS 也是一个串联接口,通过一个主机适配器添加到主机中,但是也有明显的区别,使其成为一个适当的 SSD 接口:• 更少的硬件开销• 更快的传输速率• 宽端口• 有效的硬盘控制器接口

另外,SAS 包括 SATA 所不具备的功能,这些功能能够提升连接到接口的设备的可靠性和可用性:• 健壮的串口协议• 支持多主机• 端到端数据整合• 双端口容量• 高度并发和聚合

SAS 没有一个可等同于 SATA AHCI 控制器的通用主机接口。相反,SAS 主机适配器市场中有多个供应商相互竞争,在这里性能是主要的决定因素——并不仅仅是对于单个的 HDDs 接口,也面向不同的 RAID 系统,在这些系统中多个 HDD主轴的传输速率将会聚合到一起,从而提高传输速率。另外,SAS 主机适配器是为管理高性能SSD 和 HDDs 而设计(例如短击15K-RPM 硬盘)。因为硬件主机适配器和管理该主机适配器的硬盘被设计为一个系统,为 SSD 设计的产品经过优化,开始变得可用,并且进一步提升了传输速率以及 IPOS。

宽端口是 SAS 架构固有的理念——多个连接被聚合到一起,从而允许一个或多个主机与设备之间存在多个同步路径。目前的 SAS 设备连接器为设备定义两个端口。作为一种设计选择,目前的 HDDs 不支持宽端口——只有双端口,每个端口拥有不同的 SAS 地址,阻止其配置成为一个宽端口。

接受的SAS-3(12Gb/秒)协议允许硬盘上面的端口增加到 4 个,所有这些都连接到相同的域,或者成对连接到不同的域。非常受限的 SSD 数量可能在双端口设备上面支持宽端口(除了双端口以外)。

SAS 串口协议为串行传输者和接收者提供训练。通过对信道长度、阻抗失配和信号间干扰进行补偿,提升了线缆或者背板上面的信号质量。SAS 串口协议也管理硬件级别的错误检测和重传。从而使得间断信号可以迅速得到恢复。

SAS 目标设备支持双端口 *** 作。这样能够创建两个故障域,并提供更高的可用性。即使故障发生在一个连接到端口的路径,并且该端口阻止通过该路径访问,还是可以通过第二个端口访问该设备。

从历史的观点来说,希捷从市场中采购硬盘接口。希捷与 SCSI (STA) 同业公会以及其他行业领导者合作,充分利用已经广泛部署的 SAS 基础设施(图 2)。表 1 显示了 12Gb/秒 SAS 和多链接为系统构建者和最终用户组织带来的好处。

固态硬盘(SSD)不同的接口,7ea2aa3e-37ac-11ed-ba43-dac502259ad0.png,第3张

PCI Express接口

PCI Express (PCIe) 是连接外围设备和主机处理器的主要接口,通过存储控制器连接到系统中的存储架构。SATA 和之前讨论的 SAS 接口都是通过PCIe 接口(或者主机适配器)连接到主机处理器和内存中。

固态硬盘(SSD)不同的接口,7ec42ce0-37ac-11ed-ba43-dac502259ad0.png,第4张

PCIe 接口是原始的 PCI 接口的串行实现,该原始接口在外围设备和主机处理器/内存之间提供并行的地址/数据连接。PCIe 接口通信是通过一条或者多条线路实现的,每条线路具有一个传输和接收串行接口。最多可以使用 32 条线路来连接主机和设备。每条线路上面的串行数据速率取决于所采用的 PCIe 标准的版本,当前的版本是3.0,数据速率大约为 1GB/s。

对于一个 1U 用户,PCIe 接口设计为,使用一个(客户)母板上面的单一连接器,或(服务器)母板上面的两个连接器,直角适配器。布线系统也是可用的(尽管很少使用)。一个 2U、4U 或7U 服务器具有多个 PCIe 插槽,类似于客户端应用。PCIe 规格也采用传输端(及接收端)训练以适应配置的阻抗变化,但是它目标是作为比SAS 更短的传输信道。

PCIe 开关支持单根 I/O 虚拟化 (SR-IOV) 和多根I/O 虚拟化 (MR-IOV)——这些方法用于提升虚拟系统(管理程序)中的控制器性能。这些虚拟带有单主机或多主机。SR-IOV 刚刚在适配器中开始成为普遍可用的;不过,VMware 可能还没有充分利用它的优势。MR-IOV 在适配器上面通常是不被支持的。

固态硬盘(SSD)不同的接口,7ee3e724-37ac-11ed-ba43-dac502259ad0.png,第5张

使用 PCIe 接口连接的存储设备通过直接注册器连接,或者通过主机适配器连接,该主机适配器接下来通过额外的线缆或者背板型接口连接到设备。

目前,这两种架构都有很多不同的实现。SATA 在系统芯片集(南桥)中使用主机总线适配器实现—— IntelAMD AHCI——需要不同的 AHCI,但是映射到兼容的 IDE 遗产实现。这些接口也应用不同的 RAID 管理功能。

SAS 具有多个 HBAs 供应商,具有额外的扩展卡和可用的 RAID 控制器,所有这些都使用专有的设备驱动器和 BIOS 以满足不同的性能和配置需求。

PCIe 驱动控制器接口通过 NVM Express 规格和推荐的 SCSI over PCIe (SOP) 规格实现。SATA 合并下文中描述的架构,是 PCIe 直接注册器连接的又一个实例。

SOP 和 NVMe 两种方法的架构是类似的。不过,NVMe 正在由一个产业工作组开发,而SOP 是由公认的开放式标准论坛开发。NVMe仅仅以非易失内存设备的应用为目标,而 SOP也以使用主机总线适配器和 RAID 控制器(带有不同的 SOP 设备之间的桥接功能)为宗旨。

另外,SOP 着重体现现有的产业架构和功能,而 NVMe 使用一个新的受限制的指令集和排队接口。

上述的每一种存储架构都具有各自的优势,也存在一定的问题。取决于总体的系统设计,使用特定架构的好处可能比该架构带来的问题更加明显,因此,需要仔细分析才能做出适当的决定。

这个决定也必须考虑兼容现有的系统设计。例如,使用 SSD 升级一个具有 2.5-inch SATAHDD 的笔记本电脑,并且该 SSD 具有相同的物理大小和相同的(或更新)SATA 接口。在这种情况下,对于 SSD 速度有多快将会有一个限制;超出现有主机 SATA 接口速度则不会提升系统的性能。

在一个类似的情境中,一台使用短击 15K-RPM SAS HDD 存储数据索引的企业级服务器可以进行升级,使用 SAS SSD,从而提升系统的整体性能,但是只能达到其他系统因素成为新的瓶颈的程度(CPU、内存、网络、适配器等)。

在一个新的系统架构中,增加固态存储能够明显提高系统性能,但是最多只能达到系统架构的其他部分能够支持的数据速率和带宽。SSD 中的快速数据传输速率也需要有更多的电能提供给设备,并且还有更多的热量被消耗,不管 SSD 安装在哪里。

固态硬盘(SSD)不同的接口,7ef61ed0-37ac-11ed-ba43-dac502259ad0.png,第6张

固态硬盘(SSD)不同的接口,7f067c08-37ac-11ed-ba43-dac502259ad0.png,第7张

在探讨什么因素造成延迟,以及在真实环境下如何影响应用性能这些问题时,存在很多误解。当考虑这方面的问题时,聚集于整体状况是相当重要的,而不仅仅是其中的一部分。

在 SSD 中,大部分延迟是由 flash 部分本身造成的。SLC 访问时间是 25µs+;MLC 访问时间是50µs+,两者均假设没有访问竞争。随着队列深度增加,争夺 flash 部分的访问资源可能导致延迟明显增加。

一但一个 flash 部分开始访问,其他请求相同部分的则必须等待。多达 8 个 flash die 共享一条公用的总线,这样使得 die 一直等待,直到轮到该 die 使用总线。家务活动增加了额外的延迟(地址转换、垃圾收集、损耗平衡等)。

另外一个方面是 *** 作系统,它添加了延迟,无论访问协议和互连如何。这些包括文件系统、卷管理器、类驱动器和上下文交换开销。协议和互连差异对延迟的影响非常有限,应用程序可以忽略此影响。

审核编辑:汤梓红

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2997760.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-09-26
下一篇 2022-09-26

发表评论

登录后才能评论

评论列表(0条)

保存