基于VHDL的多路抢答器的设计.doc

上传人:仙人指路1688 文档编号:4144945 上传时间:2023-04-07 格式:DOC 页数:25 大小:799.50KB
返回 下载 相关 举报
基于VHDL的多路抢答器的设计.doc_第1页
第1页 / 共25页
基于VHDL的多路抢答器的设计.doc_第2页
第2页 / 共25页
基于VHDL的多路抢答器的设计.doc_第3页
第3页 / 共25页
基于VHDL的多路抢答器的设计.doc_第4页
第4页 / 共25页
基于VHDL的多路抢答器的设计.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《基于VHDL的多路抢答器的设计.doc》由会员分享,可在线阅读,更多相关《基于VHDL的多路抢答器的设计.doc(25页珍藏版)》请在三一办公上搜索。

1、重庆三峡学院毕业设计(论文)题目 基于VHDL的多路抢答器的设计 院 系 应 用 技 术 学 院 专 业 电子信息工程(应电应本) 年 级 2009级 学生姓名 文 超 学生学号 200915254124 指导教师 赵威威 职称 副 教 授 完成毕业设计(论文)时间 2013 年 1 月基于VHDL的多路抢答器的设计文超重庆三峡学院应用技术系电子信息工程(应用电子技术方向)专业2009级 重庆万州 404000摘要 抢答器作为一种电子产品,早已广泛应用于各种智力竞赛和知识竞赛场合,是竞赛问答中一种常用的必备装置电路结构形式多种多样。本设计使用VHDL语言设计一个四路数字竞赛抢答器系统。VHDL

2、是一种全方位的硬件描述语言,几乎覆盖了以往各种硬件描述语言的功能,整个自顶向下或自底向上的电路设计过程都可以用VHDL来完成。本文阐述了EDA 的概念和发展、VHDL语言的优点和语法结构并分析讲解了四路数字竞赛的各模块的功能要求、基本原理以及实现方法。本系统的设计就是采用VHDL硬件描述语言编程,基于QuatusII6.0平台进行编译和仿真来实现的,其采用的模块化、逐步细化的设计方法有利于系统的分工合作,并且能够及早发现各子模块及系统中的错误,提高系统设计的效率。抢答器的主要功能模块是是:1、对第一抢答信号的鉴别和锁存功能;2、计分功能。3、数码显示 ;4、答题限时功能。在本设计主要讲述抢答、

3、计分和警告的功能。关键词: 抢答器 EDA VHDL Based on the design of the multi-way Responder VHDLWEN ChaoChongqing Three Gorges College of Applied Technology Department of Electronic and Information Engineering (Applied Electronics technology direction) Professional 2009 Chongqing Wanzhou 404000Abstract:Responder is a

4、 kind of electronic products, has been widely used in all kinds of intelligence competition and knowledge contests occasions, is contest answers must have a common device circuit structure forms.The design of the use of VHDL language design a four way race responder digital system.VHDL is a full ran

5、ge of hardware description language, covering almost the past various hardware description language function, the top-down or bottom-up circuit design process can use VHDL to complete.This paper expounds the concept and the development of EDA, VHDL language advantages and grammatical structure and A

6、nalysis on the four digital competition each module functional requirements, principle and implementation method.The design of this system is the use of VHDL hardware description language, based on QuatusII6.0 platform compilation and simulation to achieve, the modular, stepwise refinement design me

7、thod is helpful for system of division of labour, and early identification of each module and the system error, improve the efficiency of system design.Vies to answer first the main function module is: 1, the first vies to answer first the differential signal and latch function; 2, score function.In

8、 3, a digital display; 4, the answer time limit function.In this design is mainly about answering, scoring and warning function.Key words: responder EDA VHDL 目录1 绪论12 整体设计方案12.1系统设计要求1 2.2系统设计方案 23子模块的设计思想 33.1抢答器模块 33.2计时模块 5 3.3计分模块 6 3.4译码显示模块 83.5抢答器的系统实现 94多路抢答器子模块的仿真验证 11 4.1鉴别模块的仿真验证 11 4.2计时

