七人表决器hdl.docx

上传人:b****8 文档编号:11277739 上传时间:2023-02-26 格式:DOCX 页数:9 大小:263.45KB
下载 相关 举报
七人表决器hdl.docx_第1页
第1页 / 共9页
七人表决器hdl.docx_第2页
第2页 / 共9页
七人表决器hdl.docx_第3页
第3页 / 共9页
七人表决器hdl.docx_第4页
第4页 / 共9页
七人表决器hdl.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

七人表决器hdl.docx

《七人表决器hdl.docx》由会员分享,可在线阅读,更多相关《七人表决器hdl.docx(9页珍藏版)》请在冰豆网上搜索。

七人表决器hdl.docx

七人表决器hdl

EDA课程设计报告书

 

课题名称

七人表决器设计

姓名

韩正风

学号

0113

学院

信息学院

专业

通信工程一班

指导教师

李岩

 

2012年12月

 

目录--------------------------------------------

报告内容----------------------------------------

一、设计目的---------------------------------

二、设计要求---------------------------------

三、使用说明---------------------------------

四、流程图设计-------------------------------

五、程序设计---------------------------------

六、实验过程及截图---------------------------

七、设计总结---------------------------------

八、实验心得---------------------------------

九、参考文献---------------------------------

 

七人表决器设计

一、设计目的

1.熟悉QuartusII软件的使用。

2.熟悉七人表决器的工作原理

3.熟悉EDA开发的基本流程。

二、设计要求

表决器就是对于一个行为,由多个人投票,如果同意的票数过半,就认为此行为可行;否则如果否决的票数过半,则认为此行为无效。

七人表决器由七个人来投票,当同意的票数大于或者等于4人时,则认为同意;反之,当否决的票数大于或者等于4人时,则认为不同意。

实验中用7个拨挡开关来表示七个人,当对应的拨挡开关输入为‘1’时,表示此人同意;否则若拨挡开关输入为‘0’时,则表示此人反对。

表决的结果用一个LED表示,若表决的结果为同意,则LED被点亮;否则,如果表决的结果为反对,则LED不会被点亮。

同时用七段显示数码管来显示同意的人数。

完成7人表决电路设计,LED灯表示通过、否决。

(1)开关表示赞成与否,1~8编号(1赞成);

(2)LED显示表决的结果;

(3)数码管分别显示赞成、否决的人数;

(4)工作时钟100Hz即可;

(5)完成全部流程:

设计规范文档、模块设计、代码输入、功能仿真、约束与综合、布局布线、时序仿真、下载验证等。

 

三、使用说明

本设计就是利用CPLD/FPGA+实验箱中的按钮开关模块和LED模块来实现一个简单的七人表决器的功能。

按钮开关模块中的K1~K7表示七个人,当按钮开关按下表示输入为‘1’时,表示对应的人投同意票,否则当按钮开关输入为‘0’时,表示对应的人投反对票;LED模块中D8表示七人表决的结果,当同意数大于3人的时候,D8点亮表示一致同意,否则D8熄灭表示一致反对,同时使用试验台的数码管分别显示同意的人数及不同意的人数。

四、流程图设计

五、程序设计:

该程序设计使用VHDL语言编写来实现工程的仿真运行:

libraryieee;

usefengis

port(reset:

instd_logic;

xin:

instd_logic_vector(6downto0);

sel:

outstd_logic;

xout:

outstd_logic_vector(3downto0);

xout0:

outstdlogicvector(3downto0)

);

endentity;

architecturebevoffengis

begin

process(xin)

variablej:

integer:

=0;

begin

j:

=0;

foriin0to6loop

ifxin(i)='1'then

j:

=j+1;

endif;

endloop;

casejis

when0=>xout<="0000";

when1=>xout<="0001";

when2=>xout<="0010";

when3=>xout<="0011";

when4=>xout<="0100";

when5=>xout<="0101";

when6=>xout<="0110";

when7=>xout<="0111";

whenothers=>null;

endcase;

casejis

when7=>xout<="0000";

when6=>xout<="0001";

when5=>xout<="0010";

when4=>xout<="0011";

when3=>xout<="0100";

when2=>xout<="0101";

when1=>xout<="0110";

when0=>xout<="0111";

whenothers=>null;

endcase;

ifj>3then

sel<='1';

elsesel<='0';

endif;

endprocess;

endarchitecturebev;

六、实验过程及截图

1、打开QuartusII软件

2、创建工程

3、运行程序

4、选择器原理图

5、仿真调试

6、引脚绑定

 

七、设计总结:

在设计的过程中,我熟悉了QuartusII的基本使用方法,熟悉了EDA程序的运行环境,对各个运行器件及操作按钮有了新的认识和了解,熟悉了VHDL语言,能够利用VHDL语言实现简单基本的程序,同时也了解了试验台上大板和小板的数码管的极性。

在对按键K1-K7进行统计时,采用了按位统计的方法,利用简单的FOR循环。

通过这次EDA的课程设计,我进一步的了解了EDA的编程技术及其应用。

EDA作为现在电子行业的热门技术之一,有着较强的专业性和实用性,而此次的EDA小学期给我们接触EDA技术的机会,同时为以后的就业提供了很好的演练平台。

八、实验心得

通过这段时间的EDA课程设计,我更加熟练的掌握了EDA开发的基本流程,熟练地使用QuartusII软件进行编程,在老师和同学的帮助下,顺利完成了七人表决器的相关设计,在此表示感谢。

此外,我还在课程设计的过程中,发现自身的许多不足之处,在今后的学习中还需要更加的努力,加强这些方面的学习和锻炼。

九、参考文献:

[1]延明,张亦化.《数字电路EDA技术入门》.北京:

邮电大学出版社,2006

[2]徐惠民,安德宁.《数字逻辑设计与VHDL描述》.北京:

机械工程出版社,2002

[3]潘松,王国栋.《VHDL实用教程》.成都:

电子科技大学出版社,2001

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

当前位置:首页 > 高等教育 > 哲学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1