Acabo de darme cuenta que la respuesta a este tema se la ha comido el servidor.
Para quien le pueda servir, cuando se divide un número entre una potencia de 2(como es el caso), se desplaza el último bit, es decir, el bit de signo, tantas veces como la potencia.
En este caso, si queremos dividir por 4 la señal "entrada" que suponemos que es de 8 bits, y guardar el resultado en la señal "resultado" tambien de 8 bits, debemos hacer lo siguiente:
Codigo:
resultado <= entrada(7) & entrada(7) & entrada(7 downto 2);
De esta forma, se conserva el signo de "entrada", ya que se esta copiando el último bit
o mas "elegante"
Codigo:
resultado <= (others => entrada(7)) & entrada(7 downto 2);
Bueno para GilGalaD es muy tarde, pero para los demás espero que os ayude.