9、模块的仿真验证 12 4.3计分模块的仿真验证 12 4.4数显模块的仿真验证 14 4.5系统整体的仿真验证 155 总结 16 5.1多路抢答器设计结果16 5.2对设计的建议16致谢17参考文献17附录1抢答器鉴别模块源代码18 2报警模块源代码 19 3计分模块源代码 201 绪论 随着集成技术的发展,尤其是中、大规模和超大规模集成电路的发展,数字电子技术的应用越来越多地渗透到国民经济的各个部门,目前数字电子技术已经广泛应用于计算机、自动控制、电子测量仪表、电视、雷达、通信等各个领域。其中,抢答器就是典型的一种运用数字集成的设备。在日常生活中,各种智力竞赛越来越多,而抢答器是必不可少的

10、设备之一,答题时一般分为必答和抢答两种。必答有时间限制,到时要告警。而抢答则要求参赛者做好充分准备,由主持人宣读完题目后,参赛者开始抢答,谁先按下按钮,就由谁答题,但竞赛过程中很难准确判断出谁先按下按键,因此使用抢答器来完成这一功能是很有必要的。它能够准确、公正、直观地判断出首轮抢答者,并且通过抢答器的数码显示和警示蜂鸣等方式指示出首轮抢答者。以下几章主要介绍抢答器的抢答鉴别、计分和报警功能的实现,VHDL语言的特点及发展趋势,QuatusII6.0开发平台的仿真等。 2 整体方案设计2.1系统设计要求一般来说,设计一台智能抢答器,必须能够准确判断出第一位抢答者,并且通过数显、蜂鸣这些途径能让

11、人们很容易得知谁是抢答成功者,并设置一定的回答限制时间,让抢答者在规定时间内答题,主持人根据答题结果实行增减分的操作,并将分数显示在屏幕上,评出最终赢家。所以我们在设计智能抢答器的模块需要满足鉴别、计时、计分、数显等功能,具体设计要求如下: (1)抢答器可容纳四组选手,并为每组选手设置一个按钮供抢答者使用;为主持人设置一个控制按钮,用来控制系统清零(组别显示数码管灭灯)和抢答开始; (2)电路具有对第一抢答信号的锁存、鉴别和显示等功能。在主持人将系统复位并发出抢答指令后,蜂鸣器提示抢答开始,计时显示器显示初始时间并开始倒计时,若参赛选手按下抢答按钮,则该组别的信号立即被锁存,并在组别显示器上显

12、示该组别,同时扬声器也给出音响提示,此时,电路具备自锁功能,使其他抢答按钮不起作用。 (3)如果无人抢答,计时器倒计时到零,蜂鸣器有抢答失败提示,主持人可以按复位键,开始新一轮的抢答。 (4)抢答器具有限时抢答的功能,且一次抢答的时间由主持人设定,本抢答时间设定为60秒。当主持人启动开始键后,要求计时器采用倒计时,同时最后十秒扬声器会发出声响提示; (5)参赛选手在设定的时间内抢答,则抢答有效,定时器停止工作,主持人根据抢答结果给出分数,并由数码管显示选手的组别抢答分数,并一直保持到主持人将系统清零为止。2.2系统设计方案本设计为四路智能抢答器,所以这种抢答器要求有四路不同组别的抢答输入信号,

13、并能识别最先抢答的信号,直观地通过数显和蜂鸣等方式显示出组别;对回答问题所用的时间进行计时、显示、超时报警、预置答题时间,同时该系统还应有复位、倒计时启动功能。抢答过程:主持人按下系统复位键(RST),系统进入抢答状态,计时模块和计分模块输出初始信号给数码显示模块并显示出初始值。当某参赛组抢先将抢答键按下时,系统将其余三路抢答信号封锁,同时扬声器发出声音提示,组别显示模块送出信号给数码显示模块,从而显示出该抢答成功组台号,并一直保持到下一轮主持人将系统清零为止。主持人对抢答结果进行确认,随后,计时模块送出倒计时计数允许信号,开始回答问题,计时显示器则从初始值开始以计时,在规定的时间内根据答题的

