BJ-EPM CPLD开发板:VHDL入门例程5(2)

2012年05月16日 11:02 来源:本站整理 作者:秩名 我要评论(0)

--数码管段选译码显示

  architecture MUX of MUX16 is

  signal cnt0_en: STD_LOGIC; --计数器cnt=0标志位

  signal areg: STD_LOGIC_VECTOR (15 downto 0); --输入a(乘数)寄存器

  signal breg: STD_LOGIC_VECTOR (15 downto 0); --输入b(被乘数)寄存器

  signal num: STD_LOGIC_VECTOR (3 downto 0); --每640ms递增数值寄存器

  begin

  --乘数和被乘数锁存

  process(Clk,Rst_n)

  begin

  if (Rst_n = '0') then --异步复位

  areg <= x"0000";

  breg <= x"0000";

  elsif (Clk'event AND Clk = '1') then --时钟上升沿

  if (Mux_en_in = '1' AND cnt0_en = '1') then

  areg <= Mux_ain;

  breg <= Mux_bin;

  end if;

  end if;

  end process;

  --移位运算

  process(Clk,Rst_n)

  variable cnt: integer range 0 to 21;

  begin

  if (Rst_n = '0') then --异步复位

  Mux_yout <= x"00000000";

  cnt := 0; --计数器

  cnt0_en <= '1';

  Mux_done_out <= '0';

  elsif (Clk'event AND Clk = '1') then --时钟上升沿

 

上一页123下一页

本文导航