实验内容 1
- 使用Veriog - HDL 语言,DE0 FPGA 开发板 按照如下要求设计一个计数器电路 。
功能描述
在 DE0 开发板的 最右侧 的 HEX LED 数码管上,进行计数并用十进制数进行显示。计数器特征如下
只能使用一个50MHz的时钟信号,不要有计数器分频的信号作为时钟
该计数器在电路复位后会循环的从0值递增计数到最大值,计数最大值是一个循环变化的过程,计数器复位之后,第一次计数最大值是6,然后是7、8、9,然后计数最大值又变成6,如此往复循环, 计数数值变化的时间间隔是1秒 ,计数过程如下所示:
0 1 … 6 | 0 1… 7 | 0 1 … 8 | 0 1 … 9 | 0 1 … 6 | …… |
---|
作业内容要求
- 使用CSDN技术博客交作业
- 人工绘制的 电路结构RTL设计图,该图片用于说明你设计电路时的想法,注意要在RTL图中画出Verilog代码中的 生成D触发器 reg 变量
- Quartus扫描生成的电路RTL图,该图片用于说明Quartus的电路编译结果
- 计数器的计数值(注意不是HEX LED的驱动信号)的SignalTap截图,需要使用Segment 模式,捕获 一个完整的计数循环过程 中所有的计数值。
- 提交代码,请使用博客中提供的代码块功能
实验内容 2
功能描述
在 DE0 开发板的 从左到右 的 4个HEX LED 数码管上,进行计数并用十进制数进行显示。计数器特征如下
- 只能使用一个50MHz的时钟信号,不要有计数器分频的信号作为时钟
- 系统复位后全部HEX LED熄灭
- 左1 LED,显示 0、1、2 ~6 ,然后熄灭
- 左2 LED,显示 0、1、2 ~7 ,然后熄灭
- 左3 LED,显示 0、1、2 ~8 ,然后熄灭
- 最右侧 LED,显示 0、1、2 ~9 ,然后熄灭
- 然后再开始左1 LED, 显示 0、1、2~6 如此一直循环。
- 所有情况下,计数数值变化的时间间隔是1秒
评分原则和加分选项
- 实验1和实验2的报告内容写在一个博客文章里。
- 实验1和实验2的内容必须分成2个部分,文章的内容第一部分介绍实验1,第二部分介绍实验2,两部分内容不要互相引用。
- 文档写的清晰加分
- RTL画的结构合理加分
- 代码结构清晰的加分(所有代码放在一个module里的差评)
- 代码排版优美注释明确加分
- 如果能够把计数过程上传到某个视频网站,发作业时提供链接,加分