信息与电气工程学院
《课程设计报告》
题 目: VHDL语言课程设计
专 业: 通信工程
班 级: 3班
* ** * *
学 号: **********
**** ***
2015年 1月 5日
五、对本次课程设计的体会和建议 9
题 目 | 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秒,整个周期是六秒一个循环,基本上实现了题目的要求。
四、主要程序
方案一 五人多数表决器:
LIBRARY IEEE;
use ieee.std_logic_11.all;
use ieee.std_logic_ARITH.all;
use ieee.std_logic_UNSIGNED.all;
ENTITY BIAOJUE is
PORT(FF:IN STD_LOGIC_VECTOR(1 TO 5);
QQ:OUT BIT;
QALL:OUT STD_LOGIC_VECTOR(3 DOWNTO 1);
SHIJIAN:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0);
FUWEI,KAISHI,CLK:IN STD_LOGIC);
END BIAOJUE;
ARCHITECTURE FUNG of BIAOJUE is
BEGIN
PROCESS(FF,CLK,KAISHI,FUWEI)
VARIABLE SUO:BOOLEAN;
VARIABLE SUM:STD_LOGIC_VECTOR(1 TO 3);
BEGIN
IF (FUWEI='0')THEN
QQ<='0';
SUM:="000";
QALL<="000";
ELSIF(CLK'EVENT AND CLK = '1') THEN
IF (KAISHI='1') THEN
SUO:=FALSE;
IF(NOT SUO)THEN
SHIJIAN<="1010";
IF SHIJIAN<="0000" THEN
SUO:=TRUE;
FOR N IN 1 TO 5 LOOP
SUM:=FF(N)+SUM;
END LOOP;
ELSE
SHIJIAN<=SHIJIAN-1;
END IF;
END IF;
QALL<=SUM;
IF(SUM>=3)THEN
QQ<='1';
ELSE QQ<='0';END IF;
END IF;END IF;
END PROCESS;
END FUNG;
方案一 循环彩灯控制器的设计:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_11.ALL;
ENTITY CAIDENG IS
PORT(CLK,RST:IN STD_LOGIC;
R,G,Y:OUT STD_LOGIC);
END CAIDENG;
ARCHITECTURE one OF CAIDENG IS
TYPE STATE_TYPE IS(S0,S1,S2,S3,S4,S5);
SIGNAL STATE:STATE_TYPE;
BEGIN
PROCESS(CLK,RST)
BEGIN
IF RST='1'THEN STATE<=S0;
ELSIF CLK'EVENT AND CLK='1' THEN CASE STATE IS
WHEN S0=>R<='1';G<='0';Y<='0';STATE<=S1;
WHEN S1=>R<='1';G<='0';Y<='0';STATE<=S2;
WHEN S2=>R<='0';G<='0';Y<='1';STATE<=S3;
WHEN S3=>R<='0';G<='1';Y<='0';STATE<=S4;
WHEN S4=>R<='0';G<='1';Y<='0';STATE<=S5;
WHEN S5=>R<='0';G<='1';Y<='0';STATE<=S0;
END CASE;
END IF;
END PROCESS;
END one;
五、对本次课程设计的体会和建议
编程是一件高精度、模范化的事情,稍有疏乎都会影响全局,也可能因为某一处的小的错误而导致整个程序的无法运行。所以认真仔细就是非常重要的了。开始的时候真的感觉编程是一件很无聊的事情,不过当一个程序运行成功的时候那种喜悦是无法言语的,那种成就感是无法比拟的。
经过一个星期的课程设计,我成功地设计出了数字式四路竞赛抢答器。回首这一周,虽然因为初次涉及EDA技术及MAX_PLUSⅡ软件,对相关知识知之甚少,也遇到了很多困难,但是在这次实习的过程中都受益匪浅。
在这次课程设计的前期,先系统地学习了EDA工程概论,VHDL描述语言和设计应用方面的基础知识,使得后期能够较熟练地使用MAX_PLUSⅡ软件进行设计开发,用原理图输入及VHDL语言等设计输入并编译仿真,同时对以往学过的理论知识有了更加透彻的理解。
六、参考文献
[1] 候伯亨,刘凯,VHDL硬件描述语言与数字逻辑电路设计;西安:电子科技大学出版社
[2] 曾繁泰,陈美金, VHDL程序设计, 北京:清华大学出版社
[3] 谭会生,张昌凡, EDA技术及应用, 西安:西安电子科技大学出版社
[4] 李国丽,朱维勇. EDA与数字系统设计, 北京:机械工业出版社