SciTech-ICEE-Interface-PCIE×16的标准和文档
SciTech-ICEE-Interface-PCIE×16的标准和文档
先上一张NVIDIA最新(2026年)RTX5090显卡要求的PCIe配置
| NVIDIA Quick Start Guide | NVIDIA RTX5090 Equipment |
|---|---|
![]() |
![]() |
https://zhuanlan.zhihu.com/p/4823063330
REFERENCES
https://pcisig.com/PCIExpress/Specs/Base/_6.0_1.0
————————————
参考文献
- PCI-SIG. (2022). PCI Express Base Specification Revision 6.0.
PCI Special Interest Group.
https://pcisig.com/PCIExpress/Specs/Base/_6.0_1.0 - PCI-SIG. (2021). PCI Express Base Specification Revision 5.0.
PCI Special Interest Group. - NVIDIA Corporation. (2020). NVMe over Fabrics Technical Overview.
- AMD Corporation. (2021). PCIe 4.0 and 5.0 Whitepaper.
- Intel Corporation. (2019). PCI Express Technology Overview.
PCIE×16的标准和文档
- 1992年,PCI(Peripheral Component Interconnect)标准
引入以来, 一直是计算机系统内部通信的重要组成部分。 - 2003年, PCIe(Peripheral Component Interconnect Express)
推出以来,它提供了一个更高效、更高带宽的接口。
随着时间的发展,PCIe已经成为现代计算平台的标准,从最初的1.0版本发展到了现在的6.0版本。
如果说AMBA AXI/ACE/CHI是SoC内部的总线,那么PCIe就是计算机板级的总线。
PCIe不仅支持高速数据传输,还具备低延迟、高可靠性和灵活性,
这些特点使其成为连接各种外设(如显卡、存储设备、网络适配器等)到主板的主要通路。
无论是PC还是企业级服务器,PCIe都是不可或缺的一部分。
作为板级芯片和芯片互联的主要数据通路,PCIe作用越来越重要。了解PCIe是十分必要的。
PCIe基础知识
1.1 定义与基本概念
什么是PCIe?
PCIe是一种点对点的高速串行连接方式,设计用于替代旧式的并行总线架构。
它使用了分层的体系结构,其中每一层负责特定的功能:

- PCIE通道配置
PCI Express(PCIe)的 lane(通道)配置是决定PCIe设备性能的关键因素。
通道配置通常用“x”后跟一个数字表示,如x1、x4、x8、x16、x32等,
这个数字代表使用了 "多少个独立的PCIe lane(通道)",即有几个lane。
这些配置影响了设备的带宽和数据传输速率,从而影响了整体的系统性能。
x32应当只有一些尖端科技需求才会用到。所以常用的是x16及以下。
- x1:这是最小的通道配置,只使用一个PCIe通道。
尽管带宽最低,但它足够用于低带宽需求的设备,
如一些网络适配器、声卡或USB扩展卡。 - x4:使用四个PCIe通道,提供了四倍于x1配置的带宽。
常用于需要更高带宽但又不需要x8或x16带宽的设备,
如某些高速的存储解决方案或中等带宽需求的网络卡。 - x8:配置有八个PCIe通道,提供了八倍于x1配置的带宽。
x8通常用于高性能的存储设备,如RAID控制器。 - x16:这是最常见的高性能配置,使用16个PCIe通道,提供了16倍于x1配置的带宽。
x16配置主要用于GPU图形卡,因为这些设备需要非常高的带宽来处理大量的图形数据。 - x32:虽然PCIe规范确实定义了x32配置,但实际上很少见。
理论上,x32配置将提供32倍于x1配置的带宽,
但由于成本、功耗和设计复杂性,大多数民用系统,少有采用这种高尖配置。
- x1:这是最小的通道配置,只使用一个PCIe通道。
1.2 PCIe版本演变
从PCIe 1.0到最新版本的关键变化

- PCIe 1.0:提供2.5 GTps的单向带宽,每个通道的最大传输速率为250 MB/s。
- PCIe 2.0:带宽翻倍至5.0 GTps,每个通道的最大传输速率为500 MB/s。
- PCIe 3.0:再次翻倍至8.0 GTps,每个通道的最大传输速率为1 GB/s,
同时提高了编码效率,从8b/10b编码改为128b/130b编码。 - PCIe 4.0:带宽达到16.0 GTps,每个通道的最大传输速率为2 GB/s。
- PCIe 5.0:最新版本,带宽为32.0 GTps,每个通道的最大传输速率为4 GB/s。
- PCIe 6.0:带宽达到64.0 GTps,每个通道的最大传输速率为8 GB/s,
引入了PAM4调制技术,进一步提高传输效率。
对应表格如下:

