我正在尝试执行一个加载“计数器”,当load = 1时,我的输入值会计算,但是我在输出中遇到问题,它似乎是输出上的垃圾值。 我使用了旧问题here
中的部分解决方案LIBRARY IEEE;
USE IEEE.std_logic_1164.ALL;
USE IEEE.std_logic_unsigned.ALL;
use IEEE.std_logic_arith.ALL;
ENTITY tot IS
PORT (
i_CLK : IN STD_ULOGIC;
i_CLR : IN STD_LOGIC;
i_DINL : IN STD_LOGIC ;
i_DINK : IN INTEGER;
o_DOUTK : OUT INTEGER
);
END tot;
ARCHITECTURE arch_1 OF tot IS
signal w_K : integer;
BEGIN
PROCESS(i_CLK)
BEGIN
IF rising_edge(i_CLK) THEN
IF (i_CLR = '1') THEN
w_K <= 0;
END IF;
IF (i_DINL = '1') THEN
w_K <= i_DINK;
w_K <= w_K +1;
ELSE
w_K <= w_K;
END IF;
END IF;
END PROCESS;
o_DOUTK <= w_K;
END arch_1;
我的输出错误:
如果我清除了开头的输出,为什么会出错?