本课程已连载完成,第一部分共37小节,第二部分请见目录。
附件下载:
请至第一小节的附件下载处获取
课程介绍:
无论是数字IC设计,还是FPGA开发,Verilog都是最基本、最重要的必备技能。而任何一门编程语言的掌握,都不是啃啃语法书,动动脑门儿这么简单的,更何况Verilog这么一门基于硬件的独特语言。由于它最终所实现的数字电路,具备着硬件与生俱来的并行性,所以Verilog的设计思想与思维方式和绝大多数基于软件的编程语言截然不同。而Verilog的设计和验证,也具备一套独特的开发方式,没有哪个复杂的Verilog设计可以写写代码就直接在板子上调试起来了。“种的是什么,收的也是什么”,一开始输入的每一行Verilog代码,已经决定了最终所实现电路的功能和性能水平;仿真是Verilog开发中非常重要而有效的验证手段,各种代码本身的bug都可以在仿真过程中逐一暴露、定位然后解决。
Verilog的学习没有什么捷径,什么“速成班”都是假的,Gladwell前辈的1万小时定律才是真的,没有大量时间和精力堆砌的空中楼阁迟早是要破灭的。因此,特权同学带着过去10余年1万小时的积累和总结,希望能带着大家一步一个脚印,脚踏实地的在Vivado和Modelsim两个主流的工具中完成Verilog的设计和验证。
FPGA或Verilog的视频教程有很多了,但是能下功夫“陪着”初学者一行一行敲代码的却“踏破铁鞋无觅处”,而这样一门实操性非常强的技能的掌握,绝对离不开动手练习。在这个教程中,会尽可能从无到有输入每一行代码、执行每一个操作,不错过每一个设计的细节;在看完每一个视频,希望好学的您也能动手如法炮制一遍,并且利用课后练习题再做一遍巩固。整个视频课程的安排有一定的随意性,很多语法都是现学现用,以练代讲,也谈不上非常系统,但是只要您按着课程的设定逐个的往下学,相信您一定会慢慢的爱上Verilog,着迷于Modelsim的仿真验证!如果真的是这样,那么这个课程的目的也就达到了。
课程目录:
(课程已连载完成,进阶版→《【特权同学Verilog边码边学】 数字图像处理视频教程系列1:图像采集与显示设计》)
Lesson01 Vivado下载与安装
Lesson02 Notepad++安装与设置
Lesson03 Modelsim安装配置与库编译
Lesson04 Modelsim自动仿真环境搭建
Lesson05 组合逻辑与时序逻辑
Lesson06 分频计数器设计
Lesson07 使能时钟设计
Lesson08 基于Xilinx BUFGCE原语的门控时钟设计
Lesson09 理解FPGA设计的并行性
Lesson10 同步复位与异步复位
Lesson11 脉冲边沿检测设计
Lesson12 脉冲计数器
Lesson13 模块化设计
Lesson14 generate语法的使用
Lesson15 频率计数器
Lesson16 条件判断if与分支判断case语句的使用
Lesson17 4位格雷码计数器
Lesson18 基于查找表的8位格雷码转换
Lesson19 基于查找表的正弦波发生器
Lesson20 常量的参数化及跨模块传递
Lesson21 Testbench中的文本文件写入操作
Lesson22 Testbench中的文本文件读取操作
Lesson23 基于随机数的自动化仿真测试平台
Lesson24 行为级Verilog语法小结
Lesson25 可配置的PWM设计
Lesson26 基于任务(task)的PWM设计仿真验证
Lesson27 基于Vivado VIO的PWM设计板级调试
Lesson28 超声波测距设计之功能定义和模块划分
Lesson29 超声波测距设计之触发信号产生
Lesson30 超声波测距设计之回响信号采样
Lesson31 超声波测距设计之IP集成和板级调试
Lesson32 状态机设计与应用分享
Lesson33 自动售贩机状态机设计
Lesson34 串口指令帧解码设计之功能定义和模块划分
Lesson35 串口指令帧解码设计之串口接收模块
Lesson36 串口指令帧解码设计之指令译码模块
Lesson37 串口指令帧解码设计之系统集成与板级调试
相关课程推荐:
进阶课程《《【特权同学Verilog边码边学】 数字图像处理视频教程系列1:图像采集与显示设计》》
深入浅出玩转FPGA视频教程(点击学习>>)