用FPGA构建PCI Express端点器件最佳平台

发布者:心灵的旅程最新更新时间:2010-07-22 来源: Xilinx公司关键字:FPGA  PCIExpress  CDR  时钟数据恢复 手机看文章 扫描二维码
随时随地手机看文章

  PCI Express是一种使用时钟数据恢复(CDR)技术的高速串行I/O互连机制。PCI Express第一代规范规定的线速率为每通道2.5Gbps,可以让您建立具备单通道(x1)链路2Gbps(经8B/10B编码)直至32通道64Gbps吞吐量的应用。这样就能在保持或改进吞吐量的同时,显著减少引脚数量。另外,还可以减小PCB的尺寸、降低印制线和层的数量,并简化布局和设计。引脚数量减少,也就意味着噪声和电磁干扰(EMI)降低。CDR消除了宽并行总线中普遍存在的时钟-数据歪斜问题,简化了互连实现。

  PCI Express互连架构主要针对基于PC的系统,但就像PCI一样,PCI Express也很快转移到其他系统类型,如嵌入式系统。它规定了三种类型器件:根联合体(root complex)、交换器件和端点(图1)。根联合体大致等同于PCI主机,CPU、系统存储器和图形控制器与之相连接。由于PCI Express的点对点特性,必须使用交换器件来增加系统功能的数量。PCI Express交换器件将上游端的根联合体器件连接到下游端的端点。

PCI Express拓扑结构

图1:PCI Express拓扑结构。

  端点功能类似于PCI/PCI-X器件。最常用的端点器件有以太网控制器或存储主机总线适配器(HBA)。FPGA最常用于数据处理和桥接功能,所以其最大目标功能就是端点。FPGA实现非常适合于视频、医疗影像、工业、测试和测量、数据采集和存储应用。

  PCI-SIG(PCI特别兴趣小组)采用的PCI Express规范规定每个PCI Express器件使用三个不同的协议层:物理层、数据链路层和事务层。您可以使用单芯片或双芯片解决方案来构建PCI Express端点。例如,使用Xilinx Spartan-3器件之类的低成本FPGA,您可以用商用离散PCI Express PHY(图2)来构建数据链路和事务层。此选项最适合于x1通道应用,如总线控制器、数据采集卡和提高性能的PCI32/33器件。或者,您可以使用类似Virtex-5 LXT或SXT FPGA的单芯片解决方案,它们具备集成的PCI Express PHY。此选项最适合于通讯或高清晰音频/视频端点器件(图3),它们对性能的要求更高:x4(8Gbps吞吐量)链路或x8(16Gbps吞吐量)链路。

基于Spartan-3 FPGA的数据采集卡 

图2:基于Spartan-3 FPGA的数据采集卡。 [page]

  在选择一种技术来实现PCI Express设计之前,必须仔细考虑应用的IP选择、链路效率、兼容性测试及资源可用性。本文中,我们将简要介绍使用最新的FPGA技术构建单芯片x4和x8通道PCI Express设计的一些因素。

基于Virtex-5 LXT FPGA的视频应用

图3:基于Virtex-5 LXT FPGA的视频应用。

  IP的选择

  作为设计人员,您可以选择构建自己的软IP或者向第三方或FPGA供应商购买IP。构建自己的IP的难题在于,您不光得从零开始创建设计,还得担心验证、批准、兼容性和硬件评估等环节。向第三方或FPGA供应商购买的IP,已经过所有严格的兼容性测试和硬件评估,可以即插即用。如果使用商用的、已验证的兼容性PCI Express接口,您可以把精力集中在设计中最有附加值的部分:用户应用。使用软IP的难题在于应用的资源可用性。软IP核的PCI Express MAC层、数据链路层和事务层通过可编程架构实现,因此您必须特别注意剩余的Block RAM、查找表和架构资源的数量。

Virtex-5 LXT FPGA PCI Express端点框图

