1. The problem statement, all variables and given/known data Creating an Up/Down counter with an output for both units and tens. (which can then be displayed on 7 segnment displays) 2. Relevant equations 3. The attempt at a solution Code (Text): library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity UpDownCount is port(Clk, UpDown, reset: in std_logic; unit, tens: out std_logic_vector(3 downto 0) ); End UpDownCount; Architecture behv2 of UpDownCount is signal units1, tens1: unsigned(3 downto 0); begin process(UpDown, Clk, reset) variable CountUnits, CountTens : unsigned (3 downto 0); begin if (Clk'event and UpDown='1') then ****if CountUnits ='1111' then CountTens := CountTens + '1'; else ****CountUnits := CountUnits + '1'; end if; elsif (Clk'event and UpDown='0') then if CountUnits = '0000' then CountTens := CountTens - '1'; else CountUnits := CountUnits - '1'; end if; end if; end process end architecture The two lines with the stars are the ones where there are errors apparently. For the first one it says there is a syntax error near " ' ", and the second one it says it is expecting an "end" near "elseif". So I'm thinking is there a problem with my if-then statements? Do I need to use parenthesis to wrap the code thats included in the then part? I know its probably something quite simple, but I can't figure it out.