1、1第一部分:实验要求第一部分:实验要求n通过本次实验,引导学生以通过本次实验,引导学生以EDA设计的设计的手段来设计数字逻辑电路;手段来设计数字逻辑电路;n认识可编程逻辑器件认识可编程逻辑器件(PLD);n掌握掌握QuartusII集成开发环境软件。集成开发环境软件。2一、实验目的一、实验目的1. 学习学习EDA集成工具软件集成工具软件Quartus II的使用;的使用;2. 学会基于学会基于PLD的的EDA设计流程;设计流程;3. 学会使用原理图设计小型数字电路;学会使用原理图设计小型数字电路;4. 掌握对设计进行综合、仿真和设计下载的方法。掌握对设计进行综合、仿真和设计下载的方法。二、实验
2、目仪器及器件二、实验目仪器及器件1、实验设备:数字电路实验箱实验设备:数字电路实验箱1台台2、实验器件:可编程逻辑器件(背板)实验器件:可编程逻辑器件(背板)3三、实验原理三、实验原理n可编程逻辑器件可编程逻辑器件(Programmable Logic Devices,PLD),发展于),发展于20世纪世纪70年代,属半定制集成电路;年代,属半定制集成电路;n使用使用PLD器件,借助器件,借助EDA设计方法,可以方便、快速地设计方法,可以方便、快速地构建数字系统;构建数字系统;n任何组合逻辑电路都可以用任何组合逻辑电路都可以用“与门与门-或门或门”二级电路实现;二级电路实现;n任何时序逻辑电路
3、都可以由任何时序逻辑电路都可以由组合逻辑电路加上存储元件组合逻辑电路加上存储元件(触发器、锁存器构成);(触发器、锁存器构成);n人们由此提出人们由此提出乘积项可编程乘积项可编程电路结构,原理结构如下:电路结构,原理结构如下:4低密度低密度PLD可编程原理可编程原理【早期器件早期器件】低密度(简单)低密度(简单)PLDPLD,通常内部等,通常内部等效门数少于效门数少于500500个,个,只能实现通用数字只能实现通用数字逻辑(如逻辑(如7474系列)系列)的一些功能的一些功能5n使用使用FPGA(大容量可编程逻辑器件)从事(大容量可编程逻辑器件)从事数字系统设计的三阶段:数字系统设计的三阶段:1
4、、常规逻辑功能描述的实现;、常规逻辑功能描述的实现;n指常规数字逻辑器件,如指常规数字逻辑器件,如3-8线译码器线译码器74LS138,二,二进制计数器进制计数器74LS161,移位寄存器,移位寄存器74LS194等;等;2、时序产生及控制、小型数字系统的实现;、时序产生及控制、小型数字系统的实现;n如用状态机完成如用状态机完成AD信号的采集,产生信号的采集,产生PWM时序控制时序控制步进电机步进电机n简易数字频率计、交通灯、数字种系统的实现等;简易数字频率计、交通灯、数字种系统的实现等;3、算法功能、算法功能/综合系统的实现综合系统的实现nFFT算法实现、频谱分析等。算法实现、频谱分析等。6
5、四、实验任务四、实验任务 n参照下图,在参照下图,在QuartusII原理图输入环境下,画出原理图输入环境下,画出3-8线译码器构成的流水灯电路;线译码器构成的流水灯电路;7五、实验步骤五、实验步骤n1. 建立一个项目;建立一个项目;n2. 选定目标器件(选定目标器件(EPM240T100C5),配置管脚,对设),配置管脚,对设计进行综合;计进行综合;n3. 绘制设计电路原理图;绘制设计电路原理图;n4. 编辑测试激励波形文件,执行时序仿真,记录仿真结果;编辑测试激励波形文件,执行时序仿真,记录仿真结果;n5. 对设计进行引脚锁定,下载设计文件到芯片中;对设计进行引脚锁定,下载设计文件到芯片中
6、;n6. 断电后连接验证电路,然后上电观察硬件运行结果,如断电后连接验证电路,然后上电观察硬件运行结果,如不正确,需要重新修改设计;不正确,需要重新修改设计;n7. 记录实验结果及实验过程中出现的问题及解决办法。记录实验结果及实验过程中出现的问题及解决办法。n(注:)(注:)5-7步的操作参考实验八的步的操作参考实验八的ppt,如本次实验未完,如本次实验未完成,第八次实验继续进行,请自行保留设计工程文件夹。成,第八次实验继续进行,请自行保留设计工程文件夹。8六、实验报告要求六、实验报告要求 n1. 记录设计原理图。记录设计原理图。n2. 记录综合结果(逻辑单元记录综合结果(逻辑单元的消的消耗情
7、况等)。耗情况等)。n3. 记录仿真结果(画出仿真波形)。记录仿真结果(画出仿真波形)。n4. 分析结果(实验现象结论)。分析结果(实验现象结论)。n5. 简答思考题。简答思考题。思考题:思考题:1、什么是可编程逻辑器件,简述其优点;、什么是可编程逻辑器件,简述其优点;2、简述、简述QuartusII从事本实验项目设计的流程。从事本实验项目设计的流程。9第二部分:第二部分:QuartusII软件使用软件使用n请同学们参照后面的步骤,提前做好预习,请同学们参照后面的步骤,提前做好预习,熟悉熟悉QuartusII软件的操作环境;软件的操作环境;nQuartusII软件可到实验中心网站上下载,软件可
8、到实验中心网站上下载,要注意它的破解步骤要注意它的破解步骤10一、准备一、准备n1、使用、使用QuartusII软件之前,软件之前,请确保软件已正常破解请确保软件已正常破解若启动若启动QuartusII时看到如下界时看到如下界面,则说明软件尚未正常破解,面,则说明软件尚未正常破解,需要破解后才能正常使用:需要破解后才能正常使用:将本机将本机D:Altera目录下的目录下的License.Dat文件文件中的中的MAC号即完成破解号即完成破解;右图所示为查看本机右图所示为查看本机MAC地址(实际地址)地址(实际地址)的方法。的方法。112、Quartus II 6.0主界面操作环境主界面操作环境1
9、、Project Navigator(工程管理器)(工程管理器)2、Message window(信息窗口)(信息窗口)2、Status window(状态窗口)(状态窗口)123、常用工具栏、常用工具栏To reset views: 1.Tools Customize Toolbars Reset All2.Restart Quartus IIWindow & new file buttonsCompiler reportFloorplanExecution controlsDynamic menus若若QuartusII界面上界面上一些默认的按钮被一些默认的按钮被关闭,影响使用,关闭,影响
10、使用,可按右边的操作步可按右边的操作步骤来复原骤来复原13工程创建时的准备工作工程创建时的准备工作nQuartusII通过通过“工程(工程(Project)”来管理设计文来管理设计文件,件,必须必须为此工程创建一个放置与此工程相关的为此工程创建一个放置与此工程相关的所有设计文件的文件夹;所有设计文件的文件夹;n此此文件夹名不宜用中文文件夹名不宜用中文,也最好不要用数字,应,也最好不要用数字,应放到磁盘上容易找到的地方,不要放在软件的安放到磁盘上容易找到的地方,不要放在软件的安装目录中;装目录中;n建立完工程文件夹后再进行后续操作建立完工程文件夹后再进行后续操作二、在二、在QuartusII6.
11、0环境下建立工程环境下建立工程141、项目创建向导、项目创建向导工程文件名,任取,建立工程文件名,任取,建立在用户自己的目录下,不在用户自己的目录下,不要使用软件的安装目录或要使用软件的安装目录或系统目录系统目录选择工作路径选择工作路径顶层实体名,一般和工程顶层实体名,一般和工程名相同名相同文件菜单文件菜单基于已有项目创建工程基于已有项目创建工程(一般(一般 不使用)不使用)15添加用户的设计文件添加用户的设计文件 Graphic (.BDF, .GDF) AHDL VHDL Verilog EDIFNotes: Files in project directory do not need t
12、o be added Add top level file if filename & entity name are not the same-选中待添加的文件后点击选中待添加的文件后点击“Add”,若暂无文件,若暂无文件,直接点击直接点击“Next”Add user library pathnames User libraries MegaCore/AMPPSM libraries Pre-compiled VHDL packages2、为创建的工程添加设计文件、为创建的工程添加设计文件16选择选择CPLD/FPGA器件型号器件型号选择选择CPLD/FPGA器件所属系列器件所属系列3、器件
13、选择、器件选择本本EDA实验背板所使用的器件为实验背板所使用的器件为ALtera公司公司MAXII系列系列(Family)的的EPM240T100C5(Avaliable devices)17选择第三方选择第三方EDA工具工具(如(如ModelSim、Synplify等)等)这里不需要这里不需要4、EDA 工具设置工具设置185、完成、完成!(1)工程创建完毕,界面上在工程管理器)工程创建完毕,界面上在工程管理器处出现所选用的器件系列、器件名及工程处出现所选用的器件系列、器件名及工程文件名文件名“epm240”;(2)可以看出:软件界面没有明显变化,)可以看出:软件界面没有明显变化,需要用户再
14、建立设计文件。需要用户再建立设计文件。19关于创建工程的补充说明关于创建工程的补充说明n(1)指定工程所在的工作库文件夹、工程名及设)指定工程所在的工作库文件夹、工程名及设计实体名;计实体名;n(2)将设计文件加入工程中;)将设计文件加入工程中;n(3)选择仿真器和综合器类型(默认)选择仿真器和综合器类型(默认“None”为为选择选择QuartusII自带的);自带的);n(4)选择目标芯片(开发板上的芯片类型);)选择目标芯片(开发板上的芯片类型);n(5)工具设置(若都不选择,则使用)工具设置(若都不选择,则使用QuartusII自带的所有设计工具);自带的所有设计工具);n(6)结束设置
15、。)结束设置。n工程建立后,若需要新增设计文件,可以通过工程建立后,若需要新增设计文件,可以通过Project /Add_Remove在工程中添加新建立在工程中添加新建立的设计文件,也可以删除不需要的设计文件。编的设计文件,也可以删除不需要的设计文件。编译时将按此选项卡中列出的文件处理。译时将按此选项卡中列出的文件处理。20三、在三、在QuartusII6.0工程下建立设计文件工程下建立设计文件1、在、在File菜单下点击菜单下点击“New”,即弹出用户设,即弹出用户设计建立向导计建立向导QuartusII支持原理图输入(支持原理图输入(Block Diagram/Schematic File
16、)、)、VHDL语言输入等语言输入等多种设计输入方式多种设计输入方式,后面以,后面以原理图输入原理图输入为例介绍为例介绍212、建立原理图设计文件、建立原理图设计文件原理图绘制区绘制工具工程文件名223、调用参数化元件、调用参数化元件n在绘图区双击鼠标左键,即弹出添加符号在绘图区双击鼠标左键,即弹出添加符号元件的窗口元件的窗口在此输入已知的在此输入已知的元件名,可以快元件名,可以快速地调出元件速地调出元件在此可选择查看在此可选择查看库中所有的元件库中所有的元件23n分别调用了输入端口分别调用了输入端口“input”和逻辑器件和逻辑器件“74138”调用库元件预览调用库元件预览244、绘图控制操
17、作、绘图控制操作1、选择及画线工具、选择及画线工具2、文本工具、文本工具3、符号工具,可跳出前、符号工具,可跳出前面添加元件的窗口面添加元件的窗口4、窗口缩放工具,左键放大,右键缩小、窗口缩放工具,左键放大,右键缩小5、窗口全屏显示,按、窗口全屏显示,按“ESC”退出退出说明:使用图示说明:使用图示2-4的工具按钮后,请的工具按钮后,请切换回切换回1按钮(选按钮(选择及画线工具),才能对绘图进行编辑。择及画线工具),才能对绘图进行编辑。其余工具按钮不常用,其余工具按钮不常用,这里不介绍这里不介绍255、设计、设计74138,并进行功能验证测试,并进行功能验证测试n从符号库中调出从符号库中调出7
18、4138及需要的及需要的输入输入、输出输出端口,端口,排放整齐排放整齐n完成画线连接操作(鼠标放到端点处,会自动捕完成画线连接操作(鼠标放到端点处,会自动捕捉,按下左键拖动到目标处,释放后即完成一次捉,按下左键拖动到目标处,释放后即完成一次画线操作)画线操作)26为端口命名为端口命名n鼠标左键双击端口名,如图示鼠标左键双击端口名,如图示74138电路电路Y7N端所示,直接输入用户自定义的名字端所示,直接输入用户自定义的名字即可。即可。n74138逻辑测试电路原理图设计完毕!逻辑测试电路原理图设计完毕!27四、全程编译四、全程编译在下拉菜单在下拉菜单“Processing”中选择中选择“Star
19、t Compilation”,启动全程编,启动全程编译译编译完成后的编译完成后的信息报告窗口信息报告窗口28关于全程编译关于全程编译nQuartusII的编译器由一系列处理模块构成;的编译器由一系列处理模块构成;n这些模块负责对设计项目的检错、逻辑综合、结构综合、输这些模块负责对设计项目的检错、逻辑综合、结构综合、输出结果的编辑配置,以及时序分析;出结果的编辑配置,以及时序分析;n在这一过程中,将设计项目适配到在这一过程中,将设计项目适配到FPGA/CPLD目标器件中,目标器件中,同时产生多用途的输出文件,如功能和时序信息文件,器件同时产生多用途的输出文件,如功能和时序信息文件,器件编程的目标
20、文件;编程的目标文件;n编译器首先检查出工程设计文件中可能的错误信息,以供设编译器首先检查出工程设计文件中可能的错误信息,以供设计者排除,然后产生一个结构化的网表文件表达的电路原理计者排除,然后产生一个结构化的网表文件表达的电路原理图文件;图文件;n启动全程编译:启动全程编译:选择选择Processing/Start Compilation,自动完成分析、排错、综合、自动完成分析、排错、综合、适配、汇编及时序分析的全过程。适配、汇编及时序分析的全过程。n编译过程中,错误信息通过下方的信息栏指示(红色字体)。编译过程中,错误信息通过下方的信息栏指示(红色字体)。双击此信息,可以定位到错误所在处,
21、改正后在此进行编译双击此信息,可以定位到错误所在处,改正后在此进行编译直至排除所有错误;直至排除所有错误;n编译成功后,会弹出编译报告,显示相关编译信息。编译成功后,会弹出编译报告,显示相关编译信息。29n工程编译完成后,设计结果是否满足设计要求,工程编译完成后,设计结果是否满足设计要求,可以通过时序仿真来分析;可以通过时序仿真来分析;n时序仿真主要包含如下的设置步骤:时序仿真主要包含如下的设置步骤:打开波形编辑器;打开波形编辑器;设置仿真时间区域;设置仿真时间区域;波形文件存盘;波形文件存盘;将端口节点信号选入波形编辑器中;将端口节点信号选入波形编辑器中;编辑输入波形(输入激励信号);编辑输
22、入波形(输入激励信号);总线数据格式设置总线数据格式设置启动仿真器启动仿真器观察仿真结果(波形编辑文件及产生的波形报告文件分观察仿真结果(波形编辑文件及产生的波形报告文件分开显示)开显示)若无法观察完整波形,可以使用热键若无法观察完整波形,可以使用热键Ctrl+W,即可看到即可看到完整的仿真波形。也可使用鼠标左右键,方法如下:完整的仿真波形。也可使用鼠标左右键,方法如下:选中后,右键放大,左键缩小选中后,右键放大,左键缩小顺顺序序并并不不是是唯唯一一的的五、时序仿真五、时序仿真30n1、建立波形矢量文件(左图);、建立波形矢量文件(左图);n2、添加引脚节点、添加引脚节点31添加引脚节点(续)
23、添加引脚节点(续)在在Filter下选择下选择“Pins:unassigned”,再单击,再单击“List”,列出引脚端口,列出引脚端口”在在Nodes Found下方的列下方的列表下选择所列出表下选择所列出的端口,将其拖的端口,将其拖放到波形文件的放到波形文件的引脚编辑区引脚编辑区323、设置仿真时间长度、设置仿真时间长度默认为默认为1us,这里将其设置为,这里将其设置为100us334、设置仿真时间周期、设置仿真时间周期默认为默认为10ns,由于竞争冒险的存,由于竞争冒险的存在,在仿真时信号波形和大量毛在,在仿真时信号波形和大量毛刺混叠在一起,影响仿真结果刺混叠在一起,影响仿真结果因此,这里设置为因此,这里设置为500ns345、编辑输入端口信号、编辑输入端口信号信号赋值信号赋值窗口缩放(左键放窗口缩放(左键放大,右键缩小)大,右键缩小)已编辑好的波形已编辑好的波形356、启动时序仿真、启动时序仿真分析波形可见,与分析波形可见,与74LS138功能真值表一致,结果正确功能真值表一致,结果正确