1.3 版本兼容
PCIe设计时考虑了向下兼容性,即较新的设备可以在较老的系统上工作,尽管可能达不到最佳性能。
例如,一个PCIe 4.0设备可以插入到PCIe 3.0插槽中,但只能以PCIe 3.0的速度运行。
2. PCIE架构及主要组件
2.1 架构层次
- Application(应用)层:
这不是PCIe规范正式定义的一部分,而是由具体实现者根据需求设计的部分。
应用层决定了设备的功能和类型,例如存储设备、网络适配器或图形卡。 - Transaction Layer(事务层):
负责处理事务的初始化和完成,包括读取、写入、配置和中断等操作。
事务层还管理事务的优先级和流量控制,确保数据请求和响应的高效处理。 - Data Link Layer(数据链路层):分为两个子层:
- Link Sublayer(链路子层):
负责链路的建立、训练、维护和错误检测,确保数据包的准确传输。 - Physical Media Attachment Sublayer(物理媒体附加子层):
负责数据的编码和解码,确保数据在物理层的正确传输。
- Link Sublayer(链路子层):
- Physical Layer(物理层):
包括电气信号的生成、接收和处理,以及串行数据的编码和解码。
物理层进一步细分为两个子层:- Electrical Sublayer(电气子层):
处理电气信号的生成和接收,确保信号的完整性和稳定性。 - Media Access Control Sublayer(介质访问控制子层):
管理数据在物理介质上的传输,包括信号的编码和解码。
- Electrical Sublayer(电气子层):
通过这种分层架构,PCIe能够实现高效、可靠的数据传输,满足各种应用场景的需求。
2.2 主要组件
PCIe架构的Major Components(主要组件)包括:
- RC(Root Complex):
通常位于系统主板上,与CPU紧密集成,作为PCIe架构的起点。
Root Complex负责初始化和配置PCIe总线,管理事务处理, 提供到CPU和内存的接口。 - Switches:
能构建复杂的PCIe拓扑,嵌套连接多个端点设备或其他Switches, 架构灵活系统。
Switches可以扩展PCIe总线,允许更多设备连接到系统,提高扩展性和灵活性。
Switch可以将一个上游端口连接到多个下游端口,实现多路径传输。 - EP(Endpoint):
连接到PCIe总线的终端设备,如显卡、存储控制器、网络适配器等。
要么与Root Complex,要么与Switches连接,
它们通过PCIe总线,执行具体的I/O操作和数据处理任务。 - PCI Express to PCI/PCI-X Bridge :
PCI Express 到 PCI/PCI-X 桥接器,
提供连接PCI Express架构和PCI/PCI-X层次结构的接口,
使现代PCI Express系统能够与传统的PCI或PCI-X设备兼容。

2.3 配置空间与地址映射
每个PCIe设备都有一个配置空间,包含了设备的信息和控制寄存器。
配置空间分成 "多个寄存器",包括Vendor ID、Device ID、Class Code、BAR(Base Address Register)等。
CS(Configuration Space, 配置空间) 确保可以读取和修改设备的状态和设置。
AM(Address Mapping, 地址映射) 确保Host上的程序能够正确地寻址到并与PCIe的设备通信,
3. PCIe硬件层次概要
PCI Express 使用 "Packet(数据包)" 在组件之间传输信息。
数据包在 事务层 和 数据链路层 形成,携带信息从 发送组件 传输到 接收组件。
当传输的数据包流经其他层时,会被添加必要的层级信息,以便在这些层处理数据包。
在接收端,这一过程相反,数据包从物理层表示形式转换为数据链路层表示形式,
最终(对于事务层数据包)转换为接收设备的事务层可以处理的形式。
下图展示了事务级数据包信息, 通过各层的概念流程。

- Transaction Layer(事务层)
架构的上层是事务层。
事务层的主要职责是组装和拆解TLP(事务层数据包)。
TLP用于通信事务,如读取和写入,以及某些类型的事件。
事务层还负责管理基于信用的流量控制。
每个需要响应包的请求包都实现为分离事务。
每个包都有一个 "唯一的标识符",使 "响应包" 能够定向到 "正确的发起者"。
包格式支持 "不同的寻址形式",具体由事务类型(内存、I/O、配置和消息)确定。
包还可以具有诸如No Snoop、Relaxed Ordering和ID-Based Ordering (IDO)等属性。
事务层支持四种地址空间:
它包括三种PCI地址空间(内存、I/O和配置),并增加了 "消息空间"。
PCIe规范的 "消息空间" 支持所有先前的侧带信号,如中断、电源管理请求等,作为带内消息事务。
可以将PCI Express 的 "消息事务" 视为“虚拟线”,
因为它们的效果是消除了大量侧带信号(当前平台实现上使用的)。- TLP(Transaction Layer Packet)是事务层传输的基本单位,
事务层包,是在 PCIe 链路上进行数据传输的基本单位。
TLP 包含了事务的所有必要信息,包括请求类型、目标地址、数据负载等。- TLP 常有的组成部分:
- Header(包头):
包含有关事务的元数据,如事务类型、地址、长度、事务ID等。 - Data Payload(数据负载):
包含实际要传输的数据。 - Tail(包尾):
可选部分,通常用于表示 TLP 的结束。
- Header(包头):
- TLP 类型和四种地址空间对应:
- Configuration Read/Write:用于设备配置空间的读写操作。
- Message:用于发送控制信息,如中断、电源管理命令等。
- Memory Read/Write:用于内存读写操作。
- I/O Read/Write:用于 I/O 地址空间的读写操作。
- TLP 常有的组成部分:
- TLP(Transaction Layer Packet)是事务层传输的基本单位,



浙公网安备 33010602011771号