完整版基于FPGA的交通灯毕业设计论文Word下载.docx

上传人:b****6 文档编号:20854018 上传时间:2023-01-26 格式:DOCX 页数:26 大小:181.05KB
下载 相关 举报
完整版基于FPGA的交通灯毕业设计论文Word下载.docx_第1页
第1页 / 共26页
完整版基于FPGA的交通灯毕业设计论文Word下载.docx_第2页
第2页 / 共26页
完整版基于FPGA的交通灯毕业设计论文Word下载.docx_第3页
第3页 / 共26页
完整版基于FPGA的交通灯毕业设计论文Word下载.docx_第4页
第4页 / 共26页
完整版基于FPGA的交通灯毕业设计论文Word下载.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

完整版基于FPGA的交通灯毕业设计论文Word下载.docx

《完整版基于FPGA的交通灯毕业设计论文Word下载.docx》由会员分享,可在线阅读,更多相关《完整版基于FPGA的交通灯毕业设计论文Word下载.docx(26页珍藏版)》请在冰豆网上搜索。

完整版基于FPGA的交通灯毕业设计论文Word下载.docx

2.2FPGA设计交通灯的意义7

3硬件描述语言VHDL9

4QuartusII软件10

4.1QuartusII简介10

4.2基于QuartusII的设计流程10

5系统设计与仿真12

5.1系统介绍12

5.1.1设计任务12

5.1.2设计要求13

5.2系统设计仿真14

5.2.1系统框图的设计14

5.2.2工程设计流程框图15

5.2.3芯片的选择15

5.2.4各个模块的设计与仿真15

结论26

参考文献27

附录128

附录236

答谢37

绪论

在现代城市的日常运行控制中,车辆的交通控制越来越重要,道路超负荷承载现象严重,致使交通事故逐年增加。

因此解决好交通信号灯控制问题是保障城市交通有序、安全、快速运行的重要保证。

当今社会是数字集成电路广泛应用的社会,数字集成电路本身在不断进行更新换代,随着微电子技术的发展,特别是大规模集成电路和计算机技术的研制和发展,通过“语言”进行电子设计已成为一种趋势。

这样既可以使工程师根据自己的意愿设计开发ASIC,而且可以缩短设计周期。

现场可编程门阵列(FPGA)即属其中应用最广泛的一种,而且基于EDA技术的现场可编程门阵列(FPGA)在数字系统设计和控制电路中越来越受到重视。

VHDL是电子开发主流语言之一,这使得工程师不必过多考虑硬件具体结构,专注于电路功能的设计,适合进行行为描述。

DEA技术的发展和应用领域的扩大与深入,在电子信息,通信,自动,控制及计算机应用等领域的重要性日益突出,因此本论文研究基于FPGA的交通灯设计。

交通灯控制电路是用于城市交通疏导的管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。

交通信号灯指挥着人和各种车辆的安全运行,实现红、黄、绿灯的自动指挥是城乡交通管理现代化的重要课题。

在城乡街道的十字交叉路口,为了保证交通秩序和行人安全,一般在每条道路上各有一组红、黄、绿交通信号灯。

交通灯控制电路自动控制十字路口两组红、黄、绿交通灯的状态转换,指挥各种车辆和行人安全通行,实现十字路口城乡交通管理自动化。

本论文简要介绍了FPGA器件的特点和设计意义,以QuartusII软件为开发平台,通过VHDL硬件描述语言以及原理图的输入方式来设计交通灯。

交通灯控制器用于自动控制十字路口交通灯和计时器。

设计一个十字路口交通控制器,方向分为东南西北四个方向。

东西方向的红绿灯状态一样,南北方向的红绿灯状态一样。

每个方向上,有四盏灯,分别是左转灯、红灯、绿灯和黄灯。

左拐灯亮表示左转车辆可以通行;

红灯亮表示左转和直行车辆禁行;

绿灯亮表示直行车辆和右转的车辆可以通行;

黄灯亮表示左转和直行的车辆即将禁行。

1简述EDA

1.1EDA技术及其发展

EDA(ElectronicDesignAutomation)技术作为现代电子设计技术的核心,它依赖功能强大的计算机,在EDA工具软件平台上,对以硬件描述语言HDL(HardwareDescriptionLanguage)为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译、逻辑化简、逻辑分割、逻辑综合、结构综合,以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。

