汽车尾灯设计论文(VHDL+EDA仿真)_第1页
汽车尾灯设计论文(VHDL+EDA仿真)_第2页
汽车尾灯设计论文(VHDL+EDA仿真)_第3页
汽车尾灯设计论文(VHDL+EDA仿真)_第4页
汽车尾灯设计论文(VHDL+EDA仿真)_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目 录1.引 言11.1设计的目的11.2设计的基本内容11.3 eda的介绍11.3.1 eda技术的概念11.3.2 eda技术的特点21.3.3 eda设计流程21.4硬件描述语言(vhdl)21.4.1 vhdl的介绍21.4.2 vhdl语言的特点32.总体设计42.1需求分析42.2汽车尾灯控制器的工作原理42.3 汽车运行状态表和总体框图53.详细设计63.1各组成模块63.2时钟分频模块63.3 汽车尾灯主控模块63.4左边灯控制模块73.5右边灯控制模块94.系统仿真与调试104.1分频模块仿真及分析104.2汽车尾灯主控模块仿真及分析104.3左边灯控制模块仿真及分析114

2、.4右边灯控制模块仿真及分析114.5整个系统仿真及分析124.6 总体设计电路图12总结13参考文献141.引 言 随着社会的发展,科学技术也在不断的进步,状态机的应用越来越广泛。现代交通越来越拥挤,安全问题日益突出,在这种情况下汽车尾灯控制器的设计成为解决交通安全问题一种好的途径。在本课程设计根据状态机原理1实现了汽车尾灯常用控制。1.1设计的目的本次设计的目的就是通过实践深入理解计算机组成原理,了解eda技术2并掌握vhdl硬件描述语言的设计方法和思想。以计算机组成原理为指导,通过学习的vhdl语言结合电子电路的设计知识理论联系实际,掌握所学的课程知识和基本单元电路的综合设计应用。通过对

3、实用汽车尾灯控制器3的设计,巩固和综合运用所学知识,提高ic设计能力,提高分析、解决计算机技术实际问题的独立工作能力。1.2设计的基本内容根据计算机中状态机原理,利用vhdl设计汽车尾灯控制器的各个模块,并使用eda 工具对各模块进行仿真验证。汽车尾灯控制器的设计分为4个模块:时钟分频模块、汽车尾灯主控模块,左边灯控制模块和右边灯控制模块。把各个模块整合后就形成了汽车尾灯控制器。通过输入系统时钟信号和相关的汽车控制信号,汽车尾灯将正确显示当前汽车的控制状态。1.3 eda的介绍 1.3.1 eda技术的概念eda是电子设计自动化(electronic design automation)的缩写

4、,在20世纪90年代初从计算机辅助设计(cad)、计算机辅助制造(cam)、计算机辅助测试(cat)和计算机辅助工程(cae)的概念发展而来的。eda技术就是以计算机为工具,设计者在eda软件平台上,用硬件描述语言hdl完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。1.3.2 eda技术的特点利用eda技术进行电子系统的设计,具有以下几个特点: 用软件的方式设计硬件; 用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的; 设计过程中可用有关软件进行各种仿真; 系统可现场编程,在线升

5、级; 整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。因此,eda技术是现代电子设计的发展趋势。1.3.3 eda设计流程典型的eda设计流程如下:1、文本/原理图编辑与修改。首先利用eda工具的文本或图形编辑器将设计者的设计意图用文本或图形方式表达出来。 2、编译。完成设计描述后即可通过编译器进行排错编译,变成特定的文本格式,为下一步的综合做准备。 3、 综合。将软件设计与硬件的可实现性挂钩,是将软件转化为硬件电路的关键步骤。4、 行为仿真和功能仿真。利用产生的网表文件进行功能仿真,以便了解设计描述与设计意图的一致性。5、适配。利用fpga/cpld布局布线适配器将综合后的网表文件针对

6、某一具体的目标器件进行逻辑映射操作,其中包括底层器件配置、逻辑分割、逻辑优化、布局布线。适配报告指明了芯片内资源的分配与利用、引脚锁定、设计的布尔方程描述情况。 6、 功能仿真和时序仿真。7、 下载。如果以上的所有过程都没有发现问题,就可以将适配器产生的下载文件通过fpga/cpld下载电缆载入目标芯片中。 8、 硬件仿真与测试。1.4硬件描述语言(vhdl)1.4.1 vhdl的介绍vhdl(very-high-speed integrated circuit hardware description language)主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的

