交通灯控制器的设计EDA课程设计文档格式.docx
- 文档编号:18589666
- 上传时间:2022-12-28
- 格式:DOCX
- 页数:12
- 大小:136.36KB
交通灯控制器的设计EDA课程设计文档格式.docx
《交通灯控制器的设计EDA课程设计文档格式.docx》由会员分享,可在线阅读,更多相关《交通灯控制器的设计EDA课程设计文档格式.docx(12页珍藏版)》请在冰豆网上搜索。
该阶段的世纪方法称为电子设计自动化,这个阶段发展起来的EDA工具,目的是在设计前期将设计工程师从事的许多高层次设计由工具完成。
整个设计过程或大部分设计均有计算机完成。
1.1.2EDA技术发展表现形式
(1)CPLD/FPGA系统:
使用EDA技术开发CPLD/FPGA,使自行开发的CPLD/FPGA作为电子系统、控制系统、信息处理系统的主体。
(2)“CPLD/FPGA+MCU”系统:
综合应用EDA技术与单片机技术,将自行开发的“CPLD/FPGA+MCU”作为电子系统、控制系统、信息处理系统的主体。
(3)“CPLD/FPGA+专用DSP处理器”系统:
将EDA技术与DSP专用处理器配合使用,用“CPLD/FPGA+专用DSP处理器”构成一个数字信号处理系统的整体。
(4)基于FPGA实现的现代DSP系统:
基于SOPC(aSystemonaProgrammableChip)技术、EDA技术与FPGA技术实现方式的现代DSP系统。
(5)基于FPGA实现的SOC片上系统:
使用超大规模的FPGA实现的,内含1个或数个嵌入式CPU或DSP,能够实现复杂系统功能的单一芯片系统。
(6)基于FPGA实现的嵌入式系统:
使用CPLD/FPGA实现的,内含嵌入式处理器,能满足对象系统要求的特定功能的,能够嵌入到宿主系统的专用计算机应用系统。
1.2EDA数字系统设计
1.2.1分析方法
传统的电路设计方法都是自底向上进行设计的,也就是首先确定可用的元器件,然后根据这些器件进行逻辑设计,完成各模块后进行连接,最后形成系统。
在基于EDA技术的系统设计的最重要环节——在系统的基本功能或行为级上对设计的产品进行描述和定义时,我们采用自顶向下分析,自底向上设计的方法。
所谓“自顶向下分析”,就是指将数字系统的整体逐步分解为各个子系统和模块,若子系统规模较大,则还需将子系统进一步分解为更小的子系统和模块,层层分解,直至整个系统中各子系统关系合理,并便于逻辑电路级的设计和实现为止。
1.2.2实现方法
1.硬件描述语言编程实现法
2.原理图设计实现法
3.参数可设置兆功能块实现法
4.软的或硬的IP核实现法
第二章设计要求
2设计基本要求
1)设计一个十字路口的交通灯控制器,能显示十字路口东西、南北两个方向的红、黄、绿灯的指示状态。
用两组红、黄、绿三种颜色的灯分别作为东西、南北两个方向的红、黄、绿灯。
变化规律为:
东西绿灯亮,南北红灯亮——东西黄灯亮,南北红灯亮——东西红灯亮,南北绿灯亮——东西红灯亮,南北黄灯亮——东西绿灯亮,南北红灯亮……,这样依次循环。
2)南北方向是主干车道,东西方向是支干车道,要求两条交叉道路上的车辆交替运行,主干车道每次通行时间为35秒,支干车道每次通行的时间为25秒,时间可设置修改。
3)在绿灯转为红灯时,要求黄灯先亮5秒钟,才能变换运行车道。
4)要求交通控制器有复位功能,在复位信号使能的情况下能够实现交通灯的自动复位,并且要求所有交通灯的状态变化,包括复位信号引起的均发生在时钟脉冲的上升沿。
2.1电路工作原理
根据交通灯系统设计要求,可以用一个有限的状态机来实现这个交通灯控制器。
根据功能要求,明确两组交通灯的状态,这两组交通灯总共有四种状态,分别可用st0,st1,st2,st3不表示:
st0表示主干路绿灯亮,支干路红灯亮;
st1表示主干路黄灯亮,支干路红灯亮;
st2表示主干路红灯亮,支干路绿灯亮;
st3表示主干路红灯亮,支干路黄灯亮;
根据上述四种描述列出的状态转换表如下表1所示及交通灯控制器状态转换图如下图1所示:
表1交通灯控制器状态转换表
第三章系统的设计
3系统设计要求
1)设计一个十字路口的交通灯控制器,能显示十字路口东西、南北、南北左转三个方向的红、黄、绿灯的指示状态。
用三组红、黄、绿三种颜色的灯分别作为东西、南北、南北左转三个方向的红、黄、绿灯。
南北绿灯亮,南北左转红灯亮,东西红灯亮
南北黄灯亮,南北左转红灯亮,东西红灯亮
南北红灯亮,南北左转绿灯亮,东西红灯亮
南北红灯亮,南北左转黄灯亮,东西红灯亮
南北红灯亮,南北左转红灯亮,东西绿灯亮
南北红灯亮,南北左转红灯亮,东西黄灯亮
南北绿灯亮,南北左转红灯亮,东西红灯亮这样依次循环。
2)南北方向是主干车道,东西方向是支干车道,要求两条交叉道路上的车辆交替运行,主干车道每次通行时间为35秒,主干转弯车道每次通行时间为20秒,支干车道每次通行的时间为25秒,时间可设置修改。
5)显示器倒计时显示时间
3.1设计思路
1)本交通灯控制器是一个已知主、主左、支干道通行时间的系统,为了满足主、主左、支干道通行时间变化要求,我们可设计一个可预置主、主左、支干道通行时间的交通控制器。
2)交通灯控制器的电路控制主要包括置数器模块、定时计数器模块、主控制器模块和译码器模块。
置数器模块将交通灯的点亮时间预置到置数电路中。
计数器模块以秒为单位倒计时,当计数值减为零时,主控电路改变输出状态,电路进入下一个状态的倒计时。
核心部分是主控制模块。
3.2设计流程
根据设计要求和系统所具有功能,并参考相关的文献资料,经可行方案设计画出如下所示的十字路口交通灯控制器系统框图,及为设计的总体方案,框图如下图
(2)所示:
图
(2)交通灯控制器系统框图
3.3系统结构图
3.4系统程序
控制器电路程序:
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYledcontrolIS
PORT(reset,clk,urgen:
INSTD_LOGIC;
state:
OUTSTD_LOGIC_VECTOR(2DOWNTO0);
sub,set1,set2,set3:
OUTSTD_LOGIC);
ENDledcontrol;
ARCHITECTUREaOFledcontrolIS
SIGNALcount:
STD_LOGIC_VECTOR(6DOWNTO0);
SIGNALsubtemp:
STD_LOGIC;
BEGIN
sub<
=subtempAND(NOTclk);
statelabel:
PROCESS(reset,clk)
IFreset='
1'
THEN
count<
="
0000000"
;
state<
000"
set2<
='
ELSIFclk'
eventANDclk='
THEN
IFurgen='
0'
THENcount<
=count+1;
subtemp<
ELSEsubtemp<
ENDIF;
IFcount=0thenstate<
set1<
set2<
set3<
ELSIFcount=35thenstate<
001"
ELSIFcount=40THENstate<
010"
ELSIFcount=60THENstate<
011"
ELSIFcount=65THENstate<
100"
elsifcount=90THENstate<
101"
ELSIFcount=95THENcount<
ELSEset1<
ENDPROCESSstatelabel;
ENDa;
输出显示电路程序:
ENTITYledshowIS
PORT(
clk,urgen:
INSTD_LOGIC_VECTOR(2DOWNTO0);
eg1,ey1,er1,edg2,edy2,edr2,ng1,ny1,nr1:
OUTSTD_LOGIC;
led1,led2:
OUTSTD_LOGIC_VECTOR(7DOWNTO0));
ENDledshow;
ARCHITECTUREaOFledshowIS
SIGNALcount1,count2,count3:
STD_LOGIC_VECTOR(7DOWNTO0);
SIGNALsetstate1,setstate2,setstate3:
SIGNALetg1,ety1,etr1,edirr1,edirg1,ediry1,norg2,nory2,norr2:
led1<
00000000"
WHENurgen='
ANDclk='
ELSE
count1WHENstate="
ELSE
count2WHENstate="
ELSE
count1;
led2<
count3WHENstate="
count3WHENstate="
count3;
etg1<
WHENstate="
ANDurgen='
ELSE'
ety1<
etr1<
orurgen='
ORstate="
110"
111"
edirg1<
andurgen='
ediry1<
edirr1<
ORurgen='
norg2<
nory2<
norr2<
setstate1<
00110101"
"
00000101"
00110000"
WHENstate="
00100000"
;
setstate2<
00010101"
ELSE
setstate3<
01100101"
00100101"
label3:
PROCESS(sub)
IFsub'
eventANDsub='
IFset3='
count3<
=setstate3;
elsifcount3(3downto0)="
0000"
thencount3<
=count3-7;
ELSEcount3<
=count3-1;
ng1<
=norg2;
ny1<
=nory2;
nr1<
=norr2;
ENDPROCESSlabel3;
label2:
IFset2='
count2<
=setstate2;
elsifcount2(3downto0)="
thencount2<
=count2-7;
ELSEcount2<
=count2-1;
ENDIF;
edg2<
=edirg1;
edy2<
=ediry1;
edr2<
=edirr1;
ENDPROCESSlabel2;
label1:
IFset1='
count1<
=setstate1;
elsifcount1(3downto0)="
thencount1<
=count1-7;
ELSEcount1<
=count1-1;
eg1<
=etg1;
er1<
=etr1;
ey1<
=ety1;
ENDPROCESSlabel1;
3.5仿真与调试
系统总体仿真图如图(3)所示:
图(3)系统总体仿真图
复位电路仿真图:
图(4)复位仿真图
系统硬件管脚分配图如下:
图(5)管脚分配图
第四章心得体会
参考文献
【1】孙加存《电子设计自动化》西安电子科技大学出版社2008
【2】谭会生等主编,《EDA技术及应用》,西安电子科技大学出版社,2001
【2】江国强《EDA技术与应用》北京电子工业出版社2003
【3】焦素敏《EDA应用技术》北京清华大学出版社2005
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 交通灯 控制器 设计 EDA 课程设计