EDA技术使得设计者的工作仅仅限于利用软件的方式,即利用硬件描述语言和EDA软件来完成对系统硬件功能的实现。

在现代高新电子产品的设计和生产中,微电子技术和现代电子设计技术是相互促进、相互推动又相互制约的两个技术环节。

前者代表了物理层在广度和深度上硬件电路实现的发展,后者则反映了现代先进的电子理论、电子技术、仿真技术、设计工艺和设计技术与最新的计算机软件技术有机的融合和升华。

因此,严格的说,EDA技术应该是两者的结合,是这两个技术领域共同孕育的奇葩。

现在,传统ASIC和FPGA之间的界限正变得模糊。

系统级芯片不仅集成了RAM和微处理器,也集成了FPGA。

整个EDA和IC设计工业都朝着这个方向发展。

1.2EDA技术的优势

传统的数字电子系统或IC设计中,手工设计占了较大的比例。

手工设计一般先按电子系统的具体功能要求进行功能划分,然后对每个子模块画出真值表,用卡诺图进行手工逻辑化简,写出布尔表达式,画出相应的逻辑线路图,再据此选择元器件,设计电路板,进行实测和调试。

所以手工设计存在如下缺点:

(1)复杂电路的设计、调试十分困难;

(2)无法进行硬件系统仿真,如过程中存在错误,查找和修改十分不便;

(3)设计过程中产生大量文档,不易管理;

(4)对于IC设计而言,设计实现过程与具体生产工艺直接相关,因此可移植性差;

(5)只有设计出样机或生产出芯片后才能进行实测。

相比之下,EDA技术有很大不同之处:

(1)用HDL对数字系统进行抽象的行为与功能描述以及具体的内部线路结构描述,从而可以在电子设计的各个阶段、各个层次进行计算机模拟验证,保证设计过程的正确性,大大降低设计成本,缩短设计周期;

(2)EDA工具之所以能够完成各种自动设计过程,关键是有各类库的支持。

如逻辑仿真时的模拟库、逻辑综合时的综合库、版图综合时的版图库、测试综合时的测试库等。

这些库都是EDA公司于半导体生产厂商紧密合作、共同开发的;

(3)某些HDL(如VHDL)是文档型的语言,极大的简化了设计文档的管理;

(4)EDA技术最为瞩目的功能,即最具现代电子设计技术特征的功能是日益强大的逻辑设计仿真测试技术。

EDA仿真测试技术只需通过计算机,就能对所设计的电子系统从各种不同层次的系统性能特点完成一系列准确的测试和仿真操作,在完成实际系统的安装后还能对系统上的目标器件进行所谓边界扫描测试。

这一切极大地提高了大规模系统电子设计的自动化程度;

(5)无论传统的应用电子系统设计的如何完美,使用了多么先进的功能器件,都掩盖不了一个无情的事实,即该系统对于设计者来说,没有任何自主知识产权可言,因为系统中的关键性的器件往往并非出自设计者之手,这将导致系统在许多情况下的应用直接受到限制。

基于EDA技术的设计则不同,由于用HDL表达的成功的专用功能设计在实际目标方面有很大的可选性,它既可以用不同来源的通用FPGACPLD实现,也可以直接以ASIC来实现,设计者拥有完全的自主权,再无受制于人之虞;

(6)传统的电子设计方法至今没有任何标准规范加以约束,因此,设计效率低,系统性能差,开发成本高,市场竞争力也小。

而EDA技术的设计语言是标准化的,不会由于设计对象的不同而改变;

它的开发工具是规范化的,EDA软件平台支持任何标准化的设计语言;

它的设计成果是通用的,IP核具有规范的接口协议。

良好的可移植和可测试性,为系统开发提供了可靠的保证;

(7)从电子设计方法学来看,EDA技术最大的优势就是能将所有设计环节纳入统一的自顶向下的设计方案之中;

(8)EDA不但在整个设计流程上充分利用计算机的自动设计能力,在各个设计层次上利用计算机完成不同内容的仿真模拟,而且在系统板设计结束后仍可利用计算机对硬件系统进行完整的测试。

