数电实验1

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

上海电力学院

数字电路与数字逻辑实验指导书

实验题目:Quartus II软件应用

专业年级:信息安全2011252

学生姓名:李涵茜学号:20113309同组姓名:无

指导教师姓名:刘洪利

一、实验目的

1、了解并掌握QuartusII软件的使用方法。

2、了解并掌握仿真(功能仿真及时序仿真)方法及验证设计正确性。

3、了解并掌握EDA QuartusII中的原理图设计方法。

二、实验内容

本实验通过简单的例子介绍FPGA开发软件QuartusII的使用流程,包括图形输入法的设计步骤和仿真验证的使用以及最后的编程下载。在QuartusII中通过原理图的方法,使用与门和异或门实现半加器。

图形编辑输入法也称为原理图输入设计法。用Quartus II的原理图输入设计法进行数字系统设计时,不需要了解任何硬件描述语言知识,只要掌握数字逻辑电路基本知识,就能使用QuartusII提供的EDA平台设计数字电路或系统。

QuartusII的原理图输入设计法可以与传统的数字电路设计法接轨,即把传统方法得到的设计电路的原理图,用EDA平台完成设计电路的输入、仿真验证和综合,最后编程下载到可编程逻辑器件(FPGA/CPLD)或专用集成电路(ASIC)中。

真值表

逻辑表达式

S=a○+b

Cout=a∧b

三、实验步骤

第1步:打开QuartusII软件。

第2步:新建一个空项目。

选择菜单File->New Project Wizard,进入新建项目向导。如下图所示,填入项目的名称“hadder”,默认项目保存路径在Quartus安装下,也可修改为其他地址,视具体情况而定。

第3步:单击Next按钮,进入向导的下一页进行项目内文件的添加操作,如果没有文件需要添加进项目,则直接点击Next按钮既可。

第4步:选择CPLD/FPGA器件,如下图所示,选择芯片系列为“MAX II”,型号为“EPM240T100C5”。

第5步:向导的后面几步不做更改,直接点击Next即可,最后点击Finish结束向导。到此即完成了一个项目的新建工作。

第6步:新建一个图形文件。选择File->New命令,选择“Diagram/Schematic File”,点击OK按钮完成。将该图形文件另存为hadder.bdf。图形编辑窗口如下图所示,窗口左边是图形编辑工具条。

第7步:在图形编辑窗口的空白处双击,打开符号库窗口,如左下图所示。展开符号库“c://.../libraries/”,可以看到有三个类别,分别是“megafunctions”——表示具有宏功能的符号,“others”——主要是一些常用的集成电路符号,“primitives”——主要是一些基本门电路符号、引脚和接地、电源符号等。窗口中的“name”框可快速检索到需要的符号,例如当输入型号“7408”,符号库立刻找到相应集成电路的符号,如右下图所示。

第8步:选择好需要的符号后,单击OK按钮,界面将回到原理图编辑界面,然后单击左键即在窗口内放置该符号。再用同样的方法,在“name”框中输入“xor”即可找到异或门的符号;如下图所示。

第9步:在图形编辑窗口中分别放置与门“7408”和异或门“xor”,如下图所示。

第10步:再次打开符号,在“name”栏中输入“input”,符号库自动在库中找到输入“input”符号(如左下图所示),并选中“Repeat-insert mode”点击OK按钮,可反复在编辑窗口中放入输入符号,直单击右键取消放置为止。由于输

入信号一共有2个,所以需要放入2个输入符号,并将2个输入符号命名为a和b。用同样的方法放置2个输出“output”

符号,并分别命名为s、cout。再选择工具栏中的按钮,将各符号连接起来,结果如右下图所示。

第11步:保存图形文件,进行语法检查和编译。

通过快捷按钮,对上面的代码进行语法检查和综合,同时在信息(Messages)窗口中显示检查结果,如程序中有错误,也将指出错误的地方以便修正。如果没有错误,则使用快捷按钮进行编译。编译结束后会自动打开一个编译报告(Compilation Report)窗口,如图所示。

第12步:仿真。在开发板上实现该电路之前,可以先在Quartus软件中对电路进行功能仿真,以测试电路逻辑的正确性。在仿真之前,先要建立一个矢量波形文件,包含输入信号的波形,并指定需要观察的输出信号。执行File->New 命令,选择“Other Files”选项页中Vector Waveform File,并单击OK按钮,打开矢量波形编辑器窗口,如下图所示。

第13步:另存矢量波形文件为hadder.vwf。执行Edit->Insert Node or Bus命令,将需要仿真的输入和输出节点加入到波形中来。其窗口如下图所示。可以在Name框中直接输入节点的名称,也可点击Node Finder按钮,打开节点搜索窗口,如下图所示。在Filter下拉框中选择所要寻找的节点类型,这里选择“Pins:all”,点击List按钮,在Nodes Found框中列出所有的引脚。

第14步:选择所有引脚,单击按钮,将所有引脚添加到Selected Nodes框中,再按OK按钮返回波形编辑器窗口,如下图所示。选择波形工具栏中的按钮,在波形图上左击或右击分别进行波形的放大和缩小。

第15步:编辑a和b的输入波形,再由仿真器输出y的波形。首先选中需要编辑的波形区间,再选择波形工具栏中的

按钮,对选中区间进行置1或0。最后的输入波形如下图所示,保存矢量波形文件。

第16步:功能仿真。

选择Processing->Simulator Tool,窗口如下图所示。选择仿真模式(Simulator mode)为“Functional”,并选择hadder.vwf文件作为仿真输入(Simulation input)波形文件。点击Generate Functional Simulation Netlist按钮,生成仿真网表。然后点击Start按钮,开始仿真。在仿真完成后,点击Report按钮即可观看仿真的结果,如下图所示。

从波形可以看出,程序的逻辑功能与半加器相符。

第17步:引脚分配。

通常,如果用户不对引脚进行分配,Quartus软件会自动随机为设计分配引脚,这一般无法满足需求。在开发板上,FPGA与外部器件的连接是确定的,其连接关系可参看附录。如果选择数码开关SW0和SW1分别代表输入信号a和b、LED15和LED16代表输出信号s和cout,则通过附录查表可知它们分别对应CPLD的引脚PIN_39、PIN_38、PIN_15和PIN_16。

选择Assignments->Pins命令,打开引脚规划器(Pin Planner),如下图所示。接着双击信号a的Location栏,在下拉框中选择PIN_39,其他信号通过相同的办法进行分配。

第18步:在仿真正确,并锁定自定引脚后,通过按钮对项目再次编译。

第19步:时序仿真。

时序仿真不仅可以仿真其逻辑功能是否正确,同时可以仿真出信号之间的时间延迟。时序仿真又称后仿真,通常是在编译完成后进行。

再次选择Processing->Simulator Tool,并将仿真模式设为“Timing”,然后点击Start按钮。最后点击Report按钮查看仿真结果,结果如下图。与功能仿真结果图相比较,可以看出时序仿真的输出带有一定的延迟。

第20步:程序下载。

1)用USB连接线连接DE2和电脑,选择Tools->Programmer命令,打开配置窗口,如下图所示。

2)图中第一列显示“No Hardware”,说明未指定硬件设备,单击Hardware Setup按钮,打开硬件设置窗口,如

下图所示。双击列表框中的USB-Blaster,然后点击Close按钮,完成硬件设置。

3)从下图可以看出,硬件已经设置完成,而且待配置的文件也已经在文件列表中。然后选中Program/Config选项,单

击Start按钮,开始编程。编程结束后,即可在开发板上验证

电路图

相关文档
最新文档