名称:基于FPGA的二位十进制减法计数器VHDL代码Quartus仿真
软件:Quartus
语言:VHDL
代码功能:
二位十进制减法计数器。
需要满足99—0循环减法计数功能,进行软件仿真并制出波形。需要代码、电路图、波形图,不需要实物。
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. 仿真图
部分代码展示:
LIBRARY?ieee; ???USE?ieee.std_logic_1164.all; ???USE?ieee.std_logic_unsigned.all; --二位十进制减法计数器?99—0循环减法计数 ENTITY?down_cnt?IS ???PORT?( ??????clk????:?IN?STD_LOGIC;--时钟 ??????rst????:?IN?STD_LOGIC;--复位 ??????cnt_H??:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);--计数器十位 ??????cnt_L??:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0)?--计数器个位 ???); END?down_cnt; ARCHITECTURE?trans?OF?down_cnt?IS ???--定义信号 ???SIGNAL?count_H?:?STD_LOGIC_VECTOR(3?DOWNTO?0);--计数器十位 ???SIGNAL?count_L?:?STD_LOGIC_VECTOR(3?DOWNTO?0);--计数器个位 BEGIN ???--计数器控制 ???PROCESS?(clk,?rst) ???BEGIN ??????IF?(rst?=?'1')?THEN--复位清零 ?????????count_H?<=?"0000"; ?????????count_L?<=?"0000"; ??????ELSIF?(clk'EVENT?AND?clk?=?'1')?THEN ?????????IF?(count_H?=?"0000"?AND?count_L?=?"0000")?THEN--计数到00 ????????????count_H?<=?"1001";--回到99 ????????????count_L?<=?"1001";-- ?????????ELSIF?(count_L?=?"0000")?THEN--个位为0 ????????????count_H?<=?count_H?-?"0001";--十位减1 ????????????count_L?<=?"1001";--个位回9
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=753
阅读全文
466