一.实验目的
1.学习并使用VHDL语言对相应简单数字系统进行设计,基本掌握数字系统EDA技术以初步或者更深层次的掌握硬件描述语言VHDL。2根据老师下凡大作业的实验包,选择相应的实验进行学习与设计,完成项目的组织和VHDL代码的设计。并采用QuartusII进行相关仿真并且平台实现。3. 在完成项目的布局和VHDL代码的书写及相应的QuartusII仿真之后利用老师所给的电路板将相应的编程下载至电路板进行检验。4. 掌握QuartusII的基础使用和仿真。
二.实验要求
1. 各班人员进行自由分组,每两个人为一组,进行一起的学习与设计。2. 在实验平台完成代码的书写与方正,并且在电路板进行下载检验。不得进行抄袭。3. 按要求完成实验,按要求上交实验报告。4. 本次大作业要求同学们充分认识数字系统设计与VHDL实验的重要性, 认真做好设计前的各项准备工作。充分发挥自学能力和查找资料的能 力。结合课题,独立思考,努力钻研,勤于实践,勇于创新。独立完成规定的工作任务。
三.实验平台
1. 使用语言:硬件描述语言VHDL2. 编译仿真平台QuartusII。3. 下载使用电路板:老师下发湖南科技大学电路板。四.实验过程4.1 电路的基本功能1. 抢答器同时8名选手和8个代表队参加,分别用八个按钮表示。
2. 2. 设置一个系统清除和抢答控制开关s,该开关理论上由主持人控制。
3. 3. 抢答器具有显示功能,能够将抢答的结果显示到电路板显示器上。且定时器可以减时。
4. 4.2抢答系统框图设计
5. 4.3功能单元设计此系统总共分为六个单元模块,分别为:计时模块、抢答器模块、译码器模块、记分模块、报警模块、主程序模块。
6. 1. 计时模块,在这个模块中只要实现抢答过程中的计时功能。在有别的组抢答的时候,若在规定的时间内无人答,则就会超时报警。其中系统中有复位信号rst,抢答器使能信号s,无人抢答警报信号warn,计时终止信号stop以及计时十位和个位信号ta,tb。
7. 2. 抢答器模块,此模块主要实现请打鉴别功能。此电路为高电平有效,s0—s3为抢答信号。3. 译码显示模块,用于显示每组选手的分数,计时的时间等信息。显示的电路实质就是一个简单的显示模块译码器、直接在老师下发的湖南科技大学eda电路板上进行试验就可以。在这里想强调一点的是小数点的显示与否。输入的数据为十进制的数据0到9。
8. 4. 记分模块,此模块按照正常的加减大件路设计既可以,但是随着计数的数目的增加,计数数目分解成十进制进行显示的可能较为复杂。所以在设计的时候一定要注意这一点。信号add为高电平有效。组别选择输入信号为chose[3 downto 0]
9. 5. 报警模块,主要实现的是报警功能,有限时间内进行抢答,但是当时间超时的时候,相应的会发出报警信号。状态输出信号为q。如图所示: Clk—— —q I— 6. 主程序模块,主程序主要负责将其他的文件和模块进行组织和管理,其中时钟抢答信号为clk2,系统恢复信号为ret,是能信号为s,抢答状态信号为states,报警信号为warn,时钟终止信号为stop,及时的个位信号和十位信号分别为ta,tb。 五.遇到问题1. 在起初开始实验的时候,遇到了很多的问题,由于自己没有认真的看书,认证的阅读有关仿真软件的使用方法,所以在初期实验的速度很慢。导致浪费了很多的时间。2. 对于VHDL硬件描语言的理解和掌握不够透彻,在编程的过程中出现了很多语法的错误,有时候还不能独立解决。导致整个设计的完成时间比较久。3. 对于抢答器这个实验的了解不够透彻,造成了很大的困难,在抢答器代码的设计和译码模块的设计中出现了很大的bug。在设计的时候不知道什么原因,在仿真波形图的模拟时候,出现了多次输出结果与预期不同的现象。试验了多次没有能够解决。 六.实验心得 数字电路设计与VHDL硬件语言编程对于大二的我们来说是一门全新的课程。他既包含了数字电路的知识,又和编程语言挂钩。而这次的实验对于我们而言也是一个巨大的挑战。在这次的大作业中学到了很多东西。首先,在方开始实验的时候发现对于数字系统设计的基础知识和VHDL语言的简单用法不是很了解,所以在进行实验的同时,进行书本的学习,更加加强了对于这门课程的了解认识与学习。在进行实验前对于仿真软件使用的熟练度有了很大的提高。在进行这个竞赛抢答器的同时,对于自己在这门课程中的不足有很大的了解,也同时对于自己有所掌握的东西有了一个更加巩固的机会。Vhdl语言本身不是很难,但是当vhdl的中出现多个进程的相互配合使用是就会出现很多问题,还有主模块的设计。都是对于整个系统设计的考验。VHDL在现代的电子电路设计中使用很多。在来时期初开始讲课的时候对于老师所讲的VHDL的方便简洁性的概念没有一个完整的概念,直到子亲手动手实验才发现这些特点,原先的电路设计可以直接在计算机上完成,看到仿真结果。而且VHDL语言描述的代码可以直接转换为电路图,减轻了人员的负担,减少了在设计电路图上所花费的时间。最后,在完后整个项目的过程中,我也深刻的体会到同学之间相互学习的重要性。由于同学中每个人对于各项之知识点的掌握是不同的,小组内我对于仿真平台的认识不够深刻,但是其他人能够较为手熟练的使用仿真平台,所以在很多方面都要向他们学习。总之,这次数字系统与VHDL的设计大作业不论是对于我的专业知识能力、团队合作能力、自我学习思考能力都有了很大的帮助,希望此次的设计经验和心得对于之后的课程设计和项目都有较好的帮助。七.附录-VHDL源代码
《数字系统设计与VHDL》课程实验报告
最新推荐文章于 2024-08-13 09:44:17 发布