Chinaunix首页 | 论坛 | 博客
  • 博客访问: 588890
  • 博文数量: 169
  • 博客积分: 2656
  • 博客等级: 少校
  • 技术积分: 1685
  • 用 户 组: 普通用户
  • 注册时间: 2009-07-30 13:03
文章分类

全部博文(169)

文章存档

2011年(1)

2010年(135)

2009年(33)

我的朋友

分类: 嵌入式

2010-05-14 13:07:02

总线是在计算机系统模块化发展进程中诞生的产物,在计算机还没有进入PC普及时代前的巨型机、大型机计算机时期,计算机及其繁杂的各类模块往往都要配备自己的相应总线,很难适应技术的快速更替。随着上个世纪70你年代,PC成为大规模批量的生产的计算机产品后,系统设计简化、模块批量化生产、便于系统维护和升级就成为计算机技术开发的重点,作为计算机系统中连接各个模块的总线技术也走上了标准化的道路。相对于其他技术的飞跃发展,标准总线技术的发展速度可以说一向缓慢,自从IBM PC 问世至今,虽然期间经历了包括MCAVESA 等在内的多种总线规格,但从整体来看,大致只经过了ISA PCI 总线两个阶段,就算上本篇文章讲述的今日之星PCI Express,也只有短短三代。比起处理器,显卡这样动辄八九代,甚至十几代的发展更新速度,说他缓慢也就不足为奇了。当然,总线发展的保守性是有客观原因的,因为每一个总线的标准的全面变更,就意味着在原先总线标准下设计的产品全部要重新设计,所以总线标准往往都是在几度修改,挖掘和提升到最后,才进行改朝换代的重大革新,这种变革周期往往长达数年甚至十数年。
今天我们要将的主题是新一代PCI Express总线,在进入今天的主题之前,我们先一起来看看伴随我们这一代DIYer一起成长的PCI总线技术,看看这部12岁的高龄技术是否还能承担起未来总线性能的需要,我们要从1992Intel 在发布486处理器的时候一同发布的32-bit PCI(周边组件互连)总线标准开始说起。
PCI总线发布的时候主要是为了替代当时占主要技术份额的ISA总线,当时他提供的共享带宽只有15 MB/s ,和当时的其他技术相比显然已经严重滞后。PCI总线技术在当时的环境来看还是相当先进的,其总线工作在33MHz 频率之下,传输带宽达到了133MB/s(33MHz X 32bit/8),比ISA 总线有了极大的改善,基本上满足了当时处理器的发展需要。此外PCI 总线还是是独立于CPU 的系统总线,采用了独特的中间缓冲器设计,可将显示卡、声卡、网卡、硬盘控制器等高速的外围设备直接挂在CPU 总线上,暂时解决了老旧总线难以满足新处理器以及I/O的需求,使得当时CPU 的性能得到充分的发挥。不过在PCI总线长达十数年的岁月中,外围设备性能的提升速度远远超过了总线本身发展的速度,其本身频率难以提高、工作电压难以降低、性能不足的问题也日益凸现出来,我们可以从越来越多的局部总线标准的推出看出PCI日趋淘汰的兆头。
首先是我们熟悉的AGP( 加速图形接口,Accelerated Graphics Port)局部总线规范,他是Intel 19967月正式推出显示卡专用的局部总线技术,推出目的是补救PCI共享总线带宽严重限制显卡3D化的问题。实际上,AGP是在PCI 2.1 版规范基础之上扩充修改而成,工作频率为66MHz 1X 模式下带宽为266MB/S,是PCI 总线的两倍。后来依次又推出了AGP 2X AGP4X,现在则是AGP8X ,传输速度达到了2.1GB/S 。其次是各种各样的南北桥互联总线技术的出现也削弱了PCI总线的地位和作用。诸如此类的局部总线还有不少,这一方面表明系统的带宽在不断地升级,另一方面则说明PCI已经不能满足系统的需要了。整个PC业界迫切需要一个统一标准的取代PCI的总线技术,这也就是我们本文的主角—PCI Express
PCI-E:众望所归的下一代总线标准
 
其实早在2001年的春季IDF(Intel开发者论坛)上,Intel公司已经宣布要用一种新的技术取代PCI总线和多种芯片的内部连接,并称之为第三代I/O总线技术(3rd Generation I/O,也就是3GIO);到了2001年底,包括IntelAMDDELLIBM20多家业界主导公司加入了PCI-SIG(PCI特殊兴趣小组)并开始起草3GIO规范的草案;2002年草案完成,并把3GIO正式命名为PCI Express。而在春季IDF 2003上,Intel公布了PCI Express的产品开发计划。目前PCI Express技术的915系列主板产品和不少显卡都已经能在市面上买到了,那PCI EXPRESS的技术特点究竟是什么呢?我们有没有必要把自己升级到这个平台下面呢,下面我们将为大家一一分析。


