交通信号灯智能控制和实现

来源:成考 发布时间:2020-09-11 点击:

  毕业设计( 论文)

 交通信号灯的智能控制与实现

  姓

 名

 智丹

 学

 号

 28010201028

 专业班级

 电子科学与技术

 所在学院

 电子信息学院

 指导教师(职称)王红航(----)

 完成时间

  2012 年 4 月

  电子科技大学中山学院教务处制发

 电子科技大学中山学院毕业设计(论文)任务书

  题目名称 交通信号灯的智能控制与实现

 设计(论文)的主要内容和要求 1、在十字路口有主干道(A 方向)和支干道(B 方向),安装有红、黄、绿三色信号灯,指挥车辆安全高效地通行。红、黄、绿三色灯分别代表禁止通行、公共停车及通行。

 2、主干道(A 方向)的通行时间为 50 秒,支干道(B 方向)的通行时间为 30 秒,公共停车时间(两方向的黄灯信号)为4 秒。

 3、主干道(A 方向)和支干道(B 方向)分别装有一个车辆检测传感器。当公路有车辆时,传感器输出为高电平,否则为低电平。当 A、B 两方向只有一个方向有车辆请求通过时,该方向的车辆通行。其它情况下 A、B 两方轮流通行。

 4、初始状态为 A 方向通行,B 方向禁止。

 推荐参考文献

 预期目标和成果形式 学会如何查阅资料,掌握电子电路设计并熟练掌握 EDA 设计流程,熟练 EDA 设计软件平台 QuartusⅡ的操作及硬件描述语言 VHDL 的应用。

 起止时间 2011 年 9 月 20 日至 2012 年 4 月 30 日

 指导单位

 指导教师 年

  月

  日 审核意见

 审核签名 年

  月

  日 电子科技大学中山学院毕业设计(论文)成绩评定表

  设计(撰写)过程 评语:

 【填写说明】:

 参考《电子科技大学中山学院毕业设计(论文)设计(撰写)过程参考评分标准》评定成绩和书写评语。

  指导教师评分满分 50 分,占毕业设计(论文)总成绩的 50%。

 指导教师:

 年

 月

  日 成绩

 论文评阅 评语:

 【填写说明】:

 参考《电子科技大学中山学院毕业设计(论文)评阅参考评分标准》评定成绩和书写评语。

  评阅教师评分满分 10 分,占毕业设计(论文)总成绩的 10%。

 评阅教师:

  年

 月

 日 成绩

 论文答辩 评语:

 【填写说明】:

 本栏目由答辩委员会(小组)认真阅读论文的基础上,考察学生在答辩现场的表现,参考《电子科技大学中山学院毕业设计(论文)答辩参考评分标准》评定成绩和书写评语。

 答辩成绩满分 40 分,占毕业设计(论文)总成绩的 40%。

 答辩组长:

  年

 月

 日 成绩

 总分

 审核人:

  年

 月

 日

 交通信号灯的智能控制与实现

 摘 要

 EDA 技术是依靠功能强大的电子计算机,在 EDA 工具软件平台上,对以硬件描述语言 HDL(Hardware Description Language)为系统逻辑描述手段完成的设计文件,自动的完成逻辑编辑、化简、分割、综合、优化和仿真,直至下载到 CPLD 器件,实现既定的电子电路设计功能。EDA 技术使得电子电路设计者的工作仅限于利用硬件描述语言和 EDA 软件平台来完成对系统硬件功能的实现,极大地提高了设计效率,缩短了设计周期,节省了设计成本。实现路口交通灯系统的控制方法很多,可以用标准逻辑器件,可编程控制器 PLC,单片机等方案老实现。但修改、调试这些控制功能都需要硬件电路的支持,在一定程度上增加了功能修改及系统调试的困难。因此,在设计中采用 EDA 技术,应用目前广泛应用的 VHDL 硬件电路描述语言,实现交通灯系统控制器的设计,利用 Altera 公司的 Quartus II软件集成开发环境进行综合、仿真,并下载到 CPLD 中完成系统的控制作用。交通灯是城市交通监管系统的和总要组成部分,对于保证机动车辆的安全运行,维持城市道路的顺畅起到了重要作用。目前很多城市交叉路口的交通灯实行的是定时控制,灯亮的和时间是预先预定好的,在时间和空间方面的应变性能较差,一定程度上造成了交通资源的浪费,加重了道路交通压力。

 实现利口交通灯的控制方法很多。本文通过综合分析与比较后确定 EDA 技术为本文欲采取的最佳设计方案然后用 VHDL 硬件描述语言分别对各个模块进行参数设计以及软件编程。将硬件电路与软件编程相结合使得各个模块的实现功能变得详实而具体。本文在最后对各个部分调试过程中出现的问题和也进行了描述以及提供了解决的办法。而且给出了部分模块波形仿真图。使整个设计实现主干道同行 50 秒,副干道同行 30 秒,公共停车

 时间为 4 秒,并且在每一个干道上安装了一个传感器,方便检测车辆的同行进而来控制哪个方向车辆的同行。

 关键词:可编程逻辑器件(CPLD);EDA 技术;VHDL。

  The traffic lights of intelligent control and implementation

 Abstract

 EDA technology relies on powerful computers, EDA tools software platforms, hardware describing language HDL(Hardware Description Language), Complete design documents for the logical means of describing the system, auto-completion logic Editor, simplification, segmentation, optimization and simulation of integrated, until the download to a CPLD devices, electronic circuit design achieve function. EDA technology enables electronic circuit designers work is limited to the use of hardware description languages, and EDA software platform for system realization of hardware function, greatly increasing design efficiency, shorten the design cycle, design for cost savings. Realization of intersection traffic lights system control method alot, can use the standard logic devices, PLC programmable controller, programmes such as the old single-chip microcomputer realization. But the functionality of these control methods to modify and debug requires hardware support, to a certain extent, increase the functional modification and system debugging difficult. Therefore, using EDA technology in the design, applications widely used the VHDL hardware description language, implementation of traffic light controller design, use of Altera"s Quartus IIsoftware is an integrated development environment for synthesis, simulation, and complete system control downloads to a CPLD. Traffic lights are and always part of urban traffic control system, guarantee the safe operation of motor vehicles, maintaining smooth city roads has played an important role. Traffic lights at the intersection of many cities to implement is the timer control, light and time are scheduled well in advance, the strain of poor performance in terms of time and space, causing traffic to a certain extent the waste of resources andincreased road traffic.

 Many achieve Swiss herb candy of traffic signal control method. EDA technology when it was through comprehensive analysis and comparison of this article as this article wants to take the best design and then use VHDL hardware description language parameter design and software programming for each module individually. Combination of hardware circuit and software programming for the module function isdetailed and specific. In the last section of this article appears in the debugging process and describes the problem and provides a solution approach. And portions are given waveform simulation.

 Make whole design main realize peer 50 seconds, vice trunk road peer 30 seconds, public parking time for 4 seconds, and in every road install sensors, convenient detection of vehicle and to control which direction with vehicle peers.

 Keywords: control programmable logic (CPLD), EDA technology, VHDL.

  目 录

 1 1

 绪论

 ................................ ................................ ................................ ................................ ..........................

 0 0

 1.1

 引言 ..................................................................................................................................................... 0

 1.2

 国内研究现状 .................................................................................................................................. 1

 1.3

 课题研究的目的和意义 ................................................................................................................ 2

 2 2

 L VHDL 电路理论

 ................................ ................................ ................................ ................................. ...

 3 3

 2.1

 硬件描述语言介绍 ......................................................................................................................... 3

 2.2

 VHDL 语言的特点 ......................................................................................................................... 4

 2.3

 VHDL 语言的开发流程 ................................................................................................................ 5

 2.4

 可编程逻辑器件简介 ..................................................................................................................... 6

 2.5

 CPLD 概述 ........................................................................................................................................ 7

 2.6

 EDA 方案的确定 ............................................................................................................................ 9

 2.7

 小结 ................................................................................................................................................... 10

 3 3

 十字路口设计

 ................................ ................................ ................................ ................................ ......

 11

 3.1

 系统的功能 ..................................................................................................................................... 11

 3.2

 系统的功能 ..................................................................................................................................... 11

 3.2.1

 硬件设计 .................................................................................................................................. 12

 3.2.2

 设计要求 .................................................................................................................................. 12

 3.2.3

 系统设计 .................................................................................................................................. 14

 3.2.4

 红绿灯交通控制器的层次化设计方案 ........................................................................... 15

 4 4

 系统的仿真与实现

 ................................ ................................ ................................ .............................

 18

 4.1

 仿真环境 .......................................................................................................................................... 18

 4.2

 验证流程 .......................................................................................................................................... 18

 4.3

 仿真验证的实现 ............................................................................................................................ 18

 4.3.1

 对分频器模块的仿真与验证 ............................................................................................. 18

 4.3.2

 对传感器模块的仿真与验证 ............................................................................................. 18

 4.3.3

 对控制器模块的仿真与验证 ............................................................................................. 19

 4.3.4

 对显示器模块的仿真与验证 ............................................................................................. 20

 4.4

 小结 ................................................................................................................................................... 20

 5 5

 交通灯的应用

 ................................ ................................ ................................ ................................ ......

 21

 5.1

 硬件电路设计 ................................................................................................................................ 21

 5.1.1

 系统主芯片 ............................................................................................................................. 21

 5.1.2

 交通灯显示电路 .................................................................................................................... 21

 5.1.3

 传感器控制电路 .................................................................................................................... 22

 5.2

 VHDL 程序开发平台 ................................................................................................................... 22

 5.3

 VHDL 程序的设计 ....................................................................................................................... 22

 5.3.1

 显示器部分 ............................................................................................................................. 22

 5.3.2

 控制器部分 ............................................................................................................................. 23

 5.4

 综合验证以及结论 ....................................................................................................................... 25

 结论

 ................................ ................................ ................................ ................................ ...............................

 27

 致

 谢

 ................................ ................................ ................................ ................................ ...........................

 28

 参考文献

 ................................ ................................ ................................ ................................ ......................

 29

 附

 录

 ................................ ................................ ................................ ................................ .............................

 30

 1 绪论 1.1 引言 随着城市化的进程加快和汽车的普及,交通拥挤加剧,事故频发,环境日益恶化,交通问题已经成为困扰全世界的严重问题。交通秩序的恶化已影响了现代化的城市建设和国民经济的发展。其中交通灯信号是管理网络的最重要的因素,而街道的路口又是车辆通行瓶颈所在。研究车辆的通行规律,根据实际情况制定相应的通行规则对缓解交通阻塞,提高路口车辆通行的效率具有非常重要的意义。本文就是通过对城市十字路口各交通灯的控制情况进行分析,找出共同的特征和规律,并用逻辑控制的思想制定相应的交通规则,以保证各路口车辆的顺利进行。

 20 世纪末,数字电子技术飞速发展,有力地推动和促进了社会生产力的发展和社会信息化的提高,数字电子技术经渗透到人类生活的各个方面。从计算机到手机,从数字电话到数字电视,从家用电器到军用设备,从工业自动化航天技术,都尽可能采用了数字电子技术。现代电子设计技术的核心是 EDA 技术。EDA(电子设计自动化)技术就是以计算机为工具,在 EDA 软件平台上,对硬件语言 HDL 为系统逻辑描述手段完成的设计文件,自动的完成一系列准确的测试与仿真操作,大大提高了大规模系统电子设计的自动化程度。应用硬件描述语言(VHDL)的优势即可以直接从程序中修改错误及系统功能而不需要硬件电路的支持。

 实现路口交通灯系统的控制方法很多,可以用标准逻辑器件,可编程控制器 PLC,单片机等方案来是实现。在选择用 VHDL 语言来设计之前,我已经用单片机实现了课题所用的功能,并且做成了实物,如图 1.1 所示,但是这些控制方法的功能修改及调试都需要硬件电路的支持,在一定程度上增加了功能的修改以及系统调试的困难。因此,在设计中采用 EDA 技术,应用目前广泛应用的 VHDL 硬件电路描述语言,实现交通灯系统控制器的

 设计,利用 Altera 公司的 Quartus II 软件集成开发环境进行综合、仿真,并下载到 CPLD中完成系统的控制作用。将 EDA 技术用于智能交通登上,可对交通等的各种情况进行一一地编程、测试与分析,从而完成对整个十字路口交通灯系统设计。EDA 技术的实现,极大地提高设计效率,缩短了设计周期,节省了设计成本。

 1.2 国内研究现状 目前,国内的交通灯一般设在十字路门,在醒目位置用红、绿、黄三种颜色的指示灯。加上一个倒计时的显示计时器来控制行车。对于一般情况下的安全行车,车辆分流尚能发挥作用,但根据实际行车过程中出现的情况,还存在以下缺点:1.两车道的车辆轮流放行时间相同,在十字路口,经常一个车道为主干道,车辆较多,放行时间应该长些;另一车道为副干道,车辆较少,放行时间应该短些。2.两条干道的红绿时间不能随时间的改变而修改。

 实现路口交通灯系统控制的方法很多,可以用标准逻辑器件、可编程控制器 PLC、单片机等方案来实现。使用单片机则利用 89C51 为控制核心来实现交通灯智能控制,其通讯方式较少,且为固定方式;PLC 多半与模糊控制相结合,设计出模糊控制器;但是这些控制方法的功能修改都需要硬件电路的支持,在一定程度上增加了设计难度。在国外几个先进的国家已经采用智能方式来控制交通信号,其中主要运用 GPS 全球定位系统等,但相对来说成本较高。不适合国内目前的发展状况。但随着 EDA 技术的出现,人们可以在没有设计电路之前就把 CPLD 或 FPGA 焊接在印刷电路板上,然后利用 VHDL 语言随心所欲地改变整个电路的硬件逻辑关系而不必改变电路板的布局布线。利用 FPGA 的可重复编程和动态系统结构的特性,大大地提高了数字系统设计的灵活性和通用性。EDA 是指以计算机为工作平台,融合应用电子技术、计算机技术、智能化技术最新成果而研制成的电子 CAD通用软件包,主要能辅助进行三方面的设计工作:IC 设计,电子电路设计,PCB 设计。随

 着电子技术的发展,EDA 技术已广泛应用于机械、电子、通信、航空航天、化工、破产、生物、医学、军事等各个领域。以前,大多采用通用的逻辑元器件进行设计,这导致了设计和调试过程中系统性稳定不高,非常不便。如今,随着以 FPGA 和 CPLD 为代表的可编程 ASIC 技术的日趋成熟和完善,用户完全可以根据自己的要求,以 EDA 技术作为开发手段,用一块 FPGA 或 CPLD 设计出符合自己需要的芯片。FPGA 在现代通信领域方面获得广泛应用。

 1.3 课题研究的目的和意义 可编程逻辑设计是近年来电子设计领域中出现的一门新技术,它把复杂的数字系统转化为用一两个可编程逻辑器件即可实现的“片上”系统;把系统的更新换代转化为简单的在系统编程设计;把后期的系统调试转移到设计实现之前在计算机上进行的时序仿真。这种新的技术将使硬件设计向软件化方向发展,大大简化数字系统的开发过程,使数字系统不再需要大量不同种类的芯片及芯片之间的复杂连线,不再需要一次又一次地调试硬件电路并反复修改、制作电路。有效地减少系统体积,增加系统的可靠性,而且缩短开发周期,降低研制成本,基于 PLD 的设计具有串、并行工作方式和高速、高可靠性、规模大、设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定等优点,因而在电子系统中得到广泛的应用。本文利用 VHDL 硬件描述语言,以及 SOPC 嵌入式设计,并通过 QuartusII 软件和 Altera 公司的 MAX

 II 系列 CPLD 完成了交通灯控制系统的设计,并对结果进行了模拟仿真。

 随着社会经济的发展,城市交通问题越来越引起人们的关注。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代交通监管系统的重要组成部分,本文应用 CPLD 设计实现交通灯控制功能。

  2 VHDL 电路理论 2.1 硬件描述语言介绍 硬件描述语言 HDL 是一种用形式化方法描述数字电路和系统的语言。利用这种语言,数字电路系统的设计可以从上层到下层(从抽象到具体)逐层描述自己的设计思想,用一系列分层次的模块来表示极其复杂的数字系统。然后,利用电子设计自动化(EDA)工具,逐层进行仿真验证,再把其中需要变为实际电路的模块组合,经过 Quartus II 软件工具把实现的具体电路结构的配置信息下载到 CPLD 器件中,实现相应的电路功能。

 目前,这种高层次(high-level-design)的方法已被广泛采用。据统计,目前在美国硅谷约有 90%以上的 ASIC 和 FPGA 采用硬件描述语言进行设计。

 硬件描述语言 HDL 的发展至今已有 20 多年的历史,并成功地应用于设计的各个阶段:建模、仿真、验证和综合等。到 20 世纪 80 年代,已出现了上百种硬件描述语言,对设计自动化曾起到了极大的促进和推动作用。但是,这些语言一般各自面向特定的设计领域和层次,而且众多的语言使用户无所适从。因此,急需一种面向设计的多领域、多层次并得到普遍认同的标准硬件描述语言。20 世纪 80 年代后期,VHDL 和 Verilog HDL 语言适应了这种趋势的要求,先后成为 IEEE 标准。

 现在,随着系统级 FPGA 以及系统芯片的出现,软硬件协调设计和系统设计变得越来越重要。传统意义上的硬件设计越来越倾向于与系统设计和软件设计结合。硬件描述语言为适应新的情况,迅速发展,出现了很多新的硬件描述语言,像 Superlog、SystemC、Cynlib C++等等。究竟选择哪种语言进行设计,整个业界正在进行激烈的讨论。因此,完全有必要在这方面作一些比较研究,为 EDA 设计做一些有意义的工作,也为发展我们未来的芯片设计技术打好基础。

 2.2 VHDL 语言的特点 VHDL 语言能够成为标准化的硬件描述语言并获得广泛应用 , 它自身必然具有很多其他硬件描述语言所不具备的优点。归纳起来 ,VHDL 语言主要具有以下优点:

 (1)

 VHDL 语言功能强大 , 设计方式多样

 VHDL 语言具有强大的语言结构, 只需采用简单明确的 VHDL 语言程序就可以描述十分复杂的硬件电路。同时, 它还具有多层次的电路设计描述功能。此外 ,VHDL 语言能够同时支持同步电路、异步电路和随机电路的设计实现, 这是其他硬件描述语言所不能比拟的。VHDL 语言设计方法灵活多样 , 既支持自顶向下的设计方式, 也支持自底向上的设计方法; 既支持模块化设计方法, 也支持层次化设计方法。

 (2)

 VHDL 语言具有强大的硬件描述能力

 VHDL 语言具有多层次的电路设计描述功能,既可描述系统级电路 , 也可以描述门级电路;描述方式既可以采用行为描述、寄存器传输描述或者结构描述,也可以采用三者的混合描述方式。同时,VHDL 语言也支持惯性延迟和传输延迟,这样可以准确地建立硬件电路的模型。VHDL 语言的强大描述能力还体现在它具有丰富的数据类型。VHDL 语言既支持标准定义的数据类型,也支持用户定义的数据类型,这样便会给硬件描述带来较大的自由度。

 (3)

 VHDL 语言具有很强的移植能力

 VHDL 语言很强的移植能力主要体现在: 对于同一个硬件电路的 VHDL 语言描述 , 它可以从一个模拟器移植到另一个模拟器上、从一个综合器移植到另一个综合器上或者从一个工作平台移植到另一个工作平台上去执行。

 (4)

 VHDL 语言的设计描述与器件无关

 采用 VHDL 语言描述硬件电路时, 设计人员并不需要首先考虑选择进行设计的器

 件。这样做的好处是可以使设计人员集中精力进行电路设计的优化, 而不需要考虑其他的问题。当硬件电路的设计描述完成以后 ,VHDL 语言允许采用多种不同的器件结构来实现。

 (5)

 VHDL 语言程序易于共享和复用

 VHDL 语言采用基于库 ( library) 的设计方法。在设计过程中 , 设计人员可以建立各种可再次利用的模块 , 一个大规模的硬件电路的设计不可能从门级电路开始地进行设计 , 而是一些模块的累加。这些模块可以预先设计或者使用以前设计中的存档模块, 将这些模块存放在库中 , 就可以在以后的设计中进行复用。

 由于 VHDL 语言是一种描述、模拟、综合、优化和布线的标准硬件描述语言 , 因此它可以使设计成果在设计人员之间方便地进行交流和共享, 从而减小硬件电路设计的工作量, 缩短开发周期。

 2.3 VHDL 语言的开发流程 应用 VHDL 进行数字电路和系统的开发,必须利用支持这种硬件描述语言的开发工具。目前各 EDA 公司的开发环境都支持 VHDL 语言,因此 VHDL 可以在多种开发流程,使读者有一个大致的了解。

 一个简单的 VHDL 工程设计流程主要包括设计输入、综合、仿真、适配、下载、硬件测试等步骤,一般的流程如图 2.3 所示:

 图 2.3 使用 HDL 进行工程设计的一般步骤

 a) 文本编辑:用任何文本编辑器都可以进行,也可以专用的 HDL 编辑环境。通常 VHDL 文件保存为.vhd 文件。

 b) 功能仿真:将文件调入 HDL 仿真软件进行功能仿真,检查逻辑功能是否正确(也 叫前仿真,对简单的设计可以跳过这一步,只在布线完成以后,进行时序仿真)

 c) 逻辑综合:将源文件调入逻辑综合软件进行综合,即把语言综合成最简单的布尔 表达式,逻辑综合软件会生成.edf 或.edif 的 EDA 工业标准文件。

 d) 布局布线:将.edf 文件调入 PLD 厂家提供的软件中进行布线,即把设计好的逻辑 安放到 CPLD 内。

 e) 时序仿真:需要利用在布局布线中获得的精确参数,用仿真软件验证电路的时序。

 (也叫后仿真)

 通常以上过程可以都在 CPLD/FPGA 厂家提供的开发工具(如 MAXPLUSII)中完成,但如果采用专用 HDL 工具分开执行,效果会好得多,否则这么多出售 HDL 开发工具的公司就没有存在的理由了。如果前述所有步骤没有问题,功能仿真和时序仿真结果都完全符合系统设计要求,就可以对设计进行编程下载了。所谓编程下载,即将适配后得到的网表文件,也就是最终的下载文件通过编辑器或下载电缆装配到具体的实现芯片(CPLD 或FPGA)中去,得到最终的硬件电路。当然,还需要对硬件电路进行最后的硬件测试,测试得到的电路系统是否完全满足系统设计要求。

 2.4 可编程逻辑器件简介 早期的可编程逻辑器件只有可编程只读存贮器(PROM)、紫外线可按除只读存贮器(EPROM)和电可擦除只读存贮器(EEPROM)三种。由于结构的限制,它们只能完成简单的数字逻辑功能。

 其后,出现了一类结构上稍复杂的可编程芯片,即可编程逻辑器件(PLD),它能够完

 成各种数字逻辑功能。典型的 PLD 由一个“与”门和一个“或”门阵列组成,而任意一个组合逻辑都可以用“与一或”表达式来描述,所以, PLD 能以乘积和的形式完成大量的组合逻辑功能。

 这一阶段的产品主要有 PAL(可编程阵列逻辑)和 GAL(通用阵列逻辑)。

 PAL 由一个可编程的“与”平面和一个固定的“或”平面构成,或门的输.出可以通过触发器有选择地被置为寄存状态。

 PAL 器件是现场可编程的,它的实现工艺有反熔丝技术、EPROM 技术和 EEPROM 技术。还有一类结构更为灵活的逻辑器件是可编程逻辑阵列(PLA),它也由一个“与”平面和一个“或”平面构成,但是这两个平面的连接关系是可编程的。

 PLA 器件既有现场可编程的,也有掩膜可编程的。

 在 PAL 的基础上,又发展了一种通用阵列逻辑 GAL (Generic Array Logic),如 GAL16V8,GAL22V10 等。它采用了 EEPROM 工艺,实现了电可按除、电可改写,其输出结构是可编程的逻辑宏单元,因而它的设计具有很强的灵活性,至今仍有许多人使用。

 这些早期的 PLD 器件的一个共同特点是可以实现速度特性较好的逻辑功能,但其过于简单的结构也使它们只能实现规模较小的电路。

 为了弥补这一缺陷,20 世纪 80 年代中期。

 Altera 和 Xilinx 分别推出了类似于 PAL 结构的扩展型 CPLD(Complex Programmab1e Logic Device)和与标准门阵列类似的 FPGA(Field Programmable Gate Array),它们都具有体系结构和逻辑单元灵活、集成度高以及适用范围宽等特点。

 这两种器件兼容了 PLD 和通用门阵列的优点,可实现较大规模的电路,编程也很灵活。与门阵列等其它 ASIC(Application Specific IC)相比,它们又具有设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及可实时在线检验等优点,因此被广泛应用于产品的原型设计和产品生产(一般在 10,000 件以下)之中。几乎所有应用门阵列、PLD 和中小规模通用数字集成电路的场合均可应用 FPGA 和 CPLD 器件。

 2.5 CPLD 概述

 随着复杂可编程逻辑器件(CPLD)密度的提高,数字器件设计人员在进行大型设计时,既灵活又容易,而且产品可以很快进入市场。许多设计人员已经感受到 CPLD 容易使用、时序可预测和速度高等优点,然而,在过去由于受到 CPLD 密度的限制,他们只好转向 FPGA 和ASIC。现在,设计人员可以体会到密度 高达数十万门的 CPLD 所带来的好处。

 CPLD结构在一个逻辑路径上采用1至16个乘积项,因而大型复杂设计的运行速度可以预测。因此,原有设计的运行可以预测,也很可靠,而且修改设计也很容易。CPLD 在本质上很灵活、时序简单、路由性能极好,用户可以改变他们的设计同时保持引脚输出不变。

 如今,通信系统使用很多标准,必须根据客户的需要配置设备以支持不同的标准。CPLD可让设备做出相应的调整以支持多种协议,并随着标准和协议的演变而改变功能。这为系统设计人员带来很大的方便,因为在标准尚未完全成熟之前他们就可以著手进行硬件设计,然后再修改代码以满足最终标准的要求。CPLD 的速度和延迟特性比纯软件方案更好,它的NRE 费用低于 ASIC,更灵活,产品也可以更快入市。

 CPLD 可编程方案的优点如下:

 ●带冗余路由资源的灵活时序模型 ●改变引脚输出很灵活 ●可以装在系统上后重新编程 ●I/O 数目多 ●具有可保证性能的集成存储器控制逻辑 ●提供单片 CPLD 和可编程 PHY 方案 由于有这些优点,设计建模成本低,可在设计过程的任一阶段添加设计或改变引脚输出,可以很快上市。

 CPLD 是属于粗粒结构的可编程逻辑器件。它具有丰富的逻辑资源(即逻辑门与寄存器

 的比例高)和高度灵活的路由资源。并以群阵列(array of clusters)的形式排列,由水平和垂直路由通道连接起来。这些路由通道把信号送到器件的引脚上或者传进来,并且把 CPLD 内部的逻辑群连接起来。

 2.6 EDA 方案的确定 随着集成技术的发展,FPGA、CPLD(现场可编程门阵列\复杂可编程逻辑器件)在EDA(电子设计自动化)基础上的广泛应用,在更高层次上包含了数字技术的优秀部分,向单片机技术进行了挑战。

 FPGA\CPLD 是一种新兴的高密度的可编程逻辑器件,它具有门阵列的高密度和 PLD器件的灵活性和易用性。它最大的特点就是可通过软件变化曾对其器件的结构和工作方式进行重构,能随时进行设计调整而满足产品升级,使得硬件的设计可以如软件设计一样方便快捷,从而改变了传统数字系统及用单片机构成的数字系统的设计方法、过程及观念,使电子设计的技术操作和系统构成在整体上发生了质的飞跃。

 采用 FPGA\CPLD 可编程器件,可利用计算机软件的方式对目标器件进行设计,而以硬件的形式实现。既定的系统功能在设计过程中可根据需要随时改变器件的内部逻辑功能和管脚的信号方式,借助于大规模集成的 FPGA\CPLD 和高效的设计软件,用户不仅可通过直接多芯片结构的设计实行多种数字逻辑系统功能,而且由于管脚定义的灵活性,大大减轻了电路图设计和电路板设计的工作量和难度。同时,这种基于可编程芯片的设计大大减少了系统芯片的数量,缩小了系统的体积,提高了系统的可靠性。

 EDA 技术就是以计算机为工具,在 EDA 软件平台上,对以硬件描述语言 VHDL 为系统逻辑描述手段,完成的设计文件自动完成逻辑编译、逻辑化简、逻辑综合及优化、逻辑仿真,直至对特点目标芯片的适配编译、逻辑映射和编程下载等工作。EDA 的仿真测试技术只需要通过计算机就能对所涉及的电子系统从各种不同层次的系统性能特点完成一系

 列准确的测试与仿真操作,大大提高了大规模系统电子设计的自动化程度。设计者的工作仅限于利用软件方式即 VHDL 语言来完成系统硬件功能的描述,在 EDA 工具的帮助下就可以得到最后的设计结果,这使得对整个硬件系统的设计和修改过程如同完成软件设计一样方便、高效。

 2.7 小结 本章通过对 EDA 技术以及 VHDL 语言的回顾,最后确定了方案,思路条理清晰,使毕业设计有头绪、有计划的完成。

  3

 十字路口设计 3.1 系统的功能 交通灯控制系统主要是实现城市十字交叉路口红绿灯的控制。在现代化的大城市中,十字交叉路口越来越多,在每个交叉路口都需要使用红绿灯进行交通指挥和管理,红绿灯的转换要有一个准确的时间间隔和转换顺序,这就需要有一个安全、自动的系统对红绿灯的转换进行管理,本系统就是基于此目的而开发的。交通灯是城市交通监管系统的重要组成部分,对于保证机动车辆的安全运行,维持城市道路的顺畅起到了重要作用。目前很多城市交叉路口的交通灯实行的是定时控制,灯亮的时间是预先设定好的,但在时间和空间方面的应变性能很差,一定程度上造成了交通资源的浪费,加重了道路交通压力。本文在EDA 技术的基础上利用 CPLD 的相关知识设计了交通灯控制系统,可以根据实际情况对灯亮时间进行自由调整,整个设计系统通过 Quartus II 件进行了模拟仿真,并下载到 CPLD器件中进行硬件的调试,验证了设计的交通信号灯控制电路完全可以实现预定的功能,具有一定的实用性。

 3.2 系统的功能

 3.2.1 硬件设计

 图 3.1 硬件设计的原理图

 3.2.2 设计要求 由主干道和支干道的汇合点形成十字交叉路口,分别为 A(南北)向,B(东西)向。为确保车辆安全,迅速地通行,在交叉道口的每个人口处设置了红绿双色信号灯。

 具体要求如下:

 (1)

 设计说明 在十字路口共分成 4 种情况:A 向直走,A 向转弯,B 向直走和 B 向转弯。具体通行情况如下图所示:

 a. A(南北)向直走

  图 3-2-2 a)

 A 向直走示意图 b. A(南北)向转弯

 图 3-2-2 b)

 A 向转弯示意图 c. B(东西)向直走

 图 3-2-2 c)

 B 向直走示意图 d. B(东西)向转弯

  图 3-2-2 d)

 B 向转弯示意图 (2)

 信号 A. 输入信号:

 基准时钟(CLK):50MHz 系统复位信号(RST)

 备用时钟信号

 B. 输出信号:

 路口时间显示信号 控制台时间显示信号 路口方向指示信号 3.2.3 系统设计 整个系统的最重要的部分应该说是时间寄存器了。因为在整个系统的工作过程中都是在对时间寄存器的读取或者是改写来完成的,当控制台改变时间后并不会在路口马上体现出来,而是在下一次到达被改变时间的状态时才会显现出来,这样就不会因为时间的改变而出现同一路口显示时间不停变化的现象。

 经过我对整个设计的分析和讨论,得出了整个系统的工作方式的具体框图如下图:

 图 3.2 整个系统工作流程图 3.2.4 红绿灯交通控制器的层次化设计方案 在整个系统的设计和调试过程中采用层次化设计方案。这样既可以从顶层原来图直观的看出各个模块和相应的功能,也可以对每一个功能模块进行单独编辑以实现想要实现的功能。这样做的好处是出现问题是不会盲目地去一个一个模块地排查,只需针对表现的问题进行简单的分析便可以轻松地找出问题可能出现在那个模块,然后对相应的模块进行检查即可。这样提了开发效率,也避免了很多不必要的麻烦。

 开机 路面指示信息 时间显示 交通灯 各个模块初始化 时间寄存器 系统时钟 输入模块 输出控制 时间寄存控制台时间显

 其中主要包含 4 个独立模块。分别是:

 a) 分频器 该模块主要对 54MHz 的输入时钟进行分频处理,得到 1KHz 的时钟信号。1KHz 用于给其他模块提供工作时钟具体模块如下图:

  图 3.3 分频器模块 具体类别程序见附录。

 b) 传感器 该模块主要用于路口各个状态所需时间的寄存。在改变某个方向指示灯时间时,只需要对该寄存器进行相应的计数即可。这样在路口进入下一状态时会自动从这里读取最新的通行时间。模块图如下:

 图 3.4 传感器模块 模块相应程序见附录 c) 控制台控制和显示 该模块主要是对当前每个状态时间进行显示。还有一些输入接口,但输入接口只是通过该模块进入主控芯片,并没有在该模块对输入信号进行处理。模块框图如下:

  图 3.5 控制台控制和显示模块

 d) 交通路口显示 该模块的功能主要是对等待时间进行显示和交通指示灯进行显示,以给过往车辆和行人提供一个通行的信号。内部有时间递减及交通灯扫描功能。模块框图如下:

 图 3.6 交通路口显示模块

  4

 系统的仿真与实现 4.1 仿真环境 在 Windows XP SP3 操作系统下采用 QuartusII(v7.2)软件进行设计和仿真。QuartusII 是Altera 公司的综合性 PLD 开发软件,支持原理图、VHDL、VerilogHDL 以及 AHDL 等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整设计流程。

 4.2 验证流程 针对集成电路设计的流程,选择相应的验证方法来验证设计是否满足功能和时序要求。对系统进行验证时应采用了如图 4.6 所示的 FPGA 验证流程 。

 4.3 仿真验证的实现 下面对交通灯各个模块及整体设计图分别进行了仿真验证。

 4.3.1 对分频器模块的仿真与验证 分频器模块是将 54MHZ 的输入时钟进行分频处理,得到 1KHz 和 1HZ 的时钟信号。其中 1KHZ 是给其他模块提供工作时钟的,仿真波形图如下:

  4.3.2 对传感器模块的仿真与验证 1.当 QA 输出为逻辑"1"时,必须满足以下几个条件:①,A1 与 A2 口任意口中只有一个有逻辑"0"输入;②,B1 与 B2 输入的逻辑值都为"1";③,A1 和 A2 同时为逻辑"0"的次数为偶次时。

 2.A 的逻辑值由‘A <= not(A1 and A2)’算式决定,及 A1 和 A2 中有至少一个逻辑"0"的输入。nA 为 A 的逻辑反。QB,B,nB 的情况和上面同理可得。

  图 4.1 传感器模块的仿真图

 4.3.3 对控制器模块的仿真与验证

  State 的值总共有 0 到 7 这 8 种状态,当 sA 口输入逻辑"1"时,state 的值从 0 变化到 7;当 sB 口输入逻辑"1"时,state 的值从 4 变化到 7。

  当 state 的值是 0 时,AG 表示秒信号,AS 是 10 秒为一个单位的信号,从 2 到 0 变化即变化 20 秒;当 state 的值是 2 或 4 时,AS 从 1 到 0 变化即 10 秒;BG,BS 的分析同上。当 state 的值是 1、3、5、6、7时,AS 的值为 0。

  图 4.2 使用 HDL 进行工程设计的一般步骤

  图 4.3 使用 HDL 进行工程设计的一般步骤

  图 4.4 使用 HDL 进行工程设计的一般步骤 4.3.4 对显示器模块的仿真与验证

  显示模块的主要功能是译码显示,AB 是要显示的 0 到 9 的值,D0 到 D3 是数码管的位选,使能那个数码管,AC,AS 为临时译码值,QD 选中的数码管编号。B 组同上。

 图 4.5 使用 HDL 进行工程设计的一般步骤

  图 4.6 使用 HDL 进行工程设计的一般步骤 4.4 小结 通过对分频器模块、传感器模块、控制器模块和显示器模块的仿真和对仿真波形的分析,验证了分频器模块、传感器模块、控制器模块和显示器模块的正确性。

  5 交通灯的应用 利用 VHDL 实现交通灯的设计,以此验证在硬件上的实际运行效果。

 5.1 硬件电路设计 5.1.1 系统主芯片 系统主芯片是:altera CPLD MAXII EPM1270T144 核心板 5.1.2 交通灯显示电路

 图 5.1 使用 HDL 进行工程设计的一般步骤

 5.1.3 传感器控制电路

 图 5.2 使用 HDL 进行工程设计的一般步骤

 5.2 VHDL 程序开发平台 使用的是 altera 公司的 QuartusII,该软件被广泛用于 VHDL 语言的程序开发,使用起来简单易上手,而且能够进行调试、仿真。

 5.3 VHDL 程序的设计 对于 EDA 的的程序设计,这里给出了显示器模块和控制器模块的部分的程序片段。

 5.3.1 显示器部分 显示器的程序片段如下:

 entity display s is

  port(CLK:

  n in std_logic ;

  AB:

  n in std_logic_vector (2 downto 0);

  D0,D1,D2,D3:n in std_logic_vector (3 downto 0);

  QD,QW:

 out std_logic_vector (3 downto 0);

  AS,AC,BS,BC: out bit_ve ctor (1 downto 0)

  ); end entity;

 architecture one of display s is signal tAS,tAC,tBS,tBC: bit_vector (1 downto 0); signal ttW: integer

 range 0 to 3:=0;

 signal tD,tW: std_logic_vector (3 downto 0); begin cp: process(CLK,AB)

  begin

  f if CLK" event

 and

 CLK ="1" then

  case AB s is

  --red 01 green 10 yellow 11

 when "000"

 => tAS <= "10";tAC <= "01";tBS <= "01";tBC <= "01";

  when "001"

 => tAS <= "11";tAC <= "01";tBS <= "01";tBC <= "01";

  when "010"

 => tAS <= "01";tA...

推荐访问:信号灯 交通
上一篇:计划生育工作计划例文汇总合集
下一篇:美容院一线科技部仪器操作师薪资制度

Copyright @ 2013 - 2018 优秀啊教育网 All Rights Reserved

优秀啊教育网 版权所有