14、正误来确定加分或减分,并通过数码显示模块将成绩显示出来。计时至0时,停止计时,扬声器发出超时报警信号,以中止未回答完问题。当主持人给出倒计时停止信号时,扬声器停止鸣叫。若参赛者在规定时间内回答完为题,主持人可给出倒计时计数停止信号,以免扬声器鸣叫。主持人按下复位键,即RST为高电平有效状态,清除前一次的抢答组别,又可开始新的一轮的抢答。此抢答器的设计中采用自顶向下的设计思路,运用VHDL硬件描述语言对各个模块进行层次化、系统化的描述,并且先设计一个顶层文件,再把各个模块连接起来。【3】系统的总体框图如下: 图2-1系统的总体框图2.3 子模块的设计思想和实现根据对抢答器的功能要求,把要设计的系

15、统划分为五个功能模块:抢答信号鉴别模块、计时模块、计分模块、数码显示模块和扬声器控制电路,具体的说,显示模块又包含最先抢答的组别显示电路、计时值显示电路和计分显示电路。计时模块、计分模块、数码显示模块和扬声器控制电路,3.1 抢答鉴别模块抢答鉴别模块用来准确直观地判断A、B、C、D四组抢答者谁最先按下按钮,并为显示端送出信号,通过数显和蜂鸣等途径使观众能够清楚地知道是哪一组抢答成功,是整个系统的核心部分。同时组别显示端为下一模块输入信号,以方便主持人为该组抢答成功者进行加减分的操作。 抢答鉴别模块的元件图如下图所示: 图3-1 鉴别模块元件框图 引脚作用:输入信号:各组的抢答按钮A、B、C、D

16、,系统清零信号INI。输出信号: 各组的抢答按钮显示端A1、B1、C1、D1,组别显示端G3.0。原理:第一个按下键的小组,抢答信号判定电路LOCK通过缓冲输出信号的反馈将本参赛组抢先按下按键的信号锁存,并且以异步清零的方式将其他参赛组的锁存器清零,组别显示、计时和计分会保存到主持人对系统进行清零操作时为止。当INI=1时系统复位,使组别显示信号G=0000,各组的指示灯信号A1=0,B1=0,C1=0,D1=0;当INI=0,即低电平有效,使其进入抢答鉴别状态,到CLK的上升沿到来时,以A组抢答成功为例,当输入信号为A=1,B=0,C=0,D=0,输出信号G=1000,A1=1,即为鉴别出A

17、组抢答成功,同时屏蔽其他组的输入信号,以免发生错误。同理其他组别抢答成功也是这样的鉴别过程。【3】备注:理论上来说,A、B、C、D四组抢答,应该有从00001111等16种可能情况,但是由于时钟信号的频率很高而且是在时钟信号上升沿的状况下才做出的鉴别,所以在这里两组以上同时抢答成功的可能性非常小,因此可以只设计四种情况,即A、B、C、D分别为1000、0100、0010、0001,这大大简化了电路的设计复杂性。其用VHDL语言进行编程的流程图如下图所示: 图3-2 抢答鉴别模块的流程图3.2 计时模块当抢答鉴别模块成功判别出最先按下抢答按钮的参赛组后,在成功鉴别出哪组最先抢答后,主持人按下计时

18、信号,则进入计时状态。计时模块可分作两部分:(1)预置数;(2)60秒倒计时。60秒时间用两个数码管QA,QB显示,其中QA表示60秒的个位,QB表示60秒的十位。计时模块开始工作从预置初始值开始以秒计时,计时至0秒时停止,时间耗尽时,扬声器会发出超时报警信号,以中止答题。 图3-3 计时模块的元件图该系统输入信号有:系统清零信号CLR,计时预置控制端LDN,计时使能端EN,系统时钟信号CLK,计时预置数据调整按钮TA、TB。系统输出信号有:倒计时输出端QA3.0、QB3.0。当清零信号CLR=1时,模块输出信号QA=0000 ,QB=0000。当预置数控制信号LDN=1可通过TA来调整QA,

