实验三 含异步清0和同步时钟使能的十进制
加法法计数器
一、实验目的:
学习时序电路的设计、仿真和硬件测试,进一步熟悉VHDL设计技术。
二、实验原理
实验图1是一含计数使能、异步复位十进制加法计数器,例1是其VHDL描述。由实验图1所示,图中间是4位锁存器;rst是异步清信号,高电平有效;clk是锁存信号;D[3..0]是4位数据输入端。当ENA为'1'时,多路选择器将加1器的输出值加载于锁存器的数据端;当ENA为'0'时将\"0000\"加载于锁存器。
图1 含计数使能、异步复位十进制加法计数器
三、实验内容
在MAX+plusII上参照例1(4位二进制计数器)进行设计、编辑、编译、综合、适配、仿真。说明例中各语句的作用,详细描述示例的功能特点,给出其所有信号的时序仿真波
形。
1.设计
LIBRARY IEEE;
USE IEEE.STD_LOGIC_11.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY CNT4B IS
PORT (CLK : IN STD_LOGIC;
RST : IN STD_LOGIC;
LOAD : IN STD_LOGIC;
D:IN STD_LOGIC_VECTOR(3 DOWNTO 0);
OUTY : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);
COUT : OUT STD_LOGIC );
END CNT4B;
ARCHITECTURE behav OF CNT4B IS
SIGNAL CQI : STD_LOGIC_VECTOR(3 DOWNTO 0);
BEGIN
P_REG: PROCESS(CLK, RST, LOAD)
BEGIN
IF RST = '1' THEN CQI <= \"0000\";
ELSIF CLK'EVENT AND CLK = '1' THEN
IF LOAD = '1' THEN CQI <= D;
IF CQI=\"1001\" THEN CQI<=\"0000\";
ELSIF CQI<=CQI+1 THEN
END IF;
END IF;
END IF;
OUTY <= CQI;
END PROCESS P_REG ; --进位输出
COUT<=CQI(0) AND NOT(CQI(1))AND NOT(CQI(2))AND CQI(3);
END behav;
2.编辑(如图)
3.编译(如图)
4.
四、引脚锁定以及硬件下载测试。
引脚锁定后进行编译、下载和硬件测试实验。将实验过程和实验结果写进实验报告。
1.引脚锁定(如图)
2.编译和下载(如图)
3.测试(如下图)
当预置数为7时:
当选择清零时:
综上:因为理论值和显示值相同。