2FPGA概述

2.1FPGA的简介

现场可编程门阵列,即FPGA(Field-ProgrammableGateArray),它由若干独立的可编程逻辑模块组成,具体包括输入输出模块IOB、可编程逻辑模块CLB、互连资源IR和一个用于存放编程数据的静态存储器。

它是在可编程器件的基础上进一步发展的产物,用户可以通过编程将这些模块连接成所需要的数字系统。

因为这些模块的排列形式和门阵列(GA)中单元的排列形式相似,所以沿用了门阵列这个名称。

FPGA属于高密度PLD,其集成度可达百万门片以上。

FPGA中除了个别的几个引脚外,大部分引脚都与可编程的IOB相连,均可根据需要设置成输入端或输出端。

每个CLB中都包含组合逻辑电路和存储电路(即触发器)两部分,可以设置成规模不大的组合逻辑电路或时序逻辑电路。

为了能将这些CLB灵活的连接成各种应用电路,在CLB指尖的布线区内配置了丰富的连线资源。

FPGA作为专用集成电路领域中的一种半定制电路,不仅克服了原有可编程器件门电路数有限的缺点,而且解决了定制电路的不足问题。

生产FPGA的公司有XILINX、TI、ALTERA等。

2.2FPGA设计交通灯的意义

FPGA是一个功能强大的可编程逻辑芯片,采用FPGA设计ASIC电路,用户不需要投片生产,就能得到所需的芯片。

FPGA内部有丰富的触发器和IO引脚。

FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。

FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。

所以用FPGA完成交通灯的设计合理可行。

3硬件描述语言VHDL

硬件描述语言HDL是EDA技术的重要组成部分,常见的HDL有下列几种:

VHDL、VerilogHDL、SystemVerilog、和SystemC。

其中VHDL、Verilog在现在EDA设计中使用最多,也得到几乎所有的主流EDA工具的支持。

VHDL的英文全名是VHSIC(VeryHighSpeedIntegratedCircuit)HardwareDescriptionLanguage,于1983年有美国国防部(DOD)发起创建,由IEEE(TheInstituteofElectricalandElectronicsEngineers)进一步发展并在1987年作为“IEEE标准1076”发布。

从此,VHDL成为硬件描述语言的业界标准之一。

自IEEE公布了VHDL的标准版本之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具支持VHDL。

此后VHDL在电子设计领域得到了广泛应用,并逐步取代了原有的非标准硬件描述语言。

VHDL语言具有很强的电路描述和建模能力,能从多个层次对数字系统进行建模和描述,从而大大简化了硬件设计任务,提高了设计效率和可靠性。

VHDL具有与具体硬件电路无关和设计平台无关的特性,并且具有良好的电路行为描述和系统描述的能力,在语言易读性和层次化结构化设计方面表现了强大的生命力和应用潜力。

用VHDL进行电子系统设计的一个很大优点是设计者可以专心致力于其功能的实现,而不需对不影响功能的与工艺有关的因素花费过多的时间和精力。

4QuartusII软件

4.1QuartusII简介

QuartusII是Altera提供的FPGACPLD开发集成环境,Altera是世界上最大的可编程逻辑器件供应商之一。

QuartusII在21世纪初推出,是Altera前一代FPGACPLD集成开发环境MAX+plusII的更新换代产品,其界面友好,使用便捷。

QuartusII提供了一种与结构无关的设计环境,使设计者能方便地进行设计输入、快速处理和器件编程。

Altera的QuartusII提供了完整的多平台设计环境,能满足各种特定设计的需要,也是单芯片可编程系统(SOPC)设计的综合性环境和SOPC开发的基本设计工具,并为AlteraDSP开发包进行系统模型设计提供了集成综合环境。

QuartusII包括模块化的编辑器。

编辑器包括的功能模块有分析综合器、适配器、装配器、时序分析器、设计辅助模块、EDA网表文件生成器、编辑数据接口等。

可以通过选择StartCompilation来运行所有的编辑器模块,也可以通过选择Start单独运行各个模块。

4.2基于QuartusII的设计流程

(1)建立工作库文件夹和编辑设计文件;

(2)创建工程;

