1 / 16
文档名称:

数字电路与逻辑设计实验报告.doc

格式:doc   大小:194KB   页数:16页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数字电路与逻辑设计实验报告.doc

上传人:wsh309048309 2020/1/10 文件大小:194 KB

下载得到文件列表

数字电路与逻辑设计实验报告.doc

文档介绍

文档介绍:数字电路与逻辑设计实验实验报告姓名:班级:学号:(1)南北和东西方向各有一组绿、黄、红灯用于指挥交通,绿灯、黄灯和红灯的持续时间分别为20秒、5秒和25秒;(2)当有特殊情况(如消防车、救护车等)时,两个方向均为红灯亮,计时停止,当特殊情况结束后,控制器恢复原来状态,继续正常运行;(3)用两组数码管,以倒计时方式显示两个方向允许通行或禁止通行的时间;选做:增加左、右转弯显示控制功能;(1)基本设计思路:基本思路是采用状态机的设计方法,在增加了左转显示功能后,修改了每个交通灯的持续时间列表如下:绿灯20s黄灯5s左转灯10s红灯40s最初的状态机是设定了8个状态列表如下:(设两个路口为A和B)A:红B:绿A:绿B:红A:红B:黄A:黄B:红A:红B:左转A:左转B:红A:红B:黄A:黄B:红MSD图如下:ASM图如下:(2)对原有设计方案的创新和新方案的利弊分析:编写VHDL时发现采用上述的设计方法,对于交通灯的计时模块设计需要完成累计80秒的过程,而实际上前半个40秒和后半个40秒的状态具有对称性,可以看成4种状态:RG,RY,RL,RY在前半40秒出现在A和B路口的交通灯和倒计时器上,后半个40秒只需将这四个状态的的对应数据做调换再次出现在A和B路口的交通灯和倒计时器上,这样设计的目的是从硬件的角度理解,实际上是在简化了计时模块的电路,在交通灯显示控制模块和倒计时显示模块(两个译码电路)增设了选择信号。从上学期的数电理论课上学****的知识角度考虑这样的设计相比最初的设计可以简化硬件电路,但是可能在实际电路中,这样的组合电路设计方式不如8个状态的时序电路设计方案效果更好,毕竟理论和实际有一定的差距,短时间内做到理论和实际的平衡对于本科生来讲,在没有经过大量数字电路的设计,积累大量的实践经验的情况下,还是很困难的,往往是两者不能兼顾,所以每一种设计方案都代表这一次创新,实验本身的目的不在于在前人的基础上原地踏步,而在于发挥自己的创造力,在前人的基础上努力拓展自己的思路,从中获得宝贵的实践经验(3)最终设计框图和模块化设计方案:最终设计的总体框图:模块化设计方案:模块名称文件名称完成功能分频器模块fen将50MHZ时钟分频输出1HZ和1000HZ的时钟信号交通灯控制模块trafficlight完成倒计时,:(1)交通灯控制模块仿真波形及分析:,做如下的仿真设置:实际输入信号属性仿真输入信号属性1Hz时钟信号T=10us时钟信号1000HZ数码管扫描信号T=:(1-1)正常情况(urgency=0)的仿真波形(1-2)出现两次(urgency=1):从仿真波形(1-1)上可以看出在一个路口禁行的情况下(红灯40s),另外一个路口经历了一系列状态(绿灯20s-黄灯5s-左转10s-黄灯5s),每隔40s两个路口的状态就会调换,从仿真波形上可以看到上下两组波形交替出现同一波形。从仿真波形(1-2)上可以看到一旦出项urgency=1,red_1和red_2同时置为1,另外当urgency从1变回0后,恢复到到urgency置为1前的状态,在仿真波形上可以看到时间延长了,说明计时器在urgency=0的时间段内停止计时,数码管也相继停止。:对于b端口的详细分析基本上可以在(1-1)(1-2)两个波形的每个状态转移时刻放大波形观察输出信号,配合数码管扫描信号可以完整地写出每个数码管的显示数字。(2):分频器设计框图:参数设置:Endtime=5msf=1 :(2-2)(配注释):(1)分频器模块:libraryieee;;entityfenisport(clk:instd_logic;--开发板的高频时钟输入信号f=50MHz clk_out1:outstd_logic;--分频输出f=1000Hz数码管扫描时钟端口 clk_out2:outstd_logic--分频输出f=1Hz时钟端口);endfen;architecturefen_arcoffenissignaltemp1:std_logic;signaltemp2:std_logic;--MESSAGE信号beginp1:process(clk)variablecount1:integerrange0to49999;--计数变量begin ifclk'