图4:Virtex-5 LXT FPGA PCI Express端点框图。

  另一选择是使用最新技术的FPGA。Virtex-5 LXT和SXT的专用门电路(图4)中实现了集成x8通道PCI Express控制器。这种实现极具优势,因为设计是在硬硅片中实现的,所以需要的FPGA逻辑资源数量达到了最小。例如,在Virtex-5 LXT FPGA中,一个x8通道软IP核可占用多达10,000个逻辑单元,而硬实现只需要大约500个逻辑单元,多数用于接口。这样的资源节省有时候能允许您选择更小的器件,而器件越小通常就会越便宜。集成实现通常具有更高的性能、更宽的数据通路,并且可通过软件配置。 [page]

  软IP实现的另一难题是功能的数量。通常,此类核仅实现满足性能或兼容性目标规范所要求的最少功能。相反,硬IP可以支持基于客户要求的全面功能列表,并提供完全的兼容性(表1),且不存在严重的性能或资源相关的问题。

表1 Virtex-5 LXT FPGA PCI Express功能

Virtex-5 LXT FPGA PCI Express功能

  延迟问题

  尽管PCI Express控制器的延迟不会对总体系统延迟有很大的影响,但却会影响接口的性能。使用较窄的数据通路有助于减少延迟。

  对PCI Express来说,延迟就是发送包并穿过物理层、逻辑层和事务层接收包所需的周期数。典型的x8通道PCI Express端点的延迟为20-25周期,在250MHz下对应80-100ns的延迟时间。如果使用128位的数据通路实现接口来简化时序(如125MHz),延迟会加倍为160-200ns。在最新的Virtex-5 LXT和SXT器件中,无论是软IP实现还是硬IP实现,都采用250MHz下的64位数据通路实现x8。 [page]

  链路效率

  链路效率是延迟、用户应用设计、有效载荷大小和额外开销的函数。随着有效载荷大小(通常称为最大有效载荷)的增加,有效链路效率也会增加。这是由包的额外开销固定不变这一事实造成的;如果有效载荷大,效率就提高。一般情况下,256字节的有效载荷可提供93%的理论效率(256有效载荷字节+12包头字节+8帧字节)。尽管PCI Express允许的包大小可达4KB,但如果有效载荷大小大于256或512字节,大多数系统的性能都无法提高。由于链路协议额外开销(ACK/NAK、包重新发送)和流程控制协议,在Virtex-5 LXT FPGA中实现x4或x8PCI Express的链路效率为88-89%。

  利用FPGA实现可以更好地控制链路效率,因为它允许您选择与端点实现对应的接收缓冲器尺寸。如果链接双方不是采用相同的方式实现数据通路,则二者的内部延迟会不同。例如,如果一号链接方使用64位、250MHz实现,延迟为80ns,而二号链接方使用128位、125MHz实现,延迟为160ns,该链路的组合延迟即为240ns。现在,如果一号链接方的接收缓冲器设计成160ns的延迟(即期待其链接对方也是64位、250MHz实现),那么链路效率就会降低。如果采用ASIC实现,就不可能改变接收缓冲器的尺寸,效率损失将是实实在在的,而且是永久性的。

  用户应用程序设计也会对链路效率有所影响。用户应用程序必须设计成定期排空PCI Express接口的接收缓冲器,并保持发送缓冲器时刻充满。如果用户应用程序不立即使用接收的包(或者不立即响应发送请求),无论接口的性能如何,总链路效率都会受到影响。

  使用某些处理器设计时,如果处理器不能执行大于1 DWORD的突发,则需要实现一个DMA控制器。这将造成链路利用不充分,效率不佳。大多数嵌入式CPU可以发送长于1 DWORD的突发,所以通过良好的FIFO设计就可以有效地管理这些设计的链路效率。

  PCI Express兼容性

  兼容性是经常被遗漏和低估的重要细节。如果要构建必须与其他应用和设备一起工作的PCI Express应用,则必须确保设计的兼容性。

  兼容性不只针对IP,而是针对整个解决方案,包括IP、用户应用、半导体器件和硬件板。如果整个解决方案已经过PCI-SIG PCI Express兼容性工作组的验证,就能很好地保证您设计的PCI Express部分会一直有效工作。

  本文结论:

  PCI Express已替代PCI成为事实上的系统互连标准,并且已从PC转移到其他系统市场,包括嵌入式系统设计。FPGA非常适合于构建PCI Express端点器件,因为它允许您创建带有用户所需的附加定制功能的兼容性PCI Express器件。

  类似Virtex-5 LXT和SXT系列的新65nm FPGA完全符合PCI Express v1.1规范,并为用户应用提供广泛的逻辑和器件资源。使用外部PHY的Spartan-3系列FPGA提供了低成本解决方案。这些因素,加上内在的可编程逻辑优势(灵活性、可再编程性和低风险)使FPGA成为PCI Express的最佳平台。

