摘要在现代电子设计领域,微电子技术迅猛发展,无论是系统设计、电路设计,还是芯片设计,其设计的复杂度都在增加,传统的手工设计方法已经不能满足设计者的要求,急需新的设计工具来解决。EDA技术的迅速发展顺应了时代的发展,使得电子设计自动化技术有了新的、快的发展,其重要程度日益突出。本文设计了基于FPGA的,用VerilogHDL语言描述的乒乓球游戏机的设计。它由控制模块、数码管的片选信号模块、送数据模块和7段译码器模块组成,连接形成乒乓球游戏机的顶层电路。在QuartusⅡ软件上用VerilogHDL语言分别对每个模块进行描述,然后在软件上进行编译、仿真,最终实现乓乓球比赛的基本过程和规则,并能自动裁判和计分,达到设计的要求。关键词:EDA;FPGA;VerilogHDLAbstractInthefieldofmodernelectronicdesign,therapiddevelopmentofmicroelectronictechnology,whetherthesystemdesign,circuitdesignandchipdesign,thedesignismorecomplex,thetraditionalmanualdesignmethodshavebeenunabletomeettherequirementsofdesigners,inurgentneedofnewdesigntoolstosolve.TherapiddevelopmentofEDAtechnologytothedevelopmentofthetimes,theelectronicdesignautomationtechnologyhasbeenthedevelopmentofnew,fast,itsimportanceisoutstandingdaybyday.ThispaperisdesignedbasedonFPGA,thedesignoftabletennisgameisdescribedwithVerilogHDLlanguage.Itconsistsofcontrolmodule,chipselectsignalmodule,digitaltubetosenddatamoduleandthe7segmentdecodermodules,thetop-levelcircuitconnectedtoformatabletennisgame.IntheQuartussoftwarebyVerilogHDLlanguageforeachmodulearedescribed,andthenthecompiler,simulationinsoftware,realizethebasicprocessandtherulesoftabletennistabletenniscompetition,andcanautomaticallyjudgeandscore,tomeetthedesignrequirements.Keywords:EDA;FPGA;VerilogHDL第一章引言1.1课题研究的背景随着微电子技术的飞跃发展,无论是系统级设计、电路设计还是芯片设计,它的复杂程度都在不断的增加,而且它的发展速度也越来越快。这时,仅仅依靠传统的电子设计方法已经不能满足需求。EDA技术的兴起与发展给电子设计带来了革命性的变化,推动了微电子技术的迅猛发展,电子学进入一个崭新的时代。1.2课题研究的目的EDA技术是现代电子设计领域的一门技术,它提供了基于计算机和信息技术的电路设计方法,不依托其他设计工具,仅以计算机为工具,在EDA软件上完成设计、编译、仿真。EDA技术正以空前的发展速度和规模渗透到各行各业。在这个快节奏生活的社会,人们外出的休闲娱乐活动越来少,而越来越多的电子游戏解决了这个问题,人们可以在家中玩各种休闲娱乐节目。所以设计了基于FPGA的两人乒乓球游戏机,让人们能在忙碌中有时间体验下体育节目的乐趣。FPGA器件具有高开发周期短,高集成度,现场可修改等特点,因此十分有必要对FPGA进行详细认真的研究。硬件描述语言VHDL功能性强,灵活性高,覆盖面广,用以甚高速集成电路硬件描述语言,具有很好的实用性。总的来说,现代EDA技术的基本特征是采用高级语言(VHDL、VerilogHDL等)描述,具有系统级仿真和综合的能力。它必将成为21世纪不可或缺的电子设计工具,必将影响这个世纪的发展。2.1EDA基础2.1.1EDA定义EDA是ElectronicsDesignAutomation(电子设计自动化)的缩写,以计算机为工作平台;在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的定义发展而来的;是利用电子技术基础、计算机技术、智能化技术等多种应用技术而开发成的整套电子CAD软件;是一种帮助从事电子元件产品和系统设计的电子工作者的综合技术。2.1.2EDA技术的发展历程集成电路的飞快发展不断给EDA技术提出更高的要求,对EDA技术的发展起了巨大的推动作用。从20世纪60年代中期开始,人们不断地开发出各种计算机辅助设计工具来帮助设计人员进行集成电路和电子系统的设计。经历了计算机辅助设计、计算机辅助工程设计和电子系统设计自动化这3个阶段,如图2.1所示。行为行为综合功能逻辑综合逻辑布局布线版图图形生成掩膜20世纪70年代计算机辅助设计20世纪80年代计算机辅助工程20世纪90年代电子设计自动化图2.1EDA技术的发展历程(1)CAD阶段20世纪70年代,随着中、小规模集成电路的兴起和应用,传统的手工设计印刷电路板和集成电路的方法已经不能满足设计精度和效率的要求,于是电子设计工程师们开始在二维平面图形上进行计算机辅助设计,这样就产生了第一代EDA工具,设计者从繁杂、机械的、手工布局和布线工作中解放了出来。(2)CAE阶段20世纪80年代以后,集成电路的规模越来越大,电子系统设计的复杂也在增加,电子设计自动化的工具逐步完善和发展起来,设计者们尤其在设计方法、设计工具集成化方面取得了很大的进步。为了适应电子产品在规模和制作上的需要,以计算机仿真和自动布线为核心的第二代EDA技术应运而生。其特点是以软件设计工具为核心,通过软件完成产品的开发、设计、分析、生产和测试等工作。(3)ESDA阶段20世纪90年代,设计师们逐步从使用硬件转向去设计硬件,从单个电子产品开发转向系统级电子产品开发(及片上系统集成)。因此,这时的EDA工具是以系统级设计为核心,包括结构综合与系统行为级描述,系统仿真与测试验证,系统决策与文件生成,系统划分与指标分配等一整套的电子系统设计工具。这时的EDA工具不仅具有电子系统设计的能力,而且具有独立于生产工艺和厂家的系统级设计能力。第三代EDA工具的出现,极大地提高了电子系统设计的效率,让设计工程师们开始能够以概念来驱动设计工程的梦想。2.1.3EDA技术的发展趋势随着微电子技术的不断发展与进步和市场需求的不断增长,EDA技术在21世纪后得到了迅猛的发展,这一发展趋势表现在以下几个方面:(1)软件IP核在微电子的产业领域、设计应用领域和技术领域得到进一步的巩固与发展。(2)使支持硬件描述语言仿真和设计的EDA软件不断地强大起来。(3)EDA使得系统与器件、专用集成电路ASIC与FPGA、模拟与数字、行为与结构、软件与硬件等的界限越来越模糊。(4)EDA技术保护了设计者的电子设计成果的知识产权。(5)大规模的电子系统都是以EDA为工具设计的,正以飞快的速度渗透到IP核模块。(6)更大规模的可编程逻辑器件正在推向市场,使得设计更为广泛与便捷。2.1.4EDA技术的基本特征总的来说,现代EDA技术是采用高级程序语言描述,具有系统级仿真和综合的能力。它主要采用并行工程和“自顶向下”的设计方法,使开发人员从一开始就能考虑到产品生成周期的诸多方面,包括质量、成本、开发时间及用户的需求等。然后从系统设计开始,在顶层进行功能方框图的划分和结构的设计,在方框图一级进行仿真、纠错,并用VHDL、Verilog-HDL等硬件描述语言对顶层的系统进行功能和行为上的描述,在系统一级进行验证与仿真。最后,用逻辑综合优化工具生成具体的门级逻辑电路的网表,其对应的物理实现级可以是印刷电路板或者是专用的集成电路。近年来,硬件描述语言等设计数据格式逐步形成一种标准,不同的设计风格和应用要求使得各具特色的EDA工具被集成在相同的设计方法上,EDA技术的设计框架日趋标准化。2.1.5EDA技术的基本工具集成电路技术的不断发展对EDA技术提出了更高的要求,促进了EDA技术向更高的层次发展。但实际来说,EDA系统的设计能力一直难以满足集成电路的要求。EDA工具的发展经历了两个阶段,即物理工具阶段和逻辑工具阶段。现在,人们已经开发了很多计算机辅助设计工具来帮助设计集成电路,常见的EDA工具有编辑器、仿真器、检查/分析工具和优化/综合工具等,如图2.2所示。图2.2EDA设计工具的分类EDA设计工具检查/分析工具编辑器仿真器优化/综合工具文字编辑器图形编辑器统计型编辑器确定型仿真器2.1.6EDA技术的基本设计思路(1)EDA技术的电路级设计电路级设计工作,首先,应该先确定合适的设计方案,然后选择方便实现该方案的元器件,接着就可根据所选元器件设计符合要求的电路原理图,再接着进行一次仿真。其目的是检验此设计方案在元件模型库支持下的功能方面是否正确,这样,设计工作就进入了轨道。第一次仿真通过后,就开始进行PCB的自动布局布线,此布局布线要根据原理图产生的电路连接网络表来进行。然后,对PCB进行分析,将分析结果反馈给电路图,并再次仿真。这样,PCB板在实际工作中的可行性就一目了然了。综上,EDA的电路级设计可在实际的电子系统产生之前就了解其功能特性,从而降低其设计风险,降低开发成本,缩短其开发周期,使得设计人员能够更好、更方便的设计。电路级设计工作流程如图2.3图2.3电路级设计工作流程图(2)EDA技术的系统级设计EDA技术的系统级设计方法是采用“自顶向下”的思路来设计的,让开发者一开始就可了解到产品的开发周期、生产成本等。设计者首先从系统方案入手,方案设计原理图设计系统仿真自动布局PCB后仿真制造PCB元件符号库元件模型库系统实现进行顶层的划分和结构设计;然后,用VHDL语言等硬件描述语言对系统进行深刻描述;接着就用编辑器将其转换成标准的VHDL文件,再接着验证系统功能设计的正确性;再接着就用逻辑综合优化工具生成具体的门级电路的网络表;其后,进行时序仿真;最后,就到了系统的物理实现级,将其变成FPGA等。EDA技术的系统级设计如图2.4所示。图2.4EDA技术的系统级设计2.1.7EDA的设计流程EDA的设计流程是“自顶向下”的设计思路。设计流程如图2.5所示。方案设计系统规划VHDL代码输入编译器功能仿真综合器时序仿真适配器编程文件FPGA等原理图/HDL文本编辑综合FPGA/CPLD适配FPGA/CPLD编程下载FPGA/CPLD器件和电路系统时序与功能门级仿真功能仿真逻辑综合器结构综合器1.功能仿真2.时序仿真1.ISP方式下载2.JTAG方式下载3.针对SRAM结构的配置4.OTP器件编程图2.5应用于FPGA/CPLD的EDA开发流程2.2FPGA的概念与特点FPGA(Field-ProgrammableGateArray),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。目前以硬件描述语言(Verilog或VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至FPGA上进行测试,是现代IC设计验证的技术主流。这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数