一、前言
PCI-Express是继ISA和PCI总线之后的第三代I/O总线,即3GIO。 由Intel在2001年的IDF上提出,由PCI-SIG(PCI特殊兴趣组织)认证发布后才改名为“PCI-Express”。它的主要优势就是数据传输速率高,另外还有抗干扰能力强,传输距离远,功耗低等优点。
在现在的计算机体系中,PCIe已经作为最成熟和应用最广泛的总线系统,几乎内部数据总线都挂接在PCIe总线上,PCIe数据链路的状态变化时随着总线的电源状态变化而变化的,所以了解它的电源管理策略,既有助于我们了解计算机底层的电源管理策略,又有助于我们对PCIe设备电源问题的定位和排查。
在下面的讨论中,我们会详细介绍PCIe的电源状态和链路状态,它们对于理解整个协议是至关重要的,同时,后续我们会将PCI-Express简写为PCIe。
名称解析
PCIe和PCI: PCI(Peripheral Component Interconnect) 为外设部件互连标准;PCI-Express(Peripheral Component Interconnect Express) 为高速串行计算机扩展总线标准,PCI- Express通常也被缩写为PCIe;又由于二者在软件上存在兼容性,故在软件侧经常用PCI指代PCI和PCIe;PCI协议被设计为分层协议,分为事务层、数据链路层、物理层。
PCIe事务层: 主要职责是创建(发送)或者解析(接收)TLP (Transaction Layer packet),流量控制,QoS,事务排序等。