资源预览内容
第1页 / 共30页
第2页 / 共30页
第3页 / 共30页
第4页 / 共30页
第5页 / 共30页
第6页 / 共30页
第7页 / 共30页
第8页 / 共30页
第9页 / 共30页
第10页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
EDA实验技术文档含异步清0和同步时钟使能的4位加法计数器一、 实验内容与实验原理利用Quartus II建立一个含计数使能、异步复位的4位加法计数器,并进行仿真测试和硬件测试。由实验开发板上数字信号源Clock0提供一个输入为4Hz的时钟输入信号clk,由开发板上拨挡开关SW1控制计数使能端ena并由LED1指示,由核心板上SYS_RST按键控制复位端rst并由LED2指示,进位输出由LED3指示,计数值由数码管显示。二、 实验步骤1、使用Quartus II建立空白工程,然后命名为cnt_4b.qbfl 双击打开桌面上的Altera公司提供的Quartus II7.0(32-Bit)图标,显示如下软件界面;l 选择菜单栏中FileNew Project Wizard来新建工程,点击后弹出新建工程向导对话框如下分别提示完成五项工作1)项目名称与保存路径2)顶层设计实体名称3)加入已有文件和相关库4)指定目标Altera器件封装和型号5)设置项目的其他EDA工具l 单击Next进入如下图所示界面,并按图新建工程路径、名称、顶层实体在这里,工程名与顶层文件的实体名同名为cnt_4,文件夹所在路径名和文件夹名中不能用中文,不能用空格,不能用括号(),可以用下划线_或英文字母或数字,但最好也不要以数字开头。l 单击Next进入如下图所示界面,这里是添加已有相关工程文件,这里我们是建立空白工程,所以不需要添加任何文件l 单击Next进入如下图所示界面,这一步是对所用实验核心板中FPGA器件进行设置,以确保代码顺利编译和下载。MagicSOPC实验箱上的FPGA标配为:Altera公司CycloneII系列的EP2C35F672。设置相关参数如图所示。l 设置完成后,单击Next, 进入如下图所示界面,这里不需要设置其他EDA工具l 再单击Next,出现如下图所示的工程信息报告对话框,提示设计者看到工程文件配置信息报告。最后,单击Finish,完成新建工程的建立。2、建立文本编程文件1)新建Verilog HDL源程序文件cnt4b.v,输入程序代码并保存,(完整的程序参考清单见附录),进行综合编译。l 在第1步,已经创建好的设计工程后,在菜单栏中FileNew打开新建文本对话框如下图所示,在新建对话框中选择Verilog HDL File,按OK就可建立一个空的Verilog HDL文件,缺省名为Verilog1.v。l 再选择菜单命令中FileSave As 改名为cnt4b.v,点击保存!这里切莫将文件名默认为cnt_4b,根据笔者的经验这将造成后续建立的相对应的模块符号无法正常添加到顶层实体的图形设计文件中去。l 在cnt4b.v空白Verilog HDL程序文件中输入设计计数程序模块,输入无误后点击图标加以保存。详细程序文件和说明见附录1!这里要注意保证程序的模块名应和文件名一致!l 对上述的Verilog HDL文件进行编译处理,具体操作如下:a. 如图所示,在工程向导栏窗口中的File标签中的Led.v文件单击鼠标右键,在弹出的菜单中单击Set at Top-level-Entity选项。将cnt4b.v文件设置为顶层实体。这一步很重要,不设置无法进行b步骤的编译与综合b. 选择菜单栏中ProcessingStartStart Analysis&Synthesis进行综合编译,也可以选择工具栏上的按钮启动编译c. 若在编译过程中发现错误,则找出并更正错误,直至编译成功为止。若编译成功会出现如下图形:2)再新建Verilog HDL源程序文件decl7s.v,输入程序代码并保存,(完整的程序参考清单见附录),进行综合编译。l 相应新建保存以及综合编译的步骤请参照1)新建cnt4b.va. 新建文件名decl7s.v的空白Verilog HDL文件b. 在decl7s.v空白Verilog HDL程序文件中输入显示计数程序模块,输入无误后点击图标加以保存。详细程序文件和说明见附录2!c. 对decl7s.v文件进行Verilog HDL文件进行编译处理,这里同样别忘了将文件设置为顶层实体文件 至此,我们已经建立了实验所需要的加法计数模块和数码管静态显示模块!下面我们要做到就是将文本模块程序进行“封装”!3、从设计文件创建模块l 如下图所示,在工程向导里面的Files标签中的cnt4b.v文件单击鼠标右键,在弹出的菜单中单击Create Symbol Files for Current File选项。之后会弹出一对话框提示原理图文件创建成功,点“确定”按钮即可创建一个代表现行一个代表现行文件功能的符号文件(cnt4b.bsf)。l 同理,用同样的操作步骤,可以轻松的创建对decl7s.v代表的decl7s.bsf符号文件4、波形仿真验证 这里我们将详细介绍在第3部分建立的cnt4b.v计数模块加以波形仿真验证(前仿真)l 选择在工程向导里面的Files标签中的cnt4b.v文件,将其设回顶层实体文件,然后在进行一次综合编译(笔者认为,是为了能在后续的Node Finder对话框找到所需的引脚,而不是其他模块的引脚,这一点请格外注意!)l 选择菜单栏中FileNew命令,打开新建文件对话框,如下图所示:选择Other Files标签页从中选择Vector Waveform File(矢量波形文件),按OK建立空的波形编辑窗口,缺省值为Waveform1.vwf.选择FileSave As改名为cnt_4b.vwf并保存。l 在如下图所示的Name标签区域内双击鼠标左键,弹出添加节点对话框l 在上图中Insert Node or Bus对话框中单击Node Finder 按钮,弹出如下对话框,这里要进行三步设置1) FilterPins:all 按List按钮2) 按添加所有节点3) 按OK按钮,这样就会弹出一个未经设置过的波形图l 选择EditEnd Time命令,弹出结束时间对话框,在Time框中输入仿真结束时间,这里我们采用默认设置(1us)l 编辑输入节点波形。笔者认为这一步是体现实验者对实验对象计数模块理解的情况下,根据自己仿真意图,去建立输入节点的波形,然后通过功能仿真观察输出波形,比对结果。如何建立输入节点波形?在这里需要使用到上图最左侧的波形编辑器工具条,具体各个标签请详细参照EDA实验与实践教程(二)P84clk输入:1) 点击Name栏中的clk输入,这样会是其高亮度显示2) 点击波形编辑器工具条中(时钟),弹出如右图的时钟设置窗口,这里笔者采用默认值3) 点击OKena输入和rst输入分别点击Name栏中的相应输入,在波形图中,使用工具(或者其他功能工具标签)在合适位置进行灵活设置,具体图形请参照上图。l 选择ProcessingSimulator Tool命令,弹出如下窗口,按下图进行选择设置具体步骤如下1)选择2)选择仿真文件3)点击,若产生功能仿真网表成功,提示如下信息4)选择上5)按开始仿真,若通过,提示下图信息:6)按此按钮打开仿真后的波形文件,仿真后得到的波形文件如下图所示:l 验证仿真结果是否与设计相符合,如果不符合,需要重新设计文件,再进行综合编译、仿真。指导仿真结果与设计相符合为止5、建立顶层实体文件-图形设计文件l 如图所示,选择菜单栏中FileNew打开新建对话框,在新建对话框中选择Block Diagram/Schematic File,按OK就可建立一个空的图形设计文件,缺省名为Block1.bdf。l 如图所示,选择菜单栏中FileSave As打开将BDF文件存盘的对话框,在这里,一定要接受默认的文件名(与顶层实体名一定要相同),并默认Add file to current projext选项选中,以使该文件添加到工程中去。 至此,完成了顶层模块的建立,下面将Verilog HDL文件生成的模块符号文件加入到顶层模块中去!6. 建立4位加法计数器顶层模块原理图l 添加cnt4b.bsf模块到Quartus II顶层模块b. 在工程向导栏窗口中的File标签中的cnt_4b.bdf文件单击鼠标右键,在弹出的菜单中单击Set at Top-level-Entity选项。将cnt_4b.bdf文件设置为顶层实体。c. 在cnt_4b.bdf右侧空白窗口中,任意处双击,弹出添加符号(symbol)的对话框,如下图所示: c单击OK,Symbol对话框被关闭,cnt_4bf符号被附在鼠标的指针上,在cnt_4b.bdf的窗口中的适当位置,放下该符号d.选择FileSave来保存QuartusII顶层文件cnt_4b.bdfl 添加decl7s.bsf模块到Quartus II顶层模块添加方法请参照cnt4b.bsf模块添加方法b,c,d步骤,所不同的就是选择的模块是decl7s.bsf,放在合适的位置上。l 添加引脚和其他基本单元,组成完整的顶层模块图 如上图所示,在空白设计栏最左侧竖向排列着若干图标,即所谓的模块编辑工具栏,具体内容详见EDA实验与实践教程(二)P58 我们这里就是使用若干模块编辑工具栏中按钮,完成顶层模块设计!具体操作步骤如下:a. 单击模块编辑工具栏中按钮,插入符号对话框如下图所示,这里默认选择了Repeat-insert mode,如此便可以重复插入相同功能的引脚。b. 在Name栏目中直接输入input,单击OK按钮c. 连续插入三个输入引脚,由于只需要三个输入引脚,故浮动出现第四个引脚右键单击出现选择菜单,点击Cancel即可取消,如下图所示d.同样的方法可以添加5个输出引脚(Name栏目中输入output)、2个非门(Name栏目中输入not)、1个数字地(Name栏目中输入gnd)。拖动引脚符号,按下图进行相应正确放置d. 在正确放置后,需要用到模块编辑工具栏中按钮(画线)和按钮(画总线),需要正确使用两种工具,切莫搞混乱用,否则在编译的时候会报错,尤其是需要注意在数码管位码dig7.0由于是8位输出引脚线,所以需要用总线连接而不能用单线!e. 双击各个引脚符号,进行相应引脚命名f. 选择菜单栏中FileSave保存BDF文件g. 单击快捷菜单栏中(或者按CTRL+L),开始编译!这一步的目的笔者认为主要基于两点1)检查上述设计的cnt_4b.bdf文件2)方便后续分配FPGA引脚时会自动出现所需信号名,而不需要自己输入7. 选择目标器件并对相应的引脚进行锁定l 在这里选择的器件为Altera公司Cyclone II系列的EP2C35F672C8芯片,具体操作在单击菜单栏中AssignmentsDevice,如下图所示。进行如下操作:1) FamilyCyclone II2) PackageFBGA3) Pin count6724) Speed grade85) Available device EP2C35F672C8项注意:这里其实已经在一开始建立空白工程的时候完成,
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号