作业帮 > 数学 > 作业

根据下面的实体描述,画出电路的结构框图,并用VHDL语言设计异步复位的十进制计数器cnt10.假设cnt10实

来源:学生作业帮 编辑:大师作文网作业帮 分类:数学作业 时间:2024/11/17 20:11:00
根据下面的实体描述,画出电路的结构框图,并用VHDL语言设计异步复位的十进制计数器cnt10.假设cnt10实
根据下面的实体描述,画出电路的结构框图,并用VHDL语言设计异步复位的十进制计数器cnt10.
假设cnt10实体定义为
ENTITY cnt10 IS
PORT(clr,en,clk::IN STD_LOGIC;
cout :out std_logic;
q:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));
END cnt10;
根据下面的实体描述,画出电路的结构框图,并用VHDL语言设计异步复位的十进制计数器cnt10.假设cnt10实
结构框图如下:程序如下:根据我的理解cout为计数器的进位值,q为计数值,根据时钟的变化进行计数!library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all; ENTITY  cnt10  IS      PORT(clr,en,clk: IN STD_LOGIC;      cout : out std_logic;      q : OUT STD_LOGIC_VECTOR(3 DOWNTO 0));      END cnt10;    architecture arc of cnt10 issignal cout_tem: std_logic;signal q_tem: std_logic_vector(3 downto 0);  begin   process(clr,en,clk)  begin  if clr='1' then      q_tem<="0000";     cout_tem<='0';     elsif en='0' then      if clk'event and clk='1' then           if q_tem="1001" then                q_tem<="0000";               cout_tem<='1';               else q_tem<=q_tem+'1';          end if;      end if;  end if;   end process;  cout<=cout_tem;  q<=q_tem;    end arc;