1、2.课程设计报告内容32.1方案设计与论证32.2单元模块设计32.3主电路原理图92.4器件编程与下载92.5性能测试与分析93.总结 94.致谢105.参考文献10i题目:基于VHDL四路抢答器的设计1.课程设计的目的和要求:(1)设计一个可容纳4组参赛的数字式抢答器,每组设一个按钮,供抢答使用。(2)具有第一信号鉴别和锁存功能,使除第一抢答者外的按钮不起作用。(3)设置一个主持人“复位”按钮,主持人复位后,开始抢答,第一信号鉴别锁存电路得到信号后,有指示灯显示抢答组别,扬声器发出声音2.课程设计报告内容:(1)方案设计与论证:将该任务设计的为一个四路抢答器,分成三个模块进行设计:抢答鉴别
2、模块、选择模块和报警模块(VHDL语言编程)。(2)单元模块设计:A抢答鉴别模块:在这个模块中主要实现抢答过程中的抢答功能,并能对超前抢答进行警告,还能记录无论是正常抢答还是朝前抢答者的台号,并且能实现当有一路抢答按键按下时,该路抢答信号将其余个绿抢答封锁的功能。其中有四个抢答信号s0、s1、s2、s3;抢答复位和使能信号rst;抢答选手锁存显示信号xuanshou;抢答时钟信号clk;抢答警报信号n;抢答状态锁存显示信号t。1、VHDL源程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY JDJB ISPORT( CLK2,RST: IN ST
3、D_LOGIC; S: IN STD_LOGIC_VECTOR(3 DOWNTO 0);WARN: BUFFER STD_LOGIC; STATES: OUT STD_LOGIC_VECTOR(3 DOWNTO 0) );END QDJB;ARCHITECTURE ONE OF QDJB ISSIGNAL SO: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(CLK2,S,)IF RST=0 THEN SO=0000;ELSIF CLK2EVENT AND CLK2=1 IF SO= IF S/= SO=S; END IF; END IF;END IF;
4、WARNXUANSHOU END CASE;END PROCESS;END ONE;2、仿真图:B.数据选择模块:在这个模块中主要实现抢答过程中的数据输入功能,输入信号a3.0、b3.0、c3.0;数选信号s1.0;数据输出信号y3.0;时钟脉冲clk,实现a、b、c按脉冲轮流选通,在数码管上显示。1、VHDL源程序:USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SJXZ IS PORT ( A,B,C: CLK: S: OUT STD_LOGIC_VECTOR(1 DOWNTO 0); Y:END SJXZ;ARCHITECTURE ONE OF SJXZ I
5、S SIGNAL COUNT: STD_LOGIC_VECTOR (1 DOWNTO 0); BEGIN S10 COUNT00 ELSE COUNT=COUNT+1;CASE COUNT IS WHEN YNULL; END PROCESS; END ONE;2、仿真图:C.报警模块:在这个模块中主要实现抢答过程中的报警功能,当主持人按下控制键,有限时间内有人抢答或是计时到时蜂鸣器开始报警,有效电平输入信号i;状态输出信号q;时钟脉冲clk。ENTITY BJ ISPORT( I,CLK: Q: OUT STD_LOGIC);END BJ;ARCHITECTURE BEHAVE OF BJ
6、IS SIGNAL WARN: STD_LOGIC; SIGNAL N: INTEGER RANGE 0 TO 700; Q= WARN;PROCESS (CLK)IF CLK IF I= WARN = ELSIF (I=AND N=700) THEN N=N+1; ELSEEND BEHAVE;(3)主电路原理图:(4)器件编程与下载:将编译好的模块程序下载到CPLD中:device(EPF10K10LC84-3)选取要与硬件对应,否则会导致实验失败,连线做硬件实验。(5)性能测试与分析:按下rst键观察数码管是否复位并开始倒计时,蜂鸣器是否发出提示声;按下s0,观察数码管是否显示1,再按s
7、1,s2.s3数码管均不改变显示,按下四个抢答键时,蜂鸣器是否发出报警;按下rst键,等待计时时间到,观察是否显示00,蜂鸣器是否发出报警。3总结:在这次EDA设计与实践课程中,通过对Qutusu6.0的使用,让我加深理解了VHDL程序设计的步骤和原理。我们的题目是四路抢答器设计,刚开始一头雾水,通过查资料和借鉴前辈的作品,我一步一步从迷茫到困惑再到柳暗花明,从一点一点中学习,一点一点进步。我发现做学问不可以迷信,要有怀疑一切的态度,并且要知其然知其所以然,静下心来,仔细研究,才能有所发现。编写程序是一定要思路清晰,在该设计的计时模块正是这一点的体现,一步一步来,不可急于求成,在遵守规则并有章
8、可循的前提下,大胆发挥勇于尝试,对于出现的错误一定要研究不可放过,此时放过下次还会出现。不断总结才能不断进步。总的来说,这次设计的抢答器还是比较成功的,在设计中遇到了很多问题,最后在老师的指导以及我们大家不懈努力下,终于迎刃而解,心中的成就感,不说也都明白。平时所学的知识有了实用的价值,达到了理论与实际相结合的目的,不仅学到了不少知识,而且锻炼了自己的能力。同时为以后的毕业设计打下了坚实的基础。4.致谢:在这次的EDA课程设计过程中,我要感谢老师多次的教导,去学习和怎样使用该软件,也要感谢同学们的热情帮助,才使我顺利完成设计。5.参考文献:(1)延明,张亦华.数字电路EDA技术入门.北京.北京邮电大学出版社.2006.(2)章彬宏.EDA应用技术.北京:北京理工大学出版社,2007.(3)王振红.VHDL数字电路设计与应用实践教程.北京.机械工业出版社.(4)焦素梅,EDA应用技术.北京.清华大学出版社.2005.
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1