EDA课程设计—四人抢答器设计

上传人:ya****h 文档编号:141568097 上传时间:2022-08-24 格式:DOCX 页数:12 大小:165.30KB
返回 下载 相关 举报
EDA课程设计—四人抢答器设计_第1页
第1页 / 共12页
EDA课程设计—四人抢答器设计_第2页
第2页 / 共12页
EDA课程设计—四人抢答器设计_第3页
第3页 / 共12页
亲,该文档总共12页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
摘要现代生活中,数字电路产品与我们接触的是越来越平凡了,包括计算机、电子表、智能仪器表及其它很多领域中,它给我们带来的不仅是工作上的方便,而且也给我们的生活娱乐添滋加彩。这次EDA课程设计中,我做的是四人抢答器,基于设计要求,本文主要是从锁存器及计数器功能和VHDL语言着手,但侧重点在用VHDL语言上。首先简单介绍一下数字电路、EDA、VHDL等的有关知识,其次介绍了一下设计要求和我的设计构想,再运用VHDL语言特点,写出程序代码,最后是一些总结和抢答器部分实验电路图与倒计时设计的电路图和用MAX+PLUSII软件仿真的结果部分图附录等部分。关键词:置位;复位;锁存;计数器;七段显示器;MAX+PLUSII;译码器目录摘要:1引言:2一、设计任务及要求:2二、题目分析与整体构思:2三、VHDL程序设计:3四、心得体会及模型评价与推广:5附录:6参考文献:10引言数字电路主要是基于两个信号(我们可以简单的说是有电压和无,电用压数)字信号完成对数字量进行算术运算和逻辑运算的电路我们称之为数字电它路具,有逻辑运算和逻辑处理等功能数,字电路可分为组合逻辑电路和时序逻辑电路。EDA技术又称电子设计自动化,它是为解决自动控制系统设计而提出的0年弋经历了计算机辅助设计CAD),计算机辅助工程CAE),电子系统设计自动化ESDA)3个阶段。前两个阶段的EDA产品都只是个别或部分的解决了电子产品设计中的工程I、第三代EDA工具根据工程设计中的瓶颈和矛盾对设计数据库实现了统一管并理提,出了并行设计环境概念提,供了独立于工艺和厂家的系统级的设计工具。VHDL(VERYHIGHSPEEDINTEGRATEDCIRCUITHARDWAREDESCRIPTIONLANGUAGE)语言最早是有美国国防部提出的,它支持行为领域和结构领域的硬件描述,并且可以从最抽象的系统级一直到最精确的逻辑级,在描述数字系统时,可以使用前后一致的语义和语法跨越多个层次,并且使用跨越多个级别的混合描述模拟该系统。因此,它可以由高层次行为描述子系统及低层次详细实现子系统所组成的系统模拟。它有两个版本IEEEStdl076-1987LRM87和IEEEStdl076-1993LRM93,他们并不完全兼容,但做一些修改就可以兼容了。许多公司都为VHDL开发出了编译和仿真软件,其中Max+plusII(或写成Maxplus2,或MP2)是Altera公司推出的的第三代PLD开发系统(Altera第四代PLD开发系统被称为:QuartusII,主要用于设计新器件和大规模CPLD/FPGA).使用MAX+PLUSII的设计者不需精通器件内部的复杂结构。设计者可以用自己熟悉的设计工具(如原理图输入或硬件描述语言)建立设计,MAX+PLUSII把这些设计转自动换成最终所需的格式。其设计速度非常快。对于一般几千门的电路设计,使用MAX+PLUSII,从设计输入到器件编程完毕,用户拿到设计好的逻辑电路,大约只需几小时。设计处理一般在数分钟内内完成。特别是在原理图输入等方面。一、设计任务及要求:本设计要求做一个四人抢答器,并要求当有某一参赛者首先按下抢答开关时,相应显示灯亮并报警,此时抢答器不再接受其他输入信号。电路具有回答、题时间控制功能。要求回答问题时间小于等于100s(显示0-99),时间采用倒计时方式。当到达限定时间,发出警告。二、题目分析与整体构思:对于一个四人抢答器,四个选手在电路中的起始控制作用是一样的,当裁判员宣布开始抢答时,谁先按下他前面的控制开关,他的灯就会亮,而且这时其他人再怎么按,也就不会亮了,说明每个人对其他人都有一个先发制人的作用,及每个人都在时间控制下,能锁存住其他选手的功能。当有一个指示灯亮了,计数器就开始从99开始倒计时,到0时还要警告声,这样计数器开始工作就是在指示灯的指示下工作。可以设四个人分别为输入端A,B,C,D;因为四个输入端在VHDL中,要求四个输入端应该是相等优先级别,但只要有一个输入端接入高电平时,就给其他信号一个反馈,使得他们的输入无效,及他们对应的指示灯不亮;所以我们可以也并行语句,让它们分为四个进程(process),同时也要求每个进程中都有反馈信号传给其他进程语句中,这样就可以完成抢答器基础部分了,设计的逻辑电路图部分见附录图一。其次就是计数器部分,当有人开始进入回答部分,指示灯亮,同时计数器开始工作,并要求是倒计时方式并七段显示出,通过这些消息我们可知,指示灯即是计数器开始倒计时的信号,本设计中采用了元件例化(component)语句,在抢答器中给个选手已经开始回答了的信号插口,给计数器中的置零输入端,这样就基本上完成了设计,计数器采用倒计时方式,实现方式也很简单,只要给他们最初赋值为99,而后在每个上升沿来到减一,具体设计情况还是看看程序设计部分吧,在附录部分还有这个99倒时计数器的逻辑电路图。三、VHDL程序设计:根据上面的分析可知,我们只要用四个进程语句,就可以处理好四位选手的相互限制的问题,再将四个指示灯用相与来控制计数器的置零端set,再用一个元件话语句component连接计数器,下面是具体的抢答器的VHDL语言代码:代码中A、B、C、D分别代表四位参赛选手,RESET是主裁判员的控制开关,CLK是计数器的时钟信号,MUSIC是警告的控制开关,COUNT1和C0NT2代表的是99倒计时的七段显示二进制码直接与LED显示器连接,ALIGHT,BLIGHT,CLIGHT,DLIGHT分别代表四位选手的显示灯。libraryieee;useieee.std_logic_1164.all;USEIEEE.STD_LOGIC_UNSIGNED.ALL;entityQiang_DAisport(A,B,C,D,RESET:instd_logic;CLK:instd_logic;MUSIC:outstd_logic;COUT1:outstd_logic_vector(6downto0);COUT2:outstd_logic_vector(6downto0);ALIGHT,BLIGHT,CLIGHT,DLIGHT:outstd_logic);end;architectureoneofQiang_DAiscomponentCOUNTER99port(SET,CLK:instd_logic;MUSIC:outstd_logic;COUT1:outstd_logic_vector(6downto0);COUT2:outstd_logic_vector(6downto0);endcomponent;signalA1,B1,C1,D1:std_logic;signalA2,B2,C2,D2:std_logic;signalSET:std_logic;beginA2=notA1;B2=notB1;C2=notC1;D2=notD1;L1:process(A)beginA1=(AandB2andC2andD2);endprocessL1;L2:process(B)beginB1=(BandA2andC2andD2);endprocessL2;L3:process(C)beginC1=(CandA2andB2andD2);endprocessL3;L4:process(D)beginD1=(DandA2andC2andB2);endprocessL4;L5:process(A1,B1,C1,D1,RESET)beginifRESET=0thenALIGHT=0;BLIGHT=0;CLIGHT=0;DLIGHT=0;SET=0;elseALIGHT=A1;BLIGHT=B1;CLIGHT=C1;DLIGHT=D1;SET=(A1orB1orC1orD1);endif;endprocessL5;U0:COUNTER99portmap(SET,CLK,MUSIC,COUT1,COUT2);end;下面是99倒数计数器的VHDAL语言代码:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityCOUNTER99isport(SET,CLK:instd_logic;MUSIC:outstd_logic;COUT1:outstd_logic_vector(6downto0);COUT2:outstd_logic_vector(6downto0);end;architecturebehaveofCOUNTER99issignalMUSIC1:std_logic;signalHIGH:std_logic_vector(3downto0):=1001;signalLOW:std_logic_vector(3downto0):=1001;beginC1:process(SET,CLK,MUSIC1)beginifSET=0thenMUSIC1=0;HIGH=1001;LOW=1001;elseifRISING_EDGE(CLK)thenifLOW=0000thenLOW=1001;ifHIGH=0000thenHIGH=1001;elseHIGH=HIGH-1;endif;elseLOW=LOW-1;endif;endif;if(HIGH=0000andLOW=0001)thenMUSIC1outdata:=1111110;WHEN0001=outdata:=0110000;WHEN0010=outdata:=1101101;WHEN0011=outdata:=1111001;WHEN0100=outdata:=0110011;WHEN0101=outdata:=1011011;WHEN0110=outdata:=1011111;WHEN0111=outdata:=1110000;WHEN1000=outdata:=1111111;WHEN1001=outdata:=1111011;WHENothers=outdata:=0000000;endcase;return(outdata);enddecode;beginCOUT1=decode(LOW);COUT2=decode(HIGH);MUSIC=MUSIC1;endprocessC5;end;在附录部分有上述代码在MAX+PLUXII软件中的部分仿真结果,具体电路模拟结果参照附录。心得体会及模型评价与推广经过一周的EDA的课程设计,我对VHDL有了更深刻的认识,在最开始的时候也遇到不少问题,的确书看得比较少啊!后来通过查阅资料和书本总算写出了一点东西,但模型的仿真过程中,也发现了一些问题,在时钟周期设置200ns内时就出现了组合逻辑电路中的竞争冒险现象,有待改进,单此种模型可以推广到比四人更多的抢答器中,只要添加进程语句就可以了。附录:图抢答器设计初步屯路图-D4-cmin旳TH12TffcUlX4plu?II-f:ayqiajig_da-qianf_da.scf-fsvefanEditarl:lr.1-J厂戟:L:?-:;!-j-L-T-:-:,:日0色日昌G样佥陽弼已囱血圍通廳吧盘更乏0.0:砒嗣:|2.29us|Rsf|26汕陽|*|Time:2.知he,也怖:丄200卩540叩皿600阳900卩皿1卿1护1.皆1.解I.护2巒2.鄆2怦g-RESETa-CLK11LRABA-tAUSHTmkBTBUGHTD000-l*CU3HTHBDMUSIC3C0JT1MCOT2d/ter9?UGIHIGH0noDD123D123D3前怕甌啣则os0QTncnTnnTnrniTnnTnrnG图二图屮陋ET为裁判员控制隴A出C,D风别为个选毛ALIGHT,BL1G1皿匾讥肌町肛分别为毎个选手的对屈蒜灯,MUSIC警控制开关高电平报警,COUTLCOJT2是计数器的低、高位的七段显示码剩下的两个是其分别对应的十进制倒计数信号。awroriRef:b.ABSugN$me:RESETCLKA-ErfAUGHT0-ofBUGHTTCCUGHTi-D7DUGHfT9MUSICWC0UT1C0UT2000000ao0123C123抄1er99:U0|HIGHDB抄馆r99:LI|LCWDB:*!*!Tima:p.796uw5.4us5.6uS.BushiInterval:l332usS.Oil.2u5iiZJ64S.Bub6.8us7.0ub7.2ws7.4us7.6ueii1739图三脛是图_的后部另一段时间截取1鬆肘貼幻mIfulitLexOfflineElp埜护03同第农心匝场闵的述盅雇屯図直伺学怎宴曹BftRef:V.72U&EE-Tim?也氐4晰Khm.PRESET*CLKJwlum:1苗申us1了.卩用iq“1F.u*忙典&阳gire1E?ire_1_TrinnIBJus18.6u$iB.Bus19Dus19JnrmrLnnnjAUGHTB-e*OUGHTu*DDLIGHTPMUSIC-iCOlTTIrec|u罷a-評叩ICOJT前”izbir:R2;-偵减法跺A为被减数月为减数如为低位的借位,DEC为OB)的结果,COUT为人向諾位的塔位情况DHS;电円相心虱區虧盛誉簡園卷r?=c-1AiidlC1PPI邙1:4ilEZLT-23clVT.n:FDg:口口3:bl-,!Hicr.CTIIa.-叩PPI叩甲四位减法器址为上血一位减法器的简单不意图Lpttai!;电必風臨虧曲出甸国魅靜if踴電聽曹劉.=0S=.此图是瞬橄计数鵠甜诫个位输H紬眛十位的输HL我们只要使输入的NN保持常量9,1卜数黠正常工作就可以实现从9啲倒数iI-数器啦上图中4DEC是四位的减法器代号卜图是上一幅图的仿真结果9Sdec.scf-lawforiEditorRdi:340.0ns*1*Tims:Inter/al:2.7O4usNamEVue:JEi30G.0nsI.Oue他;.2.0ui2.5us13.0us.3弘:1SET”4CLK0-祥岬.川站;9廨甲1郦舉|3xe【亍参考文献:EDA技术实用教程第二版;编者:潘松,黄继业;科学出版社数字电路逻辑设计;编者:朱正伟,何宝祥;清华大学出版社
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 商业计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!