EDA汽车尾灯控制课程设计报告.doc_第1页
EDA汽车尾灯控制课程设计报告.doc_第2页
EDA汽车尾灯控制课程设计报告.doc_第3页
EDA汽车尾灯控制课程设计报告.doc_第4页
EDA汽车尾灯控制课程设计报告.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

EDA 技技术应术应用用 课课程程设计报设计报告告 专专 业:业: 通信工程通信工程 班班 级:级: 09312 班班 姓姓 名:名: 某某某某某某 指导教师:指导教师: 杨祖芳杨祖芳 曾凡忠曾凡忠 2012 年年 05 月月 20 日日 目目 录录 1 1 引引 言言1 1.11.1 设计的目的设计的目的 1 1.21.2 设计的基本内容设计的基本内容 1 2 2 EDAEDA、VHDLVHDL 简介简介1 2.12.1 EDAEDA 技术技术 1 2.22.2 硬件描述语言(硬件描述语言(VHDLVHDL) 2 3 3 汽车尾灯控制器的设计过程汽车尾灯控制器的设计过程3 3.13.1 系统需求分析系统需求分析3 3.23.2 汽车尾灯控制器的工作原理汽车尾灯控制器的工作原理3 3.33.3 各组成模块原理及程序各组成模块原理及程序4 4 4 系统仿真系统仿真9 4.14.1 分频模块仿真及分析分频模块仿真及分析9 4.24.2 汽车尾灯主控模块仿真及分析汽车尾灯主控模块仿真及分析10 4.34.3 左边灯控制模块仿真及分析左边灯控制模块仿真及分析11 4.44.4 右边灯控制模块仿真及分析右边灯控制模块仿真及分析12 4.54.5 整个系统仿真及分析整个系统仿真及分析13 结束语结束语15 指导老师意见指导老师意见16 参考书目参考书目16 1 1 1 引引 言言 随着人们生活水平的提高,汽车的消费量越来越大。因为人们也越来越忙, 不管是夜晚还是阴雨、大雾等天气原因的影响,人们都开着车在纵横交错的马 路上行驶。为了提高人们因夜晚或因天气原因在纵横交错的马路上驾驶的安全 系数,也是为了减少交通事故的发生。我们采用了先进的 EDA 技术,Quartus 工作平台和 VHDL 语言,设计了一种基于 FPGA 的汽车尾灯控制系统,并对系 统进行了仿真机验证。这一控制电路,结构简单、性能稳定、操作方便、抗干 扰能力强。将它应用于现代汽车,不受黑夜或大雾、阴雨天气因素的影响,可 以提高安全行驶,避免交通事故的发生。真正的让消费者驾驶汽车的方便和安 全。 1.1 设计的目的 其一、设计一个能适应现代汽车智能化发展要求的汽车尾灯控制电路。改 善以前的汽车尾灯控制系统,降低汽车尾灯控制器的生产成本。其二、学好 VHDL 这门硬件描述语言,加深对 VHDL 语言知识的理解和掌握,提高学习能力 和创新能力,使自己适应不断发展的 21 世纪。 1.2 设计的基本内容 根据计算机中状态机原理,利用 VHDL 设计汽车尾灯控制器的各个模块,并 使用 EDA 工具对各模块进行仿真验证。汽车尾灯控制器的设计分为 4 个模块: 时钟分频模块、汽车尾灯主控模块,左边灯控制模块和右边灯控制模块。把各 个模块整合后就形成了汽车尾灯控制器。通过输入系统时钟信号和相关的汽车 控制信号,汽车尾灯将正确显示当前汽车的控制状态。 2 2 EDAEDA、VHDLVHDL 简介简介 2.1 EDA 技术 EDA 技术的概念 EDA 是电子设计自动化(Electronic Design Automation)的缩写,在 20 世纪 90 年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅 助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA 技术就是以 计算机为工具,设计者在 EDA 软件平台上,用硬件描述语言 HDL 完成设计文件, 2 然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和 仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。 EDA 技术的特点 利用 EDA 技术进行电子系统的设计,具有以下几个特点: 用软件的方式 设计硬件; 用软件方式设计的系统到硬件系统的转换是由有关的开发软件自 动完成的; 设计过程中可用有关软件进行各种仿真; 系统可现场编程, 在线升级; 整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。因 此,EDA 技术是现代电子设计的发展趋势。 EDA 设计流程 典型的 EDA 设计流程如下: 1、文本/原理图编辑与修改。首先利用 EDA 工具的文本或图形编辑器将设 计者的设计意图用文本或图形方式表达出来。 2、编译。完成设计描述后即可通过编译器进行排错编译,变成特定的文本 格式,为下一步的综合做准备。 3、 综合。将软件设计与硬件的可实现性挂钩,是将软件转化为硬件电路 的关键步骤。 4、 行为仿真和功能仿真。利用产生的网表文件进行功能仿真,以便了解 设计描述与设计意图的一致性。 5、适配。利用 FPGA/CPLD 布局布线适配器将综合后的网表文件针对某一具 体的目标器件进行逻辑映射操作,其中包括底层器件配置、逻辑分割、逻辑优 化、布局布线。适配报告指明了芯片内资源的分配与利用、引脚锁定、设计的 布尔方程描述情况。 6、 功能仿真和时序仿真。 7、 下载。如果以上的所有过程都没有发现问题,就可以将适配器产生的 下载文件通过 FPGA/CPLD 下载电缆载入目标芯片中。 8、 硬件仿真与测试。 2.2 硬件描述语言(VHDL) VHDL 简介 VHDL(Very-High-Speed Integrated Circuit Hardware Description 3 Language)主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具 有硬件特征的语句外,VHDL 的语言形式和描述风格与句法是十分类似于一般的 计算机高级语言。VHDL 的程序结构特点是将一项工程设计,或称设计实体(可 以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口) 和内部(或称不可视部分) ,既涉及实体的内部功能和算法完成部分。在对一个 设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接 调用这个实体。这种将设计实体分成内外部分的概念是 VHDL 系统设计的基本点。 VHDL 语言的特点 1.用 VHDL 代码而不是用原理图进行设计,意味着整个电路板的模型及性能 可用计算机模拟进行验证。 2.VHDL 元件的设计与工艺无关,与工艺独立,方便工艺转换。 3.VHDL 支持各种设计方法,自顶向下、自底向上或者混合的都可以。 4.可以进行从系统级到逻辑级的描述,即混合描述。 5.VHDL 区别于其他的 HDL,已形成标准,其代码在不同的系统中可交换建模。 3 3 汽车尾灯控制器的设计过程汽车尾灯控制器的设计过程 3.1 系统需求分析 根据现代交通规则,汽车尾灯控制器应满足以下基本要求: 1. 汽车正常使用是指示灯不亮 2. 汽车右转时,右侧的一盏灯亮 3. 汽车左转时,左侧的一盏灯亮 4. 汽车刹车时,左右两侧的指示灯同时亮 5. 汽车夜间行驶时,左右两侧的指示灯同时一直亮,供照明使用 3.2 汽车尾灯控制器的工作原理 汽车尾灯控制器就是一个状态机的实例。当汽车正常行驶时所有指示灯都 不亮;当汽车向右转弯时,汽车右侧的指示灯 RD1 亮;当汽车向左侧转弯时, 汽车左侧的指示灯 LD1 亮;当汽车刹车时,汽车右侧的指示灯 RD2 和汽车左侧 的指示灯 LD2 同时亮;当汽车在夜间行驶时,汽车右侧的指示灯 RD3 和汽车左 4 侧的指示灯 LD3 同时一直亮。通过设置系统的输入信号:系统时钟信号 CLK, 汽车左转弯控制信号 LEFT,汽车右转弯控制信号 RIGHT,刹车信号 BRAKE,夜 间行驶信号 NIGHT 和系统的输出信号:汽车左侧 3 盏指示灯 LD1、LD2、LD3 和 汽车右侧 3 盏指示灯 RD1、RD2、RD3 实现以上功能。系统的整体组装设计原理 如图 3.1(a)以及系统设计整体框图如图 3.1(b)所示。 图 3.1(a)系统的整体组装设计原理 3.3 各组成模块原理及程序 汽车尾灯控制器有 4 个模块组成,分别为:时钟分频模块、汽车尾灯主控 模块,左边灯控制模块和右边灯控制模块,以下介绍各模块的详细设计。 时钟分频模块 整个时钟分频模块的工作框图如图 3.2。 图 3.1(b) 5 CLK CP 图 3.2 时钟分频模块工作框图 时钟分频模块由 VHDL 程序来实现,下面是其中的一段 VHDL 代码: ARCHITECTURE ART OF SZ IS SIGNAL COUNT:STD_LOGIC_VECTOR(7 DOWNTO 0); BEGIN PROCESS(CLK) BEGIN IF CLKEVENT AND CLK = 1THEN COUNT LPLPLPLP=0;RP=0;LR=1; END CASE; END PROCESS; END ART; 左边灯控制模块 左边灯控制模块的工作框图如图 3.4(a)所示以及工作原理框图 3.4(b) 。 CLK LP LEDL LR LEDB BRRAKE LEDN NIGHT LC 图 3.4(a)左边灯控制模块的工作框图 图 3.4(b)左边灯控制模块的工作原理框图 数据入口:CLK:时钟控制信号; LP:左侧灯控制信号; LR:错误控制信号; BRAKE:刹车控制信号; NIGHT:夜间行驶控制信号; 数据入口:LEDL:左侧 LD1 灯控制信号; LEDL:左侧 LD2 灯控制信号; LEDN:左侧 LD3 灯控制信号; 左边灯控制模块由 VHDL 程序来实现,下面是其中的一段 VHDL 代码: ARCHITECTURE ART OF LC IS 8 BEGIN 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 IF; END PROCESS; END ART; 右边灯控制模块 右边灯控制模块的工作框图如图 3.5(a)所示以及工作原理框图 3.5(b) 。 CLK RP LEDR LR LEDB BRRAKE LEDN NIGHT RC 图图 3.5 (a)右边灯控制模块的工作框图)右边灯控制模块的工作框图 图 3.5 (b)右边灯控制模块的工作原理框图 数据入口:CLK:时钟控制信号; 9 RP:右侧灯控制信号; LR:错误控制信号; BRAKE:刹车控制信号; NIGHT:夜间行驶控制信号; 数据出口:LEDR:右侧 RD1 灯控制信号; LEDB:右侧 RD2 灯控制信号; LEDN:右侧 RD3 灯控制信号; 右边灯控制模块由 VHDL 程序来实现,下面是其中的一段 VHDL 代码: ARCHITECTURE ART OF RC IS BEGIN 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; END IF; ELSE LEDR =0; END IF; END IF; END PROCESS; END ART; 4 4 系统仿真系统仿真 4.1 分频模块仿真及分析 分频模块由 VHDL 程序实现后,其功能仿真如图 4.1(a)所示已经时序仿 真仿真图如图 4.1(b)所示。 10 图 4.1 (a)分频模块功能仿真图 图 4.1 (b)分频模块时序仿真图 对其仿真图进行仿真分析:如图所示,首先生成一个 600ns 的时钟脉冲,通 过时钟分频把 600ns 的脉冲分成一个 40ns 的脉冲,实现了信号同步。 4.2 汽车尾灯主控模块仿真及分析 汽车尾灯主控模块由 VHDL 程序实现后,其功能仿真图如图 4.2(a)所示以及 时序仿真如图 4.2(b)所示。 11 图 4.2(a)主控模块功能仿真图 图 4.2(b)主控模块时序仿真图 对时序仿真图进行分析:RIGHT,LEFT,NIGHT,BRAKE 为输入信号,RIGHT 为 1 表示右转,LEFT 为 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 的信号脉冲输出。 12 4.3 左边灯控制模块仿真及分析 左边灯控制模块由 VHDL 程序实现后,其功能仿真图如图 4.3(a)所示以 及时序仿真如图 4.3(b)所示。 图 4.3(a) 左边灯控制模块功能仿真图 图 4.3(b)左边灯控制模块时序仿真图 对时序仿真图进行分析:LP,LR,NIGHT,BRAKE 为输入信号,LP 为 1 表示 左转,LR 为 1 表示右转,NIGHT 为 1 表示夜间行路,BRAKE 为 1 表示刹车。 LEDL,LEDB,LEDN 为输出信号,表示汽车左侧的三盏灯。如图所示:当 LP 为 1 时, LEDL 输出为 1 表示左侧灯亮,当 BRAKE 为 1 时,LEDB 输出为 1 表示左侧灯亮, 当 NIGHT 为 1 时,LEDN 输出为 1 表示左侧灯亮。当 LR 为 1 时,左侧三盏灯输 出均为 0。即没有灯亮。 13 4.4 右边灯控制模块仿真及分析 右边灯控制模块由 VHDL 程序实现后,其功能仿真图如图 4.4(a)所示以及 时序仿真如图 4.4(b)所示。 图 4.4(a)右边灯控制模块功能仿真图 图 4.4(b)右边灯控制模块时序仿真图 对时序仿真图进行分析:RP,LR,NIGHT,BRAKE 为输入信号,LR 为 1 表示 左转,RP 为 1 表示右转,NIGHT 为 1 表示夜间行路,BRAKE 为 1 表示刹车。 LEDR,LEDB,LEDN 为输出信号,表示汽车右侧的三盏灯。如图所示:当 RP 为 1 时, LEDR 输出为 1 表示右侧灯亮,当 BRAKE 为 1 时,LEDB 输出为 1 表示右侧灯亮, 当 NIGHT 为 1 时,LEDN 输出为 1 表示右侧灯亮。当 LR 为 1 时,右侧三盏灯输 出均为 0。即没有灯亮。 14 4.5 整个系统仿真及分析 按图 3.1 组装系统后的功能仿真如图 4.5(a)所示以及时序仿真如图 4.5(b)所示。 图 4.5(a)整个系统功能仿真图 图 4.5(b)整个系统时序仿真图 对时序仿真图进行分析: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 时, 15 LD2,RD2 输出均为 1,表示左,右两侧各有一盏灯亮。当 BRAKE 为 1 时, LD3,RD3 输出均为 1,表示左,右两侧各有一盏灯亮。 各个模块的功能: 1.时钟分频模块功能:这块的功能是对左右两边的 LLED1、RLED1 的闪烁时间间 隔,以 CLK 为输入信号, CP 为输出信号,在程序中定义一个八位节点信号 COUNT 来放计数值,当 CLK 的上升沿到来时就开始计数,最后将 COUNT(3)给 CP,实现对 CLK 的八分频。再将 CP 的电平信号分别和 LEDL、LEDR 电平与,最 后用输出的电平来控制汽车左右的 LLED1、RLED1,实现左右转的指示功能。 2.汽车尾灯主控模块功能:该段程序用于对汽车尾灯进行整体控制,当输入为 左转信号时,输出左侧灯控制信号;当输入为右转信号时,输出右侧灯控制信 号;当同时输入 LEFT 和 RIGHT 信号时,输出错误控制信号。当输入为刹车信 号时,输出刹车控制信号;当输入为夜间行驶信号时,输出为夜间行驶控制信 号。 3.左边灯控制模块作用:本程序用于控制左侧灯的亮、灭和闪烁情况,当时钟 上升沿信号和左侧灯控制信号或刹车控制信号或夜间行驶信号同时出现时,左 侧相应的灯亮或出现闪烁。当错误控制信号出现时,LD1 灯不亮。 4. 右边灯控制模块作用:本描述用于控制右侧灯的亮、灭和闪烁情况,当时钟 上升沿信号和右侧灯控制信号或刹车控制信号或夜间行驶信号同时出现时,右 侧相应的灯亮或出现闪烁。当错误控制信号出现时,RD1 灯不亮。 拼脚引用: 输入: 开关引脚 BRAKESW132 LEFTSW233 RIGHTSW336 BIGHTSW437 输出: LEFTRIGHT LD1LD2LD3RD1RD2RD3 D112D111D110D103D102D101 313029201918 16 实验现象: 1.汽车尾部左右两侧各有多盏指示灯。 2.汽车正常行驶时指示灯都不亮。 3.汽车右转弯时,右侧的一盏指示灯亮。 4.汽车左转弯时,左侧的一盏指示灯亮。 5.汽车刹车时,左右两侧的一盏指示灯同时亮。 6.汽车在夜间行驶时,左右两侧有指示灯同时一直亮,供照明使用。 结束语结束语 通过本次课程设计,我们对 EDA 技术有了更深的了解,初步学会了采用自顶向 下的系统设计方法设计系统,并熟练掌握了利用

温馨提示

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

评论

0/150

提交评论