19、TA来一次高电平,则QA的数值就加1;用TB来调整QB,通过这两个调整信号可调整参赛者答题所需要的时间。在CLR=0,LDN=0,EN=1时,通过时钟信号CLK的上升沿来进行60秒到计时。【1】其用VHDL语言进行编程的流程图如下: 开始LDN=0CLR=0LDN=1CLK上升沿EN=1TA=1TA=0QA=QA+1QB=QB=1图3-4 抢答计时模块的流程图3.3 计分模块 计分模块的运行方式是按照十进制进行加减,即当时钟出现上升沿时就进行加一或者减一的操作。 记分模块为哪组进行记分取决于鉴别模块的输入信号G,当G=1000时表示A组最先抢答,则在此模块中为A组记分,当G=0100时表示B组

20、最先抢答,则在此模块中为B组记分,当G=0010时表示C组最先抢答,则在此模块中为C组记分,当G=0001时表示D组最先抢答,则在此模块中为D组记分。 以A组为例来说明此模块的设计,当复位信号RST=1时,系统复位且A组的分值显示初始值,为100分。当RST=0时,如果该组选手答题正确,则主持人按下加分键,即ADD=1,此时对该组进行加分操作;如果该组选手答题错误,则主持人按下减分键,即SUB=1,此时对该组进行减分操作。计分模块的元件图如下图所示: 图3-5 计分模块的元件图 系统的输入信号有:计分复位端RST,加分按钮端ADD,减分按钮端SUB,组别号输入端CHOS3.0。系统的输出信号有

21、:A组分数输出端AA23.0、AA13.0、AA03.0,B组分数输出端BB23.0、BB13.0、BB03.0,C组分数输出端CC23.0、CC13.0、CC03.0,D组分数输出端DD23.0、DD13.0、DD03.0。 计分模块用VHDL语言进行编程的流程图如下: 图3-6计分模块的设计状态图注:在设计中减法的实现是以加法运算来实现的。也以A为例,由于每次减分都是减去10分,即每次为POINTS_A1减一,所以可以用POINTS_A1+ 1111来实现。如:0111-0001=0110,用加法实现:0111+1111=10110。由于POINTS_A1: STD_LOGIC_VECTO

22、R(3 DOWNTO 0),所以POINTS_A1=0110。3.4 译码显示模块该模块实际上是一个译码器,译码器是组合逻辑电路的一个重要的器件,其可以分为:变量译码和显示译码两类。变量译码一般是一种较少输入变为较多输出的器件,一般分为2n译码和8421BCD码译码两类。 显示译码主要解决二进制数显示成对应的十、或十六进制数的转换功能,一般其可分为驱动LED和驱动LCD两类。译码是编码的逆过程。图3-7 译码显示模块的元件图主要原理是四位二进制BCD编码转换成七段二进制数字,以阿拉伯数字的形式输出在数码管上,使观众能够更直观的看到结果。译码器的译码对照表如下所示:显示的数字/字母BCD编码七段

23、数码管2进制000000111111100010000110200101011011300111001111401001100110501011101101601101111101701110000111810001111111910011101111XXXXX0000000表3-1 译码器的译码对照表备注 :在程序中只考虑0000-1001(即0-9)的情况,将其转化为相应的七段显示器的码子,其他情况不予考虑。43.5 抢答器的系统实现单独模块只有彼此联系起来构成一个完整的系统,才能实现其功能,这个过程有两种实现方法:元件例化。也是用编程的方式将它们各个程序、信号、输入输出之间的关系用VHD

24、L语言来叙述清楚,还关系到程序的调用问题,需要设计者思路清晰,设计合理;元器件图示连线。这种连线方法思路清晰可见,而且用的时候很简单方便,出现错误也很好检查。在设计中选择的是这种方法。通过总的顶层元件图可以很清晰的看到模块连接的原理。图3-8 顶层元件图 注:本设计中,抢答器组别信号A、B、C、D为高电平时,其功能为有效状态。同样,系统清零信号CLR、预置及倒计时控制信号LDN,亦为高电平有效。当CLR有效时,抢答信号判别电路清零,为判别优先抢答信号做出准备。当计时使能端EN为低电平,预置时间设置信号LDN=1时,通过计时预置数据调整按钮TA、TB进行预置数。当计时使能端EN为高电平,有系统时