(3)全程编译工程;

(4)时序仿真;

(5)引脚锁定;

(6)下载至硬件系统验证。

5系统设计与仿真

5.1系统介绍

设计交通灯是为了自动控制各个十字路口倒计时器和交通信号灯,从而使行人和各种车辆能够安全通过。

5.1.1设计任务

本论文通过设计一个十字路口的交通灯来形象指挥行人和车辆的安全通行。

十字路口处,方向分为东西南北四个方向。

东西方向的交通信号灯状态保持一致,南北方向的交通信号灯状态也保持一致。

其中每个方向有左转灯、红灯、绿灯和黄灯,共四盏。

左转灯亮说明车辆可以左转通行;

红灯亮说明禁止车辆直行和左转;

绿灯亮说明允许车辆直行和右转;

黄灯亮说明即将禁止车辆直行和左转。

在每个方向上均设有一个倒计时显示器,以显示禁止或允许通行的倒计时间。

十字路口交通灯如图5.1所示:

图5.1十字路口交通灯

5.1.2设计要求

在十字路口处,每组交通信号灯的显示顺序为:

左转绿黄红。

倒计时器显示相应方向上的绿灯、红灯倒计时间,其余状态不予显示。

左转、红、绿和黄灯点亮时间分别为15s、80s、45s、5s。

状态表如表5.1所示:

表5.1交通灯状态转换表

状态

S1

S2

S3

S4

S5

S6

南北方向

红左转

绿

亮灯时间

15

45

5

东西方向

亮灯时间

5.2系统设计仿真

本毕业论文设计是基于QuartusII软件,底层设计和顶层设计均采用VHDL进行描述设计,同时为了使设计变得形象简明,通过顶层设计生成了原理图。

5.2.1系统框图的设计

图5.2系统框图

系统框图由6部分组成,包括:

分频、控制、倒计时、红绿灯显示、译码、译码显示等模块。

5.2.2工程设计流程框图

图5.3工程设计流程框图

5.2.3芯片的选择

本毕业设计采用的是Altera公司CycloneII系列的EP2C5T144芯片作为核心最小系统,它可以方便嵌入到实际的交通灯应用系统中,可以完成简单的逻辑控制、数据采集、信号处理、数学计算等功能。

5.2.4各个模块的设计与仿真

5.2.4.1分频器模块设计(FPQ)

由于采用的FPGA芯片的时钟频率是50MHz,需要将其分频为1Hz。

该模块即是实现50M的分频,将频率变为1Hz的脉冲波,从而得到周期为1s的脉冲波。

其电路图如图5.4所示:

图5.4分频器电路图

如果要真正的实现分频50M,在仿真结果图中是很难观察的,甚至是没有办法验证的,故在仿真过程中,将分频的倍数变小,变为20分频,这样从图中可容易的得到并验证对时钟输入信号的20分频,如图5.5所示,Reset是复位信号,CLK_50MHz是输入时钟频率,CLK_1Hz是输出时钟频率,从图中可以看出,输出频率CLK_1Hz确实是输入时钟频率CLK_50MHz的20分频。

图5.5分频器仿真图

5.2.4.2状态控制模块设计(CONTROL_STATUS)

CONTROL_STATUS模块根据输入CLK_1Hz的脉冲信号输出不同的STATUS值,下游的模块依据STATUS的值来确定红绿灯的状态;

于此同时对倒计时信号赋初值。

其电路如图5.6所示:

图5.6状态控制模块电路图

在CONTROL_STATUS模块仿真图中,输入信号CLK是一个频率为1Hz的时钟脉冲信号,RESET是复位信号;

输出信号STATUS是状态转换信号,控制着下游交通信号灯显示模块的显示情况;

LOAD_EW、LOAD_SN是东西、南北方向倒计时开始控制信号,DJS_EW、DJS_SN是东西、南北方向倒计时间信号。

其仿真结果图如图5.7所示,由图可得,STATUS共有000(S1)、001(S2)、010(S3)、011(S4)、100(S5)、101(S6)共6个状态,80s为红灯和左转灯的倒计时间,45s为绿灯的倒计时间,5s是黄灯的倒计时间,和状态转换表的状态一致。

