1 / 8
文档名称:

五人多数表决器VHDL.doc

格式:doc   大小:171KB   页数:8页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

五人多数表决器VHDL.doc

上传人:j14y88 2020/1/12 文件大小:171 KB

下载得到文件列表

五人多数表决器VHDL.doc

相关文档

文档介绍

文档介绍:五人多数表决器的VHDL设计1设计要求(1)五人多数表决逻辑:多数通过;(2 )在主持人控制下,10秒内表决有效;(3)设主持人控制键,复位键: 控制键:启动表决; 复位键:系统复位。2设计说明在脉冲作用下,使用减法计数器,在初值为10秒的时候,主持人按控制键启动表决后,开始计时。每来一个脉冲计数器就减少1。一直这样下去,直到计数器变为0。计数器为0时投票无效。最后统计投票人数通过同意人数决定表决结果,当投票人不小于3人时,投票通过。在主持人按下复位键时,计数回到10,重新进行减法计数器。直到为0。:一维数组voter用来表示五位表决者;pass:表决最终是否通过(‘1’为“通过”,‘0’为“未通过”);total:表决通过的人数;count:用来显示倒计时;reset:主持人复位键,用来系统复位;start:主持人控制键,用来启动表决;clk:系统时钟;,外界的输入对结果没有影响。故时间仍为10秒,输出统计人数为0。仿真波形如图3所示。图3复位时的模拟结果在非复位状态下,主持人按下开始键。表决开始。在没有人投票的情况下。时间变为0。表决结束。仿真波形如图4所示。图4无人赞成时的模拟结果在非复位状态下,主持人按下开始键。表决开始。当超出表决时间时才进行表决,此表决无效。仿真波形如图5所示。图5 规定时间外的模拟结果在非复位状态下,主持人按下开始键。表决开始。在规定时间内只有两人赞同,仿真波形如图6所示。图6两人赞成时的结果在非复位状态下,主持人按下开始键。表决开始。在规定时间内只有三人赞同,仿真波形如图7所示。图7三人赞成时的结果在非复位状态下,主持人按下开始键。表决开始。在规定时间内只有四人赞同,仿真波形如图8所示。图7四人赞成时的结果该实验是一个具有计时功能的五人表决器,时间限制为10秒,主持人控制复位,开始。输出结果为表决通过的人数和最后表决是否通过。;;;;ENTITYvote5ISPORT(voter:INSTD_LOGIC_VECTOR(1TO5);pass:OUTBIT; total:OUTSTD_LOGIC_VECTOR(3DOWNTO1);count:BUFFERSTD_LOGIC_VECTOR(3DOWNTO0);reset,start,clk:INSTD_LOGIC);ENDvote5;ARCHITECTUREoneOFvote5ISBEGINPROCESS(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)THENIFcount="000