是德科技选择适合您的 FPGA 设计的 I/O 体系结构 应用指南
序言 即使在几年前, 设计人员还主要是把 FPGA 作为设计原型的工具 但随着近十年来 FPGA 数据速率的迅速提高, 现在已完全能与 CMOS ASIC 相匹敌 系统性能的急速提升使设计人员能够在更多的领域利用 FPGA 的灵活性优势, 为通信 消费类电子 工业 军事和汽车应用等众多领域提供易于升级的产品解决方案 最新 FPGA 数据速率的提高甚至可以允许设计人员能够灵活地创建自己的 针对特定应用的总线 然而, 这些设计人员随即必须面对高速 I/O 的挑战 通道间时滞 抖动以及孔径窗口大小等因素都限制了 FPGA 的实际数据速率要低于理论值 针对这些问题,FPGA 系统设计人员延续过去在 ASIC 上的做法, 采用能减少这些影响因素的 I/O 体系结构 这篇应用指南描述了今天最流行的 I/O 体系结构, 并探索了可能导致各种体系结 构 I/O 性能变差的因素 最后还将介绍如何针对您的应用选择最合适的 I/O 体系 结构
03 Keysight 选择适合您的 FPGA 设计的 I/O 体系结构 - 应用指南 I/O 时钟体系结构 采用 FPGA 的设计人员通常会选择下列时钟体系结构中的一种 同步时钟 同步时钟是数字系统中最广泛使用的时钟方案 在这类时钟系统中, 有一个时钟被分配到系统中所有同步时钟逻辑电路 所有事务都在该时钟的某一特定沿上发生 这类时钟的实现较为简单 但为确保时序精度, 时钟分配网络必须保证系统中所有同步时钟逻辑的电长度一致 在时钟路径引入具有复杂逻辑的 FPGA 内部, 以及连接到采用不同制作工艺和不同封装形式的多片 FPGA 时, 保持电长度一致就变得非常困难 IC 制作工艺和结构的不同导致的时序误差会造成这类时钟同步性能的下降 另一项局限是在一个时钟周期后, 下一时钟周期必须等数据从一片 FPGA 传送到另一片 FPGA 后才能开始 这种体系结构的实例有 Pentium I 处理器 PCI 总线和 SDRAM 存储器 源同步时钟 针对同步时钟遇到的困难 很难保证系统中每一器件的时钟分配路径一样长, 人们开发出了源同步时钟 在这类时钟中, 电路创建与数据一起传输的包含自身时钟的数据码型 这种与数据在同一地点产生的时钟, 除了与数据总线共用传输媒介外, 它还有更为严格的时序关系 更严格的时序意味着数据有效窗口可以更好地与用于锁存数据的时钟对准 通道间时延的减少使得数据传输速率超过同步时钟体系结构 这类体系结构的例子有 Intel IA32 前端总线和 DDR 存储器 图 1. 今天的数字系统设计人员广泛采用 FPGA, 因为它有很好的灵活性和很高的速度 但设计人员也因此面对高速 I/O 的挑战
04 Keysight 选择适合您的 FPGA 设计的 I/O 体系结构 - 应用指南 I/O 时钟体系结构 ( 续 ) 嵌入式时钟 源同步时钟虽然有高得多的数据速率, 仍然存在与同步时序相同的通道间时延问题 无论时钟与多个信号有多好的关联,FPGA 中工艺流程的变动和互连结构的差异都会导致通道间的时延 嵌入式时钟解决了这一问题 在嵌入式时钟中, 数据编码方式 ( 例如 8B/10B 编码 ) 可保证单位时间内有确定的跳变数 它可以确保数据在单位时间内某确定百分比处跳变, 然后再用 PLL( 锁相环 ) 锁定数据流 PLL 在嵌入式时钟中用于接收机, 它锁定输入的数据流, 并根据跳变频率重建时钟 该时钟居于数据有效窗中央 这类时钟的缺点是时钟居中仅对于 PLL 已锁定的数据通道有效 此时各通道的数据速率仅受抖动容限和孔径窗口的限制 与同步时钟和源同步设计相比, 嵌入式时钟能够实现极高的数据速率 (> 2.5Gb/s), 但驱动器和接收机电路也更为复杂, 通道数也更少, 因此数据速率也比之前的体系结构高出很多, 整体吞吐量也会提高 2(a) 同步体系结构 2(b) 源同步体系结构 2(c) 嵌入式时钟 图 2. FPGA 设计人员通过改变 I/O 体系结构来克服由于数据速率增加时引起的信号完整性问题
05 Keysight 选择适合您的 FPGA 设计的 I/O 体系结构 - 应用指南 影响 FPGA I/O 速度的因素 总吞吐量 ( 或数字带宽 ) 定义为每秒可传送的符号数 它取决于每一通道可实现的单位 间隔和 I/O 体系结构中所使用的通道数 UI = t 符号 数据速率 = 1 UI 吞吐量 = ( 通道数 ) ( 数据速率 ) 通道间时延 可把通道间时延看成不同信号路径间数据有效窗的时间差 时延是由于设计电路时不同 通道的物理信号路径电长度不同造成的 通道间时延限制了 I/O 体系结构的数据速率, 因为数据信号同步时钟必须放置在能让总线所有数据通道成功锁定的地方 为此所有通道重叠的净有效数据窗口必须足够大 在您增加通道数时, 也同时增加了通道间的时延 您使用的通道越多, 净数据有效窗口就越小, 从而也降低了最大传输率 图 3. 像逻辑分析仪这样的工具能让设计人员详细分析 FPGA 遇到的真正的通道间时延 这是用是德科技逻辑分析仪通过带有阈值和采样点设置的眼图扫描功能进行测试的结果 注意当总线中所有信号重叠在一起时, 数据的有效窗被缩小
06 Keysight 选择适合您的 FPGA 设计的 I/O 体系结构 - 应用指南 影响 FPGA I/O 速度的因素 ( 续 ) 时延有两个主要来源 第一个来源是 IC 上的电路长度不一致 多数情况来自封装互连 当您使用 FPGA 时, 复杂逻辑也可能是主要因素 随着 CMOS 晶元尺寸达到 20 mm X 20 mm 封装达到数千信号数, 通道路径长度的不同变得相当可观 由不同 FPGA 驱动的信号进一步加大了芯片上的时延 这可能是芯片上路径长度不同造成时延的两倍 时延的第二个来源是 PCB 上线路的不匹配 包括电路板同一走线层的物理不匹配和不同走线层间的传播延迟 下图示出一个通道间时延的实例 抖动 抖动是描述单位间隔 (UI) 内时序不确定度的术语 也就是说抖动是一个 UI 内, 不能确保数据处于稳定逻辑电平的时间总量 这一不确定度范围决定了可靠传输数据的最小 UI 抖动的两种主要类型是确定性抖动和非确定性抖动 确定性抖动 抖动源可计算的抖动就是确定性抖动 例如, 若某种产品规定要在电源电压值 5% 变化范围内工作, 那么在数据速率技术指标中就需考虑电压下降造成的时序不确定度 时序不确定度的大小随应用不同而变化, 总的时序不确定度需要把它们都记入其中 可能的确定性抖动源有制作工艺变动 ISI 反射 同时切换噪声 电源跌落和 RC 负载变化 这些抖动源全部能在设计中确定, 通过叠加得到总的时序不确定度 对于稳定可靠的设计, 您必须考虑每一抖动源在最坏条件下对电路的影响 图 4. 用 Keysight DSO81304A 13 GHz infiniium 示波器进行数据信号抖动测量 注意用直方图找到抖动分布
07 Keysight 选择适合您的 FPGA 设计的 I/O 体系结构 - 应用指南 影响 FPGA I/O 速度的因素 ( 续 ) 非确定性抖动 可把呈统计规律的抖动源产生的抖动叫做非确定性抖动 其中的噪声成分是用其概率分布, 而不是用最坏条件值建模 传统上这种抖动源模型采用高斯分布 对这些源的量度是取有效值, 或标准偏差 对于非确定性抖动源, 您不需要考虑最坏条件的影响, 因为从统计上说这是极少发生的情况 而代之用误码率预测系统的稳定可靠性 这种噪声源的例子有热噪声和散粒噪声 对多个统计噪声源要采用有效值求和的方法得到净统计噪声分布 抖动是非常难以预测的 通常是用示波器抖动测量技术测定抖动成分 通过用相当多的时间累积各次采集, 您就能找到抖动的分布 此时您需要同时测量所有的抖动源 您可用 Keysight Infiniium 示波器中的抖动分析工具隔离和分析抖动 接收机孔径窗口 对于高速 I/O 电路设计, 最后一项关键因素是接收机元件的孔径窗口 在传统上称它为 建立和保持 时间, 这是为了保证在接收机准确捕获稳定信号, 在事件前和事件后的一段时间, 数据必须保持稳定的最小时间 为保证成功的数据采集, 孔径窗口必须在所有重叠的通道形成的净数据有效窗口之内 FPGA 制造商规定了这一量值 但复杂的逻辑和数据路径的变化会使它达不到这一理想技术指标 在多数情况下, 您都需要通过测量确定 吞吐量计算 通道间时延 抖动和接收机孔径窗口的组合决定了 I/O 的最快吞吐量 我们把通道间时延规定为两个通道工作于同一相位 ( 即同时发送一个符号 ) 时跳变区的时间差 下面的公式给出通道总误码率与上述各误差源的关系 UI t 通道间 + t 抖动 + t 孔径 吞吐量 = ( ) 通道数 UI
08 Keysight 选择适合您的 FPGA 设计的 I/O 体系结构 - 应用指南 选择 FPGA I/O 体系结构 选择 I/O 体系结构的第一步是确定您的电路设计对数据吞吐量的要求 在要求确定后, 就要评估各种适合您的电路的 I/O 体系结构 这是一个需要测量数据的互动过程 在您增加 I/O 的信号数量时, 所有影响因素 ( 通道间时延 抖动 孔径窗口变小 ) 也将增加 得到各因素的比例的最好方法是通过示波器和逻辑分析仪实测 首先从简单的同步时钟结构开始, 您可通过增加信号数提高整体吞吐量 在信号增加的同时观察导致性能下降的因素如时延 到某一点, 因信号完整性问题, 增加信号不再有效, 此时的主要影响因素是通道间时延 如果通道间时延变得不能克服, 同步体系结构也不可能是最佳的配置 此时您应探索源同步体系结构 这种体系结构的主要优点是它大大降低了数据组内的通道间时延 直到某一点通道间时延再次成为问题, 但此时已有高得多的数据速率 这种体系结构中的时延与抖动成分在同一数量级 当抖动和时延相对于电路正常工作值已过大时, 您就应考虑嵌入式时钟体系结构 最后来探讨嵌入式时钟体系结构 这种体系结构因时钟 / 数据在接收机恢复而不存在通 道间时延, 这是其独特优点 此外由于数据通道和时钟通道没有抖动, 抖动也因此而降 低 对这种体系结构的限制只有抖动和孔径窗口的分量 再来看行业 I/O 标准, 它们的典型数据速率如下表所示 单个通道的数据速率 时钟方案 直流至 300 Mb/s 同步 300 Mb/s - 2 Gb/s 源同步 > 2 Gb/s 嵌入式时钟 表 1. 业内对各种时钟体系结构对应的单通道数据率 显示出 ASIC 和 FPGA I/O 体系结构的演变
09 Keysight 选择适合您的 FPGA 设计的 I/O 体系结构 - 应用指南 结论 FPGA 的处理速度在过去十年不断提高, 现在设计人员普遍把 FPGA 作为 ASIC 的替代方案 但他们很快发现随着 FPGA 速度的提高, 他们面临的信号完整性问题正是几年前 ASIC 设计人员所面临的 为增加 I/O 的整体吞吐量而增加通道数的方法, 将导致通道间时延 抖动和孔径窗口问题, 这些因素都会造成吞吐量的下降 为解决这些问题, FPGA 设计人员必须转向不同的时钟结构 FPGA 设计人员要取得成功, 即保持系统数据量不断增加的发展态势, 必须首先了解造成单位时间间隔减小的所有因素 这篇应用指南中的材料取自 FPGA and Programmable Logic Journal 中的 FPGA I/O - When To GoSerial, 作者是是德科技的 Brock J. LaMeres 相关文献 出版物标题出版物类型出版物编号 Keysight 16900 系列逻辑分析仪彩色手册 5989-0420CHCN Keysight Infiniium 54850 Series Oscilloscopes 技术资料 5988-7976EN Logic Analyzer Probing Techniques for High- Speed Digital Systems 应用指南 1450 5988-9125EN B4655A FPGA Dynamic Probe 技术资料 5989-0423EN 针对调试的测试规划 : FPGA 动态探头设计指南 5989-1593CHCN 产品网站 如欲了解最新 最全面的应用和产品信息, 请访问是德科技产品网站 : www.keysight.com/find/logic
10 Keysight 选择适合您的 FPGA 设计的 I/O 体系结构 - 应用指南 mykeysight www.keysight.com/find/mykeysight 个性化视图为您提供最适合自己的信息! www.axiestandard.org AdvancedTCA Extensions for Instrumentation and Test (AXIe) 是基于 AdvancedTCA 标准的一种开放标准, 将 AdvancedTCA 标准扩展到通用测试半导体测试领域 是德科技是 AXIe 联盟的创始成员 www.lxistandard.org 局域网扩展仪器 (LXI) 将以太网和 Web 网络的强大优势引入测试系统中 是德科技是 LXI 联盟的创始成员 www.pxisa.org PCI 扩展仪器 (PXI) 模块化仪器提供坚固耐用 基于 PC 的高性能测量与自动化系统 3 年保修 www.keysight.com/find/threeyearwarranty 是德科技卓越的产品可靠性和广泛的 3 年保修服务完美结合, 从另一途径帮助您实现业务目标 : 增强测量信心 降低拥有成本 增强操作方便性 是德科技保证方案 www.keysight.com/find/assuranceplans 5 年的周密保护以及持续的巨大预算投入, 可确保您的仪器符合规范要求, 精确的测量让您可以继续高枕无忧 www.keysight.com/go/quality Keysight Technologies, Inc. DEKRA Certified ISO 9001:2008 Quality Management System 是德科技渠道合作伙伴 www.keysight.com/find/channelpartners 黄金搭档 : 是德科技的专业测量技术和丰富产品与渠道合作伙伴的便捷供货渠道完美结合 此文档以前称之为应用指南 1500. 如欲获得是德科技的产品 应用和服务信息, 请与是德科技联系 如欲获得完整的产品列表, 请访问 : www.keysight.com/find/contactus 是德科技客户服务热线热线电话 : 800-810-0189 400-810-0189 热线传真 : 800-820-2816 400-820-3863 电子邮件 : tm_asia@keysight.com 是德科技 ( 中国 ) 有限公司北京市朝阳区望京北路 3 号是德科技大厦电话 : 86 010 64396888 传真 : 86 010 64390156 邮编 : 100102 是德科技 ( 成都 ) 有限公司成都市高新区南部园区天府四街 116 号电话 : 86 28 83108888 传真 : 86 28 85330931 邮编 : 610041 是德科技香港有限公司香港北角电器道 169 号康宏汇 25 楼电话 : 852 31977777 传真 : 852 25069233 上海分公司上海市虹口区四川北路 1350 号利通广场 19 楼电话 : 86 21 26102888 传真 : 86 21 26102688 邮编 : 200080 深圳分公司深圳市福田区福华一路 6 号免税商务大厦裙楼东 3 层 3B-8 单元电话 : 86 755 83079588 传真 : 86 755 82763181 邮编 : 518048 广州分公司广州市天河区黄埔大道西 76 号富力盈隆广场 1307 室电话 : 86 20 38390680 传真 : 86 20 38390712 邮编 : 510623 西安办事处西安市碑林区南关正街 88 号长安国际大厦 D 座 501 电话 : 86 29 88861357 传真 : 86 29 88861355 邮编 : 710068 南京办事处南京市鼓楼区汉中路 2 号金陵饭店亚太商务楼 8 层电话 : 86 25 66102588 传真 : 86 25 66102641 邮编 : 210005 苏州办事处苏州市工业园区苏华路一号世纪金融大厦 1611 室电话 : 86 512 62532023 传真 : 86 512 62887307 邮编 : 215021 武汉办事处武汉市武昌区中南路 99 号武汉保利广场 18 楼 A 座电话 : 86 27 87119188 传真 : 86 27 87119177 邮编 : 430071 上海 MSD 办事处上海市虹口区欧阳路 196 号 26 号楼一楼 J+H 单元电话 : 86 21 26102888 传真 : 86 21 26102688 邮编 : 200083 本文中的产品指标和说明可不经通知而更改 Keysight Technologies, 2005-2014 Published in USA, July 31, 2014 出版号 : 5989-1594CHCN www.keysight.com