关键字:FPGA  PCIExpress  CDR  时钟数据恢复 引用地址:用FPGA构建PCI Express端点器件最佳平台

上一篇:DDR3存储器接口控制器IP加速数据处理应用
下一篇:针对GPON突发模式接收器的低功耗FPGA方案

推荐阅读最新更新时间:2024-05-02 21:06

Altera继推出其28-nm系列产品后, 续发售Arria V FPGA
Altera继推出其28-nm系列产品后, 续发售Arria V FPGA 公司演示带有10.3125-Gbps收发器、功耗最低的中端FPGA,适用于无线、广播等应用 2011年11月30号,北京——Altera公司(NASDAQ: ALTR)今天宣布,开始发售其28-nm Arria(r) V FPGA。Arria V器件是目前市场上支持10.3125-Gbps收发器技术、功耗最低的中端FPGA。利用该系列的创新特性,在无线、广播等市场上,设计人员可以定制满足下一代系统的低功耗、宽带和低成本需求。Arria V器件是公司于2011年上半年发售Stratix(r) V系列产品之后发售的另一28-nm系列产品,表明了Altera承
[嵌入式]
Crestron 采用英特尔 FPGA 改进视频质量和连接
移动工作者正在推动对于随时随地连接的需求。很快他们将实现高质量的 4K 连接并在不久之后实现 8K 连接。为了满足这种工作环境的变化,商业音视频系统正在实现真正的统一,将 PC 与视频会议系统和投影仪以及员工“自带”个人设备连接起来。与此同时,新的 4K、HDR 和 8K 视频标准将带来更多挑战,要求设备制造商将系统升级为这些标准,以便将设备推向市场。   随着人们从工作场所会议室转移到较小的协作空间再转移到小隔间,他们希望从任何地方均能够快速访问所需信息。 Crestron 今天宣布,该公司将在其新的数字媒体 AV 发布系统中使用英特尔 Arria® 10 FPGA,该系统可支持 4K 质量的视频会议并为使用任何设备的用户提供
[嵌入式]
一种基于FPGA和DSP的图行显示控制系统设计
随着现代电子信息技术的发展,人机交互、图形图像数据的输出显示在系统设计中越来越重要,一方面要求各种参数的输入,另一方面要求将数据结构显示出来。文中设计的基于DSP和FPGA的系统结构,实现了人机交互和各种图形图像的输出显示,而且可以达到动态显示的效果。在设计上采用了软件填充的图形设计方法,先由DSP生成全局数据缓冲区,填充要绘制的图形,之后通过DSP的EDMA传递给FPGA,FPGA实现显示屏的接口不断扫描,将数据送到显示屏显示。同时FPGA连接键盘接口,通过扫描法扫描键值,之后通过中断方式送到DSP,使DSP对各种输入进行控制。整个系统的结构图如图1所示。 1 系统功能 为实现显示系统的基本功能,系统要求实现人机交互,
[嵌入式]
一种基于<font color='red'>FPGA</font>和DSP的图行显示控制系统设计
CrossLink-NX FPGA为Moorechip提供高性能高可靠串行接口解决方案
低功耗可编程器件的领先供应商莱迪思半导体公司宣布,Moorechip公司选择莱迪思CrossLink™-NX FPGA来实现支持1080p视频输出的四通道MIPI显示屏串行接口解决方案。CrossLink™-NX FPGA系列提供1066Mbps DDR3存储器接口、2.5Gbps MIPI D-PHY、大容量嵌入式RAM块(EBR)和大型SRAM加速90度图像旋转和高清视频桥接应用的算法实现。 CrossLink-NX系列FPGA的设计采用了业界首款28 nm FD-SOI制造工艺的Lattice Nexus低功耗FPGA技术平台。Nexus拥有莱迪思自主设计的FPGA架构,专为优化高性能、低功耗、小尺寸的设计。CrossL
[嵌入式]
基于FPGA的工控领域监控系统设计
引言 整机在工作时,大概有4%的能量被各种电力电子器件所消耗,这些被消耗的能量以热量的形式分别在单个模块中通过散热器散发出去。 针对以上的现象,可用PTl00铂电阻温度传感器在散热器表面感应温度,以保护电力电子器件不因为在高温下运行而损坏。金属铂(Pt)的电阻值随温度变化而变化,并且具有很好的重现性和稳定性,利用铂的此种物理特性制成的传感器称为铂电阻温度传感器,通常使用的铂电阻温度传感器的零度电阻值为100Ω,电阻变化率为0.3851Ω/℃。铂电阻温度传感器具有精度高,稳定性好,应用范围广等优点,是最常用的一种温度传感器。 串行外设接口SPI (Serial Peripheral Interface)是一种高速同步串行
[嵌入式]
基于FPGA的CCD相机时序发生器的设计
      1   引言       科学级CCD相机(Scientific grade CCD camera)是一种具有低噪声、高灵敏度、大动态范围和高量子效率等优良性能的CCD相机,用于对微光信号检测和微光成像。它在射线数字成像检测、生物医学工程、水下摄影、武器装备、天文观测、空间对地观测等多种技术领域得到了广泛应用。       科学级CCD相机一般由高速CCD 感光芯片、视频信号处理器、时序控制器、时序发生器、时序驱动器、外部光学成像系统等部分组成,其中时序发生器性能的优劣直接决定了相机的品质参数。该科学级CCD相机采用DALSA公司的IL-E2 型TDI-CCD作为传感器,本文分析了IL-E2型TDI-CCD 芯
