您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 交通运输 > EDA交通灯课程设计(带有测试平台testbench)精讲
EDA技术课程设计十字路口交通灯控制器设计学院电气与信息工程专业电子信息工程班级0934111课程名称EDA技术学号0934111**姓名*俊豪指导教师***成绩评定·一、指导教师评语(根据学生设计报告质量、答辩情况及其平时表现综合评定)。二、评分评分项目设计报告评分答辩评分平时表现评分合计(100分)任务完成情况(20分)课程设计报告质量(40分)表达情况(10分)回答问题情况(10分)工作态度与纪律(10分)独立工作能力(10分)得分课程设计成绩评定、班级0934111姓名学号0934111成绩:分(折合等级)指导教师签字年月日目录一、设计题目...............................................................................................................1二、设计任务和要求...................................................................................................1三、EDA设计................................................................................................................23.1、明确系统的功能,并进行逻辑抽象..........................................................23.2、模块功能说明..............................................................................................33.3、波形仿真及分析..........................................................................................33.3.1、代码..................................................................................................33.3.2、各模块rtl电路及功能仿真和时序仿真......................................4四、硬件测试...............................................................................................................7五、实验困难问题及解决措施...................................................................................7参考文献.......................................................................................................................9附录..............................................................................................................................101前言伴随着社会的发展以及人类生活水平的提高,EDA技术在电子信息、通信、自动、控制及计算机应用等领域的重要性日益突出。随着技术市场与人才市场对DEA需求的不断增加,交通的问题日益突出,单单依靠人力来指挥交通已经不可行了,所以设计交通灯来完成这个需求就显的越加迫切了。为了确保十字路口的行人和车辆顺利、畅通地通过,往往采用电子控制的交通信号来进行指挥。以下就是运用数字电子设计出的交通灯:其中红灯亮,表示该条路禁止通行;黄灯亮表示停车;绿灯亮表示允许通行。一、设计题目十字路口交通灯控制器设计。二、设计任务和要求用EDA技术设计一个十字路口的交通信号灯控制器,控制A、B两条交叉道路上的车辆通行,具体要求如下:设计一个十字路口交通信号管理控制器。对于每个路口,可实现直行、停止、左转指示,并显示当前状态剩余时间1.每个方向有直行红灯、直行绿灯、停行黄灯和左转绿灯共4个LED指示灯组成;2.每个方向用两位数码管显示当前状态剩余时间;3.系统复位后进入东西直行,南北禁行状态;4.直行状态最后3秒内,绿灯闪烁状态;2三、EDA设计由于本设计实验的功能较多,所以就采用模块化设计。整个程序设计基于8种状态,如下表所示:交通灯状态转换表状态SS1S2S3S4S5S6S7S0A方向左拐a1黄灯ay绿灯ag黄灯ay红灯ar红灯ar红灯ar红灯ar亮灯时间10s4s20s4s33B方向红灯br红灯br红灯br红灯br左拐b1黄灯by绿灯bg黄灯by亮灯时间38s10s4s15s4s注释:系统复位后进入A方向直行绿灯,B方向直行红灯的状态即S3。图1A、B方向示意图图2整体模块示意图3.1、明确系统的功能,并进行逻辑抽象A方向B方向监督顶层模块控制模块分频模块计数模块显示模块译码模块3如图1本方案可实现在确定时刻,倒计数数字显示能够及时变化,红黄绿灯能准确变化,考虑到实际应用,加入人工监督功能,通过改变频率来控制交通灯亮灭的时间的长短。本设计采用模块化设计,图2为本设计十字路口交通等系统的层次结构框图。3.2、模块功能说明1.主控制模块(kongzhi):控制系统输入输出之间联系。2.显示模块(xianshi):显示倒计时时间和工作状。其输出用来驱动4位共阴数码管,并显示倒计时时间(动态扫描)。3.分频模块(fenpin):本系统动态扫描需要1KHZ的脉冲而系统时钟需要1HZ的脉冲,分频器主要为系统提供所需要的时钟脉冲。该模块将1KHZ的脉冲信号进行分频,产生周期为1hz的方波,作为系统时钟信号的倒计时闪烁信号。4.译码模块(yima):根据控制信号,驱动交通灯即LED的显示。5.计数模块(jishu):用来设定A方向和B方向计时器的初值,并为显示模块提供倒计时时间。6.顶层模块jiaotongdeng,连接各模块设计,使之成为一个有机体。前5个模块分别进行仿真测试,成功后把所有.vhdl文件包含在工程jiaotongdeng,实现模块化设计。3.3、波形仿真及分析3.3.1、代码见附录一。43.3.2、各模块rtl电路及功能仿真和时序仿真各模块分别建立工程文件,并进行功能仿真、时序仿真,前六个模块成功编译,得到正确仿真结果后,建立顶层模块。模块一:控制模块(kongzhi)图3控制模块(kongzhi)rtl图图4控制模块(kongzhi)仿真图模块二:计时模块(jishi)图5计时模块(jishi)rtl图5图6计时模块(jishi)仿真图模块三:显示模块(xianshi)图7显示模块(xianshi)rtl图图8显示模块(xianshi)仿真图模块四:译码模块(yima)图9译码模块(yima)rtl图6图10译码模块(yima)仿真图模块五:分频模块(fenpin)图11分频模块(fenpin)rtl图图12分频模块(fenpin)仿真图模块六:顶层模块图13本设计整体rtl图7四、硬件测试编程下载和硬件测试的步骤如下:1、打开下载窗口。选择菜单“Tool“项的”programmer“,便可打开下载窗口。2、设置下载电缆。将ByteBlaster电缆的一端与微机的并行口相连,另一端10针插头与装有目标器件的PCB板上的插座相连。并在”HardwareSetup”中设置下载电缆。3、设置JTAG链。Altera器件基本都支持JTAG在系统编程方式,这种方式简单易行,不需要专门的编程器。4、选用模式NO.5,分配引脚,并编译后,把生成*.sof文件下载到基于Cyclone型GW48系列FPGA实验箱开发板上,成功查看结果,CLK时钟频率用1Hz,可通过实验箱上“键7”控制Reset全局复位。五、实验困难问题及解决措施在实验的过程中,编写主程序的时候,也遇到调试不成功的问题,主要问题如下:①在编写xianshi模块时,最后给输出信号赋值时,使用了进程语句,但是由于敏感列表不全,导致在仿真时其输出信号的值产生错误。解决措施就是通过逐个查看内部信号,由于敏感列表不全,致使有些时刻,最后赋值的进程语句没有启动,从而造成输出结果不全。②在实现绿灯剩余时间小于三秒时开始闪烁功能时,遇到问题。具体表现在yima模块中。开始为了在绿灯状态,使绿灯在高、地电平间变换,所以就尝试使用时钟信号clk的上升沿和下降沿,其中上升沿时,绿灯高电平即亮,下降沿时绿灯熄灭。虽然这种方案在8modelsim中仿真成功,但是在quartus进行综合出现错误,该综合软件综合不出此寄存器。经过多次试验,使用了clk高低电平触发,不再使用其上升下降沿。③在整个程序中有时在使用IF语句时,会因为考虑不完整造成实验结果出错。因为在IF语句中如果过没有ELSE语句,那么输出将默认保持前一个状态,这样很容易产生错误。总之经过查阅各种资料,成功的把程序调试了出来。在查阅试验箱说明书的情况下,完成了引脚的选定,并把程序下载到了试验箱里面,完成了实物的演示。9参考文献[1]邹彦编.EDA技术与数字系统设计.北京:电子工业出版社.2007.[2]潘松,黄继业编.EDA技术与VHDL(第二版).北京:清华大学出版社.2007.[3]王锁萍编.电子设计自动化教程.成都:电子科技大学出版社.2000.[4]徐志军,徐光辉编.CPLD/FPGA的开发与应用.北京:电子工业出版社.2002.[5]杨旭,刘盾等编.EDA技术基础与实验教程.北京:清华大学出版社.2010.10七、附录附录一:本系统采用用硬件描述语言VHDL描述。分为五个模块,分别为控制模块、计时模块、显示模块、译码模块和分频模块,下面针对每个模块给出相应的程序:模块一:/*************************控制部分**********************//***********定义输入输出端口***********/libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitykongzhiis--实体部分;port(clk,clr:instd_logic;at,bt:instd_logic_vector(7downto0);s:outstd_logic_vector(2downto0));endkongzhi;architecturertlofkongzhiis--结构体部分;signalq:std_logic_vector(2downto0);begin--mainlogicprocess(clk,clr,at,bt)beginifclr='1'thenq=011;--系统复位后,系统的状态是A干道绿灯;B干道红灯;elsif(clk'eventandclk='1')thenif(at=x01)or(bt=x01)then--倒计时结束时,状态发生改变;q=q+1;elseq=q;endif;endif;endprocess;s=q;endrtl;模块二:/*************************计时部分**********************//***********为A,B方向设置初值***********/libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;11entityjishiis
本文标题:EDA交通灯课程设计(带有测试平台testbench)精讲
链接地址:https://www.777doc.com/doc-6489075 .html