25、钟信号CLK时,进行一分钟倒计时。输入时钟CLK一方面作为扬声器控制电路的输入信号,另一方面作为抢答信号判别电路中锁存器时钟,为使扬声器音调较为悦耳,且是抢答判别电路有较高的准确度(对信号判别的最大误差是一个时钟周期),CLK信号频率高低应适中,可取500Hz-1KHz;同时CLK信号经过分频后向倒计时电路提供信号。附表:输入/输出引脚的作用:端口名功能CLK系统时钟信号A,B,C,D抢答信号输入CLR系统清零EN计时使能信号RST记分复位CHOS(3.0)组别信号输入DOUT7(6.0)译码管输出信号G (3.0)组别显示LDN计时预置控制信号AIN4(3.0)译码管输入 表3-2 输入/输

26、出引脚的作用4 多路抢答器子模块的仿真验证4.1鉴别模块的仿真验证 利用Quartus II进行编译,综合,仿真,时序图如下: 图4-1鉴别模块的仿真时序图引脚作用: 系统输入信号:各组的抢答按钮A、B、C、D,系统清零信号CLR,CLK时钟信号。 系统的输出信号: 各组的抢答按钮显示端A1、B1、C1、D1,组别显示端控制信号G3.0。仿真分析:当鉴别模块的清零信号CLR为高电平时,无论A、B、C、D四组参赛者谁按下抢答按钮,系统输出均为零,同时组别显示端G输出信号也显示为零;当清零信号CLR为低电平时,A、B、C、D四组参赛者谁先按下抢答按钮,组别显示端就显示该组别的号码。假如C组按下抢答

27、按钮时,组别输出为0010,同时C组的显示灯被点亮。仿真图上显示的为A先抢答,因为在0-1.28微秒之间A、C虽然都按抢答键,但CLR为有效状态,所以在此时间段内的抢答无效。4.2计时模块的仿真验证利用Quartus II进行编译,综合,仿真,时序图如下: 图4-2 计时模块的仿真时序图引脚作用: 系统输入信号:系统清零信号CLR,计时预置控制端LDN,计时使能端EN,系统时钟信号CLK,计时预置数据调整按钮TA、TB。系统输出信号:倒计时输出端QA3.0、QB3.0。 仿真分析:当系统清零信号CLR=1时,计时器的时钟信号回到计时预置倒计时起始状态,此时倒计时输出端QA=0000,QB=00

28、00.当计时使能端EN=0,计时预置控制端LDN=1时,通过计时预置数据调整按钮TA、TB进行预制数,并且通过TA,TB来调整QA,QB即当TA=1时,则QA的数值加1,当TB=1时,则QB的数值也加1。当计时使能端EN=1,系统清零信号CLR=0,并且计时预置控制端LDN=0时,通过时钟信号上升沿CLK来进行60秒倒计时。4.3计分模块的仿真验证 利用Quartus II进行编译,综合,仿真,时序图如下: 图4-3 计分模块的仿真时序图引脚作用: 系统的输入信号有:计分复位端RST,加分按钮端ADD,减分按钮端SUB,组别号输入端CHOS3.0。 系统的输出信号有:A组分数输出端AA23.0

29、、AA13.0、AA03.0,B组分数输出端BB23.0、BB13.0、BB03.0,C组分数输出端CC23.0、CC13.0、CC03.0,D组分数输出端DD23.0、DD13.0、DD03.0。仿真分析:首先应该清楚,在计分器电路的设计中,按十进制进行加减分操作的,当出现时钟信号上升沿CLK就可以完成对参赛者加减分操作。智能抢答器记分模块的仿真时以加分操作为例。由仿真图3-10可知以下情况:(1)系统设计过程中,当计分复位端RST=1时,并且组别输入信号CHOS=0000,其中的组别输入信号是抢答鉴别模块的输出信号,计分器复位,此时以上四组都不会产生加减分操作。(2)然而当计分复位端RST

30、=0时,此时计分器可以计分。当CHOS=0001时,组别显示为A组,此时主持人利用计分器对A组进行加减分操作;当CHOS=0010时,组别显示为B组,此时主持人则利用计分器对B组进行加减分操作;当CHOS=0100时,组别显示为C组,此时系统对C组进行加减分操作;当CHOS=1000时,组别显示为D组,此时对D组进行加减分操作。由仿真图可知,当主持人按下系统复位键RST键时,使分数复位,每位设置的初始分数为100分。当CHOS=1000时,即D抢答成功时,加分键ADD输入四个脉冲,DD1加到4,说明加分成功,成绩变为140分。其他抢答者抢答成功后的加分操作与此相同。减分的仿真与此类似,因为是以