[嵌入式]
Altera为三洋后视倒车摄像添图像功能
  Altera公司宣布,三洋电子有限公司在其CCA-BC200汽车后视倒车摄像系统中采用了Cyclone II FPGA和Nios II嵌入式处理器。Cyclone II FPGA的Nios II嵌入式处理器为三洋公司提供了高性能图像处理解决方案,降低了广角和偏角失真。和数字信号处理器(DSP)方案相比,单芯片FPGA是更紧凑、更可靠的解决方案,而前者通常需要两个以上的器件。   CCA-BC200是业界的首款配件市场后视倒车摄像系统。该系统可以连接至所有汽车的视频监视系统,对图像进行数字校正,实现更清晰自然的图像。三洋公司在消费类电子产品展(CES)上展示了这一后视倒车摄像系统。   三洋电子有限公司汽车高级技术中心经理Hi
[嵌入式]
XILINX推出667Mbps DDR2 SDRAM接口解决方案
赛灵思公司日前宣布,推出基于Virtex-4 FPGA的667Mbps DDR2参考设计,该参考设计提供了FPGA业界高带宽最、高可靠性的内存接口解决方案。赛灵思667 DDR2-SDRAM接口采用了Virtex-4 ChipSync技术,这是一种运行时校准电路,可以提高设计余量和整体系统可靠性,同时缩短设计周期。 Virtex-4 FPGA将臆测清除出内存接口设计,使系统设计师能够为最新的667Mbps DDR2 SDRAM等内存技术构建可靠的高性能接口。Virtex-4的芯片特性、经过验证的硬件参考设计与易于使用的Xilinx Memory Interface Generator工具的结合,可提供设计灵活性和可靠性。赛灵思内
[新品]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved