VHDL实验课程设计.docx

上传人:b****5 文档编号:8798453 上传时间:2023-05-15 格式:DOCX 页数:9 大小:261.96KB
下载 相关 举报
VHDL实验课程设计.docx_第1页
第1页 / 共9页
VHDL实验课程设计.docx_第2页
第2页 / 共9页
VHDL实验课程设计.docx_第3页
第3页 / 共9页
VHDL实验课程设计.docx_第4页
第4页 / 共9页
VHDL实验课程设计.docx_第5页
第5页 / 共9页
VHDL实验课程设计.docx_第6页
第6页 / 共9页
VHDL实验课程设计.docx_第7页
第7页 / 共9页
VHDL实验课程设计.docx_第8页
第8页 / 共9页
VHDL实验课程设计.docx_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

VHDL实验课程设计.docx

《VHDL实验课程设计.docx》由会员分享,可在线阅读,更多相关《VHDL实验课程设计.docx(9页珍藏版)》请在冰点文库上搜索。

VHDL实验课程设计.docx

VHDL实验课程设计

湖南科技大学

信息与电气工程学院

 

《课程设计报告》

 

题目:

VHDL语言课程设计

专业:

通信工程

班级:

3班

*****

学号:

**********

*******

2015年1月5日

 

 

题目

VHDL语言课程设计

设计时间

2014.12.15-2015.1.4

设计目的:

选题一:

五人多数表决器

系统地学习了EDA工程概论,VHDL描述语言和设计应用方面的基础知识

选题二:

循环彩灯控制器

能够较熟练地使用MAX_PLUSⅡ软件进行设计开发,用原理图输入及VHDL语言等设计输入并编译仿真,同时我们对以往学过的理论知识有了更加透彻的理解。

设计要求:

选题一:

五人多数表决逻辑:

多数通过;在主持人控制下,10秒内表决有效;用数码管显示表决10秒倒计时;表决结束后用发光二极管及数码管显示表决结果,数码管显示结果形式:

通过,不通过;设主持人控制键,复位键:

控制键:

启动表决;

选题二:

设计一个循环彩灯控制器,该控制器控制红,绿,黄三个发光管循环点亮。

要求红发光管亮3秒,绿发光管亮2秒,黄发光管亮1秒。

总体方案实现:

选题一方案:

五人多数表决,只要在规定时间内,赞成人数大于或等于三,则表决通过。

因此,只需将每位表决人的结果相加,判断结果值。

设五个开关作为表决器的五个输入变量,输入变量为逻辑“1”时,表示表决者“赞成”;输入变量为“0”时,表示表决者“不赞成”。

输出逻辑“1”时,表示表决“通过”;输出逻辑“0”时,表示表决“不通过”。

当表决器的五个输入变量中有3个以上(含3个)为“1”时。

则表决器输出为“1”;否则为“0”。

选题二方案:

实现彩灯循环的是用74LS191同步十六加法/减法计数器。

控制74LS191的使能端DNUP的高低电平来改变彩灯循环的循环方向。

用74LS292分频器来控制彩灯循环频率的快慢,其输入是接DE2板的50MHz的时钟信号。

通过74LS154译码器连接到DE2板上的发光二极管

指导教师评语:

信息与电气工程学院

课程设计任务书

20—20学年第学期

专业:

学号:

姓名:

课程设计名称:

设计题目:

完成期限:

自年月日至年月日共周

设计依据、要求及主要内容(可另加附页):

 

指导教师(签字):

批准日期:

年月日

 

VHDL课程设计报告

一、课程设计的目的

选题一五人多数表决器

五人多数表决逻辑:

多数通过;在主持人控制下,10秒内表决有效;用数码管显示表决10秒倒计时;表决结束后用发光二极管及数码管显示表决结果,数码管显示结果形式:

通过,不通过;设主持人控制键,复位键:

控制键:

启动表决

选题二循环彩灯控制器的设计

1、设计一种楼梯照明控制器,该控制器控制红、绿、黄三个发光管循环发光,要求红灯亮2秒,绿灯亮3秒,黄灯亮1秒。

2、引脚锁定及下载测试提示:

如果目标器件是EPF10K10,自行锁定引脚。

3、设计的VHDL程序所用时钟频率为1HZ。

二、设计方案的论证。

选题一五人多数表决器

五人多数表决,只要在规定时间内,赞成人数大于或等于三,则表决通过。

因此,只需将每位表决人的结果相加,判断结果值。

设五个开关作为表决器的五个输入变量,输入变量为逻辑“1”时,表示表决者“赞成”;输入变量为“0”时,表示表决者“不赞成”。

输出逻辑“1”时,表示表决“通过”;输出逻辑“0”时,表示表决“不通过”。

当表决器的五个输入变量中有3个以上(含3个)为“1”时。

则表决器输出为“1”;否则为“0”。

选题二数字式竞赛抢答器设计

在本题中要求控制器可以控制红,绿,黄三个发光管循环点亮,并且要求发光的时间不一样,这样,本质设计思想是循环累加,即时钟信号高电平开始,m值开始累加, 

CASE m IS 

WHEN "001"=>dout<="100";

WHEN "010"=>dout<="100";          

WHEN "011"=>dout<="100";          

WHEN "100"=>dout<="010";          

WHEN "101"=>dout<="010";          

WHEN "110"=>dout<="001";          

