Xilinx FPGA高速串行传输技术与应用
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

随着对电子系统吞吐量要求的日益提高,并行数据传输模式已不能满足高带宽应用的传输需求。高速串行数据传输技术具有高带宽、低时延、信号完整性好和扩展性强等优点,已逐步取代传统的并行总线技术。串行传输已成为数据传输的主流技术,广泛应用于通信网络、数据存储、个人计算机、服务器和嵌入式控制等诸多领域。一方面是与日俱增的带宽要求,另一方面是不断变化的新兴高速串行传输标准,二者都对设计人员提出了严峻挑战。由于 FPGA器件兼有可编程性和高速 I/O的技术优势,可以满足串行传输协议及演进变化的需求,因而 FPGA器件已成为实现串行接口应用的理想连接平台。

随着信息技术的快速发展及大数据的兴起,需要处理的数据量越来越大,数据传输对总线带宽的需求也越来越高,市场上对串行技术的需求急剧增加。Xilinx 公司以及其他芯片厂家都提供串行传输解决方案,支持芯片间、板卡和背板之间的数据互连。Xilinx FPGA器件内部集成了专用的高速收发器 IP硬核,具有串并转换、时钟数据恢复、线路编码、时钟纠正和线路绑定等功能,在此基础上可以灵活地开发多种串行传输协议,使得 Xilinx FPGA在串行接口应用中愈加广泛。Xilinx公司还提供了 XAUI、SATA、PCI-E、Interlaken、RapidIO和 Aurora等协议的解决方案,有助于开发人员缩短串行传输技术的开发周期。

串行传输技术的应用开发需要系统性的背景知识和技术基础,开发人员在初次涉及Xilinx FPGA 相关的串行传输技术时,若缺乏适当的背景知识和应用指导,在应用高速传输接口时将遇到诸多难点。由于串行传输技术应用存在的巨大市场需求,目前已有一些科研院所和培训机构开设了串行技术实现的相关培训,目前还未见系统性介绍 Xilinx FPGA的串行技术方案,包括高速收发器介绍及相关串行传输协议 IP核方面的书籍。笔者长期从事 Xilinx FPGA高速传输技术开发,期间遇到了很多技术难点并逐一解决,积累了丰富的高速串行传输设计经验。笔者将高速串行实现技术的相关基础知识、开发实践和经验积累整理成册,希望该书对读者有所裨益,可以成为实践和应用 Xilinx FPGA高速串行传输技术的首选指导用书;同时希望该书可以成为开发人员参与技术培训前的必备用书,帮助开发人员预先掌握一些基本知识和技能,在较短的培训时间里更加专注于应用实践,学习效果可以事半功倍。

本书内容经过精心设计:首先,介绍数据传输技术的发展简史,分析了串行技术取代并行技术的技术优势,重点阐述了几种推动串行技术发展的关键技术,并对现有的常用高速串行传输协议做了详细说明。其次,以 Virtex-6系列 FPGA的 GTX收发器为例,对高速收发器的内部结构和接口信号做了详细介绍,使开发人员能深入理解收发器的内部结构,夯实串行传输技术实现基础,便于开发人员举一反三从事相关高速串行传输协议开发,然后选择了目前市场上最具代表性和推广意义的 XAUI 和 PCI-Express 接口协议,给出了详细的实验步骤和解释说明,使读者能熟练掌握 XAUI 和 PCI-Express 协议的应用技能,在此基础上可以起到触类旁通的效果,可以帮助开发者快速从事其他串行协议的应用开发。最后,介绍了 Xilinx IBERT测试工具的应用经验,并对高速收发器的外部时钟和电源设计经验作了总结,对于开发人员正确设计和调试高速接口电路很有裨益。

本书按内容划分为4部分:第 1章和第 2章组成第一部分,第 1章主要介绍传输技术的背景知识和高速串行传输解决方案;第 2 章重点对 XAUI、Interlaken、SATA、PCI-Express、RapidIO、Aurora和 PICMG 3.0等串行接口协议做了简要说明。第二部分由第 3章和第 4章构成,主要说明 Virtex-6 FPGA的 GTX收发器的基本结构、功能,以及在 XAUI核中的应用。第 3章介绍了 Virtex-6 FPGA GTX收发器中的高速串-并转换、时钟数据恢复、线路编/解码、时钟纠正和通道绑定等功能电路;第 4章阐述了 Xilinx XAUI核的数据、管理和配置接口功能和应用优势,并给出了详细的 XAUI核生成和测试实例。第三部分由第 5、6、7和 8章构成,主要介绍了 Virtex-6 FPGA的 PCI-Express 核的基本结构、生成方法、接口功能和应用设计。第 5章针对 Xilinx PCI-Express核的协议层次、配置空间、各种接口信号,以及事务层的 TLP 包格式进行了详细说明;第 6 章介绍了Xilinx PCI-Express 核的生成与定制方法,并对核生成的程控输入/输出范例进行了讲解;第 7 章针对 PCI-Express 用户 AXI4 接口的设计进行详细说明;第 8 章介绍基于 Xilinx PCIe核协议电源管理、链接训练等相关的应用设计方法。最后一部分包括第 9章和第 10章,主要介绍 GTX收发器的辅助调试工具和外部电路的设计方法。第 9章主要介绍 IBERT调试工具的基本功能和调试过程;第 10章主要给出 RocketIO GTX核的外部时钟和电源设计经验总结,对于正确设计高速接口电路大有裨益。

本书由黄万伟、董永吉负责撰写并统筹规划,陈博、张建辉、马海龙、张建伟参与编著。第 1章由陈博和马海龙完成;第 2章由张建辉、陈博和张建伟完成;第 3章和第4章由黄万伟和袁征完成;第 5章由董永吉和陈博完成;第 6章由董永吉和李康士完成;第 7章由董永吉和马海龙完成;第 8章由董永吉和张建伟完成;第 9、10章由黄万伟和张霞完成。袁征完成了本书的实验部分,韩伟涛绘制了书中的大量插图。在本书编写过程中,谭立波、曹建业、贺炜、于洪涛和张晓明给予了大力支持,并提出宝贵意见。特别感谢科通数字技术公司曾江卫、杨智勇工程师和上海皮赛电子有限公司朱哲勇先生,在本书编写过程,他们给予了大力的技术支持。感谢国家“973”项目“可重构信息通信基础网络的理论和体系结构”课题 NetFPGA实验仿真小组兰巨龙教授和胡宇翔博士提供的技术支持。

本书既适合从事 Xilinx FPGA串行传输技术开发的硬件设计工程师、电子设计爱好者和学生,尤其是书中涉及的串行传输技术已触及诸多领域,也适合通信网络、数据存储、图像处理、高性能计算等领域进行高吞吐量数据传输和处理工作的高校研究生和高年级本科生、教师、工程师等技术人员。

由于 Xilinx FPGA高速串行解决方案内容广泛,本书所涉内容可能存在遗漏,加之编写时间有限,书中难免存在不妥之处,敬请广大读者指正。

作者

2015年3月