7、语句外,vhdl的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。vhdl的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是vhdl系统设计的基本1.4.2 vhdl语言的特点1.用vhdl代码而不是用原理图进行设计,意味着整个电路板的模型及性能可用计算机模拟进行验证。2.vhdl元件的设计与工艺无关,与工艺独立,方便工艺转换。3.v

8、hdl支持各种设计方法,自顶向下、自底向上或者混合的都可以。4.可以进行从系统级到逻辑级的描述,即混合描述。5.vhdl区别于其他的hdl,已形成标准,其代码在不同的系统中可交换建模。2.总体设计2.1需求分析根据现代交通规则,汽车尾灯控制器应满足以下基本要求:1.汽车正常使用是指示灯不亮2.汽车右转时,右侧的一盏灯亮3.汽车左转时,左侧的一盏灯亮4.汽车刹车时,左右两侧的指示灯同时亮 5.汽车夜间行驶时,左右两侧的指示灯同时一直亮,供照明使用 2.2汽车尾灯控制器的工作原理汽车尾灯控制器就是一个状态机的实例。当汽车正常行驶时所有指示灯都不亮;当汽车向右转弯时,汽车右侧的指示灯rd1亮;当汽车

9、向左侧转弯时,汽车左侧的指示灯ld1亮;当汽车刹车时,汽车右侧的指示灯rd2和汽车左侧的指示灯ld2同时亮;当汽车在夜间行驶时,汽车右侧的指示灯rd3和汽车左侧的指示灯ld3同时一直亮。通过设置系统的输入信号:系统时钟信号clk,汽车左转弯控制信号left,汽车右转弯控制信号right,刹车信号brake,夜间行驶信号night和系统的输出信号:汽车左侧3盏指示灯ld1、ld2、ld3和汽车右侧3盏指示灯rd1、rd2、rd3实现以上功能。系统的整体组装设计原理如图3.1所示。图2.3整体组装设计原理2.3 汽车运行状态表和总体框图汽车尾灯和汽车运行状态表如表1所示。汽车尾灯和汽车运行状态表1

10、-1开关控制汽车运行状态右转尾灯左转尾灯s0 s1 s2r1 r2r3l1l2l30 0 0正常运行灯灭灯灭0 0 1左转弯灯灭按l1l2l3顺序循环点亮0 1 0右转弯按r1r2r3顺序循环点亮灯灭0 1 1临时刹车/检测所有尾灯同时点亮1 0 0倒车所有尾灯按照转弯次序点亮1 0 1晚上行车时r3 ,l3一直点亮汽车尾灯控制电路设计总体框图如图1所示:开关控制电路译码电路74138显示驱动电路记数电路74161r1r2r3 l1l2l3脉冲产生电路555图1 汽车尾灯控制电路设计总体框图3.详细设计3.1各组成模块 实现的主要功能是通过开关控制从而实现汽车尾灯的点亮方式。汽车尾灯控制器有4

11、个模块组成,分别为:时钟分频模块、汽车尾灯主控模块,左边灯控制模块和右边灯控制模块,以下介绍各模块的详细设计。3.2时钟分频模块整个时钟分频模块的工作框图如图3.2所示。clk cpsz图3.2时钟分频模块工作框图时钟分频模块由vhdl程序来实现,下面是其中的一段vhdl代码:architecture art of sz issignal count:std_logic_vector(7 downto 0);beginprocess(clk) begin if clkevent and clk = 1then count = count + 1; end if; end process; cp

12、= count(3);end art;3.3 汽车尾灯主控模块汽车尾灯主控模块工作框图如图3.3所示left lpright rpbrake lrnight brake_led night_ledctrl 图3.3 主控模块工作框图汽车尾灯主控模块由vhdl程序来实现,下面是其中的一段vhdl代码:architecture art of ctrl isbegin night_led=night; brake_ledlp=0;rp=0;lrlp=0;rp=1;lrlp=1;rp=0;lrlp=0;rp=0;lr=1; end case; end process;end art;3.4左边灯控制模

