精品 毕业论文 毕业设计EDA论文交通控制系统的设计与仿真文档格式.docx
《精品 毕业论文 毕业设计EDA论文交通控制系统的设计与仿真文档格式.docx》由会员分享,可在线阅读,更多相关《精品 毕业论文 毕业设计EDA论文交通控制系统的设计与仿真文档格式.docx(14页珍藏版)》请在冰豆网上搜索。
80年代为计算机辅助工程(CAE)阶段。
与CAD相比,CAE除了有纯粹的图形绘制功能外,又增加了电路功能设计和结构设计,并且通过电气连接网络表将两者结合在一起,实现了工程设计。
CAE的主要功能是:
原理图输入,逻辑仿真,电路分析,自动布局布线,PCB分析。
90年代为电子系统设计自动化(EDA)阶段。
EDA是电子设计自动化(ElectronicDesignAutomation)缩写,是90年代初从CAD(计算机辅助设计)、CAM(计算机辅助制造)、CAT(计算机辅助测试)和CAE(计算机辅助工程)的概念发展而来的。
EDA技术是以计算机为工具,根据硬件描述语言HDL(HardwareDescriptionlanguage)完成的设计文件,自动地完成逻辑编译、化简、分割、综合及优化、布局布线、仿真以及对于特定目标芯片的适配编译和编程下载等工作。
典型的EDA工具中必须包含两个特殊的软件包,即综合器和适配器。
综合器的功能就是将设计者在EDA平台上完成的针对某个系统项目的HDL、原理图或状态图形描述,针对给定的硬件系统组件,进行编译、优化、转换和综合,最终获得我们欲实现功能的描述文件。
综合器在工作前,必须给定所要实现的硬件结构参数,它的功能就是将软件描述与给定的硬件结构用一定的方式联系起来。
也就是说,综合器是软件描述与硬件实现的一座桥梁。
综合过程就是将电路的高级语言描述转换低级的、可与目标器件FPGA/CPLD相映射的网表文件。
适配器的功能是将由综合器产生的网表文件配置与指定的目标器件中,产生最终的下载文件,如JED文件。
适配所选定的目标器件(FPGA/CPLD芯片)必须属于在综合器中已指定的目标器件系列。
EDA代表了当今电子设计技术的最新发展方向,它的基本特征是:
设计人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(HDL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件,这样的设计方法被称为高层次的电子设计方法。
下面介绍与EDA基本特征有关的几个概念。
第一,“自顶向下”的设计方法,10年前,电子设计的基本思路还是选用标准集成电路“自底向上”地构造出一个新的系统,这样的设计方法就如同一砖一瓦建造金字塔,不仅效率低、成本高而且容易出错。
高层次设计是一种“自顶向下”的全新设计方法,这种设计方法首先从系统设计入手,在顶层进行功能方框图的划分和结构设计。
在方框图一级进行仿真、纠错,并用硬件描述语言对高层次的系统行为进行描述,在系统一级进行验证。
然后,用综合优化工具生成具体门电路的网络表,其对应的物理实现级可以是印刷电路板或专用集成电路。
由于设计的主要仿真和调试过程是在高层次上完成的,这既有利于早期发现结构设计上的错误,避免设计工作的浪费,又减少了逻辑功能仿真的工作量,提高了设计的一次成功率;
第二,ASIC设计现代电子产品的复杂度日益提高,一个电子系统可能由数万个中小规模集成电路构成,这就带来了体积大、功耗大、可靠性差的问题,解决这一问题的有效方法就是采用ASIC芯片进行设计。
ASIC按照设计方法的不同可分为全定制ASIC、半定制ASIC和可编程ASIC(也称为可编程逻辑器件)。
可编程逻辑器件自70年代以来,经历了PAL、GAL、CPLD、FPGA几个发展阶段,其中CPLD/FPGA属高密度可编程逻辑器件,目前集成度已高达200万门/片,它将掩模ASIC集成度高的优点和可编程逻辑器件设计生产方便的特点结合在一起,特别适合于样品研制或小批量产品开发,使产品能以最快的速度上市,而当市场扩大时,它可以很容易地转由掩模ASIC实现,因此开发风险也大为降低。
上述ASIC芯片,尤其是CPLD/FPGA器件,已成为现代高层次电子设计方法的实现载体;
第三,EDA系统框架结构EDA系统框架结构(Framework)是一套配置和使用EDA软件包的规范。
目前主要的EDA系统都建立了框架结构,如Cadence公司的DesignFramework,Mentor公司的FalconFramework,而且这些框架结构都遵守国际CFI组织制定的统一技术标准。
框架结构能将来自不同EDA厂商的工具软件进行优化组合,集成在一个易于管理的统一的环境之下,而且还支持任务之间、设计师之间以及整个产品开发过程中的信息传输与共享,是并行工程和自顶向下设计方法的实现基础。
EDA的发展前景:
第一,.从目前的EDA技术来看,其发展趋势是政府重视、使用普及、应用广泛、工具多样、软件功能强大。
中国EDA市场已渐趋成熟,不过大部分设计工程师面向的是PCB制板和小型ASIC领域,仅有小部分(约11%)的设计人员开发复杂的片上系统器件。
为了与台湾和美国的设计工程师形成更有力的竞争,中国的设计队伍有必要引进和学习一些最新的EDA技术。
在信息通信领域,要优先发展高速宽带信息网、深亚微米集成电路、新型元器件、计算机及软件技术、第三代移动通信技术、信息管理、信息安全技术,积极开拓以数字技术、网络技术为基础的新一代信息产品,发展新兴产业,培育新的经济增长点。
要大力推进制造业信息化,积极开展计算机辅助设计(CAD)、计算机辅助工程(CAE)、计算机辅助工艺(CAPP)、计算机机辅助制造(CAM)、产品数据管理(PDM)、制造资源计划(MRPII)及企业资源管理(ERP)等。
有条件的企业可开展“网络制造”,便于合作设计、合作制造,参与国内和国际竞争。
开展“数控化”工程和“数字化”工程。
自动化仪表的技术发展趋势的测试技术、控制技术与计算机技术、通信技术进一步融合,形成测量、控制、通信与计算机(M3C)结构。
在ASIC和PLD设计方面,向超高速、高密度、低功耗、低电压方面发展;
第二,外设技术与EDA工程相结合的市场前景看好,如组合超大屏幕的相关连接,多屏幕技术也有所发展。
中国自1995年以来加速开发半导体产业,先后建立了几所设计中心,推动系列设计活动以应对亚太地区其它EDA市场的竞争。
在EDA软件开发方面,目前主要集中在美国。
但各国也正在努力开发相应的工具。
日本、韩国都有ASIC设计工具,但不对外开放。
中国华大集成电路设计中心,也提供IC设计软件,但性能不是很强。
相信在不久的将来会有更多更好的设计工具在各地开花并结果。
据最新统计显示,中国和印度正在成为电子设计自动化领域发展最快的两个市场,增长率分别达到了50%和30%。
EDA技术发展迅猛,完全可以用日新月异来描述,EDA技术的应用广泛,现在已涉及到各行各业。
EDA水平不断提高,设计工具趋于完美的地步。
EDA市场日趋成熟,但我国的研发水平仍很有限,尚需迎头赶上。
1.2硬件描述语言VHDL
硬件描述语言HDL是相对于一般的计算机软件语言,如:
C、PASCAL而言的。
HDL语言使用与设计硬件电子系统的计算机语言,它能描述电子系统的逻辑功能、电路结构和连接方式。
设计者可利用HDL程序来描述所希望的电路系统,规定器件结构特征和电路的行为方式;
然后利用综合器和适配器将此程序编程能控制FPGA和CPLD内部结构,并实现相应逻辑功能的的门级或更底层的结构网表文件或下载文件。
目前,就FPGA/CPLD开发来说,比较常用和流行的HDL主要有ABEL-HDL、AHDL和VHDL。
早期的硬件描述语言,如ABEL、HDL、AHDL,由不同的EDA厂商开发,互不兼容,而且不支持多层次设计,层次间翻译工作要由人工完成。
为了克服以上不足,1985年美国国防部正式推出了高速集成电路硬件描述语言VHDL,1987年IEEE采纳VHDL为硬件描述语言标准(IEEESTD-1076)。
VHDL是一种全方位的硬件描述语言,包括系统行为级,寄存器传输级和辑门级多个设计层次,支持结构、数据流和行为三种描述形式的混合描述,因此VHDL几乎覆盖了以往各种硬件和语言的功能,整个自顶向下或由底向上的电路设计过程都可以用VHDL来完成。
VHDL还具有以下优点:
(1)VHDL的宽范围描述能力使它成为高层进设计的核心,将设计人员的工作重心提高到了系统功能的实现与调试,而花较少的精力于物理实现;
(2)VHDL可以用简洁明确的代码描述来进行复杂控制逻辑的设计,灵活且方便,而且也便于设计结果的交流、保存和重用;
(3)VHDL的设计不依赖于特定的器件,方便了工艺的转换;
(4)VHDL是一个标准语言,为众多的EDA厂商支持,因此移植性好。
用VHDL语言编程实现数字电子系统硬件设计容易做到技术共享。
他人用VHDL语言实现了IP模块和软核(softcore),程序包(package)和设计库(library)很容易移植到自己的系统设计中。
许多设计不用从头开始,少花钱办快事,缩短产品设计周期,加速产品更新,提高设计效益,这也是VHDL语言得到广泛应用的重要原因。
第2章电路工作原理及设计方案
2.1交通灯设计背景及方案
随着城市汽车保有量的越来越多,城市的交通拥挤问题正逐渐引起人们的注意。
交通灯是交管部门管理城市交通的重要工具。
提高十字路口的通行效率,对缓解交通阻塞具有十分重要的现实意义。
实现路口交通灯系统控制的方法很多,可以用标准逻辑器件、可编程序控制器PLC、单片机等方案来实现。
但是这些控制方法的功能修改及调试都需要硬件电路的支持,在一定程度上增加了设计难度。
采用EDA技术,应用VHDL硬件电路描述语言实现变通灯系统控制器的设计,利用QUARTUSⅡ集成开发环境进行综合、仿真,并下载到CPLD可编程逻辑器件中,完成系统的控制作用。
该灯控制逻辑可实现3种颜色灯的交替点亮、时间的倒计时、转向问题,指挥车辆和行人安全通行。
2.2交通灯设计要求
按照路口交通运行的实际情况,在本系统中,设定系统的工作情况如下:
A方向和B方向各设红(R)、黄(Y)、绿(G)和左拐(L)四盏灯按合理的顺序亮灭,并能将灯亮的时间以倒计时的形式显示出来。
两个方向各种灯亮的时间应该能够非常方便地进行设计和修改,此外假设A方向是主干道,车流量大,因此A方向通行的时间应比B方向长一些。
其示意图如图2-1所示:
图2-1交通路口指示灯示意图
交通灯控制器的状态转换如表1所示。
表中1表示灯亮,0表示灯灭。
A方向和B方向的红、黄、绿和左拐灯分别用R1、Y1、G1、L1和R2、Y2、G2、L2来表示。
从状态转换表中可以看出,每个方向四种灯依次按如下绿灯→黄灯→左拐灯→黄灯→红灯。
并且每个方向红灯亮的时间应该与另一方向绿、拐、黄灯亮的时间相等。
黄灯所起的作用是用来在绿灯和左拐灯后进行缓冲,以提醒行人该方向马上要禁行了。
例如A方向的控制程序描述如表2-1所示:
表2-1交通灯控制器状态转换
A方向
B方向
绿灯
G1
黄灯
Y1
左拐灯L1
红灯
R1
G2
Y2
左拐灯L2
R2
1
系统流程图:
图2-2交通控制流程图
在VHDL设计描述中,采用自顶向下的设计思路,该思路,首先要描述顶层的接口,上面的描述已经规定了交通灯控制的输入输出信号:
输入信号:
复位开关信号reset;
外部时钟信号clk。
LED七段显示数码管的输出信号count1(6downto0),count2(6downto0),count3(6downto0),count4(6downto0);
在自顶向下的VHDL设计描述中,通常把整个设计的系统划分为几个模块,然后采用结构描述方式对整个系统进行描述。
根据实验设计的结构功能,来确定使用哪些模块以及这些模块之间的关系。
通过上面的分析,不难得知可以把交通灯控制系统划分为4个模块:
时钟分频模块,计数模块,控制模块,分位译码模块。
分频电路:
把多谐振荡器发出的较高频率脉冲用分频电路的到较第频率的时钟信号,本电路通过三次10分平分别得到10Hz、1Hz的时钟信号。
控制器电路:
根据计数器的计数值控制发光二极管的亮、灭,以及输出倒计时数值给七段译码管的分位译码电路。
当检测到手动控制信号(Con=’1’)时,执行手动控制;
计数器电路:
这里需要的计数器的计数范围为0~89。
计到89后,下一个时钟沿升为1时,开始下一轮计数,此外当系统复位信号(Reset=’1’)使计数器异步清‘0’。
手动信号(Con=’1’)使系统清‘0’。
分位译码电路:
因为控制器输出的倒计时数值可能是1位或者2位十进制数,所以在七段数码管的译码电路前要加上分位电路(即将其分为2个1位的十进制数,如20分为2和0,7分为0和7)。
七段数码管的译码电路根据控制电路的控制信号,驱动交通灯的显示,通过输入二进制数值,输出信号点亮二极管,我们用的是共阳极数码管,因此译码电路输出逻辑数值‘0’点亮二极管,译码电路输出逻辑数值‘1’熄灭二极管。
第3章单元模块的设计与仿真
3.1分频模块的设计及仿真图
实体:
entityclk_10is
port(clk:
instd_logic;
clk_div10:
outstd_logic);
endclk_10;
功能:
实现十分频
接口:
clk—脉冲输入
Clk-div10—十分频后脉冲输出
仿真结果如下:
图3-1分频模块仿真图
3.2计数模块的设计及仿真图
entitycounteris
port(clk0:
instd_logic;
con:
reset:
countnum:
bufferintegerrange0to89);
endcounter;
实现0到89的计数
clk0—脉冲输入
con—手动控制信号
reset—复位信号
countnum—计数输出
仿真波形如下:
图3-2计数模块仿真图
图3-3计数模块仿真图
图3-4计数模块仿真图
3.3控制模块的设计及仿真图
entitycontrolleris
Port(clk1:
con1:
con2:
countnum:
inintegerrange0to89;
numa,numb:
outintegerrange0to25;
ra,ga,ya,ga1:
outstd_logic;
rb,gb,yb,gb1:
endcontroller;
控制发光二极管的亮、灭,以及输出倒计时数值给七段译码管的分位译码电路。
clk1—脉冲信号输入
con1—手动控制信号
con2—状态控制信号
countnum—计数输入
numa,numb—两个方向的倒计时数值输出
ra,ga,ya,ga1,rb,gb,yb,gb1—发光二极管输出
图3-5控制模块仿真图
图3-6控制模块仿真图
3.4分位模块的设计与仿真图
entityfenweiis
port(numin:
inintegerrange0to25;
numa,numb:
outintegerrange0to9);
endfenwei;
把倒计时的数值分成2个1位的十进制数。
numin:
倒计时数值输入
numa,numb—将数值分为2个1位的十进制输出
图3-7分位模块仿真图
3.5译码模块的设计及仿真图
entitydisplayis
port(clk2:
bb:
instd_logic_vector(3downto0);
ya:
outstd_logic;
yb:
yc:
yd:
ye:
yf:
yg:
outstd_logic);
enddisplay;
根据控制电路的控制信号,驱动交通灯的显示,通过输入二进制数值,输出信号点亮二极管。
bb[3..0]--BCD码输入
clk2—脉冲输入
ya,yb,yc,yd,ye,yf,yg—七段数码管显示输出
图3-8译码模块仿真图
第4章系统设计
4.1顶层文件的设计
entitydingcengis
port(clkd,resetd,cond,con1d:
count1:
outstd_logic_vector(6downto0);
count2:
count3:
count4:
reda,greena,yellowa,greena1:
redb,greenb,yellowb,greenb1:
endentitydingceng;
clkd—脉冲输入
resetd—复位信号
con—手动控制信号
con1d—状态控制信号
count1,count2,count3,count4—七段数码管显示
reda,greena,yellowa,greena1,redb,greenb,yellowb,greenb1—发光二极管输出
4.2整体电路波形图
图4-1整体电路波形图
结论
通过EDA课程设计,我不仅加深了对EDA理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。
在这段时间里,我学到了很多知识,也有很多感受,对VHDL语言、QUARTUSII软件操作平台等相关技术有了更深一步的了解。
EDA技术是一种实现电子系统或电子产品自动化设计的技术。
它是为了适应现代电子产品设计的要求,伴随着计算机、集成电路、电子系统设计的发展,吸收众多学科的成果而逐步形成的一门新技术。
在本设计中主要实现了在十字路口交通灯的灯色变化和计时变化,来控制十字路口车辆的有秩序的行驶,以不致出现道路拥堵现象。
参考文献
《EDA技术与应用》(第三版).江国强,电子工业出版社
《VHDL与数字电路设计》.卢毅,
赖杰.
科学出版社
《EDA技术与VHDL》(第二版).潘松,黄继业.清华大学出版社
《数字电路技术基础》(第二版).阎石.高等教育出版社