ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:353.02KB ,
资源ID:9407085      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9407085.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(汽车尾灯控制电路设计.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

汽车尾灯控制电路设计.docx

1、汽车尾灯控制电路设计目录1、前言 22、EDA技术的介绍 32.1 什么是EDA 32.2 EDA技术的发展 32.3 EDA技术的基本设计方法 42.3.1 电路级设计 42.3.2 系统级设计 53、CPLD和FPGA的主要芯片介绍 73.1 CPLD介绍 73.2 FPGA介绍 84、设计内容介绍 94.1 FIFO的介绍 94.2 同步FIFO的介绍 105、方案比较 125.1 原理图设计 125.2 Verilog HDL的设计 126、编程实现 136.1 原理图设计 136.2 Verilog HDL的设计-程序如下所示: 137、仿真 167.1 原理图输入 167.2 Ve

2、rilog HDL语言输入 168、FPGA最小系统电路 188.1 FPGA设计的总框图 188.2 FPGA与单片机相连接的系统 198.3 FPGA的下载以及配置 209、调试 2210、总结 2311、参考资料: 24.附录1、前言 现代EDA新技术,与原来的大规模可编程逻辑器件的应用相比较,它的应用范围已经远远超过了数字逻辑器件的应用范围。通过运用Verilog HDL语言编程,软件Quartus II 6.0,逐渐掌握EDA的用法,熟练步骤,对以后的学习与工作做了很好的铺垫;剖析整个系统运行的步骤与工作原理,从而完成对整个设计的理论分析任务,以次来指导其它设计过程;硬件电路设计主要

3、是设计相关模块的设计思想的可视化,是相关模块的电路图的汇总和其相关仿真波形的集锦,该部分条理清晰,思路明确,从中我们可以清晰地看到该设计方案的具体模块和整个设计的原理结构实图;程序设计这一部分主要阐述该设计的设计方法与设计思想,进一步从软件设计上揭示设计构思,主要包含了整个设计所用到的模块的硬件描述语言的设计,通过这一部分的学习,对Verilog HDL的设计方法有了进一步的学习,对其相关语言设计规范有了更深层次的掌握,能够更加熟练的做一些编程设计。 最后通过设计了解到基于PLD的EDA技术的发展和应用领域不断的扩大与深入EDA技术在电子信息、通信、自动控制及计算机应用等领域的重要性日益突出。

4、随着技术市场与人才市场对EDA技术的需求不断提高,产品的市场效率和技术要求也将会影响到教学与科研领域,因此这一次课程设计的开展很好的把握住了教学的改革方向,更好的锻炼了学生理论联系实践的能力。 此次课程设计对我在EDA技术的学习中有着很重要的影响,通过实验我们非常充分的运用了实验室的器材,发挥团队精神,不畏困难,根据自己所学的EDA知识,认真的分析了老师要求的设计任务,明确了设计思路,我们齐心努力下成功的完成了先进先出同步FIFO的设计,对EDA技术的运用有了深一层的认识,对Verilog HDL程序语言设计有了更深的理解。2、EDA技术的介绍2.1 什么是EDA20世纪90年代,国际上电子和

5、计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取得了巨大成功。在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已得到广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。这一切极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA技术的迅速发展。EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CA

6、M)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA技术的出现,极大地提高了电路设计的效率和可*性,减轻了设计者的劳动强度。2.2 EDA技术的发展 回顾近30年电子设计技术的发展历程,可将EDA技术分为三个阶段。 - 七十年代为CAD阶段,这一阶段人们开始用计算机辅助进行IC版图编辑和PCB布局布 线,取代了手工操作,产生了计算机辅助设计的概念。

7、 - 八十年代为CAE阶段,与CAD相比,除了纯粹的图形绘制功能外,又增加了电路功能设 计和结构设计,并且通过电气连接网络表将两者结合在一起,以实现工程设计,这就是计算机辅助 工程的概念。CAE的主要功能是:原理图输入,逻辑仿真,电路分析,自动布局布线,PCB后分 析。 - 九十年代为ESDA阶段。尽管CAD/CAE技术取得了巨大的成功,但并没有把人从繁重的 设计工作中彻底解放出来。在整个设计过程中,自动化和智能化程度还不高,各种EDA软件界面千 差万别,学习使用困难,并且互不兼容,直接影响到设计环节间的衔接。基于以上不足,人们开始 追求贯彻整个设计过程的自动化,这就是ESDA即电子系统设计自

