QuartusⅡ软件入门(全加器)电子技术实验(II)问题的提出设计一个数字钟,使之完成以下功能:实现时、分、秒的计时;时可采取12小时计时也可采取24小时计时;具有异步清零和启动/停止功能;并可调整时间。用数码管显示时分秒;具有整点报时功能;可继续设计日、星期、月、年等其他万年历功能。可设计秒表功能,闹钟功能。解决方案1——传统的数字系统设计方法1.根据设计要求划分功能模块;2.确定输入和输出的关系,画出真值表,写出逻辑表达式;4.利用公式或卡诺图进行人工化简;5.根据化简后的逻辑表达式画出电路原理图;6.在面包板上进行实验,验证电路的正确性;7.若无错误,再在透明薄膜上用贴图符号贴PCB图;8.检查后送制板厂制板;9.对PCB板进行安装、调试,若有大的错误,修改设计,重复以上过程,重新制板。搭积木的方式!基于电路板的设计方法——采用固定功能的器件(通用型器件),通过设计电路板来实现系统功能传统的数字系统设计方法•采用自下而上(BottomUp)的设计方法•采用通用型逻辑器件•搭积木式的方式•在系统硬件设计的后期进行仿真和调试•主要设计文件是电路原理图传统的数字系统设计方法的缺点效率低下——所有这一切,几乎都是手工完成!设计周期很长;容易出错;芯片种类多,数量大,受市场的限制;设计灵活性差;产品体积大。解决方案2——现代的数字系统设计方法首先在计算机上安装EDA软件,它们能帮助设计者自动完成几乎所有的设计过程;再选择合适的PLD芯片,可以在一片芯片中实现整个数字系统。基于芯片的设计方法——采用PLD(可编程逻辑器件),利用EDA开发工具,通过芯片设计来实现系统功能。EDA软件空白PLD+数字系统编程现代的数字系统设计方法(续1)1.根据设计要求划分功能模块2.PLD开发(利用EDA工具)(1)设计输入:采用原理图或硬件描述语言(HDL),描述出输入和输出的逻辑关系,将整个原理图或程序输入到计算机中;(2)设计的编译:EDA工具可自动进行逻辑综合,将功能描述转换为门级描述,或转换成具体PLD的网表文件,将网表文件自动适配到具体芯片中进行布局布线;(3)功能仿真和时序仿真;(4)编程下载到实际芯片中,在实验台上进行验证;(5)在每一阶段若有问题,可在计算机上直接修改设计,重复以上过程。现代的数字系统设计方法(续2)3.设计包含PLD芯片的电路板(1)在计算机上利用EDA软件画电路原理图;(2)进行电气规则检查无误后,自动生成网表文件;(3)利用EDA软件画PCB图,自动布线;(4)自动进行设计规则检查,无误后输出文件,制板。优点:效率高——所有这一切,几乎都是借助计算机利用EDA软件自动完成!容易检查错误,便于修改;设计周期短、成功率很高;产品体积小。现代的数字系统设计方法•通常采用自上而下(TopDown)的设计方法•采用可编程逻辑器件•在系统硬件设计的早期进行仿真•主要设计文件是用硬件描述语言编写的源程序•降低了硬件电路设计难度自行定义器件内部的逻辑和引脚写出真值表或状态表→EDA开发工具自动进行逻辑综合→模拟仿真→编程下载到PLD中基于芯片——采用PLD,利用EDA开发工具,通过芯片设计来实现系统功能。什么是EDA技术?EDA(ElectronicDesignAutomation,电子设计自动化)是在计算机的辅助下完成电子产品设计的一种先进的硬件设计技术!是立足于计算机工作平台开发出来的一整套先进的设计电子系统的软件工具。计算机并口器件编程接口PCBBoardPLD编程目标文件EDA技术的范畴IC版图设计PLD设计电路设计PCB设计模拟电路数字电路混合电路设计输入逻辑综合仿真编程下载本课程内容!真有趣,可以按自己的想法设计一个芯片!我也要参加全国大学生电子设计竞赛!呀,毕业设计正好能用得上哎!原来在一个芯片里就可以设计一个完整的计算机系统呀!找工作时也算得上一技之长哦!电子设计自动化(ElectronicDesignAutomation,EDA)技术是以计算机科学和微电子技术发展为先导,汇集了计算机图形学、拓扑逻辑学、微电子工艺与结构学和计算数学等多种计算机应用学科最新成果的先进技术,它是在先进的计算机工作平台上开发出的一整套电子系统设计的软件工具。从20世纪60年代中期开始,人们不断开发出各种计算机辅助设计工具来帮助设计人员进行集成电路和电子系统的设计,集成电路技术的不断发展对EDA技术提出新的要求,并促进了EDA技术的发展。EDA及其发展●第一阶段:计算机辅助设计(CAD阶段)●第二阶段:电子设计自动化(EDA)阶段●第三阶段:电子设计自动化(EDA)的发展阶段EDA工具电路仿真工具:主要用于模拟电路和数字电路的仿真,常见的有SPICE/PSPICE、EWB、MULTISIM等;电路板级设计工具:常见的有PROTEL、POWERPCB等;可编程器件开发工具:常见的有MAXPLUSII、QUARTUSII、MATLAB/DSPBUILDER等。EDA即电子设计自动化技术,是利用计算机工作平台,从事电子系统和电路设计的一项技术。EDA技术为电子系统设计带来了很大的变化:(1)设计效率提高,设计周期缩短;(2)设计质量提高;(3)设计成本降低;(4)能更充分地发挥设计人员的创造性;(5)设计成果的重用性大大提高,省去了不必要的重复劳动。EDA设计方法传统设计方法vsEDA设计方法传统设计方法EDA设计方法自底向上手动设计软硬件分离原理图设计方式系统功能固定不易仿真难测试修改模块难移植共享设计周期长自顶向上自动设计打破软硬件屏障原理图、HDL等设计方式系统功能易改易仿真易测试修改模块可移植共享设计周期短17本课程要学习的PLD设计EDA工具软件QuartusⅡ美国Altera公司自行设计的第四代PLD开发软件可以完成PLD的设计输入、逻辑综合、布局与布线、仿真、时序分析、器件编程的全过程同时还支持SOPC(可编程片上系统)设计开发QuartusⅡ简介QuartusⅡ提供了方便的设计输入方式、快速的编译和直接易懂的器件编程。能够支持逻辑门数在百万门以上的逻辑器件的开发,并且为第三方工具提供了无缝接口。QuartusⅡ支持的器件有:StratixⅡ、StratixGX、Stratix、Mercury、MAX3000A、MAX7000B、MAX7000S、MAX7000AE、MAXⅡ、FLEX6000、FLEX10K、FLEX10KA、FLEX10KE、Cyclone、CycloneⅡ、APEXⅡ、APEX20KC、APEX20KE和ACEX1K系列。QuartusⅡ软件包的编程器是系统的核心,提供功能强大的设计处理,设计者可以添加特定的约束条件来提高芯片的利用率。设计流程设计准备设计输入设计处理器件编程功能仿真时序仿真器件测试QuartusII软件的设计过程主要包括:①建立项目②输入设计电路(可采用不同方式)③设计编译④设计仿真⑤设计下载QuartusⅡ设计流程介绍QuartusⅡ设计流程启动QuartusⅡ5.0双击桌面上的QuartusⅡ5.0图标或单击开始按扭,在程序菜单中选择QuartusⅡ5.0,可以启动QuartusⅡ5.0。其初始界面如图所示。1.建立项目利用QuartusII提供的新建工程指南可以帮助我们很容易的建立一个工程:①在主菜单上选择File\NewProjectWizard将弹出如下图所示对话框。QuartusⅡ设计流程②在上图中的第一个空白处需添入新建工程工作目录的路径,为便于管理,QuartusII软件要求每一个工程项目及其相关文件都统一存储在单独的文件夹中。第二个空白处需添入新建的工程名称。第三个空白处需添入的是工程的顶层设计实体名称,要求顶层设计实体名称和新建的工程名称保持一致。③如上图所示添好后,按Next按钮,将会弹出加入文件对话框,如下图所示。QuartusⅡ设计流程新建工程工作目录的路径新建的工程名称工程的顶层设计实体名称加入文件对话框:可以在File空白处选择添入其他已存在的设计文件加入到这个工程中,也可以使用UserLibraryPathnames按钮把用户自定义的库函数加入到工程中使用。完成后按Next按钮进入下一步。④下面弹出的是选择可编程逻辑器件对话框,如下图所示。选Yes,手动选择需要的器件,选No,则由编译器自动选择。QuartusⅡ设计流程⑤在下一步弹出的对话框中通过选择器件的封装形式,引脚数目,以及速度级别来约束可选器件的范围。如图所示。器件设置对话框QuartusⅡ设计流程EP1K30TC144-3⑥最后是由新建工程指南建立的工程文件摘要,显示了上面的全部设置选项。至此,新工程建立完毕,在QuartusII设计软件界面的顶部标题栏将显示工程名称和存储路径。如下图所示。QuartusⅡ设计流程2.输入设计电路单击标题栏中的File→New对话框,如图所示。单击New对话框的DeviceDesignFiles选项卡,Blockdiagram/schematicfile,选好后单击【OK】按钮,打开原理图编辑器窗口。QuartusⅡ设计流程设计输入将所设计的电路的逻辑功能按照开发系统要求的形式表达出来的过程称为设计输入。设计输入有如下三种方式:(1)原理图输入方式适用于对系统及各部分电路很熟悉的场合。(2)硬件描述语言输入方式硬件描述语言是用文本方式描述设计,硬件描述语言有ABEL、AHDL、VHDL、Verilog等,其中VHDL和Verilog已成为IEEE标准。(3)波形输入方式QuartusⅡ设计流程——在编辑窗中的任何一个位置上单击鼠标右键,在弹出的快捷菜单中选择其中的输入元件项Insert--Symbol,于是将弹出如下图所示的输入元件的对话框QuartusⅡ设计流程选择菜单File-SaveAs命令,将已设计好的原理图文件取名并存盘在已为此项目建立的文件夹内。QuartusⅡ设计流程设计半加器QuartusⅡ设计流程将设计项目设置成可调用的元件QuartusⅡ设计流程设计全加器顶层文件3.设计编译①编译设置:利用QuartusII提供的编译设置指南可以帮助我们很容易的进行一个项目的编译设置。在主菜单中选择Assignments/CompilerSettingsWizard选项,将弹出一个对话框,要求输入指定的编译实体模块和设定名字。②编译设置好后,在主菜单中选择Processing/StartCompilation对所设置的项目进行编译。③阅读编译报告:编译后自动生成的编译报告如图所示,它包含了怎样将一个设计放到一个器件中的所有信息。有器件使用统计,编译设置情况,底层显示,器件资源利用率,状态机的实现,方程式,延时分析结果,CPU使用资源。QuartusⅡ设计流程QuartusⅡ设计流程QuartusⅡ设计流程编译报告:4.设计仿真QuartusII支持多种仿真输入方法,它支持波形方式输入,如:向量波形文件(.vwf)、向量文件(.vec)、列表文件(.tbl),也支持Testbench如:Tcl/TK脚本文件,同时也支持第三方的仿真工具的Verilog/VHDLTestbench。①QuartusII仿真设置:利用QuartusII提供的仿真设置指南可以帮助我们快速进行一个项目的仿真设置。在主菜单中选择Assignments/SimulatorSettingsWizard选项,在弹出的对话框中,输入指定的仿真实体模块和设定名字。QuartusⅡ设计流程②建立仿真波形文件:在主菜单中选择File/New选项,在弹出的New对话框中选择OtherFiles选项中的VectorWaveformFile。③设置仿真参数:设置仿真时间区域。对于时序仿真来说,将仿真时间轴设置在一个合理的时间区域上十分重要。通常设置的时间范围在数十微秒间:QuartusⅡ设计流程④将工程端口信号节点选入波形编辑器中。QuartusⅡ设计流程⑤编辑输入波形(输入激励