FPGA软件测试技术
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

21世纪是信息化时代,随着AI(Artificial Intelligence,人工智能)+5G(5th Generation Mobile Communication Technology,第五代移动通信技术,简称5G)的应用在全球范围内逐步展开,FPGA(Field Programmable Gate Array,现场可编程门阵列)器件市场的规模也越来越大,年复合增长率超过了10%。

近十年来,国外主要FPGA供应商(Intel和Xilinx等公司)都相继推出了更多的新器件。例如,Xilinx公司自2011年12月推出的Zynq-7000系列SoC FPGA均采用ARM Cortex-A9架构的高阶处理器模块。为契合机器学习算法等需求,2018年3月,Xilinx公司改革传统FPGA架构,又推出了一款超越FPGA功能的突破性产品ACAP(Adaptive Compute Acceleration Platform,自适应计算加速平台)。ACAP为高度集成的多核异构计算平台,采用台积电7nm工艺技术开发,可根据各种应用的需求从硬件层对其进行灵活修改。ACAP的推出契合大数据、AI、机器学习等迅速发展的需求,可在视频转码、数据库、数据压缩、搜索、AI推断、基因组学、机器视觉、计算存储及网络加速等多个领域实现应用。

国产FPGA器件已经经历了从反向设计走向正向设计的时代,目前国产FPGA器件多以中低密度产品为主,逐步拓展中高密度产品,这为国内FPGA软件测试行业的发展带来新的机遇和挑战。国内,深圳国微、紫光同创及上海复旦微电子等厂家都具备生产中高密度FPGA器件的能力。复旦微电子研制出拥有自主知识产权的千万门级FPGA产品,突破了在传统集成电路设计基础上的高可靠性设计,已成功应用于我国卫星导航、载人航天等国家级重大工程项目中。

通过FPGA器件实现的数字电路系统可以应用在通信、工业控制、航空航天、汽车电子、机器人、人工智能等领域,特别是在航空航天领域越来越重视FPGA器件的应用。在系统设计中,FPGA器件可以作为CPU的协处理器,完成由传统嵌入式CPU系统软件所完成的控制与计算等功能。在这些领域的实际应用过程中,大量的FPGA软件设计越来越复杂,而在设计与实现上均可能会出现不同程度的缺陷或故障,有的甚至会直接导致相关产品的失败;同时,FPGA在很多领域已经成为不可或缺的部分,且造价昂贵,设计复杂。很多工程师没有进行充分验证就将设计经综合与布局布线后生成目标代码直接下载至可编程逻辑器件内。由于硬件调试环境的复杂性,通过示波器、逻辑分析仪等设备进行探测,往往很难精确定位问题,更为关键的是很难全面发现所有潜在问题,导致反复修改代码和下载调试,从而浪费大量的开发时间并延长了任务周期。甚至是在硬件系统已经完成安装后,依然会发现有缺陷需要打补丁。因此,为了提高FPGA软件的质量,FPGA软件测试也越来越受到各方重视。

本书从实践的角度对从FPGA软件开发到FPGA软件测试各阶段的测试思想、方法、活动、案例进行详细描述,并系统介绍FPGA软件测试的各种方法,从不同的角度分析FPGA软件测试的内容及具体要求,通过在各个测试阶段应用不同的测试方法来满足不同的FPGA软件测试需求。

本书首先对FPGA器件及软件进行概述,然后介绍FPGA软件开发工具与流程,最后着重论述FPGA软件测试技术(包括FPGA软件测试相关标准和方法、FPGA软件测试工具及使用方法、FPGA软件测试案例与分析)。

本书可作为FPGA软件测试工程师、对FPGA软件测试技术感兴趣的大学生及电子爱好者等的学习参考用书。

由于作者水平有限,书中不当与错误之处在所难免,敬请读者和专家提出宝贵意见,以帮助作者不断改进和完善。

作者

2022年3月