五人多数表决器VHDL_第1页
五人多数表决器VHDL_第2页
五人多数表决器VHDL_第3页
五人多数表决器VHDL_第4页
五人多数表决器VHDL_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、五人多数表决器的VHD股计1设计要求(1)五人多数表决逻辑:多数通过;(2)在主持人控制下,10秒内表决有效;(3)设主持人控制键,复位键:控制键:启动表决;复位键:系统复位。2设计说明在脉冲作用下,使用减法计数器,在初值为10秒的时候,主持人按控制键启动表决后,开始计时。每来一个脉冲计数器就减少1。一直这样下去,直到计数器变为00计数器为0时投票无效。最后统计投票人数通过同意人数决定表决结果,当投票人不小于3人时,投票通过。在主持人按下复位键时,计数回到10,重新进行减法计数器。直到为003设计结果3.1电路原理图图1原理图3.2信号表voter:一维数组voter用来表示五位表决者;pas

2、s:表决最终是否通过(1'为“通过",'M“未通过”);total:表决通过的人数;count:用来显示倒计时;reset:主持人复位键,用来系统复位;start:主持人控制键,用来启动表决;clk:系统时钟;NodeiMannefDirection1*dkInput2Qcount0Output3QcountflOutput4Qcount2Output5<i#count同Output6passOutput7resetInput8*startInput9Qtotal1Output103total2Output11Qtotal3Output12*voter1Inpu

3、t13voter2Input14voter3JInput15wvoter4Input169fcvoter5Input图2信号图3.3仿真结果当处于复位状态时,外界的输入对结果没有影响。故时间仍为10秒,输出统计人数为00仿真波形如图3所示。在非复位状态下,图3复位时的模拟结果主持人按下开始键。表决开始。在没有人投票的情况下。时间变为0。表决结束。仿真波形如图4所示。耳皿Value15.6E00elkUI田SC*皿tII106passuIUIHutV言313tO'ttlUi奇13SvoitrV;160.Om320.0m4.SO.Om640.0mBdO.Om做口n图4无人赞成时的模拟结果在

4、非复位状态下,主持人按下开始键。表决开始。当超出表决时间时才进行表决,此表决无效。仿真波形如图5所示。Value«15.65noc:1kU0ii国countV10怔6U0.7TesetU0itu-tU1赤9国totalU0亨13sU014-5uo154U0-.-.3ua*LT-,.2ua|_z16&.r1uoUJJpv160.ns320.0ns480.0ns640.0ns600.0nsSEO.0its15.65rz112CT8图5规定时间外的模拟结果在非复位状态下,主持人按下开始键。表决开始。在规定时间内只有两人赞同,仿真波形如图6所示。Value15.6EQ<lkUi

5、31国EQ5tU136工Viz,esetVI|>8c;tartV9|+jtiotaiVI后13日voterUI14.5V115,4Ui1»*16-.3Uil>117".2lVi»18-.1VI图6两人赞成时的结果在非复位状态下,主持人按下开始键。表决开始。在规定时间内只有三人赞同,仿真波形如图7所示。图7三人赞成时的结果在非复位状态下,主持人按下开始键。表决开始。在规定时间内只有四人赞同,仿真波形如图8所示。该实验是一个具有计时功能的五人表决器,时间限制为10秒,主持人控制复位,开始。输出结果为表决通过的人数和最后表决是否通过。3.4电路图图8电路图3

6、.5程序清单LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYvote5ISPORT(voter:INSTD_LOGIC_VECTOR(1TO5);pass:OUTBIT;total:OUTSTD_LOGIC_VECTOR(3DOWNTO1);count:BUFFERSTD_LOGIC_VECTOR(3DOWNTO0);reset,start,clk:INSTD_LOGIC);ENDvote5;ARCHITECTUREoneOFvote5

7、ISBEGINPROCESS(voter,clk,start,reset)VARIABLEsuo:BOOLEAN;VARIABLEsum:STD_LOGIC_VECTOR(1TO3);BEGINIF(reset='0')THENpass<='0'count<="1010"suo:=FALSE;sum:="000"total<="000"ELSIF(clk'EVENTANDclk='1')THENIF(start='1')THENIF(NOTsuo

8、)THENIFcount="0000"THENsuo:=TRUE;FORiIN1TO5LOOPsum:=voter(i)+sum;ENDLOOP;ELSEcount<=count-1;ENDIF;ENDIF;total<=sum;IF(sum>=3)THENpass<='1'ELSEpass<='0'ENDIF;ENDIF;ENDIF;ENDPROCESS;ENDone;4实验总结该实验的关键是统计表决通过的人数和时间的限制,即怎样将通过的人数加起来,并且应该在什么时候统计!通过实验知道:应该在倒计时完成之后统计

9、。因为不管你是在第几秒赞成,但只要你赞成,就意味在倒计时结束时也是赞成的,所以应该在此时统计。并且在倒计时之外,表决无效。通过本次设计,我深深的体会到设计课的重要性和目的性。本次设计课不仅仅培养了我们实际操作能力,也培养了我们灵活运用课本知识,理论联系实际,独立自主的进行设计的能力。它不仅仅是一个学习新知识新方法的好机会,同时也是对我所学知识的一次综合的检验和复习,使我明白了自己的缺陷所在,从而查漏补缺。希望学校以后多安排一些类似的实践环节,让同学们学以致用。在设计中要求我要有耐心和毅力,还要细心,稍有不慎,一个小小的错误就会导致结果的不正确,而对错误的检查要求我要有足够的耐心,通过这次设计和设计中遇到的问题,也积累了一定的经验,对以后从事集成电路设计工作会有一定的帮助。在应用VHDL

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论