PCI Express技术要点
从并行到串行的转变
  
与传统PCI以及更早期的计算机总线的共享并行架构相比,PCI Express采用设备间的点对点串行连接(serial interface)。如此一来即允许每个设备都有自己的专用连接,是独占的,并不需要向整个总线请求带宽,同时利用串行的连接特点将能轻松将数据传输速度提到一个很高的频率,达到远超出PCI总线的传输速率。单个基本的PCI Express连接是一种单双单工连接,一个单独的基本的PCI Express串行连接就是两个独立的通过不同的低电压对驱动信号实现的连接,一个接受对和一个发送对(共四组线路)。一个微分信号在两个接口之间有电压差来传递。
第一代的PCI Express连接将提供2.5Gbit/s的单向单线连接传输速率。相对于传统PCI总线在单一时间周期内只能实现单向传输,PCI Express的双单工连接能提供更高的传输速率和质量,它们之间的差异跟半双工和全双工类似。同时PCI Express串行连接使用了内嵌时钟技术(8b/10b编码模式),时钟信息直接写入数据流中,这对比大多数并行总线要额外传输保持同步的时钟信号来说更能节省传输的通道和提高传输效率。
Serial ATA类似,串行连接能大大减少电缆间的信号干扰和电磁干扰,由于传输线条数有所减少,更能节省空间和连接更远的距离(单位时间内传输的数据流比并行总线中独立时钟信号的数据流更能传送更远的距离)。当然,一个PCI Express连接可以由多个通道组成,每个通道包括前面所提的单双工连接(两对线路)
  
在设备和芯片之间的连接就能实现串行的多通道连接,每个通道相互独立。一个PCI Express连接可以被配置成x1x2x4x8x12x16x32的数据带宽。x1的通道能实现单向312.5MB/(2.5Gbit/s * 1 / 8)的传输速率,同理x32通道连接就能提供10GB/秒的速率,但考虑使用8b/10b编码实际上有20%左右的消耗,实际的传输速率大概是8GB/(x32单向)
分层分包协议
  
和我们熟悉的网络设备iso七层模型类似,各种总线在开发的过程中也根据完成的工作不同将总线功能实现分成不同的层,因此在单独更新/升级其中某一层的话并不会对其他层造成影响,便于各种开发人员的应用。
PCI Express包含3个协议层:事物层(Transaction)、数据链路层(Data Link)和物理层(Physical),当数据在设备间传输时,每个设备都会被看成一个协议栈(protocol stack) 
在发送端,数据先在事务层被分成数据包,然后继续到下一层数据连接层和物理层,每一层都将在原有的数据上加入新的头信息或尾部信息,最后通过物理连接传输到接受端设备的协议栈中;再接受端经过相反次序通过协议栈将在发送端的分包还原出来。
  
在三层中都各司其职,其中物理层负责组装和分解处理层数据,同时掌握连接结构以及信号的控制,保证数据能实现端到端的通信,使合法的数据从发送端传输到整个PCI Express架构。顺利达到接受端。而数据连接层则保证连接完整无缺地从一端传输到另一端,采用了Ack/Nack协议技术,能检测错误并进行修正。

 


数据包处理和插槽
  
PCI Express数据包处理包含4种基本的处理类型:内存事务处理、I/O事务处理、配置事务处理和信息处理。

采用基本的流控制来保证接受端设备有足够的缓冲资源接受来自发送端的数据(包括数据的容量和类型)PCI Express的接口根据总线位宽不同而有所差异,包括x1x4x8以及x16(x2模式将用于内部接口而非插槽模式)目前的PCI接口将保留(就如当初PCI代替ISA时也在主板上留下ISA槽一样)。较短的PCI Express卡可以插入较长的的PCI Express插槽中使用(也就是说低位宽的能插入高位宽的插槽使用)

同时PCI Express卡能够支持热拔插以及热交换特性,支持的三种电压分别为+3.3V3.3Vaux以及+12V。考虑到现在显卡功耗的日益上涨,PCI Express而后在规范中改善了直接从插槽中取电的功率限制,16x的最大提供功率达到了70W,比AGP8X接口有了很大的提高。基本可以满足未来中高端显卡的需求。这一点可以从AGPPCI Express两个不同版本的6600GT上就能明显地看到,后者并不需要外接电源
PCI Express虚拟通道及通信量等级
此外,PCI Express也支持每个连接的虚拟多通道。在一个小连接上可以存在最大8个独立控制的通讯。每个通讯都可以根据数据包的通信量等级(Traffic ClassTC)性质得到不同的处理。对于在PCI Express中传输的数据包而言,在每一个转换或连接终端,都要查验TC信息,并据此进行适当的处理。在数据包头部的TC描述符由3bit组成,可以表示不同的TC等级。这和我们在网络技术中看到的QOS实际上起到一个作用,就是保证那些需要实时处理的数据拥有较高的传输优先权,避免数据传输延迟。
  