31、加法实现,本质与加分相同,当计分复位端RST=0时,可以计分。由仿真图可知,初始成绩均为100分。当CHOS=1000时,即D抢答成功时,减分键SUB输入四个脉冲,DD1加到4,说明减分成功,成绩变为60分。其他抢答者抢答成功后的减分操作与此相同。4.4数显模块的仿真验证 利用Quartus II进行编译,综合,仿真,时序图如下: 图4-4数显模块的仿真时序图引脚作用: 输入信号:AIN4; 输出信号:DOUT7。仿真分析: 当AIN4= 0000 , DOUT7输出1111110,此时数码管显示0; 当AIN4= 0001 , DOUT7输出0110000,此时数码管显示1; 当AIN4=

32、0010 , DOUT7输出1101101,此时数码管显示2; 当AIN4= 0011 , DOUT7输出1111001,此时数码管显示3; 当AIN4= 0100 , DOUT7输出0110011,此时数码管显示4; 当AIN4= 0101 , DOUT7输出1011011,此时数码管显示5; 当AIN4= 0110 , DOUT7输出1011111,此时数码管显示6; 当AIN4= 0111 , DOUT7输出1110000,此时数码管显示7; 当AIN4= 1000 , DOUT7输出1111111,此时数码管显示8; 当AIN4= 1001 , DOUT7输出1111011,此时数码管

33、显示9;4.5系统整体的仿真验证图4-5系统整体的仿真时序图注:为使仿真波形图清晰明了,且某些引脚在一定时间内总是保持同一值不变,故特将其简化,不予在此图中显示。5 总结5.1 此次抢答器设计结果通过Quartus II的仿真,证明了本产品在实际运用中的正确性,完全可以实现预期任务的要求,在有一组信号抢答成功后蜂鸣器发出警报,在两组或两组以上信号同时抢答时视抢答无效,蜂鸣器不予响应。且计分器在实现计分功能时能够准确计数并将分数呈三位数显示,计时器在按下计时开始按钮后可以从60秒倒计时并通过译码器实时显示计时结果。5.2 对该设计的建议1.在抢答鉴别模块中,抢答成功后各组台号灯具有记忆功能,这一

34、点会造成即使下一轮抢答没有抢答成功者(即有两人或两人以上同时按下抢答器),之前被点亮的led灯会仍然保持点亮状态。虽然此时可以根据有没有警报声来提示抢答是否有效,但是仍然不够完善;2.在计时器模块内应增加计时结束报警功能,但是由于小组成员对vhdl语言运用不够熟练,在设计该项程序时遇到很多问题,进程之间不能很好的协调,故最终没有实现这一功能;3. 在波形仿真时,当信号之间配合不当时有可能造成预期的结果不能在波形上得到正确显示,故应协调各个开关的功能及其有效时间然后进行仿真,方能得出正确的仿真波形。4.另外,本产品还有需要改进的地方,如管脚过多,实际连接时不够简洁,容易造成连接错误。故应将各个模

35、块综合起来设计总电路,但是由于成员对顶层程序设计这一部分不甚了解,故没有完成这一环节。通过这次毕业设计我发现自己的不足。首先, 感觉简单,以为利用学过的课程做应该没什么问题。考虑不周全,导致系统功能设定时遇到不少困难。也耽搁了不少时间。其次,我发现自己对课本知识不是太熟悉,对开发工具的利用掌握的也不是很熟练,导致在编程、仿真时遇到不少麻烦。最后,由于大学期间接触电脑的机会不是太多,对基本的Word文档的掌握不是很熟练,在对论文的格式进行修改时花费了不少时间。这次设计也使我意识到,理论与时间之间的距离有多大。深刻体会到“纸上得来终觉浅,绝知此事要躬行”这句古话的含义了。在以后的学习生活中,我会尽

