通过Verilog实现交通灯设计实验报告材料

上传人:痛*** 文档编号:83424406 上传时间:2022-05-01 格式:DOC 页数:11 大小:762.50KB
返回 下载 相关 举报
通过Verilog实现交通灯设计实验报告材料_第1页
第1页 / 共11页
通过Verilog实现交通灯设计实验报告材料_第2页
第2页 / 共11页
通过Verilog实现交通灯设计实验报告材料_第3页
第3页 / 共11页
点击查看更多>>
资源描述
word电 子 科 技 大 学实验报告一、实验室名称:虚拟仪器实验室二、实验项目名称:交通灯设计实验三、实验学时:4学时四、实验原理假设交通灯处于南北和东西两条大街的“十字路口,如图1所示。用FPGA开发板的LED灯来模拟红、黄、绿3种颜色信号,并按一定顺序、时延来点亮LED,如图2所示。图3给出了交通灯的状态转移图。设计使用频率为1Hz的时钟来驱动电路注1:仿真时采用1MHz的时钟来驱动电路,如此停留1个时钟可得到1S的延时,类似停留3个时钟可得到3S的延时,停留15个时钟可得到15S的延时注2:开发板工作时钟为50MHz。图1. 六个彩色LED可以表示一组交通信号灯状态机的状态南北大街东西大街开发板延时单位:s仿真延时单位:usS0红绿1515S1红黄33S2红红33S3绿红1515S4黄红33S5红红33图2. 交通灯状态 南北 东西 红 黄 绿 红 黄 绿S0 1 0 0 0 0 1S1 1 0 0 0 1 0S2 1 0 0 1 0 0S3 0 0 1 1 0 0S4 0 1 0 1 0 0 S5 1 0 0 1 0 0 图3. 交通灯的状态转移图图4. 交通灯的原理框图五、实验目的本实验是有限状态机的典型综合实验,掌握如何使用状态转移图来定义Mealy状态机和Moore状态机,熟悉利用HDL代码输入方式进展电路的设计和仿真的流程,掌握Verilog语言的根本语法。并通过一个交通灯的设计掌握利用EDA软件Xilinx ISE 13.2进展HDL代码输入方式的电子线路设计与仿真的详细流程。六、实验容在Xilinx ISE 13.2上完成交通灯设计,输入设计文件,生成二进制码流文件下载到FPGA开发板上进展验证。七、实验器材设备、元器件1、计算机安装Xilinx ISE 13.2软件平台;2、BASYS2 FPGA开发板一套带USB-MIniUSB下载线八、实验步骤(1) 新建工程,设置器件属性:在Xilinx ISE 13.2平台中,新建一个工程注意命名规,输入工程名称以与工程所在的目录,设置芯片的具体型号Spartan 3E XC3S100E、封装类型CP132以与编码使用的语言Verilog。详见实验指导书(2) Verilog源码文件创建与编辑:选中器件名字,点击鼠标右键,选中New Source,选择Verilog Module以与输入文件名称详见实验指导书(3) 语法检查,对设计文件进展综合:代码编写完成后,在ISE的主界面的处理子窗口的synthesis的工具检查代码语法Check Syntax,同时在此窗口可以查看RTL原理图View RTL schematic、查看技术原理图View Technology Schematic以与产生综合后仿真模型Generate Post-Synthesis Simulation Model。(4) 对设计进展行为仿真:1产生测试文件模板;2完成测试脚本创建与编辑;3调出仿真窗口对设计进展仿真;4通过波形查看仿真结果。详见实验指导书(5) 添加实现约束文件。详见实验指导书(6) UCF文件导入。详见实验指导书(7) FPGA在线下载配置:1连接开发板并给开发板供电;2边界扫描,初始化链;3下载比特流文件;4对FPGA进展编程;5生成PROM文件;6将生成的PROM文件烧到PROM芯片中。详见实验指导书(8) 关闭配置界面,不保存任何信息。一定不要保存任何信息(9) 关闭电源重新上电,程序从PROM自动引导到FPGA芯片中。(10) 给开发板断电,清理器件,实验完毕。九、实验数据与结果分析module traffic(input clk,input rst,output reg5:0 lights );reg2:0 state;reg3:0 count;parameter S0=3b000,S1=3b001,S2=3b010, S3=3b011,S4=3b100,S5=3b101;always(posedge clk or posedge rst)beginif(rst)beginstate=S0;count=0;endelse begincase(state)S0:if(count15)beginstate=S0;count=count+1;endelse beginstate=S1;count=0;endS1:if(count3)beginstate=S1;count=count+1;endelse beginstate=S2;count=0;endS2:if(count3)beginstate=S2;count=count+1;endelse beginstate=S3;count=0;endS3:if(count15)beginstate=S3;count=count+1;endelse beginstate=S4;count=0;endS4:if(count3)beginstate=S4;count=count+1;endelse beginstate=S5;count=0;endS5:if(count3)beginstate=S5;count=count+1;endelse beginstate=S0;count=0;enddefaultstate=S0;endcaseendendalways(*)begincase(state)S0:lights=6b100_001;S1:lights=6b100_010;S2:lights=6b100_100;S3:lights=6b001_100;S4:lights=6b010_100;S5:lights=6b100_100;default lights=6b100_001;endcaseendEndmodule9.2 时钟分频代码module clk_div(input clk,input rst,output reg clk_1hz );parameter T_WIDTH=5;regT_WIDTH-1:0t;always(posedge clk or posedge rst)beginif(rst)begint=0;endelse begint=t+1;endendalways(posedge clk or posedge rst)if(rst)clk_1hz=0;else if(t=25)beginclk_1hz=clk_1hz;t=0;endEndmodule9.3 顶层代码module top(input mclk, input wire3:3 btn, output wire7:2 Led );wire clk_1hz;wire rst;assign rst=btn3;clk_div clk_div_inst(.clk(mclk),.rst(rst),.clk_1hz(clk_1hz);traffic traffic_inst(.clk(clk_1hz),.rst(rst),.lights(Led);endmodule9.4 测试代码module text;/ Inputsreg mclk;reg 3:3 btn;/ Outputswire 7:2 Led;/ Instantiate the Unit Under Test (UUT)top uut (.mclk(mclk), .btn(btn), .Led(Led);initial begin/ Initialize Inputsmclk = 0;btn = 1;/ Wait 100 ns for global reset to finish#100; btn = 0; / Add stimulus hereend parameter PERIOD =20;always begin#(PERIOD/2) mclk =0;#(PERIOD/2) mclk =1;end Endmodule9.5 仿真波形代码对波形进展相关的文字说明,所截取的波形要覆盖所有状态转移由图中可以看出,lights显示100001S0,经过15us后变为100010S1,接着3us变为100100S2,再3us变为001100S3,然后15us变为010100S4,之后3us变为100100S5,状态正确。由图可以看出,clk_1hz周期为1000ns,满足1M hz的要求十、 实验结论通过实验,实现了用Xilinx ISE 13.2实现了一个交通灯的电子线路设计与仿真,更加熟练掌握Verilog语言的根本语法。十一、实验中遇到的问题与相应的解决方法(1) lights状态不发生变化答:在test文件中,令btn初值为1报告评分:指导教师签字:11 / 11
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!