Kmila
Todos los ejercicios
Difícil Desde cero 5 pruebas

Paso de iteración CORDIC

Implementa un paso CORDIC usando aritmética signed de 8 bits.

  • Si dir = '1' (CCW): x' = x − y, y' = y + x
  • Si dir = '0' (CW): x' = x + y, y' = y − x

Convierte las entradas con signed(...) y el resultado con std_logic_vector(...).

x_out <= std_logic_vector(signed(x_in) - signed(y_in)) when dir = '1'
    else std_logic_vector(signed(x_in) + signed(y_in));
y_out <= std_logic_vector(signed(y_in) + signed(x_in)) when dir = '1'
    else std_logic_vector(signed(y_in) - signed(x_in));

Caso de prueba visible

dir=1, x=10, y=5 → CCW

Puerto Tiempo Valor
x_in 0 ns 00001010
y_in 0 ns 00000101
dir 0 ns 1

4 casos de prueba ocultos — resuélvelos para revelarlos.

Ocurrió un error no controlado. Recargar 🗙