数字设计FPGA应用
分享
课程详情
课程评价
spContent=以目前流行的Xilinx7系列FPGA的开发为主线,全面讲解FPGA的原理及电路设计、VerilogHDL语言及VIVADO,从组合、时序逻辑的开发开始深入到FPGA的基础应用、综合应用和进阶应用。课程目标为培养合格的硬件开发工程师。先有教材后有慕课,同步推出。服务团队为电子科技大学数字逻辑课程组和电子实验中心。
—— 课程团队
课程概述

1)课程简介

本课程以目前流行的Xilinx 7系列FPGA的开发为主线,全面讲解FPGA的原理及电路设计、Verilog HDL语言及VIVADO的应用,并循序渐进地从组合逻辑、时序逻辑的开发开始,深入到FPGA的基础应用、综合应用和进阶应用。

课程紧密结合数字电路课程,对数字电路的实现进行验证,并提供了数字设计开发的平台。课程的Verilog HDL语言部分和C语言比较类似,因此可以借用C语言的一些知识来快速学习Verilog HDL,但硬件设计和软件是不同的,对其区别性在本课程中会重点强调。

本课程具有理论和实践紧密结合的特点,在内容的设计上既重视基础理论知识的认知过程,又通过由易到难的19个实践逐步提高理论知识及培养开发能力。通过这门课程的学习,可以达到的FPGA开发初级水平。

配套MOOC课程,电子科技大学“数字逻辑设计及应用”,负责人姜书艳。本课程和该课程可同步学习或在该课程之后学习。

  (2)课程的4条主要线索:

第一条线索是工程, 19个由易到难循序渐进的工程实例分散在第三章开始到第七章。例如最简单的工程是多数表决器,就是第三章组合逻辑设计实践的第一个工程,非常适合入门,通过这个工程掌握开发的各个步骤,巩固HDL语言,因此是我的第一个工程。最后一章的工程是实现多通道电压表和简单的示波器,就需要大量的逻辑处理,调用前面工程实现的模块和IP,最后为了调试加入的VIVADO内置逻辑分析仪解决调试方面的问题,难度与一般的工程应用接轨。

第二条线索是工程Verilog HDL的学习。在第二章是关于Verilog HDL的基础内容,虽然精简但是包含了所有核心的内容。读者完全通过只学习本课程中Verilog HDL部分就能完成所有的基础的FPGA设计开发。对于在工作中遇到需要特殊解决的问题,可以通过百度等手段查找资料或参考其他书籍和文献。

第三条线索就是VIVADO的开发,包括了VIVADO安装、工程和文件的组织、综合实现及下载、管脚约束、仿真、电路查看、IP核的使用和设计、VIVADOXADCBRAM的开发、内置逻辑分析仪的使用等等。VIVADO的开发单先简单在第二章的最后部分描述,然后在后续章节的实践中进行的应用,逐步掌握VIVADO

第四条线索是数字电路的应用,因此第三章是组合逻辑设计,第四章是时序逻辑的设计。我认为数字电路是学习FPGA的基础,而通过FPGA实践能够真正掌握数字电路。 

3)课程章节内容:

第一章是FPGA的原理和电路设计,因此后续的开发需要知道管脚的分配,所以将电路设计放在最前面。

第二章是Verilog HDL以及VIVADO的简介。

第三章是组合逻辑设计,包含了我的第一个工程”--多数表决器。

第四章是时序逻辑,通过第四章的学习后,学生如果认真实践,对数电的理解和掌握会加强,对FPGA的开发也有点熟练了。

第五章的基本实践部分实现流水灯、数码管动态显示及VGA显示工程,将进一步提高开发和应用能力。

第六章的综合实践包括了两个设计与实现:电子秒表的设计与实现,串行异步通信的设计与实现。这一部分的学习将进一步提高综合设计应用能力。

