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下一頁

本文導航