|
Q&A:PCI Express技术之设计高性能桥接
[复制链接]
Q1:从嵌入式领域到服务器,你认为PCIx能够覆盖所有这些领域吗?同时带来出色的性能?
A1:基本上,PCIe技术在设计的时候其标准由PCISIG这一组织来制定标准的,而这个组织在制定标准的时候已经考虑到了从服务器到PC端,到工业领域的所有需求。所以今天我们可以说PCIe技术在服务器PC或者工业领域都可以提供非常好的性能。
Q2:PC Iexpress最新的标准版本是哪一个?
A2:目前PCISIG发布的PCIe最新的标准版本是2.0,它可以支持5G的速率,但是市场上我们现在看到PCIe2.0的产品相对来讲比较少,看到的大多是PCIe1.0,2.5G的产品。
Q3:目前express的应用范围如何?传输速率最高可达到多少?
A3:基本上,我们前面提到过PCIe在桌面的台式PC、服务器的存储等相关的计算领域、通讯行业、基站、各种大型的通讯设备以及工业PC领域都得到了广泛应用。目前,传输速率在PCIe1.0的标准中,单个lane速率可以达到2.5G。用户可以选择最高× 16模式来达到16×2.5G的速率。在PCIe2.0中,单项速率可以达到5G,同时lane的模式可以扩展到×32的模式,也就是说用户可以达到的最高速率是5G×32的速率。
Q4:在测量PCIe信号时,fail有哪些因素会影响?
A4:在对PCIE的系统进行测量的时候,因为PCIE是一个基于串行传输的系统,所以影响到他性能或者信号完整性的主要方面是:第一,客户在进行PCD布线的时候,阻抗设计的水准如何;第二,客户选用接插件的质量,或者说接插件对信号完整性的贡献如何。只要客户在进行PCD设计时,信号完整性的质量得到了很大的保证,基本上PCIe的系统性能可以达到客户预期的水准。
Q5:PCIe对总线的要求是不是很高?
A5:PCIe 由于使用了串行的交换技术,因此就我个人而言,它相对于之前的PCI-X和PCI来说其设计难度不是很高,我们的设计者在开发时需要注意的主要问题是在进行PCB布线时对信号完整性的分析和保证。如果通过仿真工具在PCI的布线时得到一个较好的信号完整性,那么对于PCI的整个系统设计来讲没有额外的要求。
Q6:目前对hot-plug的支持如何?在设计测试板卡的方案时发现会造成2003蓝屏或者识别不到设备,不知道是哪个环节出了问题?
A6:PCIe的热插拔功能没有使用边带性,而是使用带内信号将热插拔的中断信息传送给我们称之为的根复合体,引发热插拔软件对热插拔事件进行检测,所以这个问题要看一下对热插拔事件和中断的处理的问题。
Q7:使用桥片将PCI设备连接到PCI express上面后,驱动程序是否需要重新开发?
A7:PCIe 可以将它视作PCI及PCI-X的后续标准。在PCI Express的标准中继承了PCI及PCI-X的基本操作类型,目前我们看到的将PCI-X或PCI的设备通过桥接芯片接入到主机当中时,PCI或者是 PCI设备的驱动程序不需要重新开发。这也方便了广大的设计者将已有的驱动程序应用在新的系统中。
Q8:我有一个带Controller的PCI卡,它与主板连接,但是目前主板不支持hot-plug,能否采用PCIe桥设计一个可以支持hot-plug卡,是否需要获取该Controller的支持?
A8: hot-plug需要板卡和主板同时支持。这位朋友目前的问题是板卡支持热插拔,而主板本身并不支持。从主板的角度来看,如果使用一个新的支持热插拔的板卡,主板还是不能提供对热插拔的支持。因此建议在主板的方面做些额外的工作,使主板本身能够支持热插拔的板卡。
Q9:上行路径和下行路径的区别是不是相似于与ADSL的不对称传输协议?
A9:两者还是有一定的区别。在PCIe的标准中,对于上行和下行方向的定义物理层可以达到的速率是完全一致的。上行数据路径的概念和下行数据路径的概念,主要是TUNDRA通过分析在大多数PCIe数据的应用中,上行数据路径是指占了整个系统流量95%以上处理的类型,而下行数据路径指占整个系统流量大约5%的数据流量。 TUNDRA的产品在设计时针对这95%和5%进行了区别对待。对占系统总流量95%的数据流量做了特别优化,使用了特别的缓存机制。而针对其余5%的系统流量使用了通用处理的过程。这样就极大的提高了整个系统的性能,这也是TUNDRA一贯以来在产品中所提供的一个优点,也就是高的性能和低的功耗。
Q10:如何提高PCIe的连接速度?
A10:首先要视用户的需求,是选择PCIe1.0或PCIe2.0的标准而定。在PCIe1.0的标准中,每一对lane的速率是2.5G,而在PCIe2.0 中每一对lane的速率提高到了5G的水准。其次,在选定了PCIe标准的情况下,如果想获得更高的传输速率,可以通过选择更多的lane的对数来选择,也就是×1、×2、×4、×8、×16或者×32的模式,这样的话,整个系统的带宽就可以得到成倍的提高。目前来看,PCIe提供的最大的传输性能已经可以满足绝大多数应用的需求。最终是要根据用户的需求来选择一个合适的速率、合适的产品。
Q11:PCI express×8与×4兼容吗?
A11:在PCI express中我们定义了从×1一直到×16的模式,在PCI express2.0中增加了×32的模式。在×1、×2、×4、×8一直到×16甚至×32的各种模式下,可以从更高的带宽模式,比如从×8的模式下,它定义了自协商的机制,或者说我们可以将×8的端口分为两个×4的端口,或者4个×2的端口。它的物理层都是通用的,不需要进行额外的工作。
Q12:Rack IO同样是高速串行的传输方案,而且传输速率比express还要高,那么能否用前者代替后者?否则,两者的主要区别在哪里?
A12:Rack IO和PCI express都是两种高速的、串行的用于互联的技术。谈到两种技术那种技术可以取代那种技术,我们很难表达这样的情况,只能说根据大家的具体应用情况不同而使用。如果您原来是基于PCI和PCIx这一系统来开发的,可能会非常容易的选择PCIe这种技术,这样可以很好的保存原来开发的成果;如果您是开发语音或者视频这样的需要大量的DSP的产品,可能更容易选择Rack IO这一技术。因为Rack IO 是基于芯片与芯片之间高速互联的技术。两种技术的主要区别在于:第一是协议本身的区别;第二,主要是大家所选用的一些芯片。首先您选用的其他家的芯片要支持Rack IO的接口或者要支持PCIE的接口,具体的这些区别可能就是说在它所支持的lane的速率上有一些不一样。
Q13:在1.0a,1.1和2.0之间有什么异同?
A13:目前我们看到从PCIe大的版本上分为1.0标准和2.0版本。而1.0和2.0之间主要的区别是他改变了物理层的单对lane上的传输速率。在1.0中单对lane的传输速率的2.5G,但在2.0的标准中,我们提高到了单对lane传输速率为5G.。同时在2.0的标准中增加了对lane的宽度的支持,增加了×32的模式的支持。其次,在1.0和1.1的标准当中,我们看到的只是一些非常小的改动。而且需要强调的是在整个标准版本的演进过程中,我们所有的版本都是互相兼容的。也就是说我们的产品支持的是1.1或者是2.0的标准的话,那意味着所有1.0版本所具有的功能已经在1.1和2.0的标准中实现了。当用户使用只支持1.0标准的产品和支持1.1或2.0标准的产品进行互通时,所有兼容性的问题都可以得到保证,不会产生额外的问题。
Q14:PCIe卡在工控领域的抗干扰能力以及对周围设备的干扰特性如何?
A14:基本上,我们比较PCIe的标准和过去的PCI和PCI-X的标准时,我们会看到,PCI-X和PCI是基于总线共享式的信号传输,而PCIe是基于串行的包的传输。对抗干扰能力及它干扰别人的特性方面我们主要是关注在物理层信号传输的方式。就PCI或PCI/X来讲,因为它本身没有使用差分线的传输,所以它的受干扰特性和干扰别人的特性都需要在设计时进行额外的传输,额外的注意。而在PCI express当中,因为物理层的传输使用了低电压的差分队的技术,所以它的抗干扰特性和对外辐射干扰的情况相对于PCI和PCI/X来讲都得到了很大的提升。基本上,只要拥有在PCI和PCI-X方面设计对EMI进行控制的经验的话,我想这项工作在进行PCIe板卡的设计时会变得更加的容易。
Q15:PCI桥是否能接多种外接设备?
A15:在PCI和PCI/X的标准当中,根据我们具体的速率应用情况可以在同一条总线上连接1-4个设备。但是在PCI express当中,因为它使用的技术主要是点对点的传输,所以当如果需要连接多个外部设备的时候,我们就需要使用到PCI express的交换芯片,每一个PCI express的端口只能连接一个外部设备。
Q16:PCIe产品在PCB设计时,有关SI和PI方面有什么需要注意的?
A16:在PCIe的设计方面,我们在进行SI和PI的设计时,因为它使用的是低电压的差分队的传输技术,所以最重要的是我们要对PCB板布线的阻抗进行精确的控制。在这里我们推荐大家在做PCIe设计时,使用TUNDRA提供的各种IC的模型,在我们的EDA当中进行前期及后期的仿真。同时对阻抗的控制需要 PCB的生产厂家用户,也就是说用户在制作PCB板时需要和PCB板的加工厂家进行比较好的沟通,来对板上的走线以及使用的连接器进行一个精确的阻抗控制。其他方面没有更多需要注意的。
Q17:PCIe相比于PCI在工控领域应用领域应用的具体优势?
A17:基本上,我们看到在对比PCIe和PCI-X以及PCI时,一个方面是PCIe在传输速率方面得到了很大的提升。其次在进行系统的设计时,因为PCI和 PCI-X使用的是定型的总线共享式的技术,而PCIe使用的是串型的包交换技术,所以我们在进行系统设计时,如果使用的是PCI或者是PCI-X,我们需要更多的走线以及引脚来传输我们需要的数据。而在使用PCIe时,在最简单情况下,我们只需要4对走线就可以达到它的最低的速率2.5G的标准。所以对系统设计者来讲,得到的最大的好处是:首先,系统数据传输的吞吐量得到了很大的提升。第二,对硬件的设计来讲,它需要的引脚数得到了大幅度的减少,对设计者来讲,使设计变得更加的容易。
Q18:PCIe在高速流工作中它的电磁辐射是否比较大?
A18:因为PCIe当中使用了串行的数据包的交换方式,在物理层使用的低电压的插分队,低电压的插分队作为一个物理层的技术来讲,PCIe在以太网都得到了广泛的应用。我们使用低电压的插分队是因为,它首先能提供较高的速率,其次它的干扰能力和接受抗干扰能力相对于传统的PCI或PCIx的总线方式都得到了大幅度的提升,所以我们可以讲的是,尽管PCIe的传输速率非常高,但它在干扰或抗干扰方面的特性都是非常高的。
Q19:我是个硬件工程师,除了XI之外我是否还需要做PCIe的协议分析呢?
A19:基本上我们在进行测试时不需要进行PCIe的详细协议的分析,只要我们在电路设计时对信号完整性有一个很好的保证的话,那系统性能受影响的因素还是软件方面的问题,所以通常来讲,我们不需要进行PCIe协议级的分析。
Q20:PCIe是现在总线技术的终结吗?下一代的发展将往何处?
A20:我们很难说PCIe 2.0标准是一个技术的终结,因为我们看到半导体的技术总是在不断快速向前发展的,目前在PCIe 2.0当中看到它的最高的速率是单对的lane支持5G的速率,但是通过在研究领域或者在半导体公司开发领域,已经可以看到对单对的lane的速率可以运行在6G到10G左右,同时PCIe技术本身也为它提供了很好的可扩展性,所以我们可以预期的是,目前PCIe 2.0的标准绝对不会是一个技术上的终结,我们已经看到了比它性能更高的兼容性更好的标准存在。
Q21:PCI和PCI express 的区别是什么?
A21:基本上来讲,从协议的处理方面,PCI和PCI express之间是具有一定的继承关系的,在PCI和PCI express之间最大的改进或者不同在于对物理层传输技术的改进,PCI及PCIx使用了共享的总线并行的传输方式,而在PCI express当中使用了点对点的串行的基于包交换的传输模式,这是两者之间的最大的区别。
Q22:如果有多个PCI express设备在系统中应如何连接?
A22:如果说系统中存在多个PCI express的设备,首先要看在系统当中你的北桥芯片是否提供了多个PCI express的接口,如果说没有的话,我么可以在系统中增加一个在PCI express的交换芯片,来扩展它的PCI express端口数,连接用户所需要的多个PCI express设备。
|
|