七人表决器hdl.docx
- 文档编号:9910869
- 上传时间:2023-02-07
- 格式:DOCX
- 页数:9
- 大小:263.45KB
七人表决器hdl.docx
《七人表决器hdl.docx》由会员分享,可在线阅读,更多相关《七人表决器hdl.docx(9页珍藏版)》请在冰豆网上搜索。
七人表决器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
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 七人 表决器 hdl