library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; entity restrict2 is port (clk, rst: std_logic; cnt : out unsigned(3 downto 0)); end restrict2; architecture behav of restrict2 is signal val : unsigned (3 downto 0); default clock is rising_edge(clk); begin process(clk) begin if rising_edge(clk) then if rst = '1' then val <= (others => '0'); else val <= val + 1; end if; end if; end process; cnt <= val; restrict {rst; (not rst)[*]}; end behav;