8、动化。 2.3 EDA技术的基本设计方法EDA技术的每一次进步,都引起了设计层次上的一个飞跃。物理级设计主要指IC版图设计,一般由半导体厂家完成,对电子工程师并没有太大的 意义,因此本文重点介绍电路级设计和系统级设计。2.3.1 电路级设计 电子工程师接受系统设计任务后,首先确定设计方案,同时要选择能实现该方案的合适 元器件,然后根据具体的元器件设计电路原理图。接着进行第一次仿真,包括数字电路的逻辑模 拟、故障分析、模拟电路的交直流分析、瞬态分析。系统在进行仿真时,必须要有元件模型库的支 持,计算机上模拟的输入输出波形代替了实际电路调试中的信号源和示波器。这一次仿真主要是检 验设计方案在功能方

9、面的正确性。仿真通过后,根据原理图产生的电气连接网络表进行PCB板的自动布局布线。在制作 PCB板之前还可以进行后分析,包括热分析、噪声及窜扰分析、电磁兼容分析、可靠性分析等,并 且可以将分析后的结果参数反标回电路图,进行第二次仿真,也称为后仿真,这一次仿真主要是检 验PCB板在实际工作环境中的可行性。由此可见,电路级的EDA技术使电子工程师在实际的电子系统产生之前,就可以全面地 了解系统的功能特性和物理特性,从而将开发过程中出现的缺陷消灭在设计阶段,不仅缩短了开发 时间,也降低了开发成本。2.3.2 系统级设计 进入90年代以来,电子信息类产品的开发出现了两个明显的特点:一是产品的复杂程 度

10、加深,二是产品的上市时限紧迫。然而电路级设计本质上是基于门级描述的单层次设计,设计的 所有工作(包括设计输入,仿真和分析,设计修改等)都是在基本逻辑门这一层次上进行的,显然 这种设计方法不能适应新的形势,为此引入了一种高层次的电子设计方法,也称为系统级的设计方 法。高层次设计是一种概念驱动式设计,设计人员无须通过门级原理图描述电路,而是 针对设计目标进行功能描述,由于摆脱了电路细节的束缚,设计人员可以把精力集中于创造性的概 念构思与方案上,一旦这些概念构思以高层次描述的形式输入计算机后,EDA系统就能以规则驱动 的方式自动完成整个设计。这样,新的概念得以迅速有效的成为产品,大大缩短了产品的研制

11、周 期。不仅如此,高层次设计只是定义系统的行为特性,可以不涉及实现工艺,在厂家综合库的支持 下,利用综合优化工具可以将高层次描述转换成针对某种工艺优化的网表,工艺转化变得轻松容易。高层次设计步骤如下: 第一步: - 按照自顶向下的设计方法进行系统划分。第二步: - 输入VHDL代码,这是高层次设计中最为普遍的输入方式。此外,还可以采用图形输入 方式(框图,状态图等),这种输入方式具有直观、容易理解的优点。第三步: - 将以上的设计输入编译成标准的VHDL文件。对于大型设计,还要进行代码级的功能仿 真,主要是检验系统功能设计的正确性,因为对于大型设计,综合、适配要花费数小时,在综合前 对源代码仿

12、真,就可以大大减少设计重复的次数和时间,一般情况下,可略去这一仿真步骤。第四步: - 利用综合器对VHDL源代码进行综合优化处理,生成门级描述的网表文件,这是将高层次 描述转化为硬件电路的关键步骤。综合优化是针对ASIC芯片供应商的某一产品系列进行的,所以综合的过程要在相应的 厂家综合库支持下才能完成。综合后,可利用产生的网表文件进行适配前的时序仿真,仿真过程不 涉及具体器件的硬件特性,较为粗略。一般设计,这一仿真步骤也可略去。第五步: - 利用适配器将综合后的网表文件针对某一具体的目标器件进行逻辑映射操作,包括底 层器件配置、逻辑分割、逻辑优化和布局布线。适配完成后,产生多项设计结果:适配报

