版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 用vhdl语言设计智能抢答器鉴别和计时模块 摘要 伴随着集成电路(ic)技术的发展,eda技术已经成为现代电子设计的发展趋势,并在各大公司、企事业单位和科研教学部门广泛使用。vhdl是一种全方位的硬件描述语言,几乎覆盖了以往各种硬件描述语言的功能,整个自顶向下或自底向上的电路设计过程都可以用vhdl来完成。本文阐述了eda的概念和发展、vhdl语言的优点和语法结构并分析讲解了智能抢答器的各模块的功能要求、基本原理以及实现方法。本系统的设计就是采用vhdl硬件描述语言编程,基于quartus ii平台进行编译和仿真来实现的,其采用的模块化、逐步细化的设计方法有利于系统的分工合作,并且能够及早发
2、现各子模块及系统中的错误,提高系统设计的效率。本设计主要的功能是:1.对第一抢答信号的鉴别和锁存功能; 2.限时功能3.记分功能4.数码显示。关键词 电子设计自动化(eda);vhdl;抢答器;自顶向下的设计方法the identification and timing module of the answeringsnatches based on vhdlabstract as the fast development of the integrated circuit technology,electronic design automation (eda)technology has
3、become the trend of modern electronic design,whats more,it has been widely used by each big company, the enterprises and scientific institutions .vhdl is a kind of hardware description language,which is all-rounds, nearly covers the function of each other kind of hardware description language .both
4、the entire top-down and bottom-up circuit design process could be accomplished by vhdl.this article elaborates the concept and development of eda ,explains the advantages and grammar structure of vhdl ,meanwhile, analysed the function request, the basic principle as well as the method of accomplishm
5、ent of each parts. this systems design programmes in the vhdl, compiled and emulated basing on quartus ii platform of altera. using the modulation,and the gradually detailing design method is of great benefit for the systems division of labor and cooperation ,besides,the usage of this method can det
6、ect errors, as early as possible , in various of submodules and system, enhancing the efficiency of the system design. the main feature of this design are:1. accurately identificating of the signal of the first answer and latching this signal ; 2. the time limited function3. score function 4. digita
7、l display fuction.key words eda;vhdl;the answering snatches;top-down design method 目 录中文摘要.abstract.1 绪 论11.1 eda技术的发展11.2 智能抢答器的市场现状和eda技术的应用11.3 eda技术的设计优势21.4 论文结构22 系统的设计元素32.1 传统的数字系统设计方法和现代的数字系统设计方法比较32.2 vhdl硬件描述语言概述42.3硬件平台quartusii概述52.3.1 quartus ii介绍52.3.2 quartus ii设计流程及注意事项62.3.3 quartu
8、s ii的设计优势应用举例72.4 实验开发系统及芯片简述73 智能抢答器系统的设计与实现93.1 抢答器系统设计要求93.2系统总体设计思想93.3子模块的设计思想和实现113.3.1 鉴别模块的设计与实现113.3.2 计时模块的设计与实现123.3.3 计分模块的设计与实现143.3.4 译码显示模块的设计与实现.16 3.3.5 抢答器的系统实现164 智能抢答器子模块的仿真验证194.1 鉴别模块的仿真验证194.2 计时模块的仿真验证204.3 计分模块的仿真验证214.4 数显模块的仿真验证22结束语24致 谢25参考文献26(附录).261 绪 论1.1 eda技术的发展人类社
9、会已进入到高度发达的信息化社会,信息社会的发展离不开电子产品的进步。现代电子产品在性能提高、复杂度增大的同时,价格却一直呈下降趋势,而且产品更新换代的步伐也越来越快,实现这种进步的主要原因就是生产制造技术和电子设计技术的发展。前者以微细加工技术为代表,目前已进展到深亚微米阶段,可以在几平方厘米的芯片上集成数千万个晶体管;后者的核心就是eda技术。【1】eda是指以计算机为工作平台,融合了应用电子技术、计算机技术、智能化技术最新成果而研制成的电子cad通用软件包,主要能辅助进行三方面的设计工作:ic设计,电子电路设计以及pcb设计。没有eda技术的支持,想要完成上述超大规模集成电路的设计制造是不
10、可想象的,但是面对当今飞速发展的电子产品市场,设计师需要更加实用、快捷的eda工具,使用统一的集体化设计黄精,改变传统的设计思路,将精力集中到设计构想、方案比较和寻找优化设计等方面,需要以最快的速度,开发出性能优良、质量一流的电子产品,对eda技术提出了更高的要求。未来的eda技术将在仿真、时序分析、集成电路自动测试、高速印刷版设计及开发操作平台的扩展等方面取得新的突破,向着功能强大、简单易学、使用方便的方向发展。1.2 智能抢答器的市场现状和eda技术的应用 智力竞赛是“快乐学习”这一教育模式的典范,它采用在规定的一段时间内抢答和必答等方式,在给人们的生活带来乐趣的同时,也使参与者和观众在愉
11、悦的氛围中学到一些科学知识和生活知识,因此很受大家的喜欢。智力抢答器在智力竞赛中起到很重要的角色,能够准确、公正、直观地判断出首轮抢答者,并且通过抢答器的数码显示和警示蜂鸣等方式指示出首轮抢答者。eda技术是在电子cad技术基础上发展起来的计算机软件系统,是指以计算机为工作平台,融合了应用电子技术、计算机技术、信息处理及智能化技术的最新成果,进行电子产品的自动设计。利用eda工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出ic版图或pcb版图的整个过程在计算机上自动处理完成。现在对eda的概念或范畴用得很宽。包括
12、在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有eda的应用。目前eda 技术已在各大公司、企事业单位和科研教学部门广泛使用。例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到eda技术。 所以从目前的市场情况来看,这个课题的研究很有发展前景。1.3 eda技术的设计优势传统的设计方法采用自底向上的设计方法,一般先按电子系统的具体功能要求进行功能划分,然后对每个子模块画出真值表,用卡诺图进行手工逻辑简化,写出布尔表达式,画出相应的逻辑线路图,再据此选择元器件,设计电路板,最后进行实测与调试,由于无法进行硬件系统功能仿真,如果某一过程存在错误,查
13、找和修改十分不便,所以这是一种费时、费力的设计方法,而现代电子设计技术(eda)是自顶向下且先进高效的。在电子产品的设计理念、设计方式、系统硬件构成、设计的重用性、知识产权、设计周期等方面,eda技术具有一定的优势。所以本次设计的抢答器抛弃了传统的设计方法,选择了采用主流的eda技术进行设计。1.4 论文结构第一章 绪论部分,介绍了该课题的发展前景、现状以及eda技术的设计优势等;第二章 概述整个系统设计的设计元素;第三章 详细介绍用vhdl语言对智能抢答器的设计和实现;第四章 各功能模块的仿真。 2 系统的设计元素 此次设计是按照自顶向下的设计方法,对整个系统进行方案设计和功能划分,系统的关
14、键电路用一片或几片专用集成电路(asic)实现,然后采用硬件描述语言(vhdl)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件。这样的设计方法被称为高层次的电子设计方法。具体介绍如下:2.1 传统的数字系统设计方法和现代的数字系统设计方法比较 传统的数字系统设计方法:基于电路板的设计方法采用固定功能的器件(通用型器件),通过设计电路板来实现系统功能,在系统硬件设计的后期进行仿真和调试 现代的数字系统设计方法:基于芯片采用pld,利用eda开发工具,通过芯片设计来实现系统功能,在系统硬件设计的早期进行仿真。此系统的设计就是采用的现代的数字系统设计方法eda的设计方法。两种设计方法的
15、具体步骤如下: 图2-1两种设计方法的具体步骤 其与传统的设计方法的具体优劣比较如下表: 表2-1 传统设计方法 vs eda设计方法 由以上两对比图、表可知,智能抢答器的设计采用自顶向下的设计方法较优。而传统的电子设计的基本思路还是选择标准集成电路自底向上(bottom-up)地构造出一个新的系统,这样的设计方法就如同一砖一瓦地建造金字塔,不仅效率低、成本高而且还容易出错。2.2 vhdl硬件描述语言概述硬件描述语言(hdl-hardware description language)是一种用于设计硬件电子系统的计算机语言,早期的硬件描述语言,如abel-hdl、ahdl,是由不同的eda厂
16、商开发的,互相不兼容,而且不支持多层次设计,层次间翻译工作要由人工完成。为了克服以上缺陷,1985年美国国防部正式推出vhdl(very high speed ic hardware description language)语言,1987年ieee采纳vhdl为硬件描述语言标准(ieee std-1076)。【2】 vhdl对系统进行设计,可以在电子设计的各个阶段、各个层次对于编辑好的程序,在altera公司提供的quartusii平台上进行编译、仿真,然后通过时序图可以看出了此编程是否符合预想的设计功能,如果不符合,在硬件测试前就可以及早发现各子模块及系统中的错误,这样的设计特点无疑将提高
17、系统设计的效率。除此之外,用vhdl进行电子系统设计的一个很大的优点是设计者可以专心致力于其功能的实现,而不需要对不影响功能的与工艺有关的因素花费过多的时间和精力。2.3硬件平台quartusii概述2.3.1 quartus ii介绍quartus ii是altera 公司单芯片可编程系统(sopc) 设计的综合性环境,也是适合sopc的最全面的设计环境。它拥有现场可编程门阵列(fpga) 和复杂可编程逻辑器件(cpld) 设计的所有阶段的解决方案。quartus ii 设计软件改进了性能、提升了功能性、解决了潜在的设计延迟等,在工业领域率先提供fpga与mask-programmed de
18、vices开发的统一工作流程。同时,altera的quartus ii可编程逻辑软件还属于第四代pld开发平台。该平台支持一个工作组环境下的设计要求,其中包括支持vhdl、verilog的设计流程,其内部嵌有vhdl、verilog逻辑综合器。同样,quartus ii具备仿真功能,同时也支持第三方的仿真工具。quartus ii支持层次化设计,可以在一个新的编辑输入环境中对使用不同输入设计方式完成的模块进行调用,从而解决了原理图与hdl混合输入设计的问题,并且在设计输入之后,quartus ii的编译器将给出设计输入的错误报告。2.3.2 quartus ii设计流程及注意事项基于 quar
19、tus ii的vhdl文本输入设计流程如下图所示: 图2-2基于 quartus ii的vhdl文本输入设计流程 由上图可以看出,这样的设计方法对于电子设计的各个阶段、各个层次的操作都在altera公司提供的quartusii平台上进行编译、仿真测试,然后通过仿真时序图可以看出了此编程是否符合预想的设计功能,如果不符合,在硬件测试前就可以及早发现各子模块及系统中的错误,这样的设计特点无疑将提高系统设计的效率。 在设计实验过程中有以下几点需要注意: 1.在编程时要注意信号与变量的区别,并能正确定义和应用。 2.在创建工程时,要注意工程名和文件名和实体名要保持一致; 3.设计结束时间时最好是时间周
20、期的15倍,否则可能会出现时序图图像重叠不好识别的现象;4.仿真中,适当进制的转换有时候可以更使观察者更明显地看出来时序图的功能。2.3.3 quartus ii的设计优势应用举例随着逻辑设计复杂性的不断增加,仅依赖于软件方式的仿真测试来了解设计系统的硬件功能已经远远不够了,而需要重复进行硬件系统测试的测试也变得更为困难。嵌入式逻辑分析仪signaltapii的使用就解决了这一问题。它可以随设计文件一并下载于目标芯片中,用以捕捉目标芯片内部系统信号节点处的信息或总线上的数据流,而又不影响原硬件系统的正常工作。【4】嵌入式逻辑分析仪signaltapii有很多的优点:(1)允许对设计层次的模块的
21、信号节点进行测试,可以使用多时钟驱动;(2)利用signal tap ii成功的采集了fpga内部信号的波形,不占用额外的i/o引脚;(3)signal tap ii为硬件板级调试工具,它采集的波形是工程下载后的实时波形,方便设计者查找引起设计缺陷的原因;(4)节约成本。signal tap ii集成在quartus ii软件中,无需另外付费;(5)能通过设置以确定前后触发捕捉信号信息的比例.除此之外,应用signal tap ii还能解决各种各样的问题,如外部存储器的双向数据口的实时波形检测、驱动模块的并串转换波形等。2.4 实验开发系统及芯片简述 本设计采用的实验箱为gw48-pk型eda
22、/soc实验开发系统,选用的芯片为altera公司的型号为ep1c3t144c8的cyclone系列芯片,该芯片是altera推出的低价格、高容量的fpga,其以较低的价格、优良的特性以及丰富的片上资源在实际应用中被广泛的采用,这些都是其他同类产品无法相比的。 这款芯片的资源利用率最佳为85%左右,quartus软件包的编程器是系统的核心,提供功能强大的设计处理,设计者可以添加特定的约束条件来提高芯片的利用率。 关于fpga/cpld器件的配置: 当在quartus 中完成设计后,就应当将所设计的电路下载到cpld芯片中,结合用户系统进行统一的调试。针对cpld器件不同的内部结构,altera
23、公司提供了不同的器件配置方式。altera可编程逻辑器件的配置可通过编程器、jatg接口在线编程及altera在线配置三种方式进行。【5】 altera器件编程的连接硬件包括byteblaster并口下载电缆,byteblastermv并口下载电缆,masterblaster串行/usb 通信电缆,bitblaster串口下载电缆。altera公司提供的epc1、epc2、epc16和epc1441等prom配置芯片。byteblaster 并口下载电缆连接示意图如下图所示: 图2-3 byteblaster 并口下载电缆连接示意图 byteblaster并口下载电缆提供两种下载模式: (1)
24、被动串行模式(ps模式)用于配置flex 10k、flex 8000和flex 6000器件; (2)jtag模式具有工业标准的jtag边界扫描测试电路(符合ieee 1149.1:1990标准),用于配置flex 10k或对max 9000、max 7000s和max 7000a器件进行编程。3 智能抢答器系统的设计与实现3.1 抢答器系统设计要求 一般来说,设计一台智能抢答器,必须能够准确判断出第一位抢答者,并且通过数显、蜂鸣这些途径能让人们很容易得知谁是抢答成功者,并设置一定的回答限制时间,让抢答者在规定时间内答题,主持人根据答题结果实行增减分的操作,并将分数显示在屏幕上,评出最终赢家。
25、所以我们在设计智能抢答器的模块需要满足鉴别、计时、计分、数显等功能,具体设计要求如下: (1)抢答器可容纳四组选手,并为每组选手设置一个按钮供抢答者使用;为主持人设置一个控制按钮,用来控制系统清零(组别显示数码管灭灯)和抢答开始; (2)电路具有对第一抢答信号的锁存、鉴别和显示等功能。在主持人将系统复位并发出抢答指令后,蜂鸣器提示抢答开始,计时显示器显示初始时间并开始倒计时,若参赛选手按下抢答按钮,则该组别的信号立即被锁存,并在组别显示器上显示该组别,同时扬声器也给出音响提示,此时,电路具备自锁功能,使其他抢答按钮不起作用。 (3)如果无人抢答,计时器倒计时到零,蜂鸣器有抢答失败提示,主持人可
26、以按复位键,开始新一轮的抢答。 (4)抢答器具有限时抢答的功能,且一次抢答的时间由主持人设定,本抢答时间设定为60秒。当主持人启动开始键后,要求计时器采用倒计时,同时最后十秒扬声器会发出声响提示; (5)参赛选手在设定的时间内抢答,则抢答有效,定时器停止工作,主持人根据抢答结果给出分数,并由数码管显示选手的组别、抢答分数,并一直保持到主持人将系统清零为止。【6】3.2系统总体设计思想 本设计为四路智能抢答器,所以这种抢答器要求有四路不同组别的抢答输入信号,并能识别最先抢答的信号,直观地通过数显和蜂鸣等方式显示出组别;对回答问题所用的时间进行计时、显示、超时报警、预置答题时间,同时该系统还应有复
27、位、倒计时启动功能。抢答过程:主持人按下系统复位键(rst),系统进入抢答状态,计时模块和计分模块输出初始信号给数码显示模块并显示出初始值。当某参赛组抢先将抢答键按下时,系统将其余三路抢答信号封锁,同时扬声器发出声音提示,组别显示模块送出信号给数码显示模块,从而显示出该抢答成功组台号,并一直保持到下一轮主持人将系统清零为止。主持人对抢答结果进行确认,随后,计时模块送出倒计时计数允许信号,开始回答问题,计时显示器则从初始值开始以计时,在规定的时间内根据答题的正误来确定加分或减分,并通过数码显示模块将成绩显示出来。计时至0时,停止计时,扬声器发出超时报警信号,以中止未回答完问题。当主持人给出倒计时
28、停止信号时,扬声器停止鸣叫。若参赛者在规定时间内回答完为题,主持人可给出倒计时计数停止信号,以免扬声器鸣叫。主持人按下复位键,即rst为高电平有效状态,清除前一次的抢答组别,又可开始新的一轮的抢答。此抢答器的设计中采用自顶向下的设计思路,运用vhdl硬件描述语言对各个模块进行层次化、系统化的描述,并且先设计一个顶层文件,再把各个模块连接起来。【7】系统的总体框图如下: 图3-1系统的总体框图3.3子模块的设计思想和实现 根据对抢答器的功能要求,把要设计的系统划分为五个功能模块:抢答信号鉴别模块、计时模块、计分模块、数码显示模块和扬声器控制电路,具体的说,显示模块又包含最先抢答的组别显示电路、计
29、时值显示电路和计分显示电路。计时模块、计分模块、数码显示模块和扬声器控制电路,具体的说,显示模块又包含最先抢答的组别显示电路、计时值显示电路和计分显示电路。【8】3.3.1 鉴别模块的设计与实现抢答鉴别模块用来准确直观地判断a、b、c、d四组抢答者谁最先按下按钮,并为显示端送出信号,通过数显和蜂鸣等途径使观众能够清楚地知道是哪一组抢答成功,是整个系统的核心部分。同时组别显示端为下一模块输入信号,以方便主持人为该组抢答成功者进行加减分的操作。 抢答鉴别模块的元件图如下图所示: 图3-2 鉴别模块元件框图 引脚作用:输入信号:各组的抢答按钮a、b、c、d,系统清零信号ini。输出信号: 各组的抢答
30、按钮显示端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组抢答成功,同时屏蔽其他组的输入信号,以免发
31、生错误。同理其他组别抢答成功也是这样的鉴别过程。【9】备注:理论上来说,a、b、c、d四组抢答,应该有从00001111等16种可能情况,但是由于时钟信号的频率很高而且是在时钟信号上升沿的状况下才做出的鉴别,所以在这里两组以上同时抢答成功的可能性非常小,因此可以只设计四种情况,即a、b、c、d分别为1000、0100、0010、0001,这大大简化了电路的设计复杂性。 其用vhdl语言进行编程的流程图如下图所示: 图3-3 抢答鉴别模块的流程图3.3.2 计时模块的设计与实现当抢答鉴别模块成功判别出最先按下抢答按钮的参赛组后,在成功鉴别出哪组最先抢答后,主持人按下计时信号,则进入计时状态。计时
32、模块可分作两部分:(1)预置数;(2)60秒倒计时。60秒时间用两个数码管qa,qb显示,其中qa表示60秒的个位,qb表示60秒的十位。计时模块开始工作从预置初始值开始以秒计时,计时至0秒时停止,时间耗尽时,扬声器会发出超时报警信号,以中止答题。 图3-4 计时模块的元件图该系统输入信号有:系统清零信号clr,计时预置控制端ldn,计时使能端en,系统时钟信号clk,计时预置数据调整按钮ta、tb。系统输出信号有:倒计时输出端qa3.0、qb3.0。当清零信号clr=1时,模块输出信号qa=0000 ,qb=0000。当预置数控制信号ldn=1可通过ta来调整qa,ta来一次高电平,则qa的
33、数值就加1;用tb来调整qb,通过这两个调整信号可调整参赛者答题所需要的时间。在clr=0,ldn=0,en=1时,通过时钟信号clk的上升沿来进行60秒到计时。【10】其用vhdl语言进行编程的流程图如下: 开始ldn=0clr=0ldn=1clk上升沿en=1ta=1ta=0qa=qa+1qb=qb=1图3-5 抢答计时模块的流程图3.3.3 计分模块的设计与实现 计分模块的运行方式是按照十进制进行加减,即当时钟出现上升沿时就进行加一或者减一的操作。 记分模块为哪组进行记分取决于鉴别模块的输入信号g,当g=1000时表示a组最先抢答,则在此模块中为a组记分,当g=0100时表示b组最先抢答
34、,则在此模块中为b组记分,当g=0010时表示c组最先抢答,则在此模块中为c组记分,当g=0001时表示d组最先抢答,则在此模块中为d组记分。 以a组为例来说明此模块的设计,当复位信号rst=1时,系统复位且a组的分值显示初始值,为100分。当rst=0时,如果该组选手答题正确,则主持人按下加分键,即add=1,此时对该组进行加分操作;如果该组选手答题错误,则主持人按下减分键,即sub=1,此时对该组进行减分操作。计分模块的元件图如下图所示: 图3-6 计分模块的元件图 系统的输入信号有:计分复位端rst,加分按钮端add,减分按钮端sub,组别号输入端chos3.0。系统的输出信号有:a组分
35、数输出端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-7计分模块的设计状态图 注:在设计中减法的实现是以加法运算来实现的。也以a为例,由于每次减分都是减去10分,即每次为points_a1减一,所以可以用points_a1+ 1111来实现。如:0111-0001=0110,用加法实现:0111+1111=10110。由于points_a1: std_logic_vector(3
36、 downto 0),所以points_a1=0110。3.3.4 译码显示模块的设计与实现该模块实际上是一个译码器,作用是用来显示组别,时间和成绩,其主要原理是四位二进制bcd编码转换成七段二进制数字,以阿拉伯数字的形式输出在数码管上,使观众能够更直观的看到结果。译码器的译码对照表3-1如下所示:表3-1 译码器的译码对照表显示的数字/字母bcd编码七段数码管2进制0000001111111000100001102001010110113001110011114010011001105010111011016011011111017011100001118100011111119100111
37、01111xxxxx0000000备注 :在程序中只考虑0000-1001(即0-9)的情况,将其转化为相应的七段显示器的码子,其他情况不予考虑。3.3.5 抢答器的系统实现单独模块只有彼此联系起来构成一个完整的系统,才能实现其功能,这个过程有两种实现方法:元件例化。也是用编程的方式将它们各个程序、信号、输入输出之间的关系用vhdl语言来叙述清楚,还关系到程序的调用问题,需要设计者思路清晰,设计合理;元器件图示连线。这种连线方法思路清晰可见,而且用的时候很简单方便,出现错误也很好检查。在设计中选择的是这种方法。通过总的顶层元件图可以很清晰的看到模块连接的原理。图3-8 顶层元件图 附表:输入/
38、输出引脚的作用: 表3-2 输入/输出引脚的作用 端口名 功能 clk系统时钟信号 a,b,c,d抢答信号输入 clr系统清零 en计时使能信号 rst记分复位 chos(3.0) 组别信号输入dout7(6.0) 译码管输出信号g (3.0)组别显示ldn计时预置控制信号ain4(3.0)译码管输入 注:本设计中,抢答器组别信号a、b、c、d为高电平时,其功能为有效状态。同样,系统清零信号clr、预置及倒计时控制信号ldn,亦为高电平有效。当clr有效时,抢答信号判别电路清零,为判别优先抢答信号做出准备。当计时使能端en为低电平,预置时间设置信号ldn=1时,通过计时预置数据调整按钮ta、t
39、b进行预置数。当计时使能端en为高电平,有系统时钟信号clk时,进行一分钟倒计时。输入时钟clk一方面作为扬声器控制电路的输入信号,另一方面作为抢答信号判别电路中锁存器时钟,为使扬声器音调较为悦耳,且是抢答判别电路有较高的准确度(对信号判别的最大误差是一个时钟周期),clk信号频率高低应适中,可取500hz-1khz;同时clk信号经过分频后向倒计时电路提供信号。4 智能抢答器子模块的仿真验证4.1鉴别模块的仿真验证 利用quartusii进行编译,综合,仿真,时序图如下: 图4-1鉴别模块的仿真时序图引脚作用: 系统输入信号:各组的抢答按钮a、b、c、d,系统清零信号clr,clk时钟信号。
40、 系统的输出信号: 各组的抢答按钮显示端a1、b1、c1、d1,组别显示端控制信号g3.0。仿真分析: 当鉴别模块的清零信号clr为高电平时,无论a、b、c、d四组参赛者谁按下抢答按钮,系统输出均为零,同时组别显示端g输出信号也显示为零;当清零信号clr为低电平时,a、b、c、d四组参赛者谁先按下抢答按钮,组别显示端就显示该组别的号码。假如c组按下抢答按钮时,组别输出为0010,同时c组的显示灯被点亮。仿真图上显示的为a先抢答,因为在0-1.28微秒之间a、c虽然都按抢答键,但clr为有效状态,所以在此时间段内的抢答无效。4.2计时模块的仿真验证利用quartusii进行编译,综合,仿真,时序
41、图如下: 图4-2 计时模块的仿真时序图引脚作用: 系统输入信号:系统清零信号clr,计时预置控制端ldn,计时使能端en,系统时钟信号clk,计时预置数据调整按钮ta、tb。系统输出信号:倒计时输出端qa3.0、qb3.0。 仿真分析:当系统清零信号clr=1时,计时器的时钟信号回到计时预置倒计时起始状态,此时倒计时输出端qa=0000,qb=0000.当计时使能端en=0,计时预置控制端ldn=1时,通过计时预置数据调整按钮ta、tb进行预制数,并且通过ta,tb来调整qa,qb即当ta=1时,则qa的数值加1,当tb=1时,则qb的数值也加1。当计时使能端en=1,系统清零信号clr=0
42、,并且计时预置控制端ldn=0时,通过时钟信号上升沿clk来进行60秒倒计时。4.3计分模块的仿真验证 利用quartusii进行编译,综合,仿真,时序图如下: 图4-3 计分模块的仿真时序图引脚作用: 系统的输入信号有:计分复位端rst,加分按钮端add,减分按钮端sub,组别号输入端chos3.0。 系统的输出信号有: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。仿真分析:首先应该清楚,在计分器电路的设计中,按十进
43、制进行加减分操作的,当出现时钟信号上升沿clk就可以完成对参赛者加减分操作。智能抢答器记分模块的仿真时以加分操作为例。由仿真图3-10可知以下情况:(1)系统设计过程中,当计分复位端rst=1时,并且组别输入信号chos=0000,其中的组别输入信号是抢答鉴别模块的输出信号,计分器复位,此时以上四组都不会产生加减分操作。(2)然而当计分复位端rst=0时,此时计分器可以计分。当chos=0001时,组别显示为a组,此时主持人利用计分器对a组进行加减分操作;当chos=0010时,组别显示为b组,此时主持人则利用计分器对b组进行加减分操作;当chos=0100时,组别显示为c组,此时系统对c组进
44、行加减分操作;当chos=1000时,组别显示为d组,此时对d组进行加减分操作。由仿真图可知,当主持人按下系统复位键rst键时,使分数复位,每位设置的初始分数为100分。当chos=1000时,即d抢答成功时,加分键add输入四个脉冲,dd1加到4,说明加分成功,成绩变为140分。其他抢答者抢答成功后的加分操作与此相同。减分的仿真与此类似,因为是以加法实现,本质与加分相同,当计分复位端rst=0时,可以计分。由仿真图可知,初始成绩均为100分。当chos=1000时,即d抢答成功时,减分键sub输入四个脉冲,dd1加到4,说明减分成功,成绩变为60分。其他抢答者抢答成功后的减分操作与此相同。4
45、.4数显模块的仿真验证 利用quartusii进行编译,综合,仿真,时序图如下: 图4-4数显模块的仿真时序图引脚作用: 输入信号:ain4; 输出信号:dout7。仿真分析: 当ain4= 0000 , dout7输出1111110,此时数码管显示0; 当ain4= 0001 , dout7输出0110000,此时数码管显示1; 当ain4= 0010 , dout7输出1101101,此时数码管显示2; 当ain4= 0011 , dout7输出1111001,此时数码管显示3; 当ain4= 0100 , dout7输出0110011,此时数码管显示4; 当ain4= 0101 , do
46、ut7输出1011011,此时数码管显示5; 当ain4= 0110 , dout7输出1011111,此时数码管显示6; 当ain4= 0111 , dout7输出1110000,此时数码管显示7; 当ain4= 1000 , dout7输出1111111,此时数码管显示8; 当ain4= 1001 , dout7输出1111011,此时数码管显示9; 结束语 本文主要介绍了利用vhdl语言设计智能抢答器的详细流程,并横向介绍了一些关于此设计的背景知识,比如eda的应用、qutartusr设计流程等等。在设计的过程中,文章通过对比传统的自底向上的设计方法和和现代eda的自顶向下的设计方法,突
47、出了eda设计方法的优越性。 在这次设计中,我们也遇到了一些问题,比如设置输入信号不合适时,时序图也会出现一些毛刺现象。同时,我也发现了自己的许多不足。首先,最初开发时,对系统没有一个完整的思路,考虑不是很全面,所以系统功能设计时,碰到不少困难,也耽搁了不少时间。其次,我发现自己对于书本上的很多知识还不够熟悉,对开发工具的掌握还不算很全面,有很多我们需要掌握的知识还没掌握,所以在设计编程、编译以及仿真过程中走了不少弯路。再次,在论文的整理过程中,我对word文档的操作技能不是很娴熟,所以在以后的学习生活中,我会努力并尽量弥补我所缺少的一些相关知识,不断提高自己的操作能力。 致 谢本论文的工作是
48、在我的导师陈杨教授的悉心指导下完成的。在整个毕业设计过程中,陈杨老师不断引导我们,帮助我们梳理论文思路,耐心地给我解释一些细节上的、我不理解的问题,并提出一些新的问题,使得我对毕业设计课题能够有更深入的思考,帮助我顺利完成毕业设计和论文。在此谨向陈老师致以诚挚的谢意和崇高的敬意。在此,我还要感谢董硕、沈娟等同学对我的帮助,这段时间我们之间的相互协作,不仅促进了毕设的顺利完成,同时也增进我们之间的友谊 。最后,感谢所有支持过我、帮助过我的老师、朋友和同学们,祝愿大家都会有一个美好而又光明的未来。参考文献1 汉泽西.eda技术与应用【m】.北京:北京航空航天大学出版社,20042 侯伯亨,顾新.
49、vhdl硬件描述语言与数字逻辑电路设计.西安:西安电子科技大学出版社,19973 黄任.编著vhdl入门、解惑、经典实例、经验总结.北京:北京航空航天大学出版社,20054 罗朝霞,高书莉.cpld/fpga设计及应用.北京:人民邮电出版社, 2007.7.5 陈云恰,保延翔.cpld应用技术与数字系统统计.电子工业出版社, 2006.6 李伟英,谢完成.基于eda技术的抢答器的设计与实现【j】.科学技术与实现, 2008.8(11).7谭会生,瞿遂存.eda技术综合应用实例与分析【m】.西安:西安电子科技大学出版社, 2004.8姜雪松,吴钰淳.vhdl设计实例与仿真.机械工业出版社, 20
50、07.9altera corporation.altera digital library.altera,2002.10(美) stephen brown , zvonko vranesic 编著.fundamengtals of digital logic with vhdl design.mcgrawhill education(asia),2002.8. 附 录附录1 抢答鉴别模块vhdl程序(qdjb.vhd)library ieee; use ieee.std_logic_1164.all; entity qdjb is port (clr: in std_logic; clk: in std_logic; a, b, c, d: in std_logic; a1, b1, c1, d1: out std_logic; g: out std_logic_vector (3 downto 0); end qdjb; architecture art of qdjb is constant w1: std_logic_vector:=0001; constant w2: std_logic_vector:=0010; constant w3: std_logic_v
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025写字楼办公楼场地租赁合同范例
- 灯具外观报告范文
- 2025“锦鸿山庄”前期物业服务合同
- 课题申报书:高中化学实验教学的现状调查与策略研究
- 课题申报书:高质量发展背景下县域高校多元主体协同治理研究
- 课题申报书:高校县域办学与中国式县域现代化融合共生的路径研究
- 2025个人建筑装修合同
- 课题申报书:非线性预测回归模型:理论与应用
- 上海杉达学院《羽毛球俱乐部(初级)》2023-2024学年第一学期期末试卷
- 上海杉达学院《数据可视化技术》2023-2024学年第一学期期末试卷
- 大锁孙天宇小品《时间都去哪了》台词剧本完整版-一年一度喜剧大赛
- 2024年云南开放大学《多媒体技术基础》形成性考核参考试题库(含答案)
- 220kV~750kV油浸式电力变压器使用技术条件
- MOOC 生物化学与分子生物学-中国药科大学 中国大学慕课答案
- 金属屋面工程防水技术规程
- 人工智能增强战略规划
- 特种设备使用单位变更登记表
- C语言编程新思路智慧树知到期末考试答案2024年
- 义务教育科学课程标准(2022年版)解读
- 韶山旅游方案
- 吉林省延边州2023-2024学年高一上学期期末学业质量检测数学试题(解析版)
评论
0/150
提交评论