选手抢答无效,不显示该选手号。
五、仿真过程与仿真结果
仿真过程:使用ModelSim进行功能测试,首先在里面进行相应的设置,在工程文件夹下面会新建一个modelsim的文件夹,然后编写实现功能的程序和测试文件,最后保存编译执行就可以进行功能仿真了。仿真结果:
结果分析与讨论:可以看到0时刻系统复位状态,2s时2号超前抢答i
putE
为高电平,i
putL2为低电平,系统显示2蜂鸣器并犯规报警Buzzer为低电平,8s时系统复位状态,12s时4号选手先抢答成功i
putL4为低电平显示4,14s时3号选手后抢答,不显示3,20s时系统复位。
六、总结
通过本次合成设计,我又一遍熟悉了VerilogHDL语言进行建模,并且通过实际操作学会了怎么使用Modelsim这个软件来完成一个完整的课程设计。以及对基于FPGA的系统开发流程有了一个整体认识,我越来越认识到一点,编程
f对项目实现有着至关重要的,我们在硬件开发的过程中更应该重视编程,将编程看作是完善开发的不可缺少的一部分。虽然题目简单,但这也磨练了我的意志。第一次做的太复杂了,然后一次次修改,做成最简单功能的。在一次次的反复设计、论证和测试中,提高了逻辑分析能力、全面分析问题的能力以及发现问题、解决问题的能力。通过对各方面资料的收集,我的知识面也进一步拓宽了。同时,我也发现了自己的不足,像语言表达还比较差,不能更清楚地表达自己的意思,逻辑分析能力和编程能力有待提高,有些预先的想法都未能实现。在系统的结构设计上也还有很长的路需要走,这是需要时间去积累的。在今后的学习中我还得加以改进。
七、程序
系统主要VerilogHDL源程序:
moduleQia
gDaQiclkclri
putE
i
putL1i
putL2i
putL3i
putL4i
putL5i
putL6Led2Buzzer一开始声明有哪些端口i
putclkclri
putE
i
putL1i
putL2i
putL3i
putL4i
putL5i
putL6output07Led2Led2显示选手号outputBuzzer低电平时蜂鸣器发出声音regE
Flat1b0E
Flat为高电平时开始抢答reg02Led23d0regBuzzer1b1alwaysposedgeclk时钟上升沿begi
ifi
putE
1如果主持人没按按钮就有人抢答begi
ifi
putL10begi
Led23d1Buzzer1b0e
difi
putL20begi
Led23d2Buzzer1b0e
difi
putL30begi
Led23d3Buzzer1b0e
difi
putL40begi
Led23d4Buzzer1b0e
difi
putL50begi
Led23d5Buzzer1b0e
difi
putL60begi
Led23d6Buzzer1b0e
de
d
ifi
putE
1b0为低电平时表示主持人按下抢答按钮开始抢答begi
E
Flat1b1ifE
Flat1b1begi
ifi
putL11b0一号选手抢答
fbegi
Led23d1E
Flat1b0为低电平禁止其他选手抢答Buzzer1b1
e
delse一r