背景
2003 年 PCI Express 1.0a 规范发布,这是计算机世界的高速串行总线结构,其可用带宽大大超过了以前计算机体系结构的并行总线。并行总线依靠极高的引脚数总线连接,这限制了在更高的时钟频率的能力的扇出水平, PCI Express 1 规范成为一个知名、低成本、高度可伸缩的、可交换的和点到点的串行 I/O 互连,而且与 PCI 总线保持完全的软件兼容性。 PCI Express1 通过差分方式以高达 2.5 Gbps 的数据传输,每一个方向(发送和接收)都有 独立的高速信号对集。每一组发送和接收对都 统称为“道”。为了扩大和实现更高的互连带宽, PCI Express 规范允许更多的道添加到链接中。基本 PCIExpress 配置: X1 ( 1 道高速数据), X4 ( 4 道高速数据)、 X8 ( 8 道 高速数据),和 x16 ( 16 道高速数据)。
作为一个串行总线, PCI Express 使用数据包来发送和接收数据。一个循环冗余校验( CRC )有助于验证来自链路的数据是否被正确接收。 序列号确保实现正确的分组排序。由于 PCI Express 是 点到点架构, PCI Express 交换机可以把多个 PCI Express 段连接在一起。 而在某种程度上,交换机的功能类似于 更熟悉的网络交换机设备,从软件 / 架构的角度来看,交换机 像一组相互连接的 PCI 到 PCI 的桥来确保使用 PCI 总线和现有软件的兼容性。
在主板上 PCI Express 插槽替代了 PCI 和 PCI-X 插槽。主机芯片组允许处理器、内存和 PCI Express 板总线之间高带宽总线的连接 。即使是比较便宜的低端主板
一般至少有一个 x16 PCI Express 插槽上,允许一个 PCI Express 显卡。
PCI 外箱
由于它的串行 I/O 架构,与主机系统之外进行电缆传输, PCI Express 接口是一个很好的选择。 PCI Express 外部电缆规范 1.0 修订版于 2007 年 1 月发表。使用适当设计的主机总线适配器( HBA ),一个 PCI Express 电缆,和一个单元,将允许电缆的 PCI Express 接口被带到一个或多个 PCI Express 插槽或设备中,现在主机的内部 I/O 总线可以扩展到主机机箱的范围之外。由于固有 PCI Express 接口的兼容性,主机机箱外部的设备似乎就在“本地”,允许在不改变现有软件的情况下访问 / 从主机系统访问。
PCI Express 扩展示例框图
下面是一个 PCI Express 扩展系统的概念框图和它的与主机系统的关系。
PCI Express 扩展的好处
系统设计者在他们设计和指定的产品中考虑 PCI Express 扩展使用的原因有很多:
• 克服了主机系统中没有足够数量的扩展槽的问题。
•克服主机系统中缺少完整的扩展插槽。
•克服主机系统缺乏足够的供电能力。
• 允许冷却系统以外的高功率设备冷却
•允许在扩展系统中使用对等通信,而不是总是根据芯片组配置允许在主机插槽之间
•允许使用低配置服务器的处理能力和内存容量
•允许更模块化的系统设计,其中扩展系统侧重于独立于主机系统选择的特定 I/O 和处理元素
•允许从主机系统物理地分离 I/O 和处理元素出于功能和环境原因
主机系统扩展槽
而现代台式机和服务器计算机通常有大量的处理。 容量和系统内存,它们可能无法提供足够大的数量。 特定应用程序的扩展槽。通过使用一个或多个自由 x8 或 x16 PCI Express
槽( S )扩展系统 HBA 在主机系统( S )、 PCI Express 扩展槽 系统的能力可以通过增加 8 到 16 个槽。此外,由于机械和 / 或包装考虑许多主机系统不允许将全长 PCI Express 卡安装到其扩展中。通过使用扩展系统 它自己的专用的机箱,所有额外的插槽可用于全长 PCI Express 卡。
主机电源
许多主机系统,特别是那些作为预配置单元购买的系统,都是 只提供有限的电源。超出系统核心组件(处理器、内存等)的供电一般不行。许多系统限制电源性能主要有两个原因:成本和冷却。电脑类 制造商们正在与不断下降的利润率竞争,如果他们觉得只有他们的一小部分客户用到额外电源, 他们是不会增加额外电源的,因为这样他们将整体增加成本。此外,通过限制系统的电力供应,制造商也限制了功率(热量)的消耗。 他们的机箱中散热的限制有效地影响冷却 / 风扇的要求。 冷却 / 风机需求的限制对系统成本的影响也是很大的。通过连接同一主机系 统到扩展机箱,可以迁移 I/O 和处理元素, 整个系统能获得额外的 3200 瓦以上的供电能力和匹配的散热能力。 此外,扩展系统可以由多种电源供电,像 AC 、 DC 、双冗余和热交换功能的方案。
点对点通信
许多应用程序使用 I/O 和处理模块,这些模块不仅与主机和系统内存,但也有和彼此之间通信。 PCI Express 扩展系统是允许这种通信的理想架构。由于 PCI Express 插槽是 使用基于交换机的拓扑互连,扩展系统内的流量可以在插槽之间流通,不需要跨越关键的主机数据路径。扩展系统中交换机的数据传输能力针对低延迟、对等网络进行了优化,通过允许 PCI Express 数据包直接从输入端口到输出 ,而不需要在转发之前经过存储数据包的端口。此外,还有许多 主机系统、点对点通信不允许在任何和所有扩展槽之间。这种限制可能是因为芯片组内的体系结构考虑。 由于主机内并非所有扩展插槽都连接到同一个 I/O 总线。 在这种情况下,只允许在插槽和 主机 / 系统内存进行通信。用于扩展系统的 PCIe 开关没有这个
限制,所有插槽之间能实现点对点通信。
低配置的服务器
现代低配的服务器设备为当今的系统设计者提供了一个低成本的解决方案。 将大量的处理单元和主机内存合并到系统中。 然而,低配的服务器 PCI Express 扩展插槽功能仅限于单个和非全长槽。当系统设计者选择嫁给一个低成本的服务器,功能强大、成本低、占用空间小。 PCI Express 扩展系统的灵活性和实用性以及和处理存储之间的匹配 和 I/O 功能是理想的选择。
模块化系统设计
对于许多应用程序,主机系统的选择不是关键的或关键的部分。 高度兼容的服务器或桌面工作站的 硬件允许系统设计人员指定所遇到的任何硬件平台符合或超过应用程序的特定要求可以使用。部分 通用主机系统无法满足应用程序的硬件需求是 I/O 。 或特定于应用程序的处理模块。通过“打包” I/O 和特定的应用程序 将处理元素转换成 PCI Express 扩展系统, 设计者可以创建模块化与主机系统独立的系统。这种模块化的方法 还允许客户选择满足其特定要求的主机系统硬件需求(供应商偏好、特殊偏好等)。
物理分离
某些应用程序具有主机系统和 I/O 设备的偏好,要求物理分离。分离要求可以是环境、安全或
系统因素。例如,一些测试工程师将指定一个 PCI Express 扩展系统。 用于 I/O 板的环境测试。为了正确测试 I/O 板,板子必须安装在一个环境中。许多主机系统不是或不能 够承受 I/O 板测试所需的环境。通过在环境舱安装扩展系统,主机系统可以安装在外部,通过电缆连接到测试的 I/O 板。
PCI Express 版本
2003 年发布了 PCI Express 1.0a 规范 (Gen-1 with 2.5 Gbps signaling
with 8b/10b encoding offering a maximumtheoretical bandwidth of 32 Gbps on a x16 link), PCI 特别兴趣小组( SIG )发布了另外两个主要规范提高了 PCI Express 接口的性能。 2007 年 PCI Express 2 规范发布。 Gen-2 PCIe ,现在众所周知,使用 5 Gbps 的信号
8b/10b 编码,支持的最大理论带宽 64 Gbpsx16 。在 2010 年,发布了 PCI Express 3 规范。 Gen-3 PCIe 使用 8 Gbps 信号 128b / 130b 编码,支持的最大理论带宽 126 Gbpsx16 。
结论
PCI Express 扩展是许多不同应用程序的有效解决方案,包括:
•基于 GPU 的高性能计算节点
•高性能 3D 图形图像渲染系统
• PCIe 测试系统
•固态磁盘( SSD )子系统
•高端口计数 I/O 系统(以太网、高速串行等)
• 视频墙系统
•视频捕获和编辑系统
PCI Express 扩展系统有 Gen-1, Gen-2 和 Gen-3 。 PCI Express扩展系统带来了对系统设计者的高度灵活性:选择主机系统的灵活性和
定制和应用到特定场景的灵活性。
附加信息
有关 PCI Express 扩展系统的更多信息,请参阅 北京熠新科技 网站。