




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、PCI-E-简介PCI-E(PCI-Express 的所写)是最新的总线和接口标准,它原来的名称为“3GIO”,是由英特尔提出的,很明显英特尔的意思是它代表着下一代 I/O 接口标准。交由 PCI-SIG(PCI 特殊兴趣组织)认证发布后才改名为“PCI-Express。这个新标准将全面取代现行的 PCI 和 AGP 最终实现总线标准的统一。它的主要优势就是数据传输速率高,目前最高可达到10GB/s 以上,而且还有相当大的发展潜力。PCIExpress 也有多种规格,从 PCIExpress1X 至 UPCIExpress16X,能满足现在和将来一定时间内出现的低速设备和高速设备的需求。能支持
2、 PCIExpress 的主要是英特尔的 i915 和 i925 系列芯片组。当然要实现全面取代 PCI 和 AG 迎需要一个相当长的过程,就象当初 PCI 取代 ISA 一样,都会有个过渡的过程。PCI-E 采用了目前业内流行的点对点串行连接,比起 PCI 以及更早期的计算机总线的共享并行架构,每个设备都有自己的专用连接,不需要向整个总线请求带宽,而且可以把数据传输率提高到一个很高的频率,达到宽。相对于传统 PCI 总线在单一时间周期内只能实现单向传输,PCI-E 的双单工连接能提供更高的传输速率和质量,它习惯了做业界规范制定者的 Intel,在 2001 年宣布了要用一种新的技术取代 PC
3、I 总线和多种芯片的内部连接。并称之为第三代 I/O 总线技术(很明显 Intel 的意思是它代表着下一代 I/O 接口标准)。该总线的规范由 Intel 支持的 AWGArapahoeWorkingGroup)负责制定。2002 年 4 月 17 日,AWGE 式宣布 3GIO1.0 规范草稿制定完毕,并移交 PCI-SIG 进行审核(主要以 Intel、AMD 旧 M、DELLNVIDIA 等 20 多家业界主导公司开始起草 3GIO,2002 年草案完成,2002 年 7 月 23 日经过审核后正式公布。开始的时候大家都以为它会被命名为 SerialPCI (受到串行 ATA 的影响)
4、, 但最后却被正式命名为 PCIExpress (以下简称 PCI-E) 。2006 年正式推出 Spec2.0(2.0 规范)。这个新标准将全面取代现行的 PCI 和 AGP 最终实现总线标准的统一。12001 年春季的 IDF 上 Intel 正式公布 PCIExpress,是取代 PCI 总线的第三代 I/O 技术,也称为 3GIQ 该总线的规范由 Intel 支持的AWQArapahoeWorkingGroup)负责制定。2002 年 4 月 17 日,AWGE 式宣布 3GIO1.0 规范草稿制定完毕,并移交 PCI-SIG 进行审核。开始的时候大家都以为它会被命名为 SerialP
5、CI(受到串行 ATA 的影响),但最后却被正式命名为 PCIExpress。2006年正式推出 Spec2.0(2.0 规范)。PCIExpress 总线技术的演进过程,实际上是计算系统 I/O 接口速率演进的过程。PCI 总线是一种 33MHz32bi 或者66MHz64bit 的并行总线, 总线带宽为 133MB/s 至 U 最大 533MB/s,连接在 PCI 总线上的所有设备共享 133MB/s533MB/s 带宽。这种总线用来应付声卡、10/100M 网卡以及 USB1.1 等接口基本不成问题。随着计算机和通信技术的进一步发展,新一代的I/O 接口大量涌现,比如千兆(GE、万兆(1
6、0GE 的以太网技术、4G/8G 的 FC 技术,使得 PCI 总线的带宽已经无力应付计算系统内部大量高带宽并行读写的要求,PCI 总线也成为系统性能提升的瓶颈,于是就出现了 PCIExpress总线。PCIExpress 总线技术在当今新一代的存储系统已经普遍的应用。PCIExpress 总线能够提供极高的带宽,来满足系统的需求。PCI 所不能提供的高带每一个 PCIExpress 插槽拥有专用的连至 PC 内存的带宽,而不同于 PCI 的共享带宽们之间的差异跟半双工和全双工类似。目前,PCI-E3.0 规范也已经确定,其编码数据速率,比同等情况下的 PCI-E2.0 规范提高了一倍,X32
7、 端口的双向速率高达 320Gbp4PCI-E-接口PCI-E 的接口根据总线位宽不同而有所差异,包括 XI、X4X8 以及 X16,而 X2 模式将用于内部接口而非插槽模式。PCI-E 规格从 1条通道连接到 32 条通道连接,有非常强的伸缩性,以满足不同系统设备对数据传输带宽不同的需求。止匕外,较短的 PCI-E 卡可以插入较长的 PCI-E 插槽中使用,PCI-E 接口还能够支持热拔插,这也是个不小的飞跃。PCI-EX1 的 250MB他 H 专输速度已经可以满足主流声效芯片、网卡芯片和存储设备对数据传输带宽的需求,但是远远无法满足图形芯片对数据传输带宽的需求。因此,用于取代 AG 腺口
8、的 PCI-E 接口位宽为 X16,能够提供 5GB/s 的带宽,即便有编码上的损耗但仍能够提供约为 4GB/s 左右的实际带宽,远远超过 AGP8X 勺 2.1GB/s 的带宽。PCI-E-技术规格尽管 PCI-E 技术规格允许实现 X1(250MB 秒),X2,X4,X8,X12,X16 和 X32 通道规格,但是依目前形式来看,PCI-EX1 和 PCI-EX16 已成为 PCI-E 主流规格,同时很多芯片组厂商在南桥芯片当中添加对 PCI-EX1 的支持,在北桥芯片当中添加对 PCI-EX16 的支持。除去提供极高数据传输带宽之外,PCI-E 因为采用串行数据包方式传递数据,所以 PC
9、I-E 接口每个针脚可以获得比传统 I/O 标准更多的带宽,这样就可以降低 PCI-E 设备生产成本和体积。另外,PCI-E 也支持高阶电源管理,支持热插拔,支持数据同步传输,为优先传输数据进行带宽优化。PCIExpress 的引入是用来克服以前 PCI 总线的限制。PCI 总线是 Intel 十年前开发和发布的,工作在 33MH 济口 32 位环境下,理论带宽峰值是每秒 132MB 它使用共享总线拓扑结构一一总线带宽在多个设备间共享一一从而实现总线上不同设备间的通信。 随着设备的发展, 新的占用大量带宽的设备开始吞噬同一共享总线上的其他设备的带宽。 例如,可独占 95%勺 PCI 总线带宽。
10、为了提供这些新型设备所要求的带宽,PC 亍业协会和外设厂商一起开发了 PCIExpress 并且于 2004 年开始在标准的台式计算机上提供。大部分来自顶级供应商的台式机器已经至少包含了一个 PCIExpress 插槽。相对于 PCI,PCIExpress最引人注目的进步是它点到点的拓扑结构。用于 PCI 的共享总线被一个共享开关所代替,这个开关使得每一个设备拥有对总线的直接访问权。并且不同于 PCI 将带宽分给总线上的所有设备的是,PCIExpress 提供给每一个设备它自己专用1G 网卡PCIExpress 提供专用的、可扩展白带宽(高达传统 PCI 带宽的 30 倍)的数据流水线。数据通
11、过被称为信道的发送和接受信号对来以包的形式串行传输,每个信道具有单方向速度。多个信道可以组合在一起形成 x1(“单一的”)、x2、x4、x8、x12、x16、和 x32 的信道带宽从而提高插槽的带宽。诸如数据采集和波形发生器之类的应用需要足够的带宽来保证数据能以足够快的速度传输至内存而不丢失或重写。相对于传统的总线,PCIExpress 极大地提高了数据带宽,减少了对板载内存的需求并且实现了更快的数据流传输。初始的信号频率,即技术标准规定的 2.5G 位/秒,是 32 位、33MHz 的 PCI 可用带宽的 30 倍(一个 x16 的插槽),并且这一信号频率预期将随着芯片技术的进步增加至 10
12、G 位/秒一一这是铜线信号的极限。并且由于 PCIExpress 的可扩展信道拓扑结构,数据采集厂商可以实现具有符合设备所需要信道数的 PCIExpress 插槽。PCI-E-系统构架大部分主板包含了 PCI 插槽和 PCIExpress 插槽PCI-E 是一种双向串行连接。其总线本身又分成数个通道,每个通道支持 2.5Gbit/S 的双向数据传输速度。通过编码和误差校验处理后,数据被转换成适用于 NIC、HCADHBA 传输的 250MB 秒的有效带宽,这足以满足 2GbFiberChannel 的 HBA 卡。这里需要着重介绍的一个概念就是通道。举个例子,如果你要使用 4Gb 的 Fibe
13、rChannel,并在一个端口的 HBA 上全双工运行的话,你就需要 400MB/S 的双向带宽。如果使用 PCI-E 技术,只需要两个全速开放的子通道就能够满足需求。你也能使用单通道,不过你会被限制在 250MB/S 的速度上。这对于像数据索引搜索这类应用的 IOPS 是足够的了。如果使用 400MB/S 的无其他开销的传输速度来应付 16KB 请求的话, 每秒可完成 25000 个(400MB/S16000KB 请求, 而 250MB/S的一个单通道每秒则能够处理 16000 个请求。但因为有附加的头文件,所以实际应用中永远达不到这个速度。不过从另一方面说,一个或两个通道已能够满足大部分的
14、服务器、HBA?和 RAID 系统的传输需求了。如果只以 IOPS 的角度来看,一个单通道就能够和一块 4GBHB 的同工作了。如果使用双端口的话,一个或两个通道就满足大多数RAID 架构的需求。如果假设一块硬盘每秒的随机 I/O 读取次数最多在 150 次左右的话,那么非常多数量的磁盘驱动器和缓存才能使其达到全速。由于大多数的 RAID 控制器没有 8K 的命令序列,因此你也将大大超越 RAID 控制器的命令序列。我记不得有哪个时期 I/O 总线的性能超过了最快的主机接口速度,因此我认为我们到达了一个科技史上非常重要的时刻,总线已足以满足各种外接卡的速度需求。而这就意味着有了一些新状况已产生
15、:要有足够的内存带宽才能使总线全速运行:使用新的 16 通道 PCI-E,全速双向运行总线可达 10GB/S(2.5Gb/S*2*16/8)的带宽。对于如今大部分 x86 和 AMD(统的内存带宽来说的这都是个不小的值。系统中的瓶颈:许多来自各类厂商的 PCI 和 PCI-X 总线接口和内存系统之间总是存在性能瓶颈。在大多数情况下,这些性能设计缺陷限制了总线性能,即限制了总线从内存中读取和写入性能。偶尔总线本身也存在设计缺陷,但这种情况比总线和内存间出现问题的几率要小。能明显地看出,我们需要这个接口的性能达到 PCI-X 的 1GB 夥或更高。这就需要厂商检查接口的设计、进行早期的测试。新 I
16、/O卡: 随着新一代总线的推出, 相对应的 I/O卡也必须得到发展。 这其中包括 FibreChnanel、 InfiniBand和新一代以太网 (1Gffl10G卡。测试这些卡的流量性能是非常困难的。虽然找到测试设备并非难事,不过找到了解硬件知识的人才和确定卡所部属的软件堆栈是比较困难的。如果这些卡有良好的速度和 IOPS 性能,那会非常最佳。但如果存在瓶颈,就非常难更正。其中的问题可能存在于非常多方面:应用程式、操作系统、I/O 驱动、卡驱动、PCI-E 总线、内250M 字节/秒的存带宽或其他数据通道的问题。在 1990 年,我参和了早期 FiberChannel 的测试,当时就有厂商表
17、示我们能通过解决数据通路上的一些问题来提高其接口速率。2PCI-E-兼容性PCIExpress 保持与传统 PCI 的软件兼容性,但是将物理总线代替成为一个高速(2.5Gb/s)的串行总线。因为这种体系结构发生了改变,所以插槽本身并不兼容。但是,在 PCI 向 PCIExpress 的过渡过程中,大部分计算机主板将既提供 PCI 插槽又提供 PCIExpress插槽。具有较少信道插槽的设备可以“向上插入”至主板上具有较多信道的插槽,从而提高硬件的兼容性和灵活性。但是,“向下插入”至较少信道的插槽是不支持的。大部分来自顶级厂商的 PC在已经至少包含一个 PCIExpress 插槽了。最常见的插槽
18、大小是 x1 和 x16。x1 插槽是一个通用的插槽用来作为 NIPCIeM 系列数据采集和 NIPCIeGPIB 设备的主机设备。 现在, 服务器级的机器需要 x4 和 x8 的插槽, 以用于那些包含 NIPCIe摄像机 4I 路(CameraLink)图像采集设备的装置。然而“服务器”并不简单地意味着高价格,因为优良的服务器也具有与台式机箱可比的价格。例如,2005 年 5 月,DellSC240 服务器除了 3 个 PCI 插槽之外,还有一个 x1 和一个 x8 的 PCIExpress 插槽。在选择一个计算机时最重要的是确保 PCIExpress 插槽被连接到的物理连接的大小。仞 0
19、口,一些厂商使用的主板具有 x8的插槽,却是 x4 的连接大小。这些插槽上的设备将只会运行在 x4 的数据速率上。在您向上插入一个 PCIExpress 设备的情况下,请保证您使用的计算机运行在您设备所支持的最大数据速率时支持向上插入。PCIExpress 技术标准仅仅要求“向上插入”来工作在 x1 数据速率下。这就会导致一个插入 x8 插槽的 x4 的设备工作在 x1 的数据速率下(250MB/s)。PCI-E-技术优势PCI 总线的最大优点是总线结构简单、成本低、设计简单,但是缺点也比较明显:1)并行总线无法连接太多设备,总线扩展性比较差,线间干扰将导致系统无法正常工作;2)当连接多个设备
20、时,总线有效带宽将大幅降低,传输速率变慢;3)为了降低成本和尽可能减少相互间的干扰,需要减少总线带宽,或者地址总线和数据总线采用复用方式设计,这样降低了带宽利用率。PCIExpress 总线是为将来的计算机和通讯平台定义的一种高性能,通用 I/O 互连总线。与 PCI 总线相比,PCIExpress 总线主要有下面的技术优势:1)是串行总线,进行点对点传输,每个传输通道独享带宽。2)PCIExpress 总线支持双向传输模式和数据分通道传输模式。其中数据分通道传输模式即 PCIExpress 总线的 x1、x2、x4、x8、x12、x16 和 x32 多通道连接,x1 单向传输带宽即可达到 2
21、50MB/s,双向传输带宽更能够达到 500MB/s,这个已经不是普通 PCI 总线所能够相比的了。3)PCIExpress 总线充分利用先进的点到点互连、基于交换的技术、基于包的协议来实现新的总线性能和特征。电源管理、服务质量(QoS、热插拔支持、数据完整 T 错误处理机制等也是 PCIExpress 总线所支持的高级特征。4)与 PCI 总线良好的继承性,可以保持软件的继承和可靠性。PCIExpress 总线关键的 PCI 特征,比如应用模型、存储结构、软件接口等与传统 PCI 总线保持一致,但是并行的 PCI 总线被一种具有高度扩展性的、完全串行的总线所替代。5)PCIExpress 总
22、线充分利用先进的点到点互连,降低了系统硬件平台设计的复杂性和难度,从而大大降低了系统的开发制造设计成本,极大地提高系统的性价比和健壮性。从下面表格可以看出,系统总线带宽提高同时,减少了硬件 PIN 的数量,硬件的成本直接下降。1PCI-E-硬件协议PCIe 的连接是建立在一个双向的序列的(1-bit)点对点连接基础之上,这称之为“传输通道”。与 PCI 连接形成鲜明对比的是 PCI是基于总线控制,所有设备共同分享的单向 32 位并行总线。PCIe 是一个多层协议,由一个对话层,一个数据交换层和一个物理层构成。物理层又可进一步分为逻辑子层和电气子层。逻辑子层又可分为物理代码子层(PCS 和介质访
23、问才 S制子层(MAC)。PCIExpressLVDS 合计达到 2.5 兆波特。传送及接收不同数据会使用不同的传输通道, 每一通道可运作四项资料。 两个 PCIe 设备之间的连接成为“链接”, 这形成了 1 组或更多的传输通道。 各个设备最少支持 1 传输通道 (x1) 的链接。 也可以有 2,4,8,16,32 个通道的链接。 这可以更好的提供双向兼容性。 (x2 模式将用于内部接口而非插槽模式)PCIe 卡能使用在至少与之传输通道相当的插槽上(例如 x1 接口的卡也能工作在 x4或 x16 的插槽上)。一个支持较多传输通道的插槽可以建立较少的传输通道(例如 8 个通道的插槽能支持 1 个
24、通道)。PCIe 设备之间的链接将使用两设备中较少通道数的作为标准。一个支持较多通道的 设备不能在支持较少通道的插槽上正常工作,例如 x4 接口的卡不能在 x1 的插槽上正常工作,但它能在 x4 的插槽上只建立 1 个传输通道(x1) 。 PCI-Express卡能在同一数据传输通道内传输包括中断在内的全部控制信息。这也方便了与 PCI 的兼容。多传输通道上的数据传输采取交叉存取,这意味着连续字节交叉存取在不同的通道上。这一特性被称之为“数据条纹”,需要非常复杂的硬件支持连续数据的同步存取,也对链接的数据吞吐量要求极高。由于数据填充的需求,数据交叉存取不需要缩小数据包。与其它高速数传输协议一样
25、,时钟信息必须嵌入信号中。在物理层上,PCIe 采用常见的 8B/10B 代码方式来确保连续的 1 和 0 字符串长度符合标准,这样保证接收端不会误读。编码方案用 10 位编码比特代替 8 个未编码比特来传输数据,占用 20%勺总带宽。有些协议(如 SONET 使用另外的编码结构如“不规则”在数据流中嵌入时钟信息。PCIe的特性也定义了一种“不规则化”的运算方法,但这种方法与 SONE 亡全不同,它的方法主要用来避免数据传输过程中的数据重复而出现数据散射。第一代 PCIe 采用 2.5 兆位单信号传输率,PCI-SIG 计划在未来版本中增强到 510 兆位。PCI-E-数据链接层数据链接层采用
26、按序的交换层信息包(TransactionLayerPackets,TLPs),是由交换层生成,按 32 位循环冗余校验码(CRC 本文中用 LCRC 进行数据保护,采用著名的协议(AckandNaksignaling)的信息包。TLPs 能通过 LCR 饭验和连续性校 9 的称为 Ack(命令正确应答);没有通过校验的称为 Nak(没有应答)。没有应答的 TLPs 或者等待超时的 TLPs 会被重新传输。这些内容存储在数据链接层的缓存内。这样可以确保 TLPs 的传输不受电子噪音干扰。Ack 和 Nak 信号由低层的信息包传送,这些包被称为数据链接层信息包(DataLinkLayerPack
27、et,DLLP)。DLLP 也用来传送两个互连设备的交换层之间的流控制信息和实现电源管理功能。PCI-E-交换层PCIExpress 采用分离交换(数据提交和应答在时间上分离),可保证传输通道在目标端设备等待发送回应信息传送其它数据信息。它采用了可信性流控制。这一模式下,一个设备广播它可接收缓存的初始可信信号量。链接另一方的设备会在发送数据时统计每一发送的 TLP 所占用的可信信号量,直至达到接收端初始可信信号最高值。接收端在处理完毕缓存中的 TLP 后,它会回送发送端一个比初始值更大的可信信号量。可信信号统计是定制的标准计数器,这一算法的优势,相对于其他算法,如握手传输协议等,在于可信信号的
28、回传反应时间不会影响系统性能,因为如果双方设备的缓存足够大的话,是不会出现达到可信信号最高值的情况,这样发送数据不会停顿。第一代 PCIe 标称可支持每传输通道单向每秒 250 兆字节的数据传输率。这一数字是根据物理信号率 2500 兆波特除以编码率(10 位/每字节)计算而得。这意味着一个 16 通道(x16)的 PCIe 卡理论上可以达到单向 250*16=4000 兆字节/秒(3.7G 兆字节/每秒)。实际的传输率要根据数据有效载荷率,即依赖于数据的本身特性,这是由更高层(软件)应用程序和中间协议层决定。PCIExpress 与其它PCI-E-物理传输层于使用电力方面,每组流水线使用两个单向的低电压微分信号(高速序列连接系统相似,它依赖于传输的鲁棒性(CRCK 验和 Ack 算法)。长时间连续的单向数据传输(如高速存储设备)会造成95%勺 PCIe 通道数据占用率。这样的传输受益于增加的传输通道,但大多数应用程序如 US 瞰以太网络控制器会把传输内容拆成小的数据包,同时还会强制加上确认信号。这类数据传输由于增加了数据包的解析和强制中断,降低了传输通道的效率。这种效率的降低并非只出现在 PCIe 上。PCI-E-制式标准半高卡微型卡:代替 M
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论