图5.7状态控制模块仿真图

5.2.4.3交通信号灯显示模块设计(DISPLAY_LIGHT)

交通信号灯显示模块根据输入的STATUS信号,输出对应的红绿黄灯信号,并直接驱动交通信号灯的亮灭。

其电路图如图5.8所示:

图5.8信号灯显示

在DISPLAY_LIGHT模块程序仿真结果图中,STATUS为输入信号,而它依赖于CONTROL_STATUS模块产生的信号STATUS信号,一种六种状态,依次为000(S1)、001(S2)、010(S3)、011(S4)、100(S5)、101(S6);

EW_LRGY(8位)是东西方向上交通信号灯的状态,SN_LRGY(8位)是南北方向上交通信号灯的状态,依次为左转、红、绿、黄,对应着EW_LRGY、SN_LRGY的前四位,‘1’表示点亮,‘0’表示熄灭,后四位均为0,表示四个灯的阴极接负极。

例如,在STATUS为001时,对应的是东西方向红灯亮,南北方向绿灯亮,仿真结果符合预期,完全正确。

图5.9信号灯显示仿真图

5.2.4.4东西方向倒计时模块设计(EW_DJS)

EW_DJS模块用来接收CONTROL_STATUS模块的输出并作为初值,每检测到一个CLK脉冲信号,就进行减一动作,最后把减一结果输出。

其电路图如图5.10所示:

图5.10东西方向倒计时电路图

在该模块仿真图中,CLK为1Hz的输入信号,LOAD_EW为计数器的装载信号,当其为高电平时,将输入信号DJS_EW_IN的值装载到计数器中,并开始进行减一操作,每遇一个CLK脉冲,进行一次减一操作,并将结果输出,由于输入的时钟频率是1Hz,所以显示的时间间隔是1s,与现实生活中的时间保持一致。

其仿真结果如图5.11所示,由图可得,该模块首先将80秒的倒计时信号装载进去,并进行减一操作。

图5.11东西方向倒计时仿真图

5.2.4.5南北方向倒计时模块设计(SN_DJS)

SN_DJS模块用来接收CONTROL_STATUS模块的输出并作为初值,每检测到一个CLK脉冲信号,就进行减一动作,最后把减一结果输出。

其电路图如图5.12所示:

图5.12南北方向倒计时电路图

在该模块仿真图中,CLK为1Hz的输入信号,LOAD_SN为计数器的装载信号,当其为高电平时,将输入信号DJS_SN_IN的值装载到计数器中,并开始进行减一操作,每遇一个CLK脉冲,进行一次减一操作,并将结果输出,由于输入的时钟频率是1Hz,所以显示的时间间隔是1s,与现实生活中的时间保持一致。

其仿真结果如图5.11所示,由图可得,该模块将45秒的倒计时信号装载进去,并进行减一操作。

图5.13东西方向倒计时仿真图

5.2.4.6译码模块设计(TO_8421_BCD)

TO_8421_BCD模块程序用来将输入的两位倒计时数值,分解成两个整形数值,以此供后面的译码显示模块DISPLAY_SMG译码显示。

其电路如图5.14所示:

图5.14译码模块电路图

在译码程序TO_8421_BCD模块仿真图中,DJS_EW_OUT,DJS_SN_OUT为上一倒计时模块的输出信号,其范围在0~80,所有倒计时的范围都包含其内;

DJS_EW_OUT_SW,DJS_EW_OUT_GW,DJS_SN_OUT_SW,DJS_SN

_OUT_GW为输出信号,其范围为0~9,代表了各个方向的倒计时的十位和个位,且数码管所有显示数字的范围均在其内。

例如图中DJS_EW_OUT的值不断变化,相应的依次将其分解为十位(DJS_EW_OUT_SW)和个位(DJS_EW_OUT_GW),并依次递减,仿真结果符合预期,完全正确。

仿真结果如图5.15所示:

图5.15译码仿真结果图

5.2.4.7译码显示模块设计(DISPLAY_SMG)

译码显示模块DISPLAY_SMG将上一模块TO_8421_BCD输出的四个一位数译码成相对应的七位数码管段码,完成倒计时的译码和显示。

其电

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 考试认证 > 其它考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1