EDA实验指导书新新印刷Word文件下载.docx
- 文档编号:16703205
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:69
- 大小:1.02MB
EDA实验指导书新新印刷Word文件下载.docx
《EDA实验指导书新新印刷Word文件下载.docx》由会员分享,可在线阅读,更多相关《EDA实验指导书新新印刷Word文件下载.docx(69页珍藏版)》请在冰豆网上搜索。
附录二参考程序51
实验一 基于QUARTUSII图形输入电路的设计
一、实验目的
1.通过一个简单的3—8译码器的设计,掌握组合逻辑电路的设计方法。
2.初步了解QUARTUSII原理图输入设计的全过程。
3.掌握组合逻辑电路的静态测试方法。
二、实验设备
1.PC机一台;
2.AlteraBlaster下载器一根;
3.THGSC-3型实验箱一台。
三、实验原理
3-8译码器三输入,八输出。
当输入信号按二进制方式的表示值为N时,输出端标号为N的输出端输出高电平表示有信号产生,而其它则为低电平表示无信号产生。
因为三个输入端能产生的组合状态有八种,所以输出端在每种组合中仅有一位为高电平的情况下,能表示所有的输入组合。
译码器不需要像编码器那样用一个输出端指示输出是否有效。
但可以在输入中加入一个输出使能端,用来指示是否将当前的输入进行有效的译码,当使能端指示输入信号无效或不用对当前信号进行译码时,输出端全为高电平,表示无任何信号。
本例设计中没有考虑使能输入端,自己设计时可以考虑加入使能输入端时,程序如何设计。
四、实验内容
在本实验中,用三个拨动开关(SW1~SW3)来表示三八译码器的三个输入(A、B、C);
用八个LED来表示三八译码器的八个输出(D1~D8)。
通过输入不同的值来观察输入的结果与三八译码器的真值表是否一致。
实验箱中的拨动开关,当开关闭合(拨动开关的档位在下方)时其输出为低电平,反之输出高电平。
实验箱中的拨动开关与FPGA的接口电路,LED灯与FPGA的接口电路以及拨动开关、LED与FPGA的管脚连接在用户手册中都做了详细说明,这里不再赘述。
五、实验步骤
下面将通过这个实验,向读者介绍QUARTUSII的项目文件的生成、编译、管脚分配以及时序仿真等的操作过程。
1.建立工程文件
1)选择“开始>
程序>
Altera>
QuartusII9.0”,运行QUARTUSII软件。
或者双击桌面上的QUARTUSII的图标运行QUARTUSII软件,出现如图1-1所示,如果是第一次打开QUARTUSII软件可能会有其它的提示信息,使用者可以根据实际情况进行设定后进入图1-1所示界面。
2)选择软件中的
,新建一个工程。
如图1-2所示。
3)点击图1-2中的Next进入工作目录,工程名的设定对话框如图1-3所示。
第一个输入框为工程目录输入框,用户可以输入如e:
/eda等工作路径来设定工程的目录,设定好后,所有的生成文件将放入这个工作目录。
第二个输入框为工程名称输入框,第三个输入框为顶层实体名称输入框。
用户可以设定如exp1,一般情况下工程名称与实体名称相同。
使用者也可以根据自已的实际情况来设定。
图1-1QUARTUSII软件运行界面
图1-2新建工程对话框
图1-3指定工程名称及工作目录
4)点击Next,进入下一个设定对话框,按默认选项直接点击Next进行器件选择对话框。
如图1-4所示。
这里选用CycloneII系列芯片EP2C35F672C8为例进行介绍。
用户可以根据使用的不同芯片来进行设定。
图1-4器件选择界面
首先在对话框的左上方的Family下拉菜单中选取CycloneII,在右边的Speedgrade下拉菜单中选取8,在左下方的Availabledevices框中选取EP2C35F672C8,点击Next完成器件的选取,进入EDATOOL设定界面如图1-5所示。
图1-5EDATOOL对话框
5)点击Next出现新建工程以前所有的设定信息,如图1-6所示,点击Finish完成新建工程的建立。
图1-6新建工程信息
2.建立图形设计文件
1)创建好设计工程后,选择File>
New…菜单,出现图1-7所示的新建设计文件类型选择窗口。
这里以建立图形设计文件为例进行说明,其它设计输入方法与之基本相同。
图1-7新建设计文件选择窗口
2)在New对话框(图1-7)中选择DesignFiles页下的BlockDiagram/SchematicFile,点击OK按钮,打开图形编辑器对话框,如图1-8所示。
图中标明了常用的每个按钮的功能。
图1-8QUARTUSII图形编辑器对话框
QUARTUSII图形编辑器也称块编辑器(BlockEditor),用于以原理图(Schematics)和结构图(BlockDiagrams)的形式输入和编辑图形设计信息。
QUARTUSII图形编辑器可以读取并编译结构图设计文件(BlockDesignFile)和MAXPLUSII图形设计文件(GraphicDesignFiles),可以在QUARTUSII软件中打开图形设计文件并将其另存为结构图设计文件。
在QUARTUSII图形编辑器窗口(图1-8)中,根据个人爱好,可以随时改变BlockEditor的显示选项,如导向线和网格间距、橡皮筋功能、颜色以及基本单元和块的属性等。
3)以原理图输入设计一个三八译码器为例,介绍基本单元符号输入方法的步骤。
在图1-8所示的图形编辑器窗口的工件区双击鼠标的左键,或点击图中的符号工具按钮,或选择菜单Edit>
InsertSymbol…,则弹出如图1-9所示的Symbol对话框。
图1-9Symbol对话框
4)用鼠标点击单元库前面的“+”号,展开单元库,用户可以选择所需要的图元或符号,该符号则显示在右边的显示符号窗口,用户也可以在符号名称里输入所需要的符号名称,点击OK按钮,所选择的符号将显示在图形编辑器的工件工域。
5)参考图1-10所示,将要选择的器件符号放置在图形编辑器的工件区域,用正交节点工具将原件边接起来,然后定义端口的名称。
在这个例子里,定义三个输入为A、B、C,定义八个输出为D0、D1、D2、D3、D4、D5、D6、D7。
用户也可以根据自己的习惯来定义这些端口名称。
6)完成图形编辑的输入之后,需要保存设计文件或重新命名设计文件。
选择File>
SaveAs…项,出现如图1-11所示对话框,选择好文件保存目录,并在文件名栏输入设计文件名。
如需要将设计文件添加到当前工程中,则选择对话框下面的Addfiletocurrentproject复选框,单击保存按钮即可保存文件。
需要注意的是,在整个设计文件保存的过程当中,都需要遵循设计输入法的一般规则。
图1-10设计文件的输入
图1-11保存设计文件对话框
3.对设计文件进行编译
QUARTUSII编译器窗口包含了对设计文件处理的全过程。
在QUARTUSII软件中选择Processing>
CompilerTool菜单项,则出现QUARTUSII的编译器窗口,如图1-12所示,图中标明了全编译过程各个模块的功能。
需要说明的是在进行设计文件的综合和分析时,也可以单独打开某个分析综合过程不必进行全编译界面。
当完成上述窗口的设定后,点击Start按钮进行设计文件的全编译。
如果文件有错,在软件的下方则会提示错误的原因和位置,以便于使用者进行修改直到设计文件无错。
整个编译完成,软件会提示编译成功,如图1-13所示。
图1-12QUARTUSII编译器窗口
图1-13全编译成功界面
4.管脚分配
在前面选择好一个合适的目标器件(在这个实验中选择为EP3C16F484C8),完成设计的分析综合过程,得到工程的数据文件以后,需要对设计中的输入、输出引脚指定到具体的器件管脚号码,指定管脚号码称为管脚分配或管脚锁定。
1)点击Assignments菜单下面的AssignmentEditor,进入到引脚分配窗口。
如图1-14所示。
图1-14进入引脚分配界面
将要分配管脚的信号放置在To下方。
双击To下方的《New》,单击
则会出现如图1-15所示界面。
图1-15信号选择对话框
选择NodeFinder…进入如图1-16所示的NodeFinder对话框界面。
按图1-16中样例设置参数。
在Filter窗口选择Pins:
all,在Named窗口中输入“*”,点击List在NodesFound窗口出现所有信号的名称,点击中间的
按钮则SelectedNodes窗口下方出现被选择的端口名称。
单击OK按钮,完成设置。
进入管脚分配窗口,如图1-17所示。
图1-16NodeFinder对话框
图1-17管脚分配
在图1-17中以锁定端口A的管脚为例,其它端口的管脚锁定与其基本一致。
选择端口A的对应AssignmentName待其变为蓝色后双击,出现下拉菜单选取如图1-17所示的Location(Acceptswildcards/groups)选项。
选择端口A的对应Value栏,待其变为蓝色,依照硬件与FPGA的管脚连接(管脚分配说明请参考附录),输入对应的管脚名AD13,按回车键,软件将自动将其改为PIN_AD13,同时蓝色选择条会自动跳转到Value栏的下一行,这表明软件已经将输入端口A分配到FPGA的AD13引脚上,用同样的方法,依照硬件与FPGA的管脚连接(管脚分配说明请参考附录),对其它端口进行管脚分配,如图1-18所示。
图1-18给A端口进行管脚分配
5.对设计文件进行仿真
1)创建一个仿真波形文件,选择QUARTUSII软件File>
New,进入新建文件对话框。
如图1-19所示。
选取对话框的Verification/DebuggingFiles标签页,从中选取VectorWaveformFile,点击OK按钮,则打开了一个空的波形编辑器窗口,如图1-20所示。
图1-19新建文件对话框
图1-20波形编辑器
2)设置仿真结束时间,波形编辑器默认的仿真结束时间为1us,根据仿真需要,可以自由设置仿真的结束时间。
选择QUARTUSII软件的Edit>
EndTime命令,弹出仿真结束时间对话框,在Time框输入仿真结束时间,点击OK按钮完成设置。
3)加入输入、输出端口,在波形编辑器窗口左边的端口名列表区点击鼠标右键,在弹出的右键菜单中选择InsertInsertNodeorBus…命令,在弹出的InsertNodeorBus对话框如图1-21所示界面中点击NodeFinder…按钮。
图1-21InsertNodeorBus对话框
在出现的NodeFinder界面中,如图1-22所示,在Filter列表中选择Pins:
单击OK按钮,完成设置,回到图1-21所示的InsertNodeorBus对话框,单击OK按钮,所有的输入、输出端口将会在端口名列表区内显示出来,如图1-23所示。
图1-22NodeFinder对话框
图1-23在波形编辑器中加入端口
4)编辑输入端口波形,即指定输入端口的逻辑电平变化,在如图1-23所示的波形编辑窗口中,选择要输入波形的输入端口如A端口,在端口名显示区左边的波形编辑器工具栏中有要输入的各种波形,其按钮说明如图1-24所示。
根据仿真的需要输入波形。
完成后如图1-25所示。
最后选择软件的File>
Save进行保存。
图1-24波形编辑器工具栏
图1-25编辑输入端口波形
5)指定仿真器设置,在仿真过程中有时序仿真和功能仿真之分,在这里介绍功能仿真。
在QUARTUSII软件中选择Processing>
SimulatorTool命令,打开仿真器工具窗口,如图1-26所示。
按图1-26上的提示,首先产生功能仿真网表文件,点击产生功能仿真网表的按钮GenerateFunctionalSimulationNetlist,产生功能仿真网表,然后点击开始仿真的Start按钮开始进行仿真,直到仿真进度条为100%完成仿真。
点击仿真报告窗口按钮Report,观察仿真波形。
如图1-27所示。
图1-26仿真器工具窗口
图1-27仿真波形
6.从设计文件到目标器件的加载
完成对器件的加载有两种形式,一种是对目标器件进行加载文件,一种是对目标器件的配置芯片进行加载。
这里介绍对目标器件EP2C35F672C8进行加载的方法。
1)使用下载电缆将PC机与实验系统连接起来。
2)选择QUARTUSII软件的Tool>
Programmer命令,进入编程器窗口,如图1-28所示,如果没有设置编程硬件,则编程硬件类型为NoHardware,需要对编程硬件进行设置。
点击HardwareSetup…编程硬件设置按钮,进入如图1-29所示的编程硬件设置对话框。
图1-28编程器窗口
图1-29编程器硬件设置对话框
3)点击AddHardware按钮,出现AddHardware对话框,如图1-30所示。
图1-30编程硬件选择对话框
4)在AddHardware对话框中,从Hardwaretype列表中选择所需要的硬件类型,如果是USB接口的请参照附录中的USB电缆的安装与使用,如果使用的是并口下载线则选取如图1-30所示的硬件类型,点击OK按钮,完成对硬件类型的设置。
回到编程器硬件设置窗口,点击Close按钮退出设置。
5)如果软件已运行一个工程,则在打开编程器的时候,编程器窗口会自动出现这个工程文件要加载到目标器件的文件,如果要加载其它文件可以单击“AddFile…”从其它地方进行添加更改。
选好加载文件后,再单击选择Progam/Configure,编程模式选取JTAG模式,点击Start进行文件加载,直到加载进度变为100%,文件成功加载完成。
六、实验结果
文件加载到目标器件后,拨动拨码开关,LED灯会按三八译码器真值表对应地点亮。
实验二 基于VHDL格雷码编码器的设计
1.了解格雷码变换的原理。
2.进一步熟悉QUARTUSII软件的使用方法和VHDL输入的全过程。
3.进一步掌握实验系统的使用。
格雷(Gray)码是一种可靠性编码,在数字系统中有着广泛的应用。
其特点是任意两个相邻的代码中仅有一位二进制数不同,因而在数码的递增和递减运算过程中不易出现差错。
但是格雷码是一种无权码,要想正确而简单的和二进制码进行转换,必须找出其规律。
根据组合逻辑电路的分析方法,先列出其真值表再通过卡诺图化简,可以很快地找出格雷码与二进制码之间的逻辑关系。
其转换规律为:
高位同,从高到低看异同,异出‘1’,同出‘0’。
也就是将二进制码转换成格雷码时,高位是完全相同的,下一位格雷码是‘1’还是‘0’,完全是相邻两位二进制码的“异”还是“同”来决定。
下面举一个简单的例子加以说明。
假如要把二进制码10110110转换成格雷码,则可以通过下面的方法来完成,方法如图2-1。
图2-1格雷码变换示意图
本实验要求完成的任务是变换8位的二进制码到8位的格雷码。
实验中用SW1~SW8表示8位二进制输入,用LED模块的D1~D8来表示转换的实验结果八位格雷码。
实验LED亮表示对应的位为‘1’,LED灭表示对应的位为‘0’。
通过输入不同的值来观察输出的结果与实验原理中的转换规则是否一致。
开发系统中的拨码开关、与FPGA的接口电路,LED灯与FPGA的接口电路以及拨码开关、LED与FPGA的管脚连接在附录都做了详细说明。
1.打开QUARTUSII软件,新建一个工程。
2.建完工程之后,再新建一个VHDLFile。
新建一个VHDL文件的过程如下:
选择QUARTUSII软件中的File>
New命令,出现New对话框,中选择DesignFiles页下的VHDLFile,点击OK按钮,打开VHDL编辑器对话框。
3.在空白编辑区,按照实验原理和实验内容所述功能,在VHDL编辑窗口编写VHDL程序。
4.编写完VHDL程序后,保存起来。
5.对编写的VHDL程序进行编译并仿真,对程序的错误进行修改。
6.编译仿真无误后,依照拨码开关、LED与FPGA的管脚连接进行管脚分配。
分配完成后,再进行全编译一次,以使管脚分配生效。
7.连接AlteraBlaster下载器到开发系统的JTAG接口,系统上电,电源指示灯正常。
8.用下载电缆通过JTAG口将对应的sof文件加载到FPGA中。
观察实验结果是否与实验内容要求一致。
当设计文件加载到目标器件后,拨动拨码开关,LED会按照实验原理中的格雷码输入一一对应的亮或者灭。
实验三 含异步清零和同步使能的加法计数器
1.了解二进制计数器的工作原理。
2.进一步熟悉QUARTUSII软件的使用方法和VHDL输入。
3.时钟在编程过程中的作用。
二进制计数器是应用中最多、功能最全的计数器之一,含异步清零和同步使能的加法计数器的具体工作过程如下:
在时钟上升沿时,检测使能端是否允许计数,如果允许计数(定义使能端高电平有效)则开始计数,否则一直检测使能端信号。
在计数过程中再检测复位信号是否有效(低电平有效),当复位信号起作用时,使计数值清零,继续进行检测和计数。
其工作时序如图3-1所示:
图3-1计数器的工作时序
本实验要求完成的任务是在时钟信号的作用下,通过使能端和复位信号来完成加法计数器的计数。
实验中选择时钟信号区1Hz时钟,SW1表示使能端信号,用复位开关S1表示复位信号,用LED模块的D1~D4来表示计数的二进制结果。
实验LED亮表示对应的位为‘1’,LED灭表示对应的位为‘0’。
通过输入不同的值模拟计数器的工作时序,观察计数的结果。
开发系统中的拨码开关与FPGA的接口电路,LED灯与FPGA的接口电路以及按键开关模块与FPGA的管脚连接在附录都做了详细说明。
2.建完工程之后,再新建一个VHDLFile,打开VHDL编辑器对话框。
3.按照实验原理和实验内容所述功能,在VHDL编辑窗口编写VHDL程序。
5.对编写的VHDL程序进行编译并仿真,对程序的错误进行修改。
6.编译仿真无误后,依照附录进行管脚分配。
当设计文件加载到目标器件后,使拨码开关SW1置为高电平,四位LED会按照实验原理中依次被点亮,当加法器加到10时,D5(进位信号)被点亮。
当复位键(S1键)按下后,计数被清零。
如果拨码开关1置为低电平(拨码开关向下)则加法器不工作。
实验四 八位七段数码管动态显示电路的设计
1.了解数码管的工作原理。
2.学习七段数码管显示译码器的设计。
3.学习VHDL的CASE语句及多层次设计方法。
七段数码管是电子开发过程中常用的输出显示设备。
在实验系统中使用的是两个四位一体、共阴极型七段数码管。
其单个静态数码管如下图4-1所示。
图4-1静态七段数码管
由于七段数码管公共端连接到GND(共阴极型),当数码管的中的那一个段被输入高电平,则相应的这一段被点亮。
反之则不亮。
四位一体的七段数码管在单个静态数码管的基础上加入了用于选择哪一位数码管的位选信号端口。
八个数码管的a、b、c、d、e、f、g、h、dp都连在了一起,8个数码管分别由各自的位选信号来控制,被选通的数码管显示数据,其余关闭。
本实验要求完成的任务是在时钟信号的作用下,通过四个拨动开关SW1~SW4输入的键值在数码管上显示相应的键值。
在实验中时,数字时钟选择1kHz作为扫描时钟,用四个拨动开关做为输入,当四个拨动开关置为一个二进制数时,在数码管上显示其十六进制的值。
实验箱中的拨动开关与FPGA的接口电路,以及数码管显示模块与FPGA的管脚连接在附录做了详细说明。
3.按照实验原理和自己的想法,在VHDL编辑窗口编写VHDL程序。
方法同实验一。
7.用下载电缆通过JTAG口将对应的sof文件加载到FPGA中。
8.将数字信号源F的时钟选择为1kHz,拨动SW1~SW4四位拨动开关,使其为一个数值,观察八个数码管显示的数值并记录。
观察实验结果是否与自己的编程思想一致。
9.实验完毕,关闭电源,整理实验器材。
当设计文件加载到目标器件后,拨动四位拨码开关,使其为一个二进制数值,则四个数码管均显示拨码开关所表示的十六进制的值。
实验五 数控分频器的设计
1.学习数控分频器的设计、分析和测试方法。
2.了解和掌握分频电路实现的方法。
3.掌握EDA技术的层次化设计方法。
数控分频器的功能就是当输入端给定不同的输入数据时,将对输入的时钟信号有不同的分频比,数控分频器就是用计数值可并行预置的加法计数器来设计完成的。
本实验要求完成的任务是在时钟信号的作用下,通过输
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 实验 指导书 新新 印刷