PCIE3.0标准学习总结

更新时间:2024-03-02 19:46:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1

1. 介绍

本章介绍了在PCI Express架构和关键概念的概述。PCI Express是一种为多种类未来计算和通信平台互连而定义的高性能,通用I/ O。关键的PCI属性,如它的使用模式,负载存储体系结构,软件接口,维持不变,而它的并行总线实施由一个高度可扩展的,完全串行接口取代。利用PCI Express利用最新的点到点互连,基于交换机的技术,与分组交换协议,在性能和功能上提高到一个新水平。PCI Express支持电源管理,服务质量(QoS),Hot-Plug/Hot-Swap支持,数据完整性,可信的配置质量和错误处理等高级功能。

1.1 第三代I/O互连

第三代I/ O互连的高级别要求如下: 支持多种细分市场和新兴的应用:

? 统一桌面,移动,工作站,服务器,通信平台的I / O架构和嵌入式设备 能够提供低成本,高容量的解决方案:

? 结构在系统级等于或低于PCI成本 支持多平台互联用途:

? 芯片到芯片,板对板连接器或电缆通过 新的机械形式的因素:

? 易于移动的,PCI般的外形和模块化,盒外形 PCI兼容的软件模型:

? 能够使用不需要修改的PCI系统配置软件实现枚举和配置PCI Express硬件 ? 能够不需要修改引导现有的操作系统,

? 能够不需要修改支持现有的任何的I / O设备驱动程序 ? 能够采用PCI配置范例配置/启用新的PCI Express功能 性能:

? 低开销,低延迟的通信带宽和有效载荷应用最大化链路效率 ? 每个针脚高带宽,以减少设备和连接器接口的针脚数 ? 通过聚合Lane和信号频率可扩展的性能 高级功能:

? 理解不同的数据类型和排序规则 ? 电源管理和预算

? 能够识别电源管理能力通过一个给定的函数 ? 能够过渡到一个功能当进入特定的电源状态 ? 能够接收当前电源状态通知功能

? 能够产生一个请求,唤醒从主电源断电状态

? 能够为设备按照相应的平台电源预算策略顺序上电。 ? 支持区分服务的能力,如:不同的服务质量(QoS)

? 每个QoS数据流能有专用的链路资源,提高fabric效率和应用程序级的

头面对队头阻塞的处理效率

? 能够为每个组件配置fibric QoS仲裁策略 ? 能够为每个数据包端到端的QoS打上标记

? 能够创建端到端的同步(基于时间,注入速率控制)解决方案 ? 可信配置支持

? 能够支持受保护的从可信软件环境到可信配置空间的访问 ?

? 热插拔和热交换支持

? 能够支持现有的PCI热插拔和热交换解决方案

? 能够支持原生热插拔和热交换解决方案(没有边带信号需要) ? 能够为所有形式因素支持统一的软件模型 ? 数据完整性

? 能够支持所有的交易类型和数据链路链路数据包级别的数据完整性 ? 能够支持终端到终端的高可用性解决方案的数据完整性 ? 错误处理

? 能够支持PCI -级的错误处理

? 能够支持先进的错误报告和处理,以改善故障隔离和恢复解决方案 ? 独立工艺技术

? 能够支持在发射器和接收器不同的直流共模电压 ? 易于测试

? 能够通过简单的连接测试来测试设备电气规范

1.2 PCI Express链路

一个链接表示两个组件之间的双-单工通信通道。最根本的PCI Express链路由两部分组成,低电压,差分驱动信号对:一对发射线和一对接收线,如图1-1所示。

基本链路属性是: ? 基本链路 - PCI Express链路由两对单向差分线组成,一对发送线和一对接收线作为传

输的实施。数据时钟嵌入使用的编码方案(见第4章),可以达到非常高的数据速率。 ? 信号传输速率 - 初始化后,每一个Link只能运行在支持的信号水平之一。对于第一

代的PCI Express技术,只定义了一个信号传输速率,它提供了一个有效的2.5 Gbit/秒/Lane/方向有效带宽。在未来,数据速率将随着技术的进步继续增加。 ? Lane – 一个链接必须支持至少一个Lane - 每条Lane代表一对差分信号对的集合(一

个用于传输,一对用于接收)。测量带宽,链路聚合可以表示为Xn的多车道,其中N可以是任何支持的链路宽度。一个x8链路代表20千兆/在每个方向的原始带宽秒的总带宽。本规范描述为x1,x2,x 4, x 8,x 12,x 16和x32Lane宽度操作。 ? ?

