本课程主要讲述采用大规模FPGA处理器实现典型数字信号处理的基本方法。课程以AMD Xilinx公司的超大规模FPGA为例,详细讲解了可编程逻辑器件的内部结构及其工作原理,概要介绍了FPGA的设计流程,针对其中的时钟优化、流水线优化等FPGA优化技术进行了详细说明。在此基础上,面向采用FPGA开发数字信号处理系统过程中需重点考量的两个问题:低功耗设计、时序收敛设计技术进行了详细讲解。最后,本课程深入浅出地讲解了采用大规模FPGA实现数字信号处理的典型实例:包括基本算术运算单元设计、FIR滤波器设计、FFT处理设计,以及FPGA实现卷积神经网络设计的过程及方法。学习本课程,可以帮助同学们提高解决电子信息系统设计的复杂工程问题的能力,为同学们进一步的学习及走向实际工作岗位打下一个良好的工程基础。
该课程适合于高年级本科生及研究生。校内相关课程讲授32学时,效果良好。
随着人工智能、大数据和云计算等新信息技术的广泛应用,人们所获取的信息量急剧增加,需要有高性能的数字信号处理系统高效地处理海量信息。传统的使用计算机或高性能数字信号处理器实现数字信号处理,已经远远不能满足诸如实时图像和通信系统等高通量信息处理的要求。现场可编程门阵列(Field Programmable Gate Array,FPGA)具有并行处理能力以及整体功耗较低的优势,使得它成为目前新一代信息技术普及推广不可或缺的硬件处理平台。
在FPGA上实现一个数字信号处理算法包括根据应用需求确定具体算法、对算法进行并行性改造、将算法中计算和存储需求与FPGA内部可用资源相映射、将算法映射到硬件结构上等步骤。然而,目前只有很少的公开资料可供初学者学习该领域的知识,可以让学生深入了解FPGA设计思路、过程、代码的课程更难找到。目前高校跟FPGA技术相关的教材和课程,对数字信号处理理论、硬件描述语言设计、关键功能模块等描述较多,但是对如何基于FPGA技术构建整个信号处理系统、以及在系统实现过程中涉及的工程优化问题,几乎没有描述。
申请人从事基于FPGA的复杂数字信号处理系统集成技术研究已有25年,是最早使用FPGA进行科研和教学的高校教师之一,在相关领域新开课程达10门,一直致力于如何让学生由浅入深,逐步掌握用FPGA实现复杂数字信号处理系统,解决根据应用需求确定具体算法、算法优化、算法并行性改造、计算和存储设计优化、算法映射、系统实现等问题。因此申请人想改变上述现状,构建高性能FPGA从教材到共享课程到实践平台一系列课程改革建设,从数字信号处理理论和分析入手,重点讲解信号处理算法移植到FPGA中的基本思路和方法,突出工程应用。同时,通过校企合作借助依元素科技有限公司构建的FPGA智慧教育社区,在各种实验板卡、多门学科实验平台上,进行实践活动。