差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 | |||
altera_6led [2018/10/09 16:11] zhijun [Verilog代码] |
altera_6led [2021/10/03 01:24] (当前版本) gongyu |
||
---|---|---|---|
行 1: | 行 1: | ||
- | =====LED流水灯===== | + | ## LED流水灯 |
在[[5. 时钟分频|时钟分频]]实验中我们练习了如何处理时钟,接下来我们要学习如何利用时钟来完成时序逻辑。 | 在[[5. 时钟分频|时钟分频]]实验中我们练习了如何处理时钟,接下来我们要学习如何利用时钟来完成时序逻辑。 | ||
\\ | \\ | ||
- | ====硬件说明==== | + | |
- | ------- | + | ### 1. 硬件说明 |
流水灯实现是很常见的一个实验,虽然逻辑比较简单,但是里面也包含了实现时序逻辑的基本思想。要用FPGA实现流水灯有很多种方法,在这里我们会用两种不同的方法实现。 | 流水灯实现是很常见的一个实验,虽然逻辑比较简单,但是里面也包含了实现时序逻辑的基本思想。要用FPGA实现流水灯有很多种方法,在这里我们会用两种不同的方法实现。 | ||
\\ | \\ | ||
行 14: | 行 14: | ||
\\ | \\ | ||
- | ====Verilog代码==== | + | ### 2. Verilog代码 |
- | ------ | + | |
模块化设计是用硬件描述语言进行数字电路设计的精髓,代码可重复利用。而且模块化的设计使得程序的结构也很清晰。这里我们首先看看流水灯的模块化设计。利用了之前的3-8译码器和分频器,你需要把这两个程序也拷贝到一个工程。 | 模块化设计是用硬件描述语言进行数字电路设计的精髓,代码可重复利用。而且模块化的设计使得程序的结构也很清晰。这里我们首先看看流水灯的模块化设计。利用了之前的3-8译码器和分频器,你需要把这两个程序也拷贝到一个工程。 | ||
<code verilog> | <code verilog> | ||
行 119: | 行 118: | ||
</code> | </code> | ||
\\ | \\ | ||
- | ====引脚分配==== | + | |
- | ------ | + | ### 3. 引脚分配 |
按照下面表格定义输入输出信号 | 按照下面表格定义输入输出信号 | ||
\\ | \\ | ||
行 135: | 行 134: | ||
\\ | \\ | ||
- | ====小结==== | + | ### 4. 小结 |
- | ------ | + | |
掌握了verilog里面例化module的用法,采用模块化设计程序。模块化设计是非常重要的FPGA设计思想。在下一节我们会学习按键的另外用法[[altera_7deb|按键消抖]]。 | 掌握了verilog里面例化module的用法,采用模块化设计程序。模块化设计是非常重要的FPGA设计思想。在下一节我们会学习按键的另外用法[[altera_7deb|按键消抖]]。 | ||