13、告,包 括芯片内部资源利用情况,设计的布尔方程描述情况等;适配后的仿真模型;器件编程文件。 根据适配后的仿真模型,可以进行适配后的时序仿真,因为已经得到器件的实际硬件特性(如时延 特性),所以仿真结果能比较精确地预期未来芯片的实际性能。如果仿真结果达不到设计要求,就 需要修改VHDL源代码或选择不同速度品质的器件,直至满足设计要求。第六步: - 将适配器产生的器件编程文件通过编程器或下载电缆载入到目标芯片FPGA或CPLD中。 如果是大批量产品开发,通过更换相应的厂家综合库,可以很容易转由ASIC形式实现。 3、CPLD和FPGA的主要芯片介绍3.1 CPLD介绍CPLD是Complex PL

14、D的简称,顾名思义,其是一种较PLD为复杂的逻辑元件。CPLD是一种整合性较高的逻辑元件。由于具有高整合性的特点,故其有性能提升,可靠度增加,PCB面积减少及成本下降等优点。CPLD元件,基本上是由许多个逻辑方块(Logic Blocks)所组合而成的。而各个逻辑方块均相似于一个简单的PLD元件(如22V10)。逻辑方块间的相互关系则由可变成的连线架构,将整个逻辑电路合成而成。 常见的CPLD元件有Altera公司的Max5000、Max7000以及MAX II系列。Cypress的Max340及Flash370系列等,一般来说CPLD元件的可逻辑闸数(gate count)约在1000700

15、0 Gate 之间。 这里主要介绍MAX II器件 MAX II器件系列是一种非易失性、即用性可编程逻辑系列,它采用了一种突破性的新型CPLD架构。这种新型架构的成本是原先MAX 器件的一半,功耗是其十分之一,密度是其四倍,性能却是其两倍。这些超级性能是在提供了所有MAX系列CPLD 先进特性的架构的基础上,根据Altera专家们的意见而重新采用基于查找表的架构而得到的。这种基于查找表的架构在最小的I/O焊盘约束的空间内提供了最多的逻辑容量。因此,MAX II CPLD是所有CPLD系列产品中成本最低、功耗最小和密度最高的器件。基于成本优化的0.18微米6层金属Flash工艺,MAX II器件

16、系列具有CPLD所有的优点,例如非易失性、即用性、易用性和快速传输延时性。以满足通用性,低密度逻辑应用为目标,MAX II器件成为接口桥接、I/O扩展、器件配置和上电顺序等应用最理想的解决方案。除这些典型的CPLD应用之外,MAX II器件还能满足大量从前在FPGA、ASSP和标准逻辑器件中实现的低密度可编程逻辑需求。MAX II器件提供的密度范围从240到2210个逻辑单元(LE),最多达272个用户I/O管脚。3.2 FPGA介绍FPGA是英文FieldProgrammable Gate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、EPLD等可编程器件的基础上进一步发展的产

17、物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。目前FPGA的品种很多,有XILINX公司的Virtex系列、TI公司的TPC系列、ALTERA公司的Stratix系列等。这里主要

18、介绍Cyclone II系列器件。Cyclone II系列器件是Altera低成本Cyclone系列的第二代产品,Cyclone II FPGA 的成本比第一代Cyclone 器件低30%,逻辑容量大3倍多。Cyclone II器件采用TSMC 经验证的90nm 低K 绝缘材料工艺技术,是业界成本最低的FPGA。Cyclone II器件容量有460868416个逻辑单元,还具有新的增强特性,包括多达1.1Mbit的嵌入存储器、多达150个嵌入1818乘法器、锁相环、支持外部存储器接口及差分和单端I/O标准。Cyclone II器件系列是采用TSMC的1.2V、90nm、低K 绝缘材料工艺。Cy

19、clone II器件系列是多种不同市场上大批量应用最优的低成本方案,包括消费电子、电信和无线、计算机外设、工业和汽车。Cyclone II器件包含了许多新的增强特性,如嵌入存储器、嵌入乘法器、PLL和低成本的封装,这些都为诸如视频显示、数字电视、机顶盒、DVD 播放器、DSL调制解调器、家用网关和中低端路由器等批量应用进行了优化。Cyclone II系列包括6种器件,容量从460868416个逻辑单元。Cyclone II器件低成本的封装支持垂直移植,这些封装包括扁平四方封装(TQFP)、速率四方封装(PQFP)和FineLine BGA封装。4、设计内容介绍4.1 FIFO的介绍FIFO的基

