1、,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,#,1,QUARTUS II,软件介绍,1,、版本下载地址:,ftp:/II,安装注意事项,1,、需要,5GB,空间,2,、需要关闭杀毒软件(所以最好是断网安装),3,、安装过程中选择路径中最好不要有中文,下划线等,3,QUARTUS II,设计开发流程,4,QUARTUS II,文件格式介绍,5,QUARTUS II,图表和原理图编辑器,1,、图表模块编辑是主要的顶层设计的主要方法,2,、原理图编辑是传统的设计输入方法,3,、用户可以利用加入,QUARTUS II,提供的,LPMs,,宏功能等函数以及用户自己的库函数来设计
2、,4,、提供“智能”的模块链接和映射,6,QUARTUS II,图表模块设计流程,7,QUARTUS II,新建项目,1,、新建项目:,File-New Project Wizard,,选择项目路径,输入项目名称:,Example,,以及顶层文件名:,Example,其余选项采用默认选项,可直接点,finish,,若有原始文件,点,next,添加文件,8,QUARTUS II,新建项目,9,QUARTUS II,新建文件,1,、新建项目:,File-New,,在项目,Example,中新建文件,因新建项目时顶层文件名为,Example,,所以主文件名为,Example,10,QUARTUS I
3、I,新建文件,(1),、,Block Diagram/Schematic File,,原理图输入方式,易于理解,文件存放后缀为,.bdf,(2),、,Verilog HDL,文件,,主要用于用,verilog HDL,语言编写程序实现功能,文件存放后缀为,.v,(3),、,Vector Waveform File,,仿真文件,主要用于进行软件仿真,文件存放后缀为,.vwf,(4),、,Memory Initialization File,,配置文件,主要用于存储器部件,rom,ram,数据的写入,文件存放后缀为,.mif,11,QUARTUS II,原理图设计例子,2,、,调用,Quartus
4、,内部元件,可在工作区直接双击,再输入所需的元件名即可,例如调用元件库中的,3-8,译码器,只要输入,74138,即可,12,QUARTUS II,原理图设计例子,13,QUARTUS II,原理图设计例子,14,QUARTUS II,原理图设计例子,3,、,编译文件:文件建立完毕,点击右上角的紫红色按钮,Start Compilation,进行编译,15,QUARTUS II,原理图设计例子,16,QUARTUS II,原理图设计例子,17,QUARTUS II,原理图设计例子,4,、,进行软件仿真,Example.vwf,:左侧右键,-Insert Node or Bus,(或直接双击),
5、在对话框中选择,Node Finder,,导入输入输出端,双击,18,QUARTUS II,原理图设计例子,19,QUARTUS II,原理图设计例子,20,QUARTUS II,原理图设计例子,21,QUARTUS II,原理图设计例子,22,QUARTUS II,原理图设计例子,23,QUARTUS II,原理图设计例子,5,、,在仿真文件中设置输入值,点右上角的蓝色按钮,Start Simulation,进行仿真,设置如下,双击设置时间点,24,QUARTUS II,原理图设计例子,25,QUARTUS II,原理图设计例子,26,QUARTUS II,原理图设计例子,27,QUARTU
6、S II,原理图设计例子,28,QUARTUS II,原理图设计例子,29,QUARTUS II,原理图设计例子,最终设置,30,QUARTUS II,原理图设计例子,31,QUARTUS II,原理图设计例子,32,QUARTUS II Functional Simulation,功能仿真,功能仿真:验证综合电路逻辑运算单元的正确性,不考虑器件的时延,算是理想状态下的仿真,,Quartus II,程序默认,timing simulation,33,QUARTUS II Functional Simulation,功能仿真,34,QUARTUS II Functional Simulation
7、,功能仿真,35,QUARTUS II Functional Simulation,功能仿真,36,QUARTUS II Timing Simulation,功能仿真,时序仿真:通过功能仿真验证设计文件的正确性,就压考虑综合电路遇到的时延问题。时序仿真同时验证电路的逻辑和时序正确性。,37,QUARTUS II,习题一,1-1,基于,Quartus II,软件,用,D,触发器设计一个,2,分频电路,并做波形仿真,在此基础上,设计一个,4,分频和,8,分频电路,做波形仿真。,选择菜单,File-Create/Update-Create Symbol Files for Current File,
8、将二分频生成一个元件符号,以供调用,可用来生成,4,分频,,8,分频,当然也可以直接将,2,分频的输出信号作为下一个分频器的输入信号,38,编译注意,要设置正确的工作文件为,Top-Level,39,编译注意,要设置正确和工作文件匹配的,vwf,文件,40,QUARTUS II,习题一,1-2,基于,Quartus II,软件,用,7490,设计一个能计时(,12,小时)、计分(,60,分)和计秒(,60,秒)的简单数字钟电路。设计过程如下:,(,1,)先用,Quartus II,的原理图输入方式,用,7490,连接成包含进位输出的模,60,的计数器,并进行仿真,如果功能正确,则将其生成一个部
9、件;,(,2,)将,7490,连接成模,12,的计数器,进行仿真,如果功能正确,也将其生成一个部件;,(,3,)将以上两个部件连接成为简单的数字钟电路,能计时、计分和计秒,计满,12,小时后系统清,0,重新开始计时。,(,4,)在实现上述功能的基础上可以进一步增加其它功能,比如校时功能,能随意调整小时、分钟信号,增加整点报时功能等。,41,编译注意,注意总线的画法和定义,要查找器件的资料,确保管脚定义,及其管脚工作状态,注意同步清零和异步清零的方法,42,QUARTUS II,习题一,1-3,基于,Quartus II,软件,用部分积右移方式设计实现一个,4,位二进制乘法器,选择合适的器件,画
10、出电路连接,43,计数,H,H,H,H,保持,L,H,H,保持,L,H,H,D,C,B,A,D,C,B,A,L,H,L,L,L,L,L,QD,QC,QB,QA,D,C,B,A,CP,ET,EP,LD,RD,输出,预置数据输入,时钟,使能,预置,清零,1-4,基于,Quartus II,软件,用,74161,设计一个模,99,的计数器,个位和十位都采用,8421BCD,码的编码方式设计,分别用置,0,和置,1,两种方法实现,完成原理图设计输入、编译、仿真和下载整个过程。,QUARTUS II,习题一,44,QUARTUS II,习题一,1-5,基于,Quartus II,软件,用,7490,设计
11、一个模,71,计数器,个位和十位都采用,8421BCD,码的编码方式设计,完成原理图设计输入、编译、仿真和下载整个过程。,1-6,基于,Quartus II,,用,74283,(,4,位二进制全加器)设计实现一个,8,位全加器,并进行综合和仿真,查看综合结果和仿真结果。,45,QUARTUS II,习题一,1-7,基于,Quartus II,,用,74194,(,4,位双向移位寄存器)设计一个,“,00011101,”,序列产生器电路,进行编译和仿真,查看仿真结果。,1-8,基于,Quartus II,软件,用,D,触发器和适当的门电路实现一个输出长度为,15,的,m,序列产生器,进行编译和仿
12、真,查看仿真结果。,46,QUARTUS II,习题一,1-9,用,D,触发器构成按循环码,(000-001-011-111-101-100-000),规律工作的六进制同步计数器。,1-10,用,74194,、,74273,、,D,触发器等器件组成,8,位串入并出的转换电路,要求在转换过程中数据不变,只有当,8,位一组数据全部转换结束后,输出才变化一次。,47,QUARTUS II,习题一,1-9,用,D,触发器构成按循环码,(000-001-011-111-101-100-000),规律工作的六进制同步计数器。,1-10,用,74194,、,74273,、,D,触发器等器件组成,8,位串入并
13、出的转换电路,要求在转换过程中数据不变,只有当,8,位一组数据全部转换结束后,输出才变化一次。,48,QUARTUS II,习题一,1-11,设计一个运算电路,实现两个二位二进制数的平方和,。,1-12,用双,2,线,4,线译码器,74LS139,扩展成,3,线,8,线译码器,。,1-13,用,74LS283,设计四位二进制加减计算器,1-14,用,74LS283,完成四位二进制乘法运算,1-15,用,74LS290,级联实现模,87,计数器,49,QUARTUS II,习题一,1-16,用,74LS161,及门电路产生序列信号发生器,1-17,用,74LS161,及,74LS138,产生节拍
14、发生器,1-18,用移位寄存器设计序列信号发生器,1-19,用,D,触发器设计只有八个状态的四级约翰逊计数器,1-20,用,JK,触发器设计同步五进制加法计数器,50,QUARTUS II,基于,LPM,宏单元库的设计,乘法器模块,计数器模块,锁相环模块,存储器模块,其他模块,内容,51,QUARTUS II,基于,LPM,宏单元库的设计,Megafunction,库是,Altera,提供的参数化模块库。从功能上看,可以把,Megafunction,库中的元器件分为:,算术运算模块(,arithmetic,),逻辑门模块(,gates,),储存模块(,storage,),IO,模块(,I/O,
15、),52,QUARTUS II,基于,LPM,宏单元库的设计,算数运算模块库,53,QUARTUS II,基于,LPM,宏单元库的设计,参数化乘法器,lpm_mult,宏功能模块的基本参数表,lpm_mult,54,QUARTUS II,基于,LPM,宏单元库的设计,(,1,)调用,lpm_mult,55,QUARTUS II,基于,LPM,宏单元库的设计,(,2,),lpm_mult,参数设置,输入输出位宽设置,乘法器类型设置,56,QUARTUS II,基于,LPM,宏单元库的设计,8,位有符号乘法器电路,57,QUARTUS II,基于,LPM,宏单元库的设计,计数器模块,计数器输出端口
16、宽度和计数方向设置,58,QUARTUS II,基于,LPM,宏单元库的设计,计数器模和控制端口设置,59,QUARTUS II,基于,LPM,宏单元库的设计,更多控制端口设置,60,QUARTUS II,基于,LPM,宏单元库的设计,模,24,方向可控计数器电路,lpm_counter,计数器功能仿真波形,61,QUARTUS II,基于,LPM,宏单元库的设计,参数化锁相环宏模块,altpll,以输入时钟信号作为参考信号实现锁相,从而输出若干个同步倍频或者分频的片内时钟信号。与直接来自片外的时钟相比,片内时钟可以减少时钟延迟,减小片外干扰,还可改善时钟的建立时间和保持时间,是系统稳定工作的
17、保证。不同系列的芯片对锁相环的支持程度不同,但是基本的参数设置大致相同,下面便举例说明,altpll,的应用。,锁相环模块,62,QUARTUS II,基于,LPM,宏单元库的设计,(,1,)输入,altpll,宏功能模块,选择芯片和设置参考时钟,63,QUARTUS II,基于,LPM,宏单元库的设计,锁相环控制信号设置,64,QUARTUS II,基于,LPM,宏单元库的设计,输入时钟设置,65,QUARTUS II,基于,LPM,宏单元库的设计,(,2,)编译和仿真,锁相环电路,功能仿真波形,66,QUARTUS II,基于,LPM,宏单元库的设计,ROM,(,Read Only Mem
18、ory,,只读存储器)是存储器的一种,利用,FPGA,可以实现,ROM,的功能,但其不是真正意义上的,ROM,,因为,FPGA,器件在掉电后,其内部的所有信息都会丢失,再次工作时需要重新配置。,Quartus II,提供的参数化,ROM,是,lpm_rom,,下面用一个乘法器的例子来说明它的使用方法,这个例子使用,lpm_rom,构成一个,4,位,4,位的无符号数乘法器,利用查表方法完成乘法功能。,存储器模块,67,QUARTUS II,基于,LPM,宏单元库的设计,数据线、地址线宽度设置,68,QUARTUS II,基于,LPM,宏单元库的设计,控制端口设置,69,QUARTUS II,基于
19、,LPM,宏单元库的设计,添加,.mif,文件,70,QUARTUS II,基于,LPM,宏单元库的设计,如下图所示就是基于,ROM,实现的,4,位,4,位的无符号数乘法器电路图,其参数设置为:,LPM_WIDTH=8,LPM_WIDTHAD=8,LPM_FILE=mult_rom.mif,71,QUARTUS II,基于,LPM,宏单元库的设计,72,QUARTUS II,基于,LPM,宏单元库的设计,其他模块,Maxplus2,库主要由,74,系列数字集成电路组成,包括时序电路宏模块和运算电路宏模块两大类,其中时序电路宏模块包括触发器、锁存器、计数器、分频器、多路复用器和移位寄存器,运算电
20、路宏模块包括逻辑预算模块、加法器、减法器、乘法器、绝对值运算器、数值比较器、编译码器和奇偶校验器。,对于这些小规模的集成电路,在数字电路课程中有详细的介绍。他们的调入方法和,Megafunction,库中的宏模块是一样的,只是端口和参数无法设置。,73,QUARTUS II,基于,LPM,宏单元库的设计,计数器,74161,设计举例,模,10,计数器,74,QUARTUS II,基于,LPM,宏单元库的设计,模,10,计数器仿真波形,75,习题,1,采用,Quartus II,软件的宏功能模块,lpm_counter,设计一个模为,60,的加法计数器,进行编译和仿真,查看仿真结果。,2,采用,Quartus II,软件的宏功能模块,lpm_rom,,用查表的方式设计一个实现两个,8,位无符号数加法的电路,并进行编译和仿真。,3,先利用,LPM_ROM,设计,4,位,4,位和,8,位,8,位乘法器各一个,,然后用,Verilog,语言分别设计,4,位,4,位和,8,位,8,位乘法器,比较两类乘法器的运行速度和资源耗用情况,。,4,用数字锁相环实现分频,假定输入时钟频率为,10MHz,,想要得到,6MHz,的时钟信号,试用,altpll,宏功能模块实现该电路。,