实验3-基于VHDL的计数器设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

实验3基于VHDL的计数器设计实验目的(1)、掌握VHDL语言基本结构。(2)、掌握顺序描述语句IF的使用方法。(3)、掌握时序电路的设计方法,了解信号同步与异步的概念与区别。(4)、掌握不同要求计数器的设计方法(5)、学习使用RTL观察器。实验内容与要求:设计一个含异步清零和同步使能的4位二进制加法计数器。记满“1111”后,进位端输出高电平‘1’。完成波形仿真和硬件验证。实验步骤与结果:1、新建工程cnt,放置于D:\CNT。2、新建VHDL源文件。选择File→New→DesignFiles→VHDLFile。在打开的窗口中编辑VHDL源程序。保存于同一文件夹下。保存的文件名必须与实体名一致,后缀名是.vhd!实体名是cnt(关键词entity后),因此保存的文件名应是cnt.vhd•libraryieee;--打开ieee库•useieee.std_logic_1164.all;--允许使用std_logic_1164程序包•useieee.std_logic_unsigned.all;--允许使用std_logic_unsigned程序包•entitycntis--实体声明,描述输入输出接口•port(clk:instd_logic;--定义计数时钟•en:instd_logic;--使能信号en•clr:instd_logic;--清零信号clr•q:outstd_logic_vector(7downto0);--8位计数输出•cout:outstd_logic);--进位信号•end;••architectureoneofcntis--结构体•signalcqi:std_logic_vector(7downto0);--定义信号cqi用于计数•begin•process(clk,en,clr)--进程•begin•ifclr='1'thencqi=(others='0');--clr高电平清零•elsifclk'eventandclk='1'then--判断时钟clk的上升沿•ifen='1'thencqi=cqi+1;--en高电平计数•endif;•endif;•ifcqi=1111thencout='1';--输出进位信号•elsecout='0';•endif;•endprocess;•q=cqi;--将cqi赋值给q•end;3、启动全编译StartCompilation。4、使用NetlistViewers工具查看电路的生成。QuartusⅡ拥有强大的Viewers(图形观察)工具,可以运用它对我们的设计进行分析和调试。提供了3种观察器:RTLViewer、StateMachineViewer、TechnologyMapViewer,我们可以通过命令菜单Tools→NetlistViewers来进行选择。5.仿真通过编译后,必须对工程的功能和时序性质进行仿真测试,以了解设计结果是否满足设计要求。(1)、新建波形文件。File→New→VectorWaveformFile。(2)、设置仿真时间。Edit→EndTime。(3)、添加仿真信号。在进行仿真之前,必须添加仿真信号,即仿真中的激励和所要观察的信号。添加仿真信号的方法有很多,如:通过Edit→Insert→InsertNodeorBus菜单命令打开InsertNodeorBus窗口。然后选择NodeFinder按钮打开(4)、输入激励信号单击信号名,或者任意选中信号的一段,使之变成蓝色条,则在波形编辑窗口左边的灰色图标全部变亮,提供各种仿真激励类型,(5)、保存波形文件。单击File→SaveAs,将波形文件保存在D盘cnt文件夹中。文件名是:cnt.vwf。ProjectNavigator窗口File栏,新增波形文件。(6)、仿真器参数设置。选择菜单Processing→SimulatorTool,打开仿真参数设置窗口。在Simulationmode项内可以选择使用时序仿真(Timing)或者功能仿真(Function)。在Simulationinput项,通过单击按钮“…”选择需要仿真的文件cnt.vwf。然后单击Start进行仿真。(7)、观察仿真结果。仿真成功后会自动弹出波形报告窗口;如果没有,可以自行打开,选择Processing→SimulationReport即可含异步清零和同步使能的4位二进制加法计数器波形6.编程和配置(1)、选择引脚(2)、查找管脚分配表,确认管脚号(3)、引脚锁定选择Assignments→Pins,弹出PinPlanner窗口,可以看到在窗口下方列出了输入输出信号。双击信号的Location栏,写入引脚号。同理将其他引脚锁定。存储引脚锁定信息后,必须再次启动全编译,才能将引脚锁定的信息编译进编程下载文件中。(4)、配置文件下载执行Tools→Programmer,启动编程下载工具配置完成后单击Start按钮,即进入对目标器件的配置下载操作。当Progress显示出100%,表示编程成功,可以进行硬件测试。(5)、硬件验证选择模式5,其中按键SW0代表清零信号clr,SW1代表使能信号en,发光二极管D0/D1/D2/D3代表计数输出q,D7代表进位输出cout。6.实验扩展:1.在本实验基础上完成任意模值计数器。即从0开始计数,计数到同学自己的学号后清零(如27号,即计数0-27,1-10号请加30)。完成波形仿真和硬件验证。

1 / 18
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功