版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 数字电路EDA设计与应用 一位半加器,全加器设计一位半加器,全加器设计 2 二、实验目的 1 1、掌握一位二进制半加器与全加器的原理。、掌握一位二进制半加器与全加器的原理。 2 2、进一步熟悉、进一步熟悉 QUARTUSII QUARTUSII 软件的使用方法和软件的使用方法和 VHDL VHDL 输入。输入。 3 3、掌握元件例化语句的使用。、掌握元件例化语句的使用。 4 4、学习从设计文件到模块符号的创建过程。、学习从设计文件到模块符号的创建过程。 3 三、实验原理 (1 1)半加器两输入,两输出。其电路是)半加器两输入,两输出。其电路是 指对两个输入数据位相加,输出一个结果位和指对两
2、个输入数据位相加,输出一个结果位和 进位,没有进位输入的加法器电路。是实现两进位,没有进位输入的加法器电路。是实现两 个一位二进制数的加法运算电路。其真值如下个一位二进制数的加法运算电路。其真值如下 图所示(图所示(S S为和输出,为和输出,C C为进位输出):为进位输出): 4 三、实验原理 (2 2)全加器三输入,两输出。其电路是)全加器三输入,两输出。其电路是 在半加器的基础上加了个进位输入的加法。其在半加器的基础上加了个进位输入的加法。其 真值表如下图所示:真值表如下图所示: 5 三、实验原理 (3 3)由数字电路知识可知,一位全加器)由数字电路知识可知,一位全加器 可由两个一位半加器
3、与一个或门构成,其原理可由两个一位半加器与一个或门构成,其原理 图如下图所示。故可采用元件例化语句来实现图如下图所示。故可采用元件例化语句来实现 一位全加器。一位全加器。 6 四、实验内容 在本实验中,征对半加器时,用两个拨动开关来表示半加器在本实验中,征对半加器时,用两个拨动开关来表示半加器 的两个输入(的两个输入(A A、B B),用两个),用两个LEDLED来表示半加器的两个输出(来表示半加器的两个输出(S S、 C C)。)。 对于全加器时,其设计利用层次结构描述法,首先设计半加对于全加器时,其设计利用层次结构描述法,首先设计半加 器电路,将其打包为半加器模块;然后在顶层调用半加器模块
4、组器电路,将其打包为半加器模块;然后在顶层调用半加器模块组 成全加器电路;最后将全加器电路编译下载到实验箱,其中用三成全加器电路;最后将全加器电路编译下载到实验箱,其中用三 个拨动开关来表示全加器的三个输入(个拨动开关来表示全加器的三个输入(AiAi、BiBi、Ci-1Ci-1),用两个),用两个 LEDLED来表示全加器的两个输出(来表示全加器的两个输出(SiSi、CiCi)。)。 实验箱上拨动开关档位在下方时表示其输出为低电平,反之实验箱上拨动开关档位在下方时表示其输出为低电平,反之 输出市电平;当输出市电平;当FPGAFPGA与其对应的端口为高电平时与其对应的端口为高电平时LEDLED就
5、会发光,反就会发光,反 之之LEDLED灯灭。其拨动开关与灯灭。其拨动开关与FPGAFPGA管脚的连接表以及管脚的连接表以及LEDLED灯与灯与FPGAFPGA管管 脚连接表如下两图所示:脚连接表如下两图所示: 7 五、实验步骤 1、建立工程文件 1 1)运行)运行QUARTUSII QUARTUSII 软件。软件。 2 2)选择软件中的菜单)选择软件中的菜单 FileNew Project Wizard FileNew Project Wizard,新建一个工,新建一个工 程。程。 3 3)点击)点击NEXTNEXT进入工作目录,设定工程名和实体名。进入工作目录,设定工程名和实体名。 4 4
6、)点击)点击NEXTNEXT,进入下一设定对话框,(本次实验选用,进入下一设定对话框,(本次实验选用Cyclone Cyclone IIII系列芯片系列芯片EP2C35F672C8EP2C35F672C8),在对话框的左上方的),在对话框的左上方的 Family Family 下拉菜单下拉菜单 中选取中选取 CycloneII CycloneII,在中间右边的,在中间右边的Pin countPin count下拉菜单中选取下拉菜单中选取672672,在,在 Speed grade Speed grade 下拉菜单中选取下拉菜单中选取 8 8,在左下方的,在左下方的 Available devi
7、ces Available devices 框中选取框中选取 EP2C35F672C8 EP2C35F672C8。点击。点击 NEXT NEXT 完成器件的选取,进入完成器件的选取,进入 EDA EDA TOOLTOOL设定界面。设定界面。 5 5)按默认选项,点击)按默认选项,点击NEXTNEXT出现新建工程以前所有的设定信息,出现新建工程以前所有的设定信息, 再点击再点击FINISHFINISH完成新建工程的建立。完成新建工程的建立。 (一)半加器的设计(一)半加器的设计 8 五、实验步骤 2、建立文本设计文件 1 1)选择)选择File-New-Device Design Files-V
8、HDL File-New-Device Design Files-VHDL FileFile,点击,点击OKOK按钮,打开进入文本编辑器对话框。按钮,打开进入文本编辑器对话框。 2 2)在文本编辑器中输入对应)在文本编辑器中输入对应VHDLVHDL程序代码,如下图程序代码,如下图 所示:所示: 3 3)对文本文件进行编译。选择)对文本文件进行编译。选择processing-processing- compiler tool-startcompiler tool-start或直接点快捷栏上的三角形则会出或直接点快捷栏上的三角形则会出 现编译器窗口。需要说明的是在进行设计文件的综合和分现编译器窗口
9、。需要说明的是在进行设计文件的综合和分 析,也可以单独打开某个分析综析,也可以单独打开某个分析综 合过程不必进行全编译合过程不必进行全编译 界面。当完成上述窗口的设定后,点击界面。当完成上述窗口的设定后,点击 START START 按钮进行按钮进行 设计文件的全编译。如果文件有错,在软件的下方则会提设计文件的全编译。如果文件有错,在软件的下方则会提 示错误的原因和位置,以便于使用者进行修改直到设计文示错误的原因和位置,以便于使用者进行修改直到设计文 件无错。整个编译完成,软件会提示编译成功。件无错。整个编译完成,软件会提示编译成功。 (一)半加器的设计(一)半加器的设计 9 五、实验步骤 3
10、、管脚分配 1 1)点击)点击 Assignments Assignments 菜单下面的菜单下面的 Assignment Editor Assignment Editor,进入到,进入到 引脚分配窗口。将弹出的窗口中的引脚分配窗口。将弹出的窗口中的 All All 改成改成 pin pin ,再点击,再点击 List List, 在在 Nodes Found Nodes Found窗口会出现所有信号的名称,点击中间的按钮则窗口会出现所有信号的名称,点击中间的按钮则 Selected Nodes Selected Nodes 窗口下方出现被选择的端口名称。双击窗口下方出现被选择的端口名称。双击
11、 OK OK 按钮,按钮, 完成设置。进入管脚分配窗口。如下图所示:完成设置。进入管脚分配窗口。如下图所示: 2 2)依照)依照“硬件与硬件与 FPGA FPGA 的管脚连接表的管脚连接表”分配对应的输入管脚名分配对应的输入管脚名 , 依照依照“LED“LED灯与灯与FPGAFPGA管脚连接表管脚连接表”分配对应的输出管脚名。本次实验分配对应的输出管脚名。本次实验 的分配关系是:(输入端的分配关系是:(输入端 a a、b b分别对应的分别对应的 FPGA FPGA 管脚名为管脚名为 H8 H8、J8J8, 输出端输出端 c c、s s分别对应的分别对应的 FPGA FPGA 管脚名为管脚名为
12、G13 G13 、G15G15),如下图所示:),如下图所示: 3 3)分配完管脚后,再次进行一次全编译,使分配的管脚有效。)分配完管脚后,再次进行一次全编译,使分配的管脚有效。 (一)半加器的设计(一)半加器的设计 10 五、实验步骤 4、对设计文件进行仿真 1 1)选择)选择File-NewFile-New,在弹出的对话框中选择,在弹出的对话框中选择Vector Waveform Vector Waveform FileFile,点击,点击OKOK按钮,打开进入一个空的波形编辑器窗口。按钮,打开进入一个空的波形编辑器窗口。 2 2)设置仿真结束时间,波形编辑器默认的仿真结束时间为)设置仿真
13、结束时间,波形编辑器默认的仿真结束时间为 1 1S S, 根据仿真需要,可以自由设置仿真的结束时间(本次设置的为根据仿真需要,可以自由设置仿真的结束时间(本次设置的为1ms1ms)。)。 选择选择 QUARTUSII QUARTUSII 软件的软件的 Edit-End Time Edit-End Time命令,弹出线路束时间对话命令,弹出线路束时间对话 框,在框,在 Time Time框办输入仿真结束时间,点击框办输入仿真结束时间,点击OKOK按钮完成设置。如下图按钮完成设置。如下图 所示:所示: 3 3)加入输入、输出端口,在波形编辑器窗口左边的端口名列表)加入输入、输出端口,在波形编辑器窗
14、口左边的端口名列表 区点击鼠标右键,在弹出的右键菜单中选择区点击鼠标右键,在弹出的右键菜单中选择 Insert Node or Bus Insert Node or Bus 命令,在弹出的命令,在弹出的 Insert Node or Bus Insert Node or Bus 对话框界面中点击对话框界面中点击 Node Node FinderFinder按钮。在出现的按钮。在出现的 Node Finder Node Finder 界面中的界面中的 Filter Filter 列表中选列表中选 择择 点击点击 List List,在,在 Nodes Found Nodes Found 窗口出现
15、所有信号的名称,点击中窗口出现所有信号的名称,点击中 间的按钮则间的按钮则 Selected Nodes Selected Nodes 窗口下方出现被选择的端口名称。双击窗口下方出现被选择的端口名称。双击 OKOK按钮,完成设置,回到按钮,完成设置,回到 Insert Node or Bus Insert Node or Bus 对话框,双击对话框,双击OKOK按钮,按钮, 所有的输入、输出端口将会在端口名列表区内显示出来。所有的输入、输出端口将会在端口名列表区内显示出来。 (一)半加器的设计(一)半加器的设计 11 五、实验步骤 4、对设计文件进行仿真 4 4)编辑输入端口波形,即指定输入端
16、口的逻辑电平变化,在波形编辑窗)编辑输入端口波形,即指定输入端口的逻辑电平变化,在波形编辑窗 口中,选择要输入波形的输入端口。以口中,选择要输入波形的输入端口。以 b b 端口为例,右键单击端口为例,右键单击 b b ,依次选,依次选 择择value-clock-periodvalue-clock-period,将时间改为,将时间改为1us1us。然后重复此过程将。然后重复此过程将 a a 的时间改的时间改 成成 2us 2us (a a的周期是的周期是b b的的2 2倍),再将输入端的倍),再将输入端的D0-D3D0-D3选择不同的周期(一次选择不同的周期(一次 要有所差别)。最后选择软件的
17、要有所差别)。最后选择软件的 FieSave FieSave进行保存。进行保存。 5 5)指定仿真器设置,在仿真过程中有时序仿真和功能仿真之分,在这)指定仿真器设置,在仿真过程中有时序仿真和功能仿真之分,在这 里介绍功能仿真。在里介绍功能仿真。在 QUARTUSII QUARTUSII软件中选择软件中选择 ProcessingSimulator Tool ProcessingSimulator Tool 命令,打开仿真器工具窗口,如下图所示。命令,打开仿真器工具窗口,如下图所示。 按图按图 上的提示,首先产生功能仿真网表文件(在上的提示,首先产生功能仿真网表文件(在simulation mod
18、esimulation mode后选后选 择择FunctionalFunctional),点击产生功能仿真网表的按钮),点击产生功能仿真网表的按钮 Generate Functional Generate Functional Simulation NetlistSimulation Netlist,产生功能仿真网表,然后点击开始仿真的,产生功能仿真网表,然后点击开始仿真的 START START 按按 钮开始进行仿真,直到仿真进度条为钮开始进行仿真,直到仿真进度条为 100% 100%完成仿真。点击仿真报告窗口按完成仿真。点击仿真报告窗口按 钮钮 Report Report,观察仿真波形。确
19、定其符合实验内容。实验仿真波形如下所示:,观察仿真波形。确定其符合实验内容。实验仿真波形如下所示: (一)半加器的设计(一)半加器的设计 12 五、实验步骤 6、从设计文件到目标器件的加载 完成对器件的加载有两种形式,一种是对目标器件进行加载文件,一种是对目标器件的配置芯完成对器件的加载有两种形式,一种是对目标器件进行加载文件,一种是对目标器件的配置芯 片进行加载。这里我们介绍对目标器件片进行加载。这里我们介绍对目标器件 EP2C35F672C8 EP2C35F672C8进行加载的方法。进行加载的方法。 1 1)使用下载电缆将)使用下载电缆将 PC PC 机与实验系统连接起来。机与实验系统连接
20、起来。 2 2)选择)选择 QUARTUSII QUARTUSII 软件的软件的 ToolsProgrammer ToolsProgrammer 命令,进行编程器窗口。如果没有设置编命令,进行编程器窗口。如果没有设置编 程硬件,则编程硬件类型为程硬件,则编程硬件类型为 No Hardware No Hardware,需要对编程硬件进行设置。点击,需要对编程硬件进行设置。点击 Hardware Setup Hardware Setup 编程硬件设置按钮,进行如下图编程硬件设置按钮,进行如下图 所示的编程硬件设置对话框。所示的编程硬件设置对话框。 3 3)点击)点击 Add Hardware Ad
21、d Hardware 按钮,出现按钮,出现 Add Hardware Add Hardware 对话框,在对话框,在 Add Hardware Add Hardware 对话框中,对话框中, 从从 Hardware type Hardware type 列表中选择所需要硬件类型,如果是列表中选择所需要硬件类型,如果是 USB USB 接口的请参照用户使用手册中的接口的请参照用户使用手册中的 USB USB 电缆的安装与使用,如果使用的是并口下载线则选取如下图电缆的安装与使用,如果使用的是并口下载线则选取如下图 所示的硬件类型,点击所示的硬件类型,点击 OK OK按钮,按钮, 完成对硬件类型的设
22、置。回到编程器硬件设置窗口,完成对硬件类型的设置。回到编程器硬件设置窗口, 点击点击 Close Close 按钮退出设置。则在编程器对按钮退出设置。则在编程器对 话框中的编程硬件类型会出现刚才选取的编程器硬件。话框中的编程硬件类型会出现刚才选取的编程器硬件。 4 4)此次实验室所用的安装驱动的方式为:右键)此次实验室所用的安装驱动的方式为:右键“我的电脑我的电脑”-”-设备管理器设备管理器-双击有黄色问双击有黄色问 号通用号通用USB-USB-驱动程序驱动程序-更新驱动程序更新驱动程序-从列表或安装从列表或安装-下一步下一步-下一步下一步-从磁盘安装从磁盘安装-浏览浏览 -在我的电脑在我的电
23、脑D D盘中选择找到盘中选择找到USB blusterUSB bluster即可安装好驱动。即可安装好驱动。 5 5)如果软件已运行一个工程,则在打开编程器的时候,编程器窗口会自动出现这个工程文)如果软件已运行一个工程,则在打开编程器的时候,编程器窗口会自动出现这个工程文 件要加载到目标器件的文件,如果要加载其它文件可以从其它地方进行添加更改。选好加载文件件要加载到目标器件的文件,如果要加载其它文件可以从其它地方进行添加更改。选好加载文件 后,再点选后,再点选 Progam/Configure Progam/Configure,编程模式选取,编程模式选取 JTAG JTAG 模式,点击模式,点
24、击 STRAT STRAT进行文件加载,直到加载进行文件加载,直到加载 进度变为进度变为 100% 100%,文件成功加载完成。,文件成功加载完成。 (一)半加器的设计(一)半加器的设计 13 五、实验步骤 1、建立工程文件(步骤同“半加器的设计”) 2、建立文本设计文件 全加器的设计采用全加器的设计采用“元件例化语句元件例化语句”,故需建立两个,故需建立两个VHDLVHDL文文 本编辑对话框(一个顶层文件,一个底层文件)。在相应的编辑框中本编辑对话框(一个顶层文件,一个底层文件)。在相应的编辑框中 输入相应的输入相应的VHDLVHDL语句,再分别以各自的实体名进行保存。注意的是顶语句,再分别
25、以各自的实体名进行保存。注意的是顶 层文件名应必须与工程名一致。此次实验底层文件为半加器层文件名应必须与工程名一致。此次实验底层文件为半加器VHDLVHDL语句,语句, 顶层文件为全加器顶层文件为全加器VHDLVHDL语句,其语句分别如下两图所示:语句,其语句分别如下两图所示: 接下来的步骤与接下来的步骤与“半加器的设计半加器的设计”步骤一样。步骤一样。 (二)全加器的设计(二)全加器的设计 14 五、实验步骤 3、管脚分配 主要步骤同主要步骤同“半加器的设计半加器的设计”。 本次实验全加器的本次实验的分配关系是:(输入端本次实验全加器的本次实验的分配关系是:(输入端 a a、b b、 CiC
26、i分别对应的分别对应的 FPGA FPGA 管脚名为管脚名为 H8 H8、J8J8、J9J9,输出端,输出端 s s、cici分别对应分别对应 的的 FPGA FPGA 管脚名为管脚名为 G13 G13 、G15G15),如下图所示:),如下图所示: (二)全加器的设计(二)全加器的设计 15 五、实验步骤 4、对设计文件进行仿真(步骤同“半加器的设计”) 全加器中全加器中CiCi的周期是的周期是b b的两倍,的两倍,b b的周期是的周期是a a的两倍。实验仿真波形如的两倍。实验仿真波形如 下所示:下所示: 5、从设计文件到目标器件的加载(步骤同“半加器的设计”) (二)全加器的设计(二)全加
27、器的设计 16 五、实验步骤 实验要求创建文件时底层文件用文本输入,顶层文件用图形输实验要求创建文件时底层文件用文本输入,顶层文件用图形输 入,即需要将底层的已经设计好的文本文件生成一个模块符号文件作入,即需要将底层的已经设计好的文本文件生成一个模块符号文件作 为自己的功能模块符号在顶层调用,该符号就像图形设计文件中的任为自己的功能模块符号在顶层调用,该符号就像图形设计文件中的任 何其它宏功能符号一样可被高层设计重复调用。何其它宏功能符号一样可被高层设计重复调用。 其方法为:在建立的文本文件其方法为:在建立的文本文件(VHDL(VHDL半加器代码半加器代码) )中,选择中,选择 Create/
28、Update-Create Symbol for Current FileCreate/Update-Create Symbol for Current File,点击确定,即,点击确定,即 可创建一个代表刚才打开的设计文件功能的符号(可创建一个代表刚才打开的设计文件功能的符号(.bsf.bsf)。模块文件)。模块文件 创建完成后,再新建一个图形编辑文件,打开图形编辑器对话框。在创建完成后,再新建一个图形编辑文件,打开图形编辑器对话框。在 图形编辑器窗吕的工件区双击鼠标左键,或点击图中的符号工具按钮,图形编辑器窗吕的工件区双击鼠标左键,或点击图中的符号工具按钮, 或选择菜单或选择菜单Edit-Insert Symbol.Edit-Insert Symbol.。在。在SymboSymbo对话框中的对话框中的ProjectProject项项 下会出现前面创建的半加器模块符号文件,我们就可以对其进行调用。下会出现前面创建的半加器模块符号文件,我们就可以对其进行调用。 本次实验要用到两个半加器模块和一个或门模块,再对其连接起来,本次实验要用到两个半加器模块和一个或门模块,再对其连接起来, 并定义端口。结果如下图所示:并定义端口。结果如下图所示: 其它步骤均与其它步骤均与“全加器的设计全加器的设计”步骤相同。此处不再一一赘述。步骤相同。此处不再一一赘
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论