VHDL课程设计报告写作参考模板(胡仕刚编).d22222分析_第1页
VHDL课程设计报告写作参考模板(胡仕刚编).d22222分析_第2页
VHDL课程设计报告写作参考模板(胡仕刚编).d22222分析_第3页
VHDL课程设计报告写作参考模板(胡仕刚编).d22222分析_第4页
VHDL课程设计报告写作参考模板(胡仕刚编).d22222分析_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

湖南科技大学潇湘学院信息与电气工程系课程设计报告题 目: 硬件描述语言课程设计 专 业: 通信工程 班 级: 二班 姓 名: 学 号: 指导教师: 胡仕刚 2016年 1 月 8 日课程设计任务书题 目设 计 时 间设 计 目 的:设 计 要 求:总体方案实现:指导教师评语:摘 要 VHDL的英文全写是:VHSIC(VeryHighSpeedIntegratedCircuit)HardwareDescriptionLanguage.翻译成中文就是 超高速集成电路硬件描述语言。因此它的应用主要是应用在数字电路的设计中。VHDL主要用于描述数字系统的结构,行为,功能和接口VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。 在目前,可编程逻辑器件、单片机、DSP已经成为数字系统的硬件基础,而从事数字系统的设计必须掌握可编程逻辑器件的设计方法,而VHDL语言是一种标准的数字系统硬件电路设计语言,为所有可编程逻辑器件厂商所支持,已成为电路设计人员和电子设计工程师必须掌握的工具。VHDL语言是培养信息类专门人才的一门必修的专业基础课程。通过本次课程设计,使我们能够学习和掌握现代电子系统设计的新技术、新器件 ,掌握硬件描述语言VHDL的编程技术和硬件描述方法 ,能够对设计系统进行规范描述掌握相关软件的使用,操作。能对VHDL语言程序进行编译,调试,以及通过计算机仿真,得到正确的仿真波形图,并根据所得仿真波形图分析判断并改进所设计的电路。本次课程设计设计主要使用了VHDL语言,采用的开发软件是MAXPLUS II,设计一个多功能数字钟。在MAXPLUS II开发平台下进行了编译、仿真、下载,实现了基本记时显示和设置、调整时间、报时和闹钟功能。关键词:EDA;VHDL ;Max+plus II;目 录1.设计目的 22.设计任务 23.设计要求 24.设计内容 35.电路工作原理 45.1交通灯工作原理 45.2五人表决器工作原理 46.主要程序和仿真结果 56.1交通灯程序 56.2仿真结果模块分析 66.3五人表决器程序 74.4仿真结果模块分析 97.心得体会 13参考文献 14一,设计目的:1,学习使用EDA开发工具MAX+plusII。2,学习使用VHDL语言设计交通灯,五人多数表决器。3,熟悉交通灯,五人多数表决的原理。二,设计任务:1)设计一个交通灯2)设计一个五人多数表决器。 三,设计要求: 交通灯1)、实现一个十字路口的信号灯控制电路。 2) 、信号灯分别由红、黄、绿三种颜色组成,运行时,绿灯亮40秒钟,然后 闪5秒,绿灯灭,黄灯亮2秒,黄灯灭,红灯亮,同时另一方向的绿灯亮,红灯亮的时间为47秒。3) 扩展要求: 1、增加显示功能,即每个灯亮时显示相应的秒数并倒计时。 2、增加左转功能,即信号灯由红灯、黄灯和两个绿灯组成,左转时间为15 秒,红灯亮的时间调整为62秒。五人表决器1) 五人多数表决逻辑:多数通过;2) 在主持人控制下,10秒内表决有效;3) 采用数码管显示表决10秒倒计时;4) 表决结束后用发光二极管及数码管显示表决结果,数码管显示 结果形式:通过,不通过; 5) 设主持人控制键,复位键: 控制键:启动表决;复位键:系统复位。6) 自制实验方案,完成设计任务四,设计内容交通灯说明: 随着基于VHDL的EDA技术的发展和应用领域的扩大与深入,EDA技术在电子信息、通信、自动控制用计算机等领域的重要性日益突出。作为一个学电子信息专业的学生,我们必须不断地了解更多的新产品信息,这就更加要求我们对EDA有个全面的认识。本程序设计的是交通灯的设计。采用EDA作为开发工具,VHDL语言为硬件描述语言,Max+plus II作为程序运行平台,所开发的程序通过调试运行、波形仿真验证,初步实现了设计目标 在一个交通繁忙的十字路口,没有交通灯来控制来往车辆和行人的通行,假设也没有交警,那会发生什么事情呢?后果是难以想象的,可能会陷入一片混乱,甚至瘫痪。当然我们每个人都不希望这样。我们作为社会的一员,每人都有责任为它的更加先进和快捷做出力所能及的事情。并且经过些次实验使得我们对电子技术课程内容的理解和掌握有了更深一层的认识,掌握电子电路的基本分析方法和设计方法。五人表决器 说明:在脉冲作用下,使用减法计数器,在初值为10秒的时候,主持人按控制键启动表决后,开始计时。每来一个脉冲计数器就减少1。一直这样下去,直到计数器变为0。计数器为0时投票无效。最后统计投票人数通过同意人数决定表决结果,当投票人不小于3人时,投票通过。在主持人按下复位键时,计数回到10,重新进行减法计数器。直到为0。五,电路工作原理5.1交通灯工作原理 通过制作来了解交通灯控制系统,交通灯控制系统主要是实现城市十字交叉路口红绿灯的控制:clk时钟秒脉冲发生电路 在红绿灯交通信号系统中,大多数情况是通过自动控制的方式指挥交通的。因此为了避免意外事件的发生,电路必须给一个稳定的时钟(clock)才能让系统正常运作。1,计数秒数选择电路 计数电路最主要的功能就是记数负责显示倒数的计数 值,对下一个模块提供状态转换信号。系统输入er,ey,eg:接收由clk电路的提供的1hz的时钟脉冲信号;系统输出信号sr,sy,sg产生显示电路状态转换信号,wr,wy,wg:倒计数值秒数个位变化控制信号,nr,ny,ng:倒计数值秒数十位变化控制信号 2,红绿灯状态转换电路本电路负责红绿灯的转换。系统输入信号:full:接收由clk电路的提供的1hz的时钟脉冲信号;sr,sy,sg:接收计数秒数选择电路状态转换信号;系统输出信号:pout_out:负责红绿灯的状态显示。 3,时间显示电路:本电路负责红绿灯的计数时间的显示。系统输入信号:wr,wy,wg:倒计数值秒数个位变化控制信号;nr,ny,ng:倒计数值秒数十位变化控制信号; 六,主要程序和仿真结果6.1交通灯的程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity trafficled is port(clk1: in std_logic; reset: in std_logic; pout: out std_logic_vector(12 downto 1);end trafficled;architecture trafficled_arch of trafficled is signal er,ey,eg:std_logic; signal sr,sy,sg:std_logic; signal wr,wy,wg:std_logic; signal nr,ny,ng:std_logic; signal count:integer range 0 to 11; signal state:integer range 0 to 4; begin process(clk1,reset,count) begin if reset=1then count=0; state=0; else if(clk1event and clk1=1)then count=count+1; if(count=11)then state4)then state ey=1;wy=1;sy=1;ny=1; eg=0;wg=0;sg=0;ng=0; er=0;wr=0;sr=0;nr ey=0;wy=0;sy=0;ny=0; eg=1;wg=1;sg=0;ng=0; er=0;wr=0;sr=1;nr ey=1;wy=1;sy=0;ny=0; eg=1;wg=1;sg=0;ng=0; er=0;wr=0;sr=1;nr ey=0;wy=0;sy=0;ny=0; eg=0;wg=0;sg=1;ng=1; er=1;wr=1;sr=0;nr ey=0;wy=0;sy=1;ny=1; eg=0;wg=0;sg=1;ng=1; er=1;wr=1;sr=0;nrnull; end case; end process; pout(1)=er;pout(2)=eg;pout(3)=ey; pout(4)=sr;pout(5)=sg;pout(6)=sy; pout(7)=wr;pout(8)=wg;pout(9)=wy; pout(10)=nr;pout(11)=ng;pout(12)=ny;end trafficled_arch;6.2仿真结果1)仿真波形2)引脚图3)时序分析4)功能模块6.2五人表决器工作原理 信号表voter:一维数组voter用来表示五位表决者;pass:表决最终是否通过(1为“通过”,0为“未通过”);total:表决通过的人数;count:用来显示倒计时;reset:主持人复位键,用来系统复位;start:主持人控制键,用来启动表决;clk:系统时钟;6.3五人表决器程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity biaojue is port(voter:in std_logic_vecyor(1 to 5); pass:out bit; total:out std_logic_vecyor(3 downto 1); count:buffer std_logic_vecyor(3 downto 0); reset,start,clk:std_logic;end biaojue; architecture one ot biaojue isbegin process(voter,clk,start,reset) variable suo:booleani; variable sum:std_logic_vecyor(1 to 3); begin if (reset = 0) then pass = 0; count = 1010; suo := false; sum := 000; total = 000; elsif (clkevent and clk = 1) then if (start =1) then if (not suo) then if count = 0000 then suo := ture; for i in 1 to 5 loop sum := voter(i) + sum; end loop; ELSE count = count-1; end if; end if; total = 3) then pass = 1; else pass = 0; end if; end if; end if; end process; end one;6.4 仿真结果1) 仿真结果6.21 当处于复位状态时,外界的输入对结果没有影响。故时间仍为10秒,输出统计人数为0。仿真波形如图所示 复位时的模拟结果6.22 在非复位状态下,主持人按下开始键。表决开始。在没有人投票的情况下。时间变为0。表决结束。仿真波形如图所示。无人赞成时的模拟结果6.23 在非复位状态下,主持人按下开始键。表决开始。当超出表决时间时才进行表决,此表决无效。仿真波形如图所示 规定时间外的模拟结果6.24在非复位状态下,主持人按下开始键表决。开始。在规定时间内只有两人赞同,波形如图所示。两人赞成时的结果6.25 在非复位状态下,主持人按下开始键。表决开始。在规定时间内只有四人赞同,仿真波形如图所示 三人赞成时的结果6.26在非复位状态下,主持人按下开始键。表决开始。在规定时间内只有四人赞同,仿真波形如图所示。四人赞成时的结果该实验是一个具有计时功能的五人表决器,时间限制为10秒,主持人控制复位,开始。输出结果为表决通过的人数和最后表决是否通过。2)引脚图3)功能模块4)时序分析6.3结果分析和总结(1) 该控制器控制红、黄、绿三个发光管循环发光,要求红灯亮2秒,黄灯亮 1秒,绿灯亮3秒。(2)发光时间由频率为1HZ的脉冲控制。当控制总开关给出一个高电平后,各个彩灯按红灯2秒,黄灯1秒,绿灯3秒依次点亮,循环发光。从仿真波形可以看出循环彩灯开始工作时,红灯先亮,并且继续2s;2s后,红灯灭,黄灯亮,并且继续1s;1s后,黄灯灭,绿灯亮,并且继续3s。如此循环。仿真结果基本达到设计的要求。七,心得体会通过此次的课程设计,使我学习到了许多新的认识,要想完成一个设计,必须要有探索求知的精神和扎实的知识基础,必须熟练地掌握课本上专业基本的知识,只有这样才能在设计中发现问题和解决问题,同时在实验中还要有耐心去检查程序发现问题解决问题。在这个过程中使我深刻的体会到要将自己所学的知识要应用到实践中去,同时要结合实际来做,还要翻阅大量的课外学习资料,向老师和同学请教,这样才能一步一步完成实验使其趋于完善。这次交通灯和表决器的控制器课程设计,让我对系统的整个设计流程有了更清楚的认识,也让我认识到一个系统的设计无论是在编程方面还是仿真方面都不容易。尤其是在编程时更是困难丛丛。不仅思路要正确而且专业术语要正确。这次课设,我了解到彩灯控制器的工作基本原理的同时,还基本掌握了Quartus II软件的是用方法,还使我认识到在做设计过程中应当沉着冷静,遇到困难时候,应当冷静思考,耐心的的寻找解决的方法,最终困难一定会被克服,还懂得了要把自己所学的知识与实践结合起来是非常重要的。一周的学习使我对交通灯控制器和五人表决器都有了大概的了解,更加深了我对自己所学的专业有了进一步了解,也培养了我学习的兴趣,在此也非常感谢老师认真的指导,同时细心地为我们解决了许多困难。而且我认为我们做设计绝对不能人云亦云,要有自己的看法,这样我们就要有充分的准备,若是做了也不知道是个什么设计,那么做了也是白做。设计总是与课本知识相关的。在设计过程中,我们应该尽量减少操作的盲目性提高设计效率的保证,有的人一开始就赶着做,结果却越做越忙,主要就是这个原因。我也曾经犯过这样的错误。在设计的过

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论