《可编程多彩霓虹灯》由会员分享,可在线阅读,更多相关《可编程多彩霓虹灯(27页珍藏版)》请在金锄头文库上搜索。
1、第一章 绪 论1.1引 言随着科学技术的迅猛发展,电子工业界经历了巨大的飞跃。集成电路的设计正朝着速度快、性能高、容量大、体积小和微功耗的方向发展。基于这种情况,可编程逻辑器件的出现和发展大大改变了传统的系统设计方法。可编程逻辑器件和相应的设计技术体现在三个主要方面:一是可编程逻辑器件的芯片技术;二是适用于可逻辑编程器件的硬件编程技术,三是可编程逻辑器件设计的EDA开发工具,它主要用来进行可编程逻辑器件应用的具体实现。在本实验中采用了集成度较高的FPGA 可编程逻辑器件, 选用了Verilog HDL硬件描述语言和Quartus开发软件。VHDL硬件描述语言在电子设计自动化( EDA)中扮演着
2、重要的角色。由于采用了具有多层次描述系统硬件功能的能力的“自顶向下”( Top - Down)和基于库(L ibrary - Based)的全新设计方法,它使设计师们摆脱了大量的辅助设计工作,而把精力集中于创造性的方案与概念构思上,用新的思路来发掘硬件设备的潜力,从而极大地提高了设计效率,缩短了产品的研制周期。Quartus是集成了编辑器、仿真工具、检查/分析工具和优化/综合工具的这些所有开发工具的一种集成的开发环境,通过该开发环境能够很方便的检验设计的仿真结果以及建立起与可编程逻辑器件的管脚之间对应的关系。第二章 技术概述2.1 EDA技术简介2.1.1 EDA技术的发展概况EDA(Elec
3、tronic Design Automation),即电子设计自动化,是指利用计算机完成电子系统的设计。EDA技术是以计算机和微电子技术为先导的,汇集了计算机图形学、拓扑学、逻辑学、微电子工艺与结构学和计算数学等多种计算机应用学科最新成果的先进技术。EDA技术以计算机为工具,代替人完成数字系统的逻辑综合、布局布线和设计仿真等工作。设计人员只需要完成对系统功能的描述,就可以由计算机软件进行处理,得到设计结果,而且修改设计如同修改软件一样方便,可以极大地提高设计效率。从20世纪60年代中期开始,人们就不断开发出各种计算机辅助设计工具来帮助设计人员进行电子系统的设计。电路理论和半导体工艺水平的提高,
4、对EDA技术的发展起到了巨大的作用,使EDA作用范围从PCB板设计延伸到电子线路和集成电路设计,直至整个系统的设计,也使IC芯片系统应用、电路制作和整个电子生产过程都集成在一个环境之中。根据电子设计技术的发展特征,EDA技术发展大致分为三个阶段。1. CAD阶段第一阶段的特点是一些单独的工具软件,主要有PCB布线设计、电路模拟、逻辑模拟、以及版图的绘制等,通过计算机的使用,从而将设计人员从大量繁重重复的计算和绘图工作中解脱出来。20世纪80年代,随着集成电路规模的增大,EDA技术有了较快的发展。许多软件公司等进入市场,开始供应带电路图编辑工具和逻辑模拟工具的EDA软件。这个时期的软件产品主要针
5、对产品开发,按照设计、分析、生产和测试等多个阶段,不同阶段分别使用不同的软件包,每个软件只能完成其中一项工作,通过顺序循环使用这些软件,可完成设计的全过程。2. CAE阶段这个阶段在集成电路与电子设计方法学以及设计工具集成化方面取得了许多成果。各种设计工具,如原理图输入、编译与连接、逻辑模拟、测试码生成、版图自动布局已齐全。由于采用了统一数据管理技术,因而能够将各个工具集成为一个CAE系统。按照设计方法学制定的设计流程,可以实现从设计输入到版图输出的全程设计自动化。这个阶段主要采用基于单元库的半定制设计方法,采用门阵列与标准单元设计的各种ASIC得到了极大的发展,将集成电路工业推入了ASIC时
6、代。3. EDA阶段20世纪90年代以来,微电子技术以惊人的速度发展,其工艺水平达到了深亚微米级,此阶段主要出现了以高级语言描述、系统仿真和综合技术为特征的第三代EDA技术,不仅极大地提高了系统的设计效率,而且使设计人员摆脱了大量的辅助性及基础性工作,将精力集中于创造性的方案与概念的构思上。它的特征为:第一,高层综合的理论与方法取得较大进展,将EDA设计层次由RT级提高到了系统级(又称行为级),并划分为逻辑综合和测试综合。第二,采用硬件描述语言HDL来描述10万门以上的设计,并形成了VHDL和VerilogHDL两种标准硬件描述语言。第三,采用平面规划技术对逻辑综合和物理版图设计进行联合管理,
7、作到在逻辑综合早期设计阶段就考虑到物理设计信息的影响。第四,可测性设计。第五,为带有嵌入IP模块ASIC设计提供软硬件协同系统设计工具。2.1.2 EDA技术的基本特征EDA技术代表了当今电子设计技术的最新发展方向,它的基本特征是:设计人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路(ASIC)实现,然后采用硬件描述语言(HDL)完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件。这样的设计方法被称为高层次的电子设计方法。下面介绍与EDA基本特征有关的几个概念。1. “自顶向下”的设计方法10年前,电子设计的基本思路还是选择标准
8、集成电路“自底向上”(Bottom-Up)地构 造出一个新的系统,这样的设计方法就如同一砖一瓦地建造金字塔,不仅效率低、成本高而且还容易出错。2. 高层次设计高层次设计提供了一种“自顶向下”(Top-Down)的全新的设计方法,这种设计方法首先从系统设计入手,在顶层进行功能方框图的划分和结构设计。在方框图一级进行仿真、纠错,并用硬件描述语言对高层次的系统行为进行描述,在系统一级进行验证。然后用综合优化工具生成具体门电路的网表,其对应的物理实现级可以是印刷电路板或专用集成电路。由于设计的主要仿真和调试过程是在高层次上完成的,这不仅有利于早期发现结构设计上的错误,避免设计工作的浪费,而且也减少了逻
9、辑功能仿真的工作量,提高了设计的一次成功率。2.2Verilog硬件描述语言 VerilogHDL是目前应用最为广泛的硬件描述语言。VerilogHDL可以用来进行各种层次的逻辑设计,也可以进行数字系统的逻辑综合,仿真验证和时序分析等。 VerilogHDL适合算法级,寄存器级,逻辑级,门级和版图级等各个层次的设计和描述 VerilogHDL进行设计最大的优点是其工艺无关性这使得工程师在功能设计,逻辑验证阶段可以不必过多考虑门级及工艺实现的具体细节,只需根据系统设计的要求施加不同的约束条件,即可设计出实际电路 VerilogHDL是一种硬件描述语言(hardwaredescriptionlan
10、guage),为了制作数字电路而用来描述ASICs和FPGA的设计之用。Verilog的设计者想要以C编程语言为基础设计一种语言,可以使工程师比较容易学习。 Verilog是由en:GatewayDesignAutomation公司于大约1984年开始发展。GatewayDesignAutomation公司后来被CadenceDesignSystems于1990年所购并。现在Cadence对于Gateway公司的Verilog和Verilog-XL模拟器拥有全部的财产权。2.3 QuartusII软件介绍QuartusII软件是开发AlteraPLD的软件工具,可开发FPGA、CPLD和结构化
11、的ASIC,是MAX+plusII的升级版本。QuartusII提供了方便的设计输入方式、快速的编译和直接易懂的器件编程。能够支持逻辑门数在百万门以上的逻辑器件的开发,并且为第三方工具提供了无缝接口。QuartusII提供了全面的逻辑设计能力,包括电路图、文本和波形的设计输入以及编译、逻辑综合、仿真和定时分析以及器件编程等诸多功能。特别是在原理图输入等方面,QuartusII被公认为是最容易使用、人机界面最友好的PLD开发软件。2.3.1QuartusII软件的特点1. 开放式的多平台设计环境QuartusII提供了完整的多平台设计环境,能满足各种特定设计的需要,也是可编程片上系统(SOPC)
12、设计的综合性环境和SOPC开发的基本设计工具,并为Alrera DSP开发包进行系统的模型设计提供了集成综合环境。QuartusII设计工具完全支持VHDL、Verilog的设计流程,其内部嵌有VHDL、Verilog逻辑综合器。QuartusII也可以利用第三方综合工具。同样,QuartusII具备仿真功能,同时也支持第三方的仿真工具。2. 设计与结构无关QuartusII支持Cyclone、Stratix、APEX20KE、FLEX10KA、FLEX6000、MAX7000B、MAX7000AE和MAX7000S等系列可编程逻辑器件,门数为6000250000门,提供了业界正真与结构无关的
13、可编程逻辑设计环境。QuartusII的编译器还提供了强大的逻辑综合与优化功能以减轻用户的设计负担。3. 可在多种平台运行QuartusII软件可基于PC的WindowsNT4.0、Windows98、Windows2000等操作系统下运行,也可在Sun SPARCstasions,HP9000 Series700/800等工作站上运行。4. 层次化设计QuartusII支持层次化设计,可以在一个新的编辑输入环境中对使用不同输入设计方式完成的模块进行调试,从而解决了原理图与HDL混合输入设计的问题。5. 模块化工具设计者可以从各种设计输入、编辑、校验及器件编程工具中做出选择,形成用户风格的开发
14、环境,必要时还可以在保留原始功能的基础上添加新的功能。6. 支持硬件描述语言QuartusII软件支持多种硬件描述语言的设计输入,包括标准的VHDL、VerilogHDL及AHDL。7. 丰富的LPM模块QuartusII含大量有用的LPM模块,它们是复杂或高级形同构建的重要组成部分,在SOPC设计中被大量使用,也可以在QuartusII普通设计文件一起使用。Altera提供的LPM函数均基于Altera期间的结构做了优化设计。在许多实用情况中,必须使用宏功能模块才可以使用一些Altera特定器件的硬件功能。2.3.2 QuartusII软件设计流程作为第一款从FPGA至掩模器件的完整设计工具
15、,Altera公司推出的四代可编程逻辑器件集成开发环境QuartusII提供了从设计输入到器件变成的全部功能。QuartusII分为综合工具、仿真工具、实现工具、辅助设计工具和其他工具等,强大,界面友好,易于掌握。利用QuartusII开发工具进行数字系统设计,可以概括为以下几个步骤:设计输入、综合、布局布线、时序分析、仿真、编程和配置等,如图1所示图1 QuartusII设计流程Fig. 1 QuartusII design processQuartusII利用Verilog HDL完成电路设计,必须借助EDA工具的综合器、适配器、时序仿真器和编译器等工具进行相应的处理,才能最终在硬件上得以实现和测试。第三章 可编程多彩霓虹灯系统设计方案3.1 设计分析利用开发系统板,设计一个简易的霓虹灯控制芯片。利用开发板上的8个发光二极管来模拟霓虹灯的灯泡,用按键来控制霓虹灯的显示模式。设计一个可编程的多彩霓虹灯,实现霓虹灯的可编程多种图案的交替显示。系统的输入信号包括8个拨码开关、一个按键开关和时钟信号,输出信号有8个LED。可编程多彩霓虹灯的外部时钟由晶振产生,该开发板系统示例中采用的晶振频率为50MHz。可编程多彩霓虹灯共有8个灯泡,定义这8个灯泡的亮暗组合为一帧图案,每次显示的图案需要8bits数据。在本设计中,预定了8帧图案,在正常