EDA实验二 含异步清零和同步使能的十进制加减法计数器

EDA实验二 含异步清零和同步使能的十进制加减法计数器

ID:47709297

大小:32.55 KB

页数:3页

时间:2020-01-20

EDA实验二 含异步清零和同步使能的十进制加减法计数器_第1页
EDA实验二 含异步清零和同步使能的十进制加减法计数器_第2页
EDA实验二 含异步清零和同步使能的十进制加减法计数器_第3页
资源描述:

《EDA实验二 含异步清零和同步使能的十进制加减法计数器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、EDA实验二 含异步清零和同步使能的十进制加减法计数器一、实验目的1.了解加减计数器的工作原理。2.进一步熟悉QUARTUSII软件的使用方法和VHDL输入。3.熟悉仿真时序设定。二、实验设备1.PC机       一台;四、实验内容完成一个0~99计数器,有四个输入信号:复位reset、使能enable、时钟clk和加减选择sel,三路输出信号:计数值、进位和借位信号。要求每来一个时钟信号,加或减1(sel=‘0’时执行加,sel=‘1’时执行减);计数值为99时再加1,输出进位信号,并且计数值归

2、零;计数值为0时再减1,输出借位信号,并且计数值变成99(即0~99循环计数);复位信号reset有效时(低电平有效)计数值清0,使能信号enable有效时(高电平有效)计数器才进行工作,否则不进行累加或累减。五、实验步骤1.打开QUARTUSII软件,新建一个VHDL文件。2.输入程序代码,点击保存时,系统会提示建立一个新的工程(Project),按照QUARTUSII的提示建立好工程;3.按照实验原理和自己的想法,在VHDL编辑窗口调整完成VHDL程序;4.对自己编写的VHDL程序进行编译,对程

3、序的错误进行修改;5.进行仿真,附录:电路实体定义可参照如下:ENTITYcounterISPORT(clk,reset,enable,sel:INSTD_LOGIC;--定义时钟、异步复位、同步使能、选择信号cq:OUTSTD_LOGIC_VECTOR(6downto0);--计数值c1out:OUTSTD_LOGIC;--进位信号c2out:OUTSTD_LOGIC--借位信号);ENDcounter;VHDL程序代码如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.A

4、LL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYcounterISPORT(clk,reset,enable,sel:INSTD_LOGIC;--定义时钟、异步复位、同步使能、选择信号cq:OUTSTD_LOGIC_VECTOR(6downto0);--计数值c1out:OUTSTD_LOGIC;--进位信号c2out:OUTSTD_LOGIC--借位信号);ENDcounter;ARCHITECTUREcounter99OFcounterISBEGINPROCESS

5、(clk,reset,enable,sel)VARIABLEcot:STD_LOGIC_VECTOR(6downto0);BEGINIFreset='0'THENcot:=(OTHERS=>'0');ELSIFclk'EVENTANDclk='1'THENIFenable='1'THENIFsel='0'THENc2out<='0';IFcot<99THENcot:=cot+1;c1out<='0';ELSEcot:=(OTHERS=>'0');c1out<='1';ENDIF;ELSIFsel='

6、1'THENc1out<='0';IFcot>0THENcot:=cot-1;c2out<='0';ELSEcot:="1100011";c2out<='1';ENDIF;ENDIF;ENDIF;ENDIF;cq<=cot;ENDPROCESS;ENDcounter99;仿真结果如下:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。