20、本单元是寄存器,作为存储器件,FIFO的存储能力是由其内部定义的存储寄存器的数量决定。FIFO存储器一般以数据量的深度X宽度的形式来说明所采用的基本结构。以长度为8的FIFO为例说明其工作原理。如下所示 _ D, C, B, A;| 1|2 |3 |4 |5| 6| 7| 8|;两边的箭头表示数据移动的方向。A,B,C,D表示被处理的数据。1,2,3,4,. 8表示FIFO的8个存储单元。表明这个FIFO中共有8个寄存器单元。每个寄存器单元可以存储一个数据。所以寄存器的单元越多,FIFO的存储能力就越强。每个寄存器单元的位宽与FIFO的输入和输出端的位宽是一致的。如果要处理的数据A,B,C,D

21、是16位的数据,那么输入输出端及每个寄存器单元的位宽就都是16位。这个FIFO可以命名为8X16FIFO。它在每一个时钟上升沿到来时,数据向右移动一个存储单元。这样在时钟的控制下,数据从左到右通过存储单元。FIFO通常是双端口的存储器,其中一个端口用于写入数据,而另一个端口用于读出数据。可以同时对存储器字存储单元进行写入和读出操作。它的数据吞吐率是普通RAM的两倍。FIFO型的存储器不需要由地址来存取数据。需要由另外的信号线(或标志)来指明存储器的内容状态。现在的FIFO存储器采用SRAM单元来实现。它是基于带两个指针的环行的FIFO结构的。要写入的数据的存储地址放在写指针中,而FIFO结构中

22、要读出的第一个数据的地址放在读指针中。在复位后,两个指针都指向存储器的同一个字单元。每次写操作后,写指针指向下一个存储单元。对数据字的读取操作,会把读指针指向下一个要读取的数据字,读指针就不断地跟随写指针,当读指针跟上写指针后,FIFO的结构里面为空。如果写指针追上读指针,FIFO结构里面的数据是满载的。如果从硬件上来实现循环存储器,可以用双端口的SRAM来存取数据。指针具用二进制计数器的特征,它用于产生SRAM的存储器地址。4.2 同步FIFO的介绍同步FIFO存储器的基本结构包括存储器阵列,标志逻辑和扩展逻辑。存储器阵列由双端口存储单元构成。允许同时对存储单元的两个端口(读端口和写端口)进

23、行存取。 标志逻辑用于比较两个地址指针的值,如果两个值的比较结果为零,FIFO存储器为全空,同时全空标志为真。如果两个值的比较结果等于存储器的容量深度,说明存储器全满,同时全满标志为真。还可以设置其他一些标志,比如半满,可编程接近满,可编程接近空等。它们也通过对偏移量寄存器中的编程值和存储器阵列中的字的数量进行比较来生成。同步FIFO内部通过控制电路和RAM来实现,控制电路主要包括写指针管理电路,读指针管理电路,以及FIFO状态判断电路,对于同步FIFO来讲,读和写的指针管理电路实际上就是二进制计数器。设计FIFO电路,最重要的是对FIFO状态进行判断。假设宽度任意而深度为8的FIFO,当读指

24、针read_pointer和写指针write_pointer的值一样的时候,很显然,这时FIFO的状态为空。比较麻烦的是对FIFO是否已经满的状态的判断,因为存在两种情况,第一种情况时写指针write_pointer比读指针read_pointer大,比如writer_pointer = 7而read_pointer = 0,还有一种情况时写指针writer_pointer比读指针read_pointer小,比如writer_pointer = 2而read_pointer = 3。由于读写电路在循环的读写RAM,所以在上面的两种情况下FIFO实际上都已经满了。那么如何对读写指针的判断比较容易

25、的得出FIFO已经满了,同时这样的判断电路还要容易参数化?第一种情况下,write_pointer read_pointer = 7,实际上就是FIFO深度减一,第二种情况下,(write_pointer + 8) read_pointer = 7,也是FIFO深度减一。下面的框图1主要描述同步FIFO的内部结构图1 FIFO的内部结构5、方案比较 在FPGA设计中,有两种方式,一种是原理图式图形设计,另一种是文本语言输入。使用原理图输入对电路进行描述主要适用于小规模电路的设计,因为小规模的电路布线简单;而Verilog HDL输入适合大规模的电路设计,并且有很好的可移植性,可读性强,易于交流