新总线给我们带来了哪些技术应用
首先当然是代替已经进入最后的生命周期的AGP8X接口了,可以说在今年5月份Intel发布新一代的芯片组--Intel 915/925系列芯片组开始,就拉开了升级替换的序幕。因为Intel对于迅速普及PCI Express总线的主板,采用了比较激进的方式,也就是说从这一代芯片组开始,我们原来的AGP显示卡已经无法在这种主板上使用了,进行了强制的显卡总线接口的转换。在上个月发布的1066FSB925XE芯片组也延续了这种坚决推广PCI Express总线的态度。在明年AMDK8平台也会全面迈入PCI Express的时代,VIAK8T890系列,NVNF4系列都将全面使用PCI Express总线。

发布厂商


芯片组型号


适用平台


发布日期


Intel


915/925/xe


Intel P4E/F


已量产


VIA


K8T890/Pro


AMD K8 939


已发布




PT894


Intel P4E


未知


SiS


SiS 656/694


Intel P4E


未知


ATI


RS400/480


Intel P4E


未知


nVIDIA


NF4系列


AMD K8 939


未知



在配套的显卡方面两大巨头表现得非常积极,从今年的218nVIDIA正式发布了GeForce PCX系列图形显示卡开始, PCI Express显卡市场已经开始兴起,从新一代的显卡开始,已经完全基于PCI Express总线开发,对于AGP的支持反而要靠桥接芯片完成,其投放速度和价格和PCI Express产品相比已经不具备任何优势。可以说在县卡方面,PCI Express成为日后主流已经是板上钉钉的事实,除了考虑老系统的升级需求,我们还是推荐大家使用新的PCI Express平台,保证最大的用户投资。目前已经上市,或者将要上市PCI Express接口显卡如下:

发布厂商


GPU系列


发布日期


nVIDIA


GeForce PCX系列


已发布




GeForce 6系列(6800/6600/6200


已量产


ATI


X300/600/700/800/850


已量产


S3 Graphics


GammaChrome S19/18/14


04年底到05年第一季度


XGI


VOlari PCIE四个系列


未知



GeForce PCX都支持PCI Express 16x接口,对应产品分别是GeForce PCX 5950/PCX 5750/PCX 5300/PCX 4300


另外不得不提的PCIE应用就是已经开始在全国不少省市开播的HDTV视频播放和编辑应用。在高分辨率视频编辑过程中,PCI Express能够充分显示其4GB/s上下行能力的优势。而AGP总线则只能提供266MB/s的上行能力,因此在从显存读取数据到内存的过程将会很慢,而且由于其是半双工,上行的时候将无法下载。
  
在主板上采用大容量的缓存、缓存可以帮助缓解这个问题,新型的Serial ATA接口取代EIDE接口后也可以有效提高传输速度。PCI Express无法成为硬盘的接口,而Serial ATA在以后甚至会将硬盘直接接到上。
通过PCI Express将南桥和北桥连接,而不是PCI总线,可以提高带宽、降低延迟。不过在这个方面,有IntelHublinkVIAVlinkSiSMutiol等现有技术,使得PCI Express的前景还不清晰。Intel还在7500芯片组中推出了Hublink 2技术,将带宽有266MB/s提高到了1066MB/s


对于其他的高速总线而言,PCI-X 1.0的带宽理论上最大为1GB/sPCI-X 2.0则为4.26GB/s。同时,在现在的服务器中,芯片组以及支持PCI-X 2.0。对于这样的竞争对手,PCI-SGI没有打算让PCI Express来取代他们,而是希望用PCI-X进一步完善服务器架构。
 
当然PCI Express目前最大的受益者应该就是显示卡了,因为其众多突出的功能可以彻底解决显示卡传输带宽的问题,而且在今后游戏的配合下,我们可以使用更高级的显示卡获得更加逼真的效果。
结语
  
PCI Express成为总线技术的中流砥柱已经是肯定的了,目前显卡领域使用第一代桥接芯片来间接支持PCI Express总线的这个过渡时期已经非常快的完成,如今新品都几乎全部是基于PCI Express开发的,桥接支持AGP的显卡无论在推出速度、价格和性能上都不会再有优势。这将是促成今年年底到明年初PCI Express平台迅速普及的主要动力。
阅读(570) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~