本教程为FPGA中级基础教程,内容包括FPGA仿真方法、时序分析、UART、SPI、IIC、RAM/ROM等基本使用方法和技巧。整本书分为三个部分,第一部分介绍FPGA仿真基本方法,第二部分介绍常用FPGA编程技巧,第三部分介绍时序约束方法。
第一部分介绍可用于FPGA仿真的Verilog语法、testbench编写方法、vivado仿真方法和modelsim仿真方法,通过该部分的学习,学生可以掌握基本的FPGA仿真流程和方法。
第二部分主要介绍FPGA编程中的基本方法和技巧。通过多个实验和仿真介绍了工业控制中经常用到的UART、SPI、IIC等通信方法;详细分析了FPGA编程中不可缺少的RAM/ROM、FIFO等的使用方法。通过该部分的学习,学生能够掌握FPGA编程中的基本通信方法和基本编程技巧。
第三部分介绍了FPGA编程中的难点--时序约束方法。首先,通过讲解FPGA静态时序分析理论,让学生了解时序分析和时序约束的原理;其次,通过介绍vivado的图形界面时序约束方法、TCL时序约束方法,进一步让学生了解FPGA时序约束的具体操作过程;最后,通过一个例子,讲解具体实例中时序约束的具体过程。
本教程的安排由浅入深、循序渐进,需要学生已经修完本系列课程的初级入门课程才能学习。通过本教程的学习,学生能掌握FPGA编程中经常使用的技巧和方法,能够应对大部分FPGA编程的工作。
课程大纲:
课程实验:
1.基于Vivado的花式跑马灯时序仿真
verilog仿真语法,testbench编写方法,vivado基本仿真方法,
2.基于modelsim的呼吸灯时序仿真
modelsim安装方法,modelsim基本仿真方法
3.UART串口通信
RS232协议,RS232的verilog实现方法,RS232仿真方法,UART串口通信实验
4.基于SPI的LED整列
SPI协议,SPI的verilog实现方法,SPI仿真方法,SPI控制LED整列
5.基于I2C的温度传感器
I2C协议,I2C的verilog实现方法,I2C仿真方法,I2C读取温度
6.UART及ADC时序分析实例
系统时钟树分析,时钟约束,IO约束,延迟约束,伪路径约束
获取:完整课程大纲及项目>>