

已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
唐 山 学 院eda技术 课 程 设 计题 目 系 (部)班 级姓 名学 号指导教师15 年 7 月 5 日至 7 月 10 日 共 1 周2015年 7 月 9 日eda技术 课程设计任务书一、设计题目、内容及要求设计题目:智力竞赛抢答器设计设计内容:(1)设计一个四组(人)参加的智力竞赛抢答计时器,它具有四路抢答输入,主持人按下复位键后,系统复位进入抢答状态,计时显示初始值; (2)某组首先按下抢答键,该路抢答信号,竞赛抢答器能够设别最先抢答的信号,锁定该信号,同时扬声器响起,参赛小组的序号在数码管上显示;(3)主持人对抢答结果进行确认,给出倒计时计数允许信号,开始回答问题,计时显示器从初始值开始以秒为单位倒计时,计数至0时,停止计数,扬声器发出超时报警信号,以中止继续回答问题;(4)参赛者在规定时间内回答完问题,主持人给出倒计时计数禁止信号,以免扬声器鸣叫,按下复位键,又可开始新一轮的抢答;设计要求:(1)根据任务要求确定电路各功能模块; (2)写出设计程序;(3)给出时序仿真结果; (4)实现硬件调试;二、设计原始资料quartus软件;eda实验箱;计算机一台;三、要求的设计成果(课程设计说明书、设计实物、图纸等)课程设计说明书1份,不少于2000字,应包含设计原理分析、相关软件介绍、仿真波形分析,实验箱下载验证等。四、进程安排周1-周4: 查阅资料,上机编写并调试程序周5: 课程设计答辩并交设计说明书五、主要参考资料1.voknei a.pedroni.vhdl数字电路设计教程.电子工业出版社,2008.52.潘松,黄继业.eda技术实用教程(第二版).科学出版社,2005.23.焦素敏.eda应用技术.清华大学出版社,2002.4指导教师(签名):教研室主任(签名):目录1 引言12 vhdl介绍23 应用软件quartus ii34智力竞赛抢答器设计44.1设计的目的44.2设计的基本内容45总体设计思路及分析55.1功能分析55.2 整体设计思想55.3 分频模块设计65.4 复位模块设计75.5 抢答模块设计85.6 倒计时模块设计95.7 硬件下载驱动126心得体会13参考文献14附录一15附录二21课程设计说明书1 引言eda技术又称电子设计自动化,它是为解决自动控制系统设计而提出的,从70年代经历了计算机辅助设计(cad),计算机辅助工程(cae),电子系统设计自动化(esda)3个阶段。在当今时代,现代电子产品几乎渗透了社会的各个领域,eda技术是电子设计的发展趋势,eda工具从数字系统设计的单一领域开始,应用范围已涉及模拟、微波等多个领域,可实现各个领域电子系统设计的测试、设计仿真和布局布线等。设计者只要完成对电子系统的功能描述,就可利用计算机和eda工具,进行设计处理,最终得到设计结果。随着大规模集成电路技术和计算机技术的不断发展,即便是在普通的电子产品的开发方面,eda技术常常使一些原来的技术瓶颈得以轻松突破,从而使产品的开发周期大为缩短、性价比大幅度提高。不言而喻,eda技术将迅速成为电子设计领域中的极其重要的组成部分。从目前的eda技术来看,其发展趋势是政府重视、使用普及、应用广泛、工具多样、软件功能强大的一种技术。在信息通信领域,要优先发展高速宽带信息网、深亚微米集成电路、新型元器件、计算机及软件技术、第三代移动通信技术、信息管理、信息安全技术,积极开拓以数字技术、网络技术为基础的新一代信息产品,发展新兴产业,培育新的经济增长点。我们当代大学生必须能够熟练的掌握这门技术,并把它运用到实际当中,才能把我们所学的知识转化为对社会有贡献有帮助的能力,同时提升自身的实际发现问题和处理问题的能力。2 vhdl介绍vhdl是一种硬件描述语言,它可以对电子电路和系统的行为进行描述,基于这种描述,结合相关的软件工具,可以得到所期望的实际电路与系统。vhdl(very high speed integratedcircuit hardware description language)语言最早是有美国国防部提出的,它支持行为领域和结构领域的硬件描述,并且可以从最抽象的系统级一直到最精确的逻辑级,在描述数字系统时,可以使用前后一致的语义和语法跨越多个层次,并且使用跨越多个级别的混合描述模拟该系统。因此,它可以由高层次行为描述子系统及低层次详细实现子系统所组成的系统模拟。它有两个版本ieeestd1076-1987lrm87和ieeestd1076-1993lrm93,他们并不完全兼容,但做一些修改就可以兼容了。vhdl被广泛使用的基本原因在于它是一种标准语言,是与工具和工艺无关的语言,从而可以方便的进行移植和重用。使用vhdl语言描述的电路,可以进行综合与仿真。然而,值得注意的事,尽管所有vhdl代码都可以仿真的,但并不是所有代码都是可综合的。vhdl语言与常规的顺序执行的计算机程序不同,vhdl从根本上讲是并发执行的。因此,我们通常称之为代码,而不是程序。在vhdl中,只有在进程、函数和过程内部的语句才是顺序执行的。vhdl语言的两个最直接的应用领域是可编程逻辑器件和专用集成电路。3 应用软件quartus ii我们设计运用quartusii,是altera公司的综合性pld/fpga开发软件,支持原理图、vhdl、veriloghdl以及ahdl等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整pld设计流程。quartusii提供了完全集成且与电路结构无关的开发包环境,具有数字逻辑设计的全部特性,包括:可利用原理图、结构框图、veriloghdl、ahdl和vhdl完成电路描述,并将其保存为设计实体文件;芯片(电路)平面布局连线编辑;logiclock增量设计方法,用户可建立并优化系统,然后添加对原始系统的性能影响较小或无影响的后续模块;功能强大的逻辑综合工具;完备的电路功能仿真与时序逻辑仿真工具;定时/时序分析与关键路径延时分析;可使用signaltapii逻辑分析工具进行嵌入式的逻辑分析;支持软件源文件的添加和创建,并将它们链接起来生成编程文件;使用组合编译方式可一次完成整体设计流程;自动定位编译错误;高效的期间编程与验证工具;可读入标准的edif网表文件、vhdl网表文件和verilog网表文件;能生成第三方eda软件使用的vhdl网表文件和verilog网表文件。altera quartus ii 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。 4智力竞赛抢答器设计4.1设计的目的本次设计的目的就是在掌握eda实验开发系统的初步使用基础上,了解eda技术,了解并掌握vhdl硬件描述语言的设计方法和思想,通过学习的vhdl语言结合电子电路的设计知识理论联系实际,掌握所学的课程知识,学习vhdl基本单元电路的综合设计应用。通过对智力竞赛抢答器的设计,巩固和综合运用所学课程,理论联系实际,提高设计能力,提高分析、解决计算机技术实际问题的独立工作能力。本文以现场可编程逻辑器件( fpga ) 为设计载体,以硬件描述语言vhdl为主要表达方式,以quartus开发软件设计的电子抢答器,具有抢答鉴别与锁存功能以及29秒答题限时功能,应用二极管和数码显示管为主要部件来设计扫描显示器。通过课程设计深入理解vhdl语言的精髓和掌握运用所学的知识,达到课程设计的目标。4.2设计的基本内容(1) 设计一个四组(人 ) 参加的智力竞赛抢答计时器,它具有四路抢答输入,主持人按下复位键后,系统复位进入抢答状态,计时显示初始值; (2) 某组首先按下抢答键,该路抢答信号,竞赛抢答器能够设别最先抢答的信号,锁定该信号,同时扬声器响起,参赛小组的序号在数码管上显示;(3) 主持人对抢答结果进行确认,给出倒计时计数允许信号,开始回答问题,计时显示器从初始值开始以秒为单位倒计时,计数至0时,停止计数,扬声器发出超时报警信号,以中止继续回答问题;(4) 当主持人给出倒计时计数禁止信号时,扬声器停止鸣叫;(6) 参赛者在规定时间内回答完问题,主持人给出倒计时计数禁止信号,以免扬声器鸣叫,按下复位键,又可开始新一轮的抢答;5总体设计思路及分析5.1功能分析抢答信号判别电路在系统复位后,对a、b、c、d四路抢答信号进行判别,输出端alight一dlight与ad一 一对应,优胜者对应的xlight为“1”( x为a,b,c,d ),其余的为“0”,且将结果锁存。完成抢答判别的同时,输出端stap输出有效信号,对扬声器进行选通。分频电路用于产生倒计时电路所需的周期为l s的时钟脉冲,分频系数视输入时钟clk的频率而定。本次选用64hz的clk,故进行拉64 分频。台号显示控制电路将输入信号d一a转换为二进制码,以驱动数码管,显示台号。倒计时及时间显示控制电路由stop信号控制;由复位信号reset将答题时间作为初值赋给倒计时计数器;由计数允许信号jishi启动计数。输出信号为count1,count2,music与music1,其中music与music1为扬声器选通控制信号。扬声器控制电路使系统只在两种情况下输出驱动扬声器的脉冲信号:一种是倒计时计数器处于禁止计数状态( jishi无效 ),并且完成初始化,开始对抢答信号进行判别,当某参赛组抢先按下按键,系统在输出该组台号信息的同时,输出脉冲信号;一种是确认优先抢答的参赛组后,启动倒计时计数器计数( 使jishi有效 ),当计数到“0”时,输出脉冲信号。5.2 整体设计思想对于一个四人抢答器,四个选手在电路中的起始控制作用是一样的,当主持人宣布开始抢答时,谁先按下他前面的控制开关,他的灯就会亮,同时会有警报声响起并将抢答的组别号用数码管显示出来,而且这时其他人再怎么按,也就不会亮了,说明每个人对其他人都有一个先发制人的作用,及每个人都在时间控制下,能锁存住其他选手的功能。当有一个指示灯亮了等待主持人确定,主持人确定以后计数器就开始从29开始倒计时,到0时还要警告声,直到主持人按下复位键为止。在选手答题过程中,如果在规定时间内答完,主持人按下暂停键,倒计时停止显示当前时间,待主持人按下复位键以后开始下一轮抢答,这样计数器开始工作就是在选手抢答以后在主持人的控制下工作。可以设四个人分别为输入端a,b,c,d;因为四个输入端在vhdl中,要求四个输入端应该是相等优先级别,但只要有一个输入端接入高电平时,就给其他信号一个反馈,使得他们的输入无效,及他们对应的指示灯不亮;所以我们可以也并行语句,让它们分为四个进程( process ),同时也要求每个进程中都有反馈信号传给其他进程语句中,这样就可以完成抢答器基础部分了。其次就是计数器部分,当有人开始进入回答部分,指示灯亮,同时警报器开始工作,当主持人确定以后计时开始并要求是倒计时方式用七段显示出,通过这些消息我们可知,主持人确认键即是计数器开始倒计时的信号,本设计中采用了元件例化( component ) 语句,在抢答器中给个选手已经开始回答了的信号插口,给计数器中的置零输入端,这样就基本上完成了设计,计数器采用倒计时方式,实现方式也很简单,只要给他们最初赋值为29,而后在每个上升沿来到减一,具体设计情况还是看看程序设计部分吧。本设计由于蜂鸣器是在脉冲控制下才会发出明显声响,故我们在此加了一个分频器,具体请看程序。5.3 分频模块设计此程序实现了64hz的脉冲信号64分频,得到1hz脉冲信号,给倒计时提供脉冲信号。if(rising_edge(clk)thentemp:=temp+1; if(temp=64 and ena = 1)thentemp:=0;其仿真图如下图所示图5-1 分频仿真图如上图图3-1所示,程序进行了64 分频,即当计64个上升沿以后计数器减1.5.4 复位模块设计此程序将所有信号初始化,通过ean使数码管也初始化为初值29。if(reset=1)then-fuweilight=0000;alight=0;blight=0;clight=0;dlight=0; set=0;a0=0;b0=0;c0=0;d0=0;ean=1;其仿真图如下图所示图5-2 复位仿真图由图3-2可以看出信号light初值为0,而倒计时初值为29.当a,b,c,d抢答时,a先抢答故a的灯alight为1( 即点亮 ) 同时数码管light显示为1,在有人抢答以后同时蜂鸣器(music0) 响起,当主持人按下确认键(即jishi键) 蜂鸣器停止再响,同时计时开始,复位(reset) 以后所有数据初始化5.5 抢答模块设计抢答模块的程序设计如下begin a2=not a1 ; b2=not b1 ; c2=not c1 ; d2=not d1 ;l1:process(a0) -qiang dabegin a1=(a0 and b2 and c2 and d2) ; end process l1;l2:process(b0)beginb1=(b0 and a2 and c2 and d2);end process l2;l3:process(c0)beginc1=(c0 and a2 and b2 and d2);end process l3;l4:process(d0)begind1=(d0 and a2 and c2 and b2);end process l4;抢答模块符号图如下图所示图5-3 抢答器符号图此符号为抢答器抢答符号图,实现抢答优先及在抢答以后对他人的锁定功能。抢答模块仿真图如下所示图5-4 抢答模块仿真图此程序实现了对a, b, c, d四个人抢答信号处理,只要有一人抢答以后其他人均不能再次抢答实现对他人信号的屏蔽,经过a0,b0,c0,d0将a, b, c, d信号锁存,其对应的等分别为alight, blight, clight, dlight,其对应的组别分别为1,2,3,4当有人抢答以后相应的等亮同时在数码管上显示其对应的组别号。按下reset后,数码管显示0,其对应的等也熄灭,所有值均被初始化。5.6 倒计时模块设计beginc1:process(set,clk,music1,ena)variable temp:integer range 0 to 255;beginif (set=0) thenmusic1 = 0;high = 0010;low = 1001;elsif(rising_edge(clk)thentemp:=temp+1; if(temp=64 and ena = 1)thentemp:=0;if(low=0000) then -daojishi shejilow=1001;if(high=0000) thenhigh=0010;else high=high-1;end if;else low=low-1; end if; end if; end if;if(high=0000 and low=0000)thenmusic1=clk;end if;end process c1;倒计时模块符号图如下图:图5-5 倒计时符号图此器件主要实现倒计时功能,同时带有暂停控制位stop。倒计时仿真图如下:图5-6 倒计时暂停仿真图 由图5.6可以看出当选手在规定时间内答完题即倒计时没有减到0,主次人按下暂停键(即stop) 以后倒计时停止显示当前时间,同时蜂鸣器也不会响图5-7 倒计时复位仿真图由图5.7可以看出,当选手答题时间超过规定时间时,蜂鸣器( music )响起,倒计时数码管显示00,直到主持人按下复位键( reset ) 以后,恢复初值,light显示0,倒计时数码管显示29,alight变为0( 即熄灭 ),进入下一轮的抢答。此程序主要功能是实现倒计时功能,当有人抢答以后蜂鸣器响起,在主持人确认以后开始倒计时29秒,如果在规定时间内回答完毕主此人则按下暂停键,停止计数显示当前时间如图5.6,如果超出规定时间则蜂鸣器响起,直到主此人按下复位键为止如图5.7,所有信号初始化,数码管显示29等待下一轮抢答。总结:由以上仿真图可知,该设计基本实现了原先的设计要求,并在此基础上添加了选手相关位置的显示灯等功能。5.7 硬件下载驱动其硬件连接图如下:图5-8 硬件连接图此图为硬件连接以后,当d抢答成功,light显示为4,数码管从29倒计时开始,同时led第4个等亮如图5.8所示。硬件大的引脚锁定如下图:图5-9 引脚锁定图此图为硬件连接时的引脚锁定图。6心得体会 通过这次eda课程设计,我学到了很多的东西,不仅巩固以前所学过的知识,而且学到了很多在书本上所没有的知识。从而进一步加深了对eda的了解,让我对它产生了浓厚的兴趣。这次课程设计让我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,还要把所学的理论知识与实践相结合起来,从理论中得出结论,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到的问题,可以说是困难重重,这毕竟第一次做,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。这次出抢答器设计让我体会最深的一点就是,一定要保持一种严谨的态度,尤其是在引脚锁定的时候一定要仔细认真,否则会严重影响实验结果。而且我还意识到一点做事绝不能眼高手低,凡事想当然,只有自己亲自动手一遍一遍地查错改错才能使自己不断进步,并且从中会体会到成功的喜悦。总得来说这次只能抢答器的设计比较成功的。在设计中遇到了很多问题,尤其在下载到实验箱时,最后在老师的辛勤的指导下,终于下载调试成功。参考文献1 voknei a.pedroni.vhdl数字电路设计教程m.电子工业出版社,2008.52 潘松,黄继业.eda技术实用教程(第二版) m.科学出版社,2005.23 焦素敏.eda应用技术m.清华大学出版社,2002.44 曹昕燕, 周凤臣, 聂春燕.eda技术实验与课程设计m.清华大学出版社5 谭会生, 张昌凡.eda技术及应用(第二版)m.西安电子科技大学出版社附录一-顶层头文件library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all; entity xxx isport(a,b,c,d,reset,jishi,stop:in std_logic;clk:in std_logic;music:out std_logic;music0:out std_logic;cout1:out std_logic_vector(6 downto 0);cout2:out std_logic_vector(6 downto 0);light:out std_logic_vector(6 downto 0);alight,blight,clight,dlight:out std_logic);end xxx;architecture aaa of xxx iscomponent counter29 is port(ean,jishi,set,clk,stop:in std_logic;music,music0:out std_logic;cout1:out std_logic_vector(6 downto 0);cout2:out std_logic_vector(6 downto 0);end component counter29;component qiangda isport(a,b,c,d,reset,jishi:in std_logic;clk:in std_logic;ean,set: out std_logic;light:out std_logic_vector(6 downto 0);alight,blight,clight,dlight:out std_logic);end component qiangda; signal ean,set:std_logic; beginu0:counter29port map(ean,jishi,set,clk,stop,music,music0,cout1,cout2); u1:qiangdaport map(a,b,c,d,reset,jishi,clk,ean,set,light,alight, blight,clight,dlight); end aaa;-抢答模块程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all; entity qiangda is port(a,b,c,d,reset,jishi:in std_logic; clk:in std_logic; ean,set: out std_logic; light:out std_logic_vector(6 downto 0); alight,blight,clight,dlight:out std_logic );end qiangda;architecture qiangda of qiangda issignal a0,b0,c0,d0:std_logic;signal a1,b1,c1,d1:std_logic;signal a2,b2,c2,d2:std_logic;begin a2=not a1 ; b2=not b1 ; c2=not c1 ; d2=not d1 ;l1:process(a0) -qiang da begin a1=(a0 and b2 and c2 and d2) ; end process l1;l2:process(b0)beginb1=(b0 and a2 and c2 and d2);end process l2;l3:process(c0)beginc1=(c0 and a2 and b2 and d2);end process l3;l4:process(d0)begind1=(d0 and a2 and c2 and b2);end process l4; l5:process(a1,b1,c1,d1,a,b,c,d,reset) beginif(reset=1)then-fuwei light=0000;alight=0;blight=0;clight=0;dlight=0; set=0;a0=0;b0=0;c0=0;d0=0;ean=1; else ean=0;if (a=1) thena0=1;end if;if(b=1)thenb0=1;end if;if(c=1)thenc0=1;end if;if(d=1)thend0=1;end if;alight=a1;blight=b1;clight=c1;dlight=d1; -qiang da xiang guan dengset=(a1 or b1 or c1 or d1);end if;end process l5;end qiangda;-倒计时模块程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity counter29 isport( ean,jishi,set,clk,stop:in std_logic;music,music0:out std_logic;cout1:out std_logic_vector(6 downto 0);cout2:out std_logic_vector(6 downto 0);end counter29;architecture counter29 of counter29 issignal music1,music2,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年宣城宁国市中医院公开(自主)招聘5人考试模拟试题及答案解析
- 2025智慧医疗建设模式下的医疗服务质量提升策略分析报告
- 新能源安全管理2025年创新实践:技术创新与安全应急报告
- 生鲜电商供应链金融创新2025年研究报告
- 幼儿园隔离观察记录表填写规范
- 高校在线考试系统操作指南
- 火锅底料行业市场调研与分析报告
- 2022届广西南宁市高三二模历史试题
- 2025年保险学专业题库- 保险合同与资产管理
- 幼儿园数学能力提升教学计划
- 单元考点必刷卷 (一)(含答案)我上学啦 2025-2026学年北师大版一年级数学上册
- 2025保安员考试基础知识应知应会试题+答案
- 2025-2026学年人教版(2024)小学体育与健康三年级(全一册)教学设计(附目录P114)
- 河南省天一联考2026届高三年级开学联考语文试卷(含答案解析)
- 遴选笔试真题及答案
- 2025年消防经济学试题及答案
- 医疗科室外包合同协议书
- 基于核心素养的中小学安全教育课程设计与实施路径
- 2025年医院安全员安全技能测试
- 网络安全技术培训
- 超级充电综合站及配套设施建设项目可行性研究报告
评论
0/150
提交评论