36、量弥补我在这方面的欠缺和不足。由于本人能力有限,设计还有许多不足之处,还请老师给予指点。 致谢 经过几个月的时间,毕业设计已经结束,本设计是在赵老师的指导下完成的。我是一个积极爱学习的人,在赵老师督促与耐心指导下我才能将我的毕业设计完成。在此首先谢谢赵老师的指导。在整个设计过程中,我身边的同学特别是我的舍友,他们为我提供电脑、网络,使我查找资料更加方便。在此还要感谢实验室的老师们,谢谢你们在我需要的时候为我打开实验室的门,谢谢你们的信任。我的同组成员也给了我很大的帮助。帮我解决了很多细节上的问题,使我能够更好更顺利的完成我的毕业设计,谢谢你们。通过做毕业设计我学到了很多,无论是理论知识还是实际

37、操作,都让我受益匪浅。这些很大程度上得益于帮助过我的老师和同学,真的非常感谢你们。最后,我还是要向百忙之中给我莫大帮助的赵老师表示感谢。还要 感谢的是我亲爱的重庆三峡学院以及学院的每一位领导、老师和同学。谢谢你们!参考文献1.李国洪,沈明山主编.EDA技术与实验M.机械工业出版社,2008:2-11. 2.李欣,张海燕主编,VHDL数字系统设计M.科学出版社,2009:2830. 3.皱彦,庄严,皱宁等编著,EDA技术与数字系统设计M.电子工业出版社:6976. 4.刘开绪.数字式抢答器的设计与实现J.电子工程师.2005.9:69-71. 5.汪国强.EDA技术与应用M.电子工业出版社.20

38、06.60-76.6.冯祥.可编程逻辑器件在数字系统中的应用J.国外电子元器.2001(5):58-59. 7.高曙光.可编程逻辑器件原理开发与应用M.西安电子科技.2002:122-125 .8.章忠全.电子技术基础实验与课程设计M.中国电力出版社.1999:95-99. 9.胡丹.基于VHDL智力竞赛抢答器的设计与实现J.现代机械.2007(3):54-55.10.刘延文,唐庆玉,段玉生.EDA技术是实现电工学研究性教学的良好手段J.实验设计与管理.2006(8):65-68.11.郭勇.EDA技术基础(第2版)M.机械工业出版社.2005.314-320. 12.常青,陈辉煌.可编程专用

39、集成电路及其应用与设计实践经验M.国防工业出版社.1998:38-45. 13.Enoch O Hwang.Digital Logic and Microprocessor Design with VHDLM. Thomson-Engineering.2005: 10-15.14.Sudhakar Yalamanchili .Introductory VHDL :from simulation to synthesisM.Prentice Hall.2001: 56-60. 附录 源代码1抢答器鉴别模块源代码 LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;

40、ENTITY LOCK ISPORT (CLK,CLEAR:IN STD_LOGIC; WARN : IN STD_LOGIC; S0,S1,S2,S3 : IN Std_Logic ;STATES : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ;STOP : OUT STD_LOGIC ;LED : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END LOCK ;ARCHITECTURE ONE OF LOCK ISBEGINPROCESS(CLEAR,CLK,S0,S1,S2,S3 )BEGINIF (CLEAR = 1)THEN STATES

41、=0000;LED=0000;STOP=0;ELSIF (CLK EVENT AND CLK=1 )THENIF ( WARN=0 )THENIF ( S3 =1 AND S2=0 AND S1=0 AND S0=0 ) THENSTATES = 0100 ; LED=0100 ;STOP=1 ;ELSIF ( S2 =1 AND S3=0 AND S1=0 AND S0=0 ) THENSTATES = 0011 ; LED=0011 ;STOP=1 ;ELSIF ( S1 =1 AND S3=0AND S2=0 AND S0=0) THENSTATES = 0010 ; LED=0010 ;STOP=1 ;ELSIF ( S0 =1ANDS3=0 AND S2=0 AND S1=0 ) THENSTATES = 0001 ; LED=0001 ;STOP=1 ;ELSE STATES=0000 ; LED=0000;END IF ;END IF ;END IF ;END PROCESS ;END ARCHITECTURE ; 2、报警模块源代码 (1)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY ALARM ISP

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号