ARCHITECTURE studentVersion OF sawtoothToTriangle IS signal mySignal : unsigned(bitNb-1 downto 0); BEGIN convert: process(sawtooth) begin if sawtooth(bitNb-1) = '1' then mySignal <= NOT sawtooth; else mySignal <= sawtooth; end if; end process convert; triangle <= shift_left(mySignal, 1); END ARCHITECTURE studentVersion;