26、的特点。5.1 原理图设计 在Quartus6.0上,建立设计工程,设定工程文件,选择目标文件,设定目标器件的参数,打开原理图编辑窗口,在上面放置所选的器件,再连线、编译,仿真,观察仿真波形。在本设计中,同样也可以,只不过在选择器件时要设置输入数据的宽度和FIFO的深度5.2 Verilog HDL的设计在Quartus6.0上的文本编辑框上输入设计的程序,再编译,若成功,打开波形编辑器进行仿真,若不成功,则修改程序直到编译成功为止,再进行仿真,最后观察波形是否与所要达到的目的相同。 使用原理图输入对电路进行描述主要适用于小规模电路的设计,因为小规模的电路布线简单;而Verilog HDL输入

27、适合大规模的电路设计,并且有很好的可移植性,可读性强,易于交流的特点。6、编程实现6.1 原理图设计1bit8words FIFO如下图2所示:图2 1bit8words FIFO6.2 Verilog HDL的设计-程序如下所示:module myfifo(clk,din,dout,re,wf,red,we,ra,wa); input clk,we,red,din; output dout,re,wf; output 3:0wa,ra reg 3:0wa,ra; reg a,b,c,d,e,f,g,h; reg dout,re,wf; always (posedge clk) begin i

28、f (we&!wf=1) wa=wa+1; if (red&!re=1) ra=ra+1; end always (posedge clk) begin if (wa3:0=ra3:0) re=1; else re=0; if (wa3!=ra3)&(wa2:0=ra2:0) wf=1; else wf=0; end always (posedge clk) if (we&!wf) case (wa2:0) 3b000: a=din; 3b001: b=din; 3b010: c=din; 3b011: d=din; 3b100: e=din; 3b101: f=din; 3b110: g=d

29、in; 3b111: h=din; endcase always (posedge clk) if (red&!re) case (ra2:0) 3b000: dout=a; 3b001: dout=b; 3b010:dout=c;3b011:dout=d;3b100:dout=e;3b101:dout=f;3b110:dout=g;3b111:dout=h; endcase endmodule7、仿真7.1 原理图输入仿真波形图如图3图3 原理图输入的仿真波形图7.2 Verilog HDL语言输入仿真波形图如图4、5、6图4 写满功能的仿真波形图图5 读空功能的仿真波形图图6 文本输入的仿

30、真波形图8、FPGA最小系统电路8.1 FPGA设计的总框图图7 设计FPGA最小系统的总框图从上图7可以看出包括有关FPGA 的电源部分,程序下载电路,外部接口,显示部分,以及与之相连的单片机部分(电源部分、单片机程序下载、单片机电路)和单片机、FPGA的引脚功能等。这样在做具体设计的时候可以根据上面的框图来设计具体的电路。8.2 FPGA与单片机相连接的系统图8 FPGA与单片机相连的电路图 在这个系统中,FPGA程序下载电路和单片机下载电路相连接,这样可以通过软件能够把计算机上编写的程序下载到FPGA芯片上,就可以在FPGA芯片上仿真出来,如图8。图9是具体的FPGA程序下载电路 图9

31、FPGA的程序下载电路8.3 FPGA的下载以及配置Altera公司针对FPGA 器件不同的内部结构有不同的配置方式。如可以通过编程器、JATG接口在线编程以及Altera在线配置等三种方式进行对FPGA 的配置。Altera器件编程下载电缆有:ByteBlaster并行下载电缆、ByteBlasterMV并行下载电缆,MasterBlaster串行/USB通信电缆BitBlaster串口下载电缆。ByteBlaster并行下载电缆具有与PC机25针标准并行口通过PC机标准并行口在线编程。利用ByteBlaster并行下载电缆/3.3V器件时,要将电缆的VCC脚连到5V电源,而器件的VCC脚连到3.3V电源,但5V电源要接上拉电阻。ByteBlaster并行下载电缆提供两种下载模式:PS(被动串行)模式和JTAG模式。ByteBlasterMV的25针插头与ByteBlaster并行下载电缆的区别仅是第15脚不同,ByteBlaster连到GND,而ByteBlasterMV连到VCC。同样的,ByteB

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1