1 前言
随着社会经济的发展,城市交通问题越来越引起人们的关注。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分,所以,如何采用合适的控制方法,最大限度利用好耗费巨资修建的城市高速道路,缓解主干道与匝道、城区同周边地区的交通拥堵状况,已经成为交通运输管理和城市规划部门亟待解决的主要问题。[5]
实现路口交通灯系统的控制方法很多,可以用标准逻辑器件、可编程控制器PLC、单片机等方案来实现。但是这些控制方法的功能修改及调试都需要硬件电路的支持,在一定程度上增加了功能修改及系统调试的困难。而基于FPGA(即现场可编程门阵列)的交通灯控制系统完成了对系统硬件功能的实现,极大地提高了设计效率,缩短了设计周期,节省了设计成本。
本论文简要介绍了FPGA的特点以及设计流程,以Quartus II软件为开发平台,通过硬件描述语言Verilog HDL来设计交通灯控制器。交通灯控制器用于自动控制十字路口红绿灯的状态和倒计时,方向分为东南西北四个方向。东西方向的红绿灯状态一样,南北方向的红绿灯状态一样。每个方向上,有四盏灯,分别是红灯、黄灯、绿灯和左转灯。红灯亮表示左转和直行的车辆禁行;黄灯亮表示左转和直行的车辆即将禁行;绿灯亮表示直行车辆可以通行;左拐灯亮表示左转车辆可以通行。
2 概述
2。1 FPGA的简介 源F于K优B尔C论V文N网WwW.youeRw.com 原文+QQ752^018766
FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。它是当今数字系统设计的主要硬件平台,其主要特点就是完全由用户通过软件进行配置和编程,从而完成某种特定的功能,且可以反复擦写。在修改和升级时,不需额外地改变PCB电路板,只是在计算机上修改和更新程序,使硬件设计工作成为软件开发工作,缩短了系统设计的周期,提高了实现的灵活性并降低了成本。[9]
2。1。1 FPGA的特点
(1)高性能和实时性
由于FPGA芯片内部是通过上百万个逻辑单元完成硬件实现,具有并行处理的能力,运算速度比平常的单片机和DSP快很多。
(2)高集成性
FPGA可根据用户的需求在内部嵌入硬/软IP核,以实现不同的要求,而且采用SOPC技术也可节省目标硬件的面积。
(3)高可靠性和低成本
目前的FPGA芯片在出厂之前都做过100%的检测,不需要设计人员承担投片生产的费用。
(4)高灵活性和低功耗
FPGA是现场可编程,用户可以反复的编程,擦写,使用,或者在外围电路保持不变的情况下,采用不同的设计而实现不同的功能,这样给产品的升级和维护带来极大的方便。
2。1。2 FPGA的体系结构
FPGA采用逻辑单元阵列LCA(Logic Cell Array)的概念,内部包括可编程逻辑模块CLB(Configurable Logic Block)、输入/输出模块IOB(input/output Block)、内部连线(Interconnect)和存放数据的静态存储器SRAM组成。如下图2。1所示 。
图2。1 FPGA的体系结构
(1)可编程逻辑模块CLB
CLB是实现逻辑功能的基本单元,通常规则地排列成一个阵列,散布于整个芯片。CLB一般由逻辑函数发生器,触发器,数据选择器等构成,函数发生器用于实现n输入变量的一个任意组合逻辑。