实验一QuartusII90软件安装与工具使用一实验目的1掌握QuartusII90软件安装及License设置方法2掌握QuartusII90的开发界面和开发流程3掌握利用原理图方法进行简单电路设计4了解利用verilog语言进行电路设计的优点5掌握对设计电路进行波形功能仿真的方法二实验设备1硬件PC机便携式EDASOPCDSP实验系统2软件QuartusII90三实验内容及步骤一QuartusII90软件的安装1确保机器上尚未安装其它任何版本的Quartus软件若有则先卸载再重新安装2打开QuartusII90软件包源文件所在位置运行quartussetupexe开始安装过程请按屏幕提示进行并建议采用默认路径注所有路径中不能有中文名称和空格3进入QuartusII90安装界面如图11所示按屏幕提示进行安装图11安装界面4根据提示选择安装方式可以点选Complete为完全安装组件也可以点选Custom为自定义安装组件这里选择Complete完全安装组件为了节约安装空间也可选择Custom自定义安装组件如图12所示图12选择完全安装方式5待安装结束后将CrackCrackQII90SP2rar拷贝到安装路径中的bin中若使用默认设置则安装路径为calteraquartusbin解压CrackQII90SP2rar文件6双击QuartusII90SP2破解器exe文件并点击应用补丁然后点击保存licenseDAT文件最后点击退出应用补丁7在calteraquartusbin中找到licenseDAT文件并以记事本的形式打开将文件里所有的HOSTIDxxxxxxxxxxxx中原有12位符号全部替换为本机网卡号在QuartusII90的Tools菜单下选择LicenseSetup下面就有NICID网卡号并保存如图13所示至此QuartusII90软件安装完毕图13修改licenseDAT文件中的MAC地址二设置Licecse1点击桌面quartusII90软件屏幕上出现要求进行Licecse设置的界面如图14所示图14要求进行License设置2点选Specifyvalidlicensefile选项进入图15所示的License设置窗口图15设置License3点击Licensefile行最右边的符号浏览至安装路径下经修改网卡号后的licenseDAT文件并确定打开4观察CurrentLicense中的显示内容确定LicenseType为FullVersionHostIDValue为本机网卡号则软件的License设置正确注必须保证License设置完全正确才能正常使用QuartusII90的所有功能至此QuartusII90软件可以正常使用但为了使用JTAG下载编程功能则还需安装实验系统所配备的USBBlaster下载器驱动程序并进行硬件设置三USBBlaster下载器驱动程序安装与硬件设置1在PC机USB插孔中插入USBBlaster线PC机会出现发现新设备窗口如图16所示在这里选择从列表或指定位置安装高级并点击下一步图16新硬件向导窗口2接下来如图17所示在这里选择在这些位置上搜索最佳驱动程序并在位置栏中指定驱动安装文件路径如Daltera90quartusdriversusbblaster然后点击下一步当然在本例中由于QuartusII90安装在Caltera90的目录下因此该指定路径需改为Caltera90quartusdriversusbblaster图17安装路径选择窗口3在点击下一步后安装向导正在安装AlteraUSBBlaster驱动如图18所示图18驱动正在安装窗口4安装向导完成安装后会弹出如图19所示窗口提示已经完成AlteraUSBBlaster的安装图19驱动已安装完成窗口5点击完成按钮后在PC机任务栏的右下角托盘中会弹出如图110所示的提示信息新硬件已经安装并可使用了图110发现新硬件6进入QuartusII90点击菜单ToolsProgrammer打开下载器窗口如图111所示图111下载器窗口7确认图111中的当前下载器类型为USBBlaster若显示NoHardware或其它类型则点击HardwareSetup进行下载器硬件设置如图112所示并选择Currentlyselectedhardware下的USBBlasterUSB0然后关闭该窗口图112下载器硬件选择至此实验系统所配的USBBlaster串口下载器已安装并设置完毕四QuartusII90的开发界面和开发流程操作下面以全加器为实例对设计文件的原理图输入和verilog编程输入两种方法进行详细说明1新建工程1双击桌面QuartusII90图标打开QuartusII90工作环境如图113所示图113打开QuartusII90工作环境2点击菜单FileNewProjectWizard开始新建一个工程打开Wizard之后界面如图114所示图114NewProjectWizard界面3点击图114界面中的Next进入输入设计工程信息界面输入工程工作路径工程文件名以及顶层实体名如图115所示注要求任何目录名文件名实体名等均不能使用中文顶层实体名必须与之后设计文件比如xxbdf或xxxv等文件的顶层模块名相同默认实体名与工程名相同本次实验采用这种命名方法当然用户也可以根据需要输入不同的实体名图115输入工程设计信息界面4添加设计文件界面如图116所示若用户之前已经有设计文件比如xxbdf或xxxv等文件那么再次添加相应文件若没有完成的设计文件点击Next之后添加并且编辑设计文件图116添加设计文件5选择设计所用的器件由于本次实验所使用FPGA器件为ALTERA公司CycloneII系列的EP2C8Q208C8器件因此需在如图117窗口所示的Famliy菜单中选择CycloneII在Targetdevice选项框中选择SpecificdeviceselectedinAvailabledeviceslist并在Availabledevices列表中选择EP2C8Q208C8这个型号的器件完成后点击Next图117选择工程将使用的器件6设置EDA工具设计中可能会用到EDA工具有综合工具仿真工具以及时序分析工具在本次实验中不使用这些工具因此点击图118中的Next直接跳过设置图118设置EDA工具7查看新建工程总结在基本设计完成后QuartusII90会自动生成一个总结让用户核对之前的设计信息如图119所示确认后点击Finish完成新建图119新建工程总结8完成新建项目后进入QuartusII90开发环境在工程导航器ProjectNavigator的Hierarchy标签栏中将会出现新建工程的基本信息工程名及所选用的器件型号如图120所示图120新建工程导航器8点击菜单AssignmentsDeviceDeviceandPinOptionsUnusedPins打开图121所示窗口将所选芯片的全部未使用引脚设置为三态输入模式Asinputtristated图121设置未使用引脚的处理方式2设计输入原理图文件输入法1点击菜单FileNew在DesignFiles页中选择BlockDiagramSchematicFile为工程新添一个原理图文件初始文件名为Block1bdf在此另存文件名为fadderbdf如图122所示图122原理图设计界面2在原理图设计区域空白处双击左键打开原理图符号库如图123所示图123原理图符号库原理图设计区原理图设计工具栏3从符号库的primitivespin子类中选择input在原理图设计区域放置3个输入信号引脚并分别修改器名称为ABCI从符号库的primitivespin子类中选择output在原理图设计区域放置2个输出信号引脚并分别修改器名称为SO和CO同理从符号库的primitiveslogic子类中选择2个两输入异或门xor和3个两输入与非门nand2如图124所示注各器件的获取也可从Name栏里输入名字得到图124在原理图设计区域放置所需器件4根据1位全加器的逻辑电路结构用鼠标点击各器件端点并拖拉至其它节点可实现各节点之间的连线如图125所示5当各连线全部完成后以合适的文件名保存文件这里使用默认工程名fadder至此完成设计的原理图输入图125连接器件各节点3综合编译1点击菜单ProcessingStartCompilation开始对工程进行综合在此过程中状态栏信息栏将分别实时显示分析综合适配的进度及相关信息如图126所示2当综合结束时系统将给出有关综合过程的总结主要说明设计的综合编译是否成功设计是否存在错误或警告并给出设计所占用的PLD硬件资源等如图127所示3在某些情况下设计中存在警告warning问题可能不会影响其功能实现但若存在错误error的话则该设计不可能正确实现其功能后续的仿真及编程下载也无法进行图126综合编译的过程描述图127综合过程结束后的总结信息4功能仿真1点击菜单FileNew在VerificationDebuggingFiles页中选择VectorWaveformFile为工程新添一个用于仿真的失量波形图文件如图128所示其中工具栏中列出了各种功能选择按钮主要用于绘制编辑波形给输入信号赋值信息栏主要用于显示观察节点波形栏主要用于显示输入激励波形和输出波形图128用于仿真的失量波形图界面波形栏信息栏工具栏2在波形编辑方式下点击菜单EditInsertInsertNodeorBus或者在信息栏的空白处点击鼠标右键点击InsertInsertNodeorBus或者在信息栏的空白处双击左键弹出如图129所示的插入节点或总线InsertNodeorBus对话框图129插入信号节点对话框3在InsertNodeorBus对话框中点击NodeFinder键弹出如图130所示的节点搜索界面可在其中选择仿真中将要使用或观察的各输入输出节点图130节点搜索界面在NodeFinder对话框的Filter栏中选择Pinall后再点击List按钮在窗口左边NodesFound的栏中将列出该设计项目的全部信号节点若在仿真中需要观察全部信号的波形则在窗口中间用鼠标左键点击按钮若在仿真中需要观察部分信号的波形则首先用鼠标左键选中这些信号然后在窗口中间点击按钮选中信号将进入到窗口右边的SelectedNodes框中若要删除SelectedNodes框中的部分节点信号可用鼠标左键将其选中然后在窗口中间点击框中的所有节点信号则在窗口中间用鼠标左键点击需要观察全部信号波形因此在点击窗口中的全部选择按钮后单击OK按钮返回129所示的插入信号节点对话框在该对话框的Radix数制栏目中选择Binary选中的观察节点搜索到的节点列出搜索的节点设置节点搜索范围为所有引脚观看波形文件添加和删除节点按钮二进制数据显示方式单击OK按钮完成节点信号的插入4按屏幕窗口提示操作后在矢量波形图界面中将出现所选中的所有输入输出节点其仿真波形文件名默认为Waveform1vwf在波形仿真窗口中用鼠标左键分别选中ABCI输入节点并根据其在全加器真值表中的对应值再在左侧工具栏或点击右键在Value列表中为它们选择合适的输入激励如高低电平时钟随机值等如图131所示图131设置输入节点的赋值矢量波形图5点击FileSaveas为仿真波形文件存盘在波性文件存盘操作中系统自动将波形文件名设置为设计文件名但文件类型为vwf在波形文件存盘时本例文件名自动设置为faddervwf6点击菜单ProcessingSimulatorTool打开仿真器工具窗口如图132所示在Simulationmode下选择功能仿真Functional模式并点击GenerateFunctionalSimulationNetlist创建用于功能仿真的电路网表图132仿真器工具窗口7在图132所示窗口中点击Start按钮开始功能仿真当提示功能仿真成功后点击Report按钮打开功能仿真结果窗口如图133所示注在功能仿真前必须确定选择功能仿真模式并预先生成功能仿真网表图133全加器的仿真结果波形若图133全加器的仿真结果分析无误则表明该设计的逻辑功能能够正确实现但在配置下载设计的电路网表之前必须先进行引脚分配为设计中的各输入输出引脚指定合适的可供实际操作和观察的硬件信号如按键放光二极管等5引脚分配1点击菜单AssignmentPins打开引脚分配编辑器点击Filter选项选择下拉菜单中的Pinall选项在NodeName栏下将显示出设计中的所有输入输出节点然后根据其将要对应的按键发光二极管或其它元件在Location列中双击输入输出元件所对应的行并选择或输入该元件在实验系统硬件中对应的FPGA引脚号如图134所示图134输入输出节点引脚分配注1在本实验中输入信号ABCI分别对应实验板上S2S3S4三个按键输出信号COSO分别对应实验板上LED2LED3两个发光二极管2在Location栏输入引脚序号时只需输入数字而不许输入Pin字样3有关实验系统中的FPGA引脚分布情况参见实验系统的原理图有关使用说明4必须确保工程所选择FPGA器件与实验系统硬件一致本实验选择EP2C8Q208C8否则在引脚分配时指示出错或在电路网络表下载时出错或硬件运行时导致不可预测的故障甚至危险2在完成全部引脚分配后重新综合编译工程由此产生供下载的电路网表且原理图中出现各输入输出信号的引脚描述如图135所示图135原理图中的各输入输出信号引脚描述6配置下载1在开机上电前分别将USBBlaster编程器的两端PC机的USB接口和实验系统的JTAG插座然后打开PC机将实验系统上电2进入QuartusII90环境打开工程点击菜单ToolsProgrammer进入程序下载窗口如图136所示确定其中编程器硬件为USBBlasterUSB0及编程模式为JTAG图136加载JTAG模式下的网表文件编程器窗口3确定系统已自动加载电路网表文件JTAG下载模式下其文件为faddersof勾选ProgramConfigure选项然后点击Start按钮开始网表下载和配置注若系统未自动加或自动加载网表错误可点击AddFile按钮手动加载正确的网标文件4当Progress下载进度条显示为100时表明工程的电路网表已下载至FPGA中配置完毕5在实验系统上通过按动释放S2S3S4按键以提供不同的输入组合并观察发光二极管LED2LED3的亮灭情况来呈现全加器的逻辑功能7设置上电自动配置1由于SRAM的断电挥发特性故利用JTAG模式将网表下载至FPGA内部SRAM中一般仅用于调试为使设计电路能上电自动工作可利用外部Flash进行上电自动配置2将USBBlaster编程器的一端由JTAG换插到实验系统主板上的AS插座另一端仍保持与PC机相连3进入编程器窗口删除原加载的faddersof网表文件重新选择编程模式为主动串行配置方式ActiveSerialProgramming4点击AddFile按钮选择工程的fadderpof网表文件并加载勾选ProgramConfigureVerify和BlankCheck选项如图137所示图137加载AS模式下的网表文件编程器窗口5点击Start按钮开始对外部串行配置Flash芯片EPCS4进行编程网表下载和配置当Progress下载进度条显示为100后编程结束6下载完成后程序将固化在EPCS4中然后将插AS插座得USBBlaster编程器的一端拔掉将实验系统重新上电后EPCS4将自动完成对EP2C8Q208C8目标芯片的配置无需再从PC机上下载程序便可实现全加器的逻辑功能8设计输入VerilogHDL文件输入法1点击菜单FileNew在DesignFiles页中选择VerilogHDLFile为工程新添一个VerilogHDL文件初始文件名为verilog1v在此另存文件名为fadderv并在编辑窗口中输入一个全加器设计代码如图137所示图137输入设计代码注保存文件名fadder要与实体名aadder相同2参考前述原理图设计文件输入法流程完成VerilogHDL文件的综合编译功能仿真和引脚分配并完成最终下载四实验延伸及课后要求1再次实践QuartusII90软件的安装及配置过程充分理解各个环节的目标2利用VerilogHDL文本输入方式完成全加器的设计熟悉VerilogHDL文本输入综合编译功能仿真管脚分配配置下载等各个步骤的操作方法3撰写本次实验报告并在规定时间内上交思考谈谈你对利用verilog代码和画原理图两种手段进行电路设计的感受并比较两种方法的优缺点