初始化 - 在硬件初始化中,每个PCI Express链路创建是在每个链路两端的两个代理协商完成Lane宽度和操作频率之后。与固件或操作系统软件无关。

对称性 - 每一个Link都必须支持在每个方向上对称的Lane数量,也就是说,一个x16链接表明每个方向有16个差分信号对。

1.3. PCI Express Fabric 拓扑

Fabric是由一个点至点的Link,互连一套组件 – 一个Fabric拓扑结构例子,如图1-2所示。这个插图说明了单个Fabric实例有一个层次结构 - 一个根联合体(RC),多个端点(I / O设备),一个交换开关,和一个PCI Express - PCI桥,通过PCI Express连接的所有相互关联的组成。

1.3.1. Root Complex根联合体

根联合体(RC)表示一个I / O层次结构的根,连接CPU /内存子系统的I / O。

正如图1-2所示,一个根联合体可支持一个或多个PCI Express端口。每个接口定义了一个

单独的层次结构域。每个层次域可组成一个单一的端点或分层次包含一个或多个开关元件和端点。 ? 根联合体域之间的层次路由点对点对等传输等功能的是可选的,依赖于实现。例如,

一个实现可能包括一个真实或虚拟交换机内部在根联合体,使能完全点对点对等传输支持在透明的软件方式下。 ? 不像Switch规则,当在层次域(除下文所述者)间路由点对点对等传输,根联合体通

常允许将一个包分割成多个小包。例如,分割具有256字节的有效载荷的单个数据包为两个字节的数据包有效载荷为128字节。

? 不像Switch规则,当在层次域(除下文所述者)间路由点对点对等传输,根联合体通

常允许将一个包分割成多个小包。例如,分割具有256字节的有效载荷的单个数据包为两个字节的数据包有效载荷为128字节。由此产生的数据包必须遵照正常的数据包在本规范中形成的规则(例如,Max_Payload_Size,读取完成边界,等等)。组件设计应注意,将一个包分裂成较小的数据包可能带来负面的效果,特别是所传输寻址的设备是在一个PCI Express到PCI/PCI-X桥后的情况。

? 例外:支持点对点路由Vendor_Defined消息的根联合体,为了保留PCI Express到PCI

/ PCI - X桥Message转发能力,不允许分割Vendor_Defined讯息成小包,除了在128个字节的边界(即分割成较小的数据包,除了最后产生的数据包以外,所有数据包必须是128的整数倍字节的长度)。参照PCI Express至PCI / PCI - X的桥接器规范1.0修订版的其他信息。 ? 根联合体必须支持作为一个请求者生成配置请求。 ? 根联合体允许支持作为请求者生成I/ O请求。 ? 根联合体不能支持作为一个完成者锁定语义。 ? 根联合体允许支持作为请求者生成锁定请求。

1.3.2. Endpoints

端点是指一种类型的功能,可以是自己的名义或以一个独特的非PCI Express设备代表(除主机CPU的PCI设备或其他)的请求者或完成者的PCI Express的通信,例如,一个PCI Express附加图形控制器或PCI Express的USB主机控制器。端点被划分为遗产的PCI Express,或根联合体的集成端点。

1.3.2.1. Legacy Endpoint Rules ? 一个传统端点必须是具有类型为00h配置空间头功能。 ? 一个传统的端点必须作为一个完成者支持配置请求。 ? 一个传统的端点可以作为一个完成者支持I / O请求。 ? 一个传统的端点可以产生I / O请求。 ? 一个传统的端点可以作为完成者支持锁定内存语义,如果是设备的要求,需要传统的

软件支持。 ? 一个传统的端点必须没有发出锁定请求。

? ? ?

? ?

1.3.2.2. PCI Express Endpoint Rules

一个传统的端点可以实现扩展配置空间的能力,但这种能力可通过软件忽略。

一个传统的端点作为一个内存处理请求人运行是无须能够产生4 GB或更大的地址。 一个传统端点必须支持MSI或MSI- X或两者都支持,当一个中断请求资源被请求。如果MSI生效,传统端点允许支持任何32位或64位的信息的地址MSI能力结构的版本。

一个传统端点请求内存资源是允许支持32为地址作为基地址寄存器。 一个传统端点必须出现在由根联合体创建的层次领域之一。

2. Transaction Layer Specification

2.1. Transaction Layer Overview

本文来源:https://www.bwwdw.com/article/lgfa.html

Top