第七章是进阶,原理部分的教学是7系列FPGA芯片的XADCBRAM,然后在这个基础上进一步掌握使用VIRILOG语言和IP核等技术进行模拟量采集及存储器访问的项目开发,并实现一个多通道电压表实例及一个示波器实例。

    

授课目标

1.掌握最新FPGA基本原理和电路设计,应用和巩固数字电路知识,学会并熟练使用VerilogHDL硬件描述语言,掌握在VIVADO环境下使用VerilogHDL进行Xilinx FPGA开发的方法,通过一系列的从简单到有一定难度的实验培养FPGA开发能力及综合工程实践能力。

2.培养合格的硬件开发工程师。

3.通过翻转课堂,培养沟通和团队合作能力。

课程大纲

第1章 FPGA的原理和电路设计

1.1 FPGA基础及7系列FPGA基本原理

1.2 FPGA电路设计

课程简介

FPGA原理和电路设计作业

FPGA原理和电路设计客观测试

第2章 Verilog HDL语言与VIVADO

2.1 Verilog HDL基本结构

2.4 语句

2.3运算符

2.5 VIVADO初步

2.2 数据类型及变量、常量

Verilog HDL&VIVADO单元测试题

Verilog HDL&VIVADO单元作业

第3章 组合逻辑电路与VIVADO进阶

3.2 3-8译码器设计和IP核

3.1 我的第一个工程——多数表决器

3.3 调用IP核实现多数表决器

组合逻辑电路与VIVADO进阶作业(课程设计)

第4章 时序逻辑电路FPGA实现

4.2 同步计数器74x163的实现

4.3 移位寄存器的实现和应用

4.1时钟同步状态机的设计

时序逻辑电路FPGA实现作业(课程设计)

第5章 FPGA基本实践

5.3 VGA显示实践

5.2 数码管动态显示实践

5.4 行列键盘实践

5.1 流水灯实践

预备知识

电路分析基础、数字逻辑设计及应用

证书要求

本课程的学习环节包含:观看讲课视频、完成课后作业、完成单元测验题、参与课程讨论、参加期末考试。 

课程学习成绩由三个部分构成:

(1)课后作业(作业没有够互评就不算成绩)和单元测验,占课程成绩的20%。

//第一次取消此项目(2)参与课程讨论占课程成绩的10%。 

(3)课程结束后,学生参加课程的最后考试,成绩占80%。

 完成课程学习并考核合格(>=60分)的可获得合格证书,成绩优秀(>=85分)的可获得优秀证书。


参考资料

教材:“Xilinx FPGA原理与实践—基于VIVADOVerilog HDL”,机械工业出版社2018年第1版 卢有亮编著 

参考资料:

1.     数字设计原理与实践(第4版影印版),John F. Wakerly,高等教育出版社  2007

2.         数字逻辑设计及应用,姜书艳主编,电子科技大学出版社,2014

3.         数字逻辑设计及应用,姜书艳主编,清华大学出版社,2007


常见问题

Q :  是否必须有实验板 A :  不是必须,可以进行仿真。但请下载VIVADO,并起码做仿真实验,如果有实验板就可以进行下载实践。  

Q :  这门课程需要C语言基础吗A :  不需要,如果有C语言基础学Verilog HDL会快些,但不是必须

Q :  VIVADO在哪里下载A :  可以在官网下载,或者在资料中提供下载地址

Q :  课程一开始应注意什么?A :  应尽快在前2周完成VIVADO的下载及安装。

Q :  课程是否有配套的教材 ?A :  建议购买配套教材,“Xilinx FPGA原理与实践—基于VIVADOVerilog HDL”,机械工业出版社2018年第一版 卢有亮编著

Q :  学好这个课程是否能保证找到理想的工作 A :  应该会有效提高就业的档次和选择面。

Q :  我是如材料、物理等专业的,不是计算机或自动化等,是否应该学这门课程 A :  电子相关专业都应该学习这门课程,FPGA应用现在已经无处不在。如果你的专业课有数电课程,就非常有必要同步或在数电之后学习这么课程。