基于FPGA的汽车尾灯控制器的设计.docx
- 文档编号:30778796
- 上传时间:2023-08-25
- 格式:DOCX
- 页数:43
- 大小:943.35KB
基于FPGA的汽车尾灯控制器的设计.docx
《基于FPGA的汽车尾灯控制器的设计.docx》由会员分享,可在线阅读,更多相关《基于FPGA的汽车尾灯控制器的设计.docx(43页珍藏版)》请在冰豆网上搜索。
基于FPGA的汽车尾灯控制器的设计
摘要
随着社会的不断进步,现代化技术已经深入到人们生活的各个角落,而汽车作为较为方便的代步工具,已经成为我们生活中不可或缺的一部分,人们对于它的研究已经进入技术非常发达的阶段,为了使其更为完美,能被人们更方便、更简单的利用,人们从没停止对它的各方面的研究。
对于汽车来说,信号灯是它与其它车辆交流的通道和方式,各种模式状态代表了不同的意义和司机同志下一步的操作,是协调交通,避免事故的一个最好的方法。
所以关于汽车信号灯控制器的设计有很多实例。
本论文首先介绍了FPGA的基本知识,包括对FPGA的开发软件工具QuartusII7.2(32-Bit)和硬件描述语言VHDL的详细介绍,然后对汽车信号灯控制器基本功能进行分析,给出设计方案,进行编程设计,同时进行软件仿真,硬件下载仿真等。
本设计较好的完成了该课题指定的基本功能,并有所扩展,使控制系统使用更加方便,且便于修改改进。
关键词:
FPGA;开发工具QuartusII7.2(32-Bit);硬件描述语言VHDL;控制系统。
thedesignofacartaillightcontroller
ABSTRACT
Alongwiththeprogressofsociety,themoderntechniqueshavealreadygotdeepintopeople’slifeineachcorner.Theautomobilebeingamoreconvenientmeansoftransportationtoolhasalreadybecomeanecessarypartinourlife.Thepeople'sresearchtowardsithasalreadyturnedintoaveryflourishingstageoftechnique,forthesakeofmakingitmoreperfect,moreconvenientandmoresimpleexploitation,peopleneverstoptheresearchofitseveryone'snoodles.
Fortheautomobile,thesignallampisthepassageandwaythatitcommunicateswiththeothervehicles.Thevariousmodeappearancerepresentedthedifferentmeaningandtheoperationofthenextmove,Itisthebestmethodofmoderatingtransportationandavoidingthetrouble.Sothedesignconcerningtheautomobilesignallampcontrollercontainsalotofsolidexamples.
ThisthesisintroducedthebasicknowledgeoftheFPGAfirst;includingthedevelopmentsoftwaretoolQuartusII7.2(32-Bit)andhardwarethatincludetotheFPGAdescribedthedetailedintroductionofthelanguageVHDL.Then,thethesisintroducedtheautomobilesignalbeaconcontroller’sfunctioncarryonanalysisandgivesthedesignproject.inthemeantimeIcarrythecircuitonsoftwareandthehardwaretoimitatereallyetc.Thisdesigncompletedthetopictobasicfunctionverywellandmadethecontrolsystemusagemoreconvenient.Alsoitiseasytoimprove.
Keyword:
FPGA;DeveloptoolQuartusII7.2(32-Bit);ThehardwaredescriptionlanguageVHDL;Controlsystem.
目录
第1章引言 1
1.1设计的目的及意义…………………………………………………….1
1.2设计的基本内容……………………………………………………….1
第二章EDA、FPGA、VHDL简介 3
2.1EDA技术……………………………………………………………….3
2.1.1EDA技术的概念 3
2.1.2EDA技术的特点 3
2.1.3EDA设计流程 3
2.2FPGA………………………………………………………………….4
2.2.1FPGA优越性 4
2.2.2FPGA的应用 5
2.3硬件描述语言(VHDL)………………………………………………5
2.3.1VHDL简介 5
2.3.2VHDL语言的特点 6
第三章本课题在国内外的研究状况及发展趋势 7
第四章电路器件简介 9
4.13线-8线译码器…………………………………………………...9
4.2二进制同步计数器………………………………………………….11
第五章汽车尾灯控制器的设计过程 14
5.1方案1:
………………………………………………………………14
5.1.1系统需求分析 14
5.1.2汽车尾灯控制器的工作原理 14
5.1.3各组成模块原理及程序 16
5.1.4系统仿真 18
5.2方案2:
………………………………………………………………21
5.2.1主电路设计:
21
5.2.2主电路的仿真:
22
5.2.3电路改动及拓展 28
第6章总结与展望 37
参考文献 38
致谢 39
第1章引言
随着社会的发展,科学技术也在不断的进步,状态机的应用越来越广泛。
现代交通越来越拥挤,安全问题日益突出,在这种情况下汽车尾灯控制器的设计成为解决交通安全问题一种好的途径。
在本课程设计根据状态机原理实现了汽车尾灯常用控制。
1.1设计的目的及意义
设计目的:
(1)熟悉数字逻辑电路分析和设计方法,学习数字电路描述语言VHDL(VeryHighSpeedIntegratedCircuitHardwareDescriptionLanguage)或VerilogHDL。
(2)更好的巩固和加深对基础知识的理解,学会设计中小型数字系统的方法,独立完成调试过程,增强我们理论联系实际的能力,提高学生电路设计和分析能力。
(3)通过实践,在理论指导下有所创新,为后继专业课的学习和日后工程实践奠定基础。
设计意义:
随着社会的不断进步和科学技术,经济的不断发展,人们生活水平得到很大的提高,汽车已经广泛的进入了人们的生活。
而作为汽车电路重要的组成部分---汽车尾灯控制系统,人们对它的认识还存在许多的局限性,还有待我们继续对其进行研究和探讨。
所以设计一套更好更合理的汽车尾灯系统,对汽车业的发展,对经济的发展有着深远的影响。
1.2设计的基本内容
①控制实现功能:
汽车尾部左右两侧各有3个指示灯
1).正常行驶时指示灯全灭;
2).右转弯时,右侧3个指示灯按循环顺序点亮;
3).左转弯时,左侧三个灯按循环顺序点亮;
4).汽车倒车或临时刹车时,所有指示灯按clk信号同步闪烁
②汽车尾灯控制器中的三进制计数器的VHDL设计或电路原理图设计。
③在QuartusⅡ开发系统中实现三进制计数器设计,仿真验证其正确性。
④译码及驱动电路设计并在QuartusⅡ开发系统中实现它,仿真验证其正确性。
⑤汽车尾灯控制器顶层设计和仿真,验证设计的正确性。
第二章EDA、FPGA、VHDL简介
2.1EDA技术
2.1.1EDA技术的概念
EDA是电子设计自动化(ElectronicDesignAutomation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。
EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作[1]。
2.1.2EDA技术的特点
利用EDA技术进行电子系统的设计,具有以下几个特点:
①用软件的方式设计硬件;②用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的;③设计过程中可用有关软件进行各种仿真;④系统可现场编程,在线升级;⑤整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。
因此,EDA技术是现代电子设计的发展趋势[2]。
2.1.3EDA设计流程
典型的EDA设计流程如下:
1、文本/原理图编辑与修改。
首先利用EDA工具的文本或图形编辑器将设计者的设计意图用文本或图形方式表达出来。
2、编译。
完成设计描述后即可通过编译器进行排错编译,变成特定的文本格式,为下一步的综合做准备。
3、综合。
将软件设计与硬件的可实现性挂钩,是将软件转化为硬件电路的关键步骤。
4、行为仿真和功能仿真。
利用产生的网表文件进行功能仿真,以便了解设计描述与设计意图的一致性。
5、适配。
利用FPGA/CPLD布局布线适配器将综合后的网表文件针对某一具体的目标器件进行逻辑映射操作,其中包括底层器件配置、逻辑分割、逻辑优化、布局布线。
适配报告指明了芯片内资源的分配与利用、引脚锁定、设计的布尔方程描述情况。
6、功能仿真和时序仿真。
7、下载。
如果以上的所有过程都没有发现问题,就可以将适配器产生的下载文件通过FPGA/CPLD下载电缆载入目标芯片中。
8、硬件仿真与测试[3]。
2.2FPGA
是现场可编程门阵列的简称,可以说它与传统的数字电路设计不可同日而语。
2.2.1FPGA优越性
FPGA的优越性可以归纳为以下几点:
1、可编程性。
FPGA中集成了成千上万的逻辑门,高端的FPGA还有乘累加器、RAM、锁相环等,这些资源是可以任意使用的,使用起来相当灵活。
而且FPGA中的逻辑门并不是像传统的数字电路具有固定的功能,拿Altera的Stratix系列器件来说,每个寄存器(D触发器)都具有同步复位、置位、异步复位、置位和时钟使能,而且这些控制端都是根据用户的设计输入由开发软件自动适配完成的。
2、设计平台的完善。
在现有开发平台上可以实现对设计的最初设计和验证,然后可以与FPGA进行联机调试,反复修改设计,最终实现设计任务。
比如FPGA的两大巨头Altera和Xilinx都各有一套相当完备且成熟的设计开发平台,囊括了从门级到系统级所有的级别的设计和验证功能。
当前FPGA的发展方向是高密度、大容量和高速,是专门为了实现极其复杂的逻辑控制、高强度的运算而设计的通用可编程IC,可以看作是一种半成品,所以有人说FPGA的缺点是成本高、功耗大。
这确实是对的,但这不能成为FPGA的缺点,因为它生下来就不是为了和单片机与ARM去竞争的,在一些小规模的控制领域自然有单片机去实现,智能手机等功耗敏感的终端自然有ARM和DSP,大家各司其职,互不干扰[4]。
2.2.2FPGA的应用
FPGA典型的应用可以分为两大方面,一个是单纯作为逻辑器件和运算器件,这种适合于通信信号的处理,因为通信信号的特点是高速、不间断性,这时就可以在FPGA内调用大量的资源做并行的处理;另一个是在FPGA内部嵌入一个软CPU,形成CPU+DSP的架构,基本上可以代替ARM和DSP,成为一个可编程的片上系统(SOPC),这时就具有了更丰富的功能。
当然Xilinx的某些高端的FPGA内部具有硬的CPU,性能更高[5]。
2.3硬件描述语言(VHDL)
2.3.1VHDL简介
VHDL(Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage)主要用于描述数字系统的结构,行为,功能和接口。
除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。
VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。
在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。
这种将设计实体分成内外部分的概念是VHDL系统设计的基本点[6]。
2.3.2VHDL语言的特点
1.用VHDL代码而不是用原理图进行设计,意味着整个电路板的模型及性能可用计算机模拟进行验证。
2.VHDL元件的设计与工艺无关,与工艺独立,方便工艺转换。
3.VHDL支持各种设计方法,自顶向下、自底向上或者混合的都可以。
4.可以进行从系统级到逻辑级的描述,即混合描述。
5.VHDL区别于其他的HDL,已形成标准,其代码在不同的系统中可交换建模[7]。
第三章本课题在国内外的研究状况及发展趋势
在电子电路设计中,工程师为了验证所设计出的电路功能,往往是在铆钉板上焊接元器件搭接电路或在面包板上搭接电路,然后通过电表等测试仪器进行测试分析和判断设计电路。
这种方法通常需要投入大量的经费和时间,同时受到硬件设备等因素的制约。
随着计算机技术的飞速发展,计算机辅助分析和仿真技术得到了较为广泛的应用。
(1)加拿大InteractiveImageTechnologies公司推出的基于Windows95/98/NT操作系统的EDA软件(ElectronicsWorkbench)简称EWB,被称为“电子工作台”,成功的解决了工程师们的难题。
EWB是一个非常优秀的专门用于电子电路设计与仿真的软件,它具有界面直观、操作方便、简单易学等优点。
创建电路时选用元器件和测试仪器等均可直接从屏幕上器件库和仪器库中直接选取,使电子电路的分析、设计与仿真工作始于轻点鼠标之间。
该软件提供的元器件品种齐全、内容丰富,包括各种分立元件库、模拟集成电路库、数字集成电路库以及混合集成电路库等;提供的虚拟仪器与实际仪器外型和操作基本一致,使用者使用虚拟仪器对电路进行仿真实验,如同置身于实验室使用真实仪器调试电路,非常真实。
它的仿真能力强、电路分析手段完备,具有模拟、数字、模拟与数字混合电路的仿真能力,不仅能提供基本的分析方法,如:
直流工作点分析、交流频率分析、瞬态分析、傅立叶分析、噪声分析和失真分析等;还能提供高级分析方法,如:
传输函数分析、零极点分析、灵敏度分析、温度扫描分析、参数扫描分析、蒙特卡罗分析和最坏情况分析等等。
软件版本从最初推出的EWB4.0之后接着推出EWB5.0、EWB6.0、Multisim2001、Multisim7,软件的功能不断升级。
到2005年初EWB公司就发布了针对专业工程师用户的最新、最先进的电子电路仿真模拟工具-Multisim8。
随后Multisim8.0被美国NI(美国国家仪器公司)公司收购。
2005年12月NI旗下的ElectronicsWorkbench公司发布了Multisim9.0版,该版本包含Ultiboard9和Ultiroute9,Multisim9把计算机仿真技术与虚拟仪器(virtualinstrumention)技术以及图形化编程语言LabVIEW8(LaboratoryVirtualinstrumentEngineering)完美结合的结合在一起。
使工程师们有了一个从采集、到模拟,再到测试及运用的高端集成、终端对终端的电子设计解决方案。
从而有效地完成电子工程项目从最初的概念建模到最终的成品的全过程。
(2)基于intel公司生产的at89s52芯片设计了汽车尾灯控制系统.在该系统中,通过8个led显示汽车尾灯的基本工作状况"汽车尾灯控制系统的研发不仅使汽车的先进性有了较大提高"更重要的是降低了交通事故发生的可能性!
at89s52!
是一种低功耗,高性能cmos8位微控制器"具有8k在系统可编程flash存储器!
使用atmel公司高密度非易失性存储器技术制造与工业80c51产品指令和引脚完全兼容
(3)利用硬件描述语言(VHDL)对数字系统的硬件电路进行描述是EDA的关键技术之一。
VHDL语言是目前主流的硬件描述语言,它具有很强的电路描述和建模能力,且有与具体硬件电路无关和与设计平台无关的特性,在语言易读性和层次化结构设计方面表现出强大的生命力和应用潜力。
。
用一片FPGA芯片实现从而大大简化了系统结构,降低了成本,提高了系统的先进性和可靠性,能实现控制器的在系统编程。
采用这种器件开发的数字系统其升级与改进极为方便[8]。
第四章电路器件简介
4.13线-8线译码器
3线-8线译码器简要说明:
138为3线-8线译码器,共有54/74S138和54/74LS138两种线路结构型式。
型号
Tpd(ABC->Y)(3级)
Pd
CT54S138/CT74S138
8nm
245mw
CT54LS138/CT74LS138
22ns
32mw
当一个选通端(G1)为高电平,另两个选通端(/(G2A)和/(G2B))为低电平时,可将地址端(A、B、C)的二进制编码在一个对应的输出端以低电平译出。
利用G1、/(G2A)和/(G2B)可级联扩展成24线译码器;若外接一个反相器还可级联扩展成32线译码器。
若将选通端中的一个作为数据输入端时,138还可作数据分配器。
图4-1管脚图
引出端符号:
A、B、C译码地址输入端G1选通端/(G2A)、/(G2B)选通端(低电平有效)Y0~Y7译码输出端(低电平有效)[9]
图4-2功能表
图4-3逻辑图
4.2二进制同步计数器
4位二进制同步计数器(异步清除)简要说明:
161为可预置的4位二进制同步计数器,共有54/74161和54/74LS161两种线路结构形似式,其主要电特性的典型值如下:
161的清除端是异步的。
当清除端CLEAR为低电平时,不管时钟端CLOCK状态如何,即可完成清除功能。
161的预置是同步的。
当置入控制器LOAD为低电平时,在CLOCK上升沿作用下,输出端QA-QD与数据输入端A-D相一致。
对于54/74161,当CLOCK由低至高跳变或跳变前,如果计数控制端ENP、ENT为高电平,则LOAD应避免由低至高电平的跳变,而54/74LS161无此种限制。
161的计数是同步的,靠CLOCK同时加在四个触发器上而实现的。
当ENP、ENT均为高电平时,在CLOCK上升沿作用下QA-QD同时变化,从而消除了异步计数器中出现的计数尖峰。
对于54/74161,只有当CLOCk为高电平时,ENP、ENT才允许由高至低电平的跳变,而54/74LS161的ENP、ENT跳变与CLOCK无关。
161有超前进位功能。
当计数溢出时,进位输出端(RCO)输出一个高电平脉冲,其宽度为QA的高电平部分。
在不外加门电路的情况下,可级联成N位同步计数器。
对于54/74LS161,在CLOCk出现前,即使ENP、ENT、CLEAR发生变化,电路的功能也不受影响[10]。
图4-4管脚图
引出端符号:
PCO进位输出端CLOCK时钟输入端(上升沿有效)
CLEAR异步清除输入端(低电平有效)
ENP计数控制端
ENT计数控制端
ABCD并行数据输入端
LOAD同步并行置入控制端(低电平有效)
QA-QD输出端
图4-5功能表
说明:
H-高电平
L-低电平
X-任意
↑-低到高电平跳变
图4-6逻辑图
第五章汽车尾灯控制器的设计过程
5.1方案1:
5.1.1系统需求分析
通过程序设计主控和计数器部分,再进行电路连接,实现功能
根据设计要求,汽车尾灯控制器应满足以下基本要求:
1.汽车正常使用是指示灯不亮
2.汽车右转时,右侧的三盏灯顺序点亮
3.汽车左转时,左侧的三盏灯顺序点亮
4.汽车刹车时,左右两侧的指示灯同时闪烁点亮
5.1.2汽车尾灯控制器的工作原理
汽车尾灯控制器就是一个状态机的实例。
当汽车正常行驶时所有指示灯都不亮;当汽车向右转弯时,汽车右侧的指示灯rt1、rt2、rt3依次点亮;当汽车向左侧转弯时,汽车左侧的指示灯lt1、lt2、lt3依次点亮;当汽车刹车时,汽车尾灯同时闪烁点亮。
通过设置系统的输入信号:
系统时钟信号CLK,汽车左转弯控制信号lt,汽车右转弯控制信号rt,刹车信号br,系统的输出信号:
汽车左侧3盏指示灯lt1、lt2、lt3和汽车右侧3盏指示灯rt1、rt2、rt3实现以上功能。
系统的整体组装设计原理如图所示[12]。
图5-1系统的整体组装设计原理
5.1.3各组成模块原理及程序
汽车尾灯控制器有3个模块组成,分别为:
汽车尾灯主控模块,计数模块,左右控制模块。
以下介绍各模块的详细设计(左右控制模块用电路图作出)。
汽车尾灯主控模块
汽车尾灯主控模块工作框图如图5-2所示。
.
图5-2主控模块工作框图
汽车尾灯主控模块由VHDL程序来实现,下面是其中的一段VHDL代码:
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYzhukong1IS
PORT(LEFT,RIGHT,BRAKE:
INSTD_LOGIC;
LP,RP,BRAKE_LED:
OUTSTD_LOGIC);
END;
ARCHITECTUREARTOFzhukong1IS
BEGIN
BRAKE_LED<=BRAKE;
PROCESS(LEFT,RIGHT)
VARIABLETEMP:
STD_LOGIC_VECTOR(1DOWNTO0);
BEGIN
TEMP:
=LEFT&RIGHT;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 汽车 尾灯 控制器 设计