WHEN OTHERS=>dout<="111";      

END CASE; 

前三个值都将赋值给dout1,也就是红灯发光的三秒,然后两个赋值给绿灯,最后一秒赋值给黄灯。

这样,dout的不同值将点亮不同颜色的灯,下面是表示三种灯的点亮程序。

 

red<=dout

(2);     

green<=dout

(1);     

yellow<=dout(0); 

以此类推,我们可以实现三个彩灯不同时间的循环点亮。

三、设计仿真及结果分析

方案一五人多数表决器:

 

复位时的模拟结果

 

规定时间外的结果

表决通过的波形

方案二循环彩灯控制器的设计:

根据程序调试仿真图如下:

(仿真图中的us表示现实中表示s)

分析:

从图形可以看出,清零端低电平,时钟信号上升沿时m值开始计数,随着m值的变化,彩灯的显示一块变化,图示显示,red灯点亮3秒,gree灯点亮2秒,yellow灯点亮1秒,整个周期是六秒一个循环,基本上实现了题目的要求。

四、主要程序

方案一五人多数表决器:

LIBRARYIEEE;

useieee.std_logic_1164.all;

useieee.std_logic_ARITH.all;

useieee.std_logic_UNSIGNED.all;

ENTITYBIAOJUEis

PORT(FF:

INSTD_LOGIC_VECTOR(1TO5);

QQ:

OUTBIT;

QALL:

OUTSTD_LOGIC_VECTOR(3DOWNTO1);

SHIJIAN:

BUFFERSTD_LOGIC_VECTOR(3DOWNTO0);

FUWEI,KAISHI,CLK:

INSTD_LOGIC);

ENDBIAOJUE;

ARCHITECTUREFUNGofBIAOJUEis

BEGIN

PROCESS(FF,CLK,KAISHI,FUWEI)

VARIABLESUO:

BOOLEAN;

VARIABLESUM:

STD_LOGIC_VECTOR(1TO3);

BEGIN

IF(FUWEI='0')THEN

QQ<='0';

SUM:

="000";

QALL<="000";

ELSIF(CLK'EVENTANDCLK='1')THEN

IF(KAISHI='1')THEN

SUO:

=FALSE;

IF(NOTSUO)THEN

SHIJIAN<="1010";

IFSHIJIAN<="0000"THEN

SUO:

=TRUE;

FORNIN1TO5LOOP

SUM:

=FF(N)+SUM;

ENDLOOP;

ELSE

SHIJIAN<=SHIJIAN-1;

ENDIF;

ENDIF;

QALL<=SUM;

IF(SUM>=3)THEN

QQ<='1';

ELSEQQ<='0';ENDIF;

ENDIF;ENDIF;

ENDPROCESS;

ENDFUNG;

方案一循环彩灯控制器的设计:

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

ENTITYCAIDENGIS

PORT(CLK,RST:

INSTD_LOGIC;

R,G,Y:

OUTSTD_LOGIC);

ENDCAIDENG;

ARCHITECTUREoneOFCAIDENGIS

TYPESTATE_TYPEIS(S0,S1,S2,S3,S4,S5);

SIGNALSTATE:

STATE_TYPE;

BEGIN

PROCESS(CLK,RST)

BEGIN

IFRST='1'THENSTATE<=S0;

ELSIFCLK'EVENTANDCLK='1'THENCASESTATEIS

WHENS0=>R<='1';G<='0';Y<='0';STATE<=S1;

WHENS1=>R<='1';G<='0';Y<='0';STATE<=S2;

WHENS2=>R<='0';G<='0';Y<='1';STATE<=S3;

WHENS3=>R<='0';G<='1';Y<='0';STATE<=S4;

WHENS4=>R<='0';G<='1';Y<='0';STATE<=S5;

WHENS5=>R<='0';G<='1';Y<='0';STATE<=S0;

ENDCASE;

ENDIF;

ENDPROCESS;

ENDone;

五、对本次课程设计的体会和建议

编程是一件高精度、模范化的事情,稍有疏乎都会影响全局,也可能因为某一处的小的错误而导致整个程序的无法运行。

所以认真仔细就是非常重要的了。

开始的时候真的感觉编程是一件很无聊的事情,不过当一个程序运行成功的时候那种喜悦是无法言语的,那种成就感是无法比拟的。

经过一个星期的课程设计,我成功地设计出了数字式四路竞赛抢答器。

回首这一周,虽然因为初次涉及EDA技术及MAX_PLUSⅡ软件,对相关知识知之甚少,也遇到了很多困难,但是在这次实习的过程中都受益匪浅。

在这次课程设计的前期,先系统地学习了EDA工程概论,VHDL描述语言和设计应用方面的基础知识,使得后期能够较熟练地使用MAX_PLUSⅡ软件进行设计开发,用原理图输入及VHDL语言等设计输入并编译仿真,同时对以往学过的理论知识有了更加透彻的理解。

 

六、参考文献

[1]候伯亨,刘凯,VHDL硬件描述语言与数字逻辑电路设计;西安:

电子科技大学出版社

[2]曾繁泰,陈美金, VHDL程序设计, 北京:

清华大学出版社

[3]谭会生,张昌凡, EDA技术及应用,西安:

西安电子科技大学出版社

[4]李国丽,朱维勇. EDA与数字系统设计, 北京:

机械工业出版社

 

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2