13、块 左边灯控制模块的工作框图如图3.4所示。clk lp ledllr ledbbrrake lednnight lc图3.4左边灯控制模块的工作框图左边灯控制模块由vhdl程序来实现,下面是其中的一段vhdl代码:architecture art of lc isbegin ledb=brake; ledn=night;process(clk,lp,lr)begin if clkevent and clk = 1 then if(lr =0)then if(lp = 0)then ledl=0; else ledl=1; end if; else ledl =0; end if; end i

14、f;end process;end art;3.5右边灯控制模块右边灯控制模块的工作框图如图3.5所示clk rp ledrlr ledbbrrake lednnight rc图3.5 右边灯控制模块的工作框图右边灯控制模块由vhdl程序来实现,下面是其中的一段vhdl代码:architecture art of rc isbegin ledb=brake; ledn=night; process(clk,rp,lr) begin if clkevent and clk = 1 then if(lr = 0)then if(rp = 0)then ledr =0; else ledr = 1;

15、 end if; else ledr =0; end if; end if; end process;end art;4.系统仿真与调试4.1分频模块仿真及分析分频模块由vhdl程序实现后,其仿真图如图4.1所示图4.1 分频模块仿真图对其仿真图进行仿真分析:如图所示,首先生成一个600ns的时钟脉冲,通过时钟分频把600ns的脉冲分成一个40ns的脉冲,实现了信号同步。4.2汽车尾灯主控模块仿真及分析汽车尾灯主控模块由vhdl程序实现后,其仿真图如图4.2所示。图4.2主控模块时序仿真图对时序仿真图进行分析:right,left,night,brake 为输入信号,right为1表示右转,l

16、eft为1表示左转,night为1表示夜间行路,brake为1表示刹车。rp,lp,night_led,brake_led为输出信号。如图所示:当right为1时,产生一个rp为1的信号脉冲输出,当left为1时,产生一个lp为1的信号脉冲输出,当night为1时,产生一个night_led为1的信号脉冲输出。当brake为1时,产生一个brake_led为1的信号脉冲输出。4.3左边灯控制模块仿真及分析左边灯控制模块由vhdl程序实现后,其仿真图如下图4.3所示。对时序仿真图进行分析:lp,lr,night,brake 为输入信号,lp为1表示左转,lr为1表示右转,night为1表示夜间行

17、路,brake为1表示刹车。ledl,ledb,ledn为输出信号,表示汽车左侧的三盏灯。如图所示:当lp为1时,ledl输出为1表示左侧灯亮,当brake为1时,ledb输出为1表示左侧灯亮,当night为1时,ledn输出为1表示左侧灯亮。当lr为1时,左侧三盏灯输出均为0。即没有灯亮。图4.3左边灯控制模块时序仿真图4.4右边灯控制模块仿真及分析右边灯控制模块由vhdl程序实现后,其仿真图如图4.4所示。图4.4 右边灯控制模块时序仿真图对时序仿真图进行分析:rp,lr,night,brake 为输入信号,lr为1表示左转,rp为1表示右转,night为1表示夜间行路,brake为1表示

18、刹车。ledr,ledb,ledn为输出信号,表示汽车右侧的三盏灯。如图所示:当rp为1时,ledr输出为1表示右侧灯亮,当brake为1时,ledb输出为1表示右侧灯亮,当night为1时,ledn输出为1表示右侧灯亮。当lr为1时,右侧三盏灯输出均为0。即没有灯亮。 4.5整个系统仿真及分析按图2.3组装系统后的仿真图如下图4.5所示。对时序仿真图进行分析:right,left,night,brake 为输入信号,right为1表示右转,left为1表示左转,night为1表示夜间行路,brake为1表示刹车。rd1,rd2,rd3为输出信号,表示汽车右侧的三盏灯。ld1,ld2,ld3为输出信号,表示汽车左侧的三盏灯。如图所示:当right为1时,rd1输出为1表示右侧灯亮,当left为1时,ld1为输出为1表示左侧灯亮,当night为1时,ld2,rd2输出均为1,表示左,右两侧各有一盏灯亮。当brake为1时,ld3,rd3输出均为1,表示左,右两侧各有一盏灯亮。图4.5 整个系统仿真图4.6 总体设计电路图图4.6总体设计电路图总结通过两星期的紧张工作,最后完成了我的设计任务汽车尾灯控制器的设计。通过本次课程设计的学习,我深深的体会到设计课的重要性

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论