Estoy leyendo un diseño VHDL y encontré la sintaxis en la arquitectura que se ve así:
x_out <= x_in(15) & x_in(6) & x_in(19) & x_in(20) & x_in(28) & x_in(11) &
x_in(27) & x_in(16) & x_in(0) & x_in(14) & x_in(22) & x_in(25) &
x_in(4) & x_in(17) & x_in(30) & x_in(9) & x_in(1) & x_in(7) &
x_in(23) & x_in(13) & x_in(31) & x_in(26) & x_in(2) & x_in(8) &
x_in(18) & x_in(12) & x_in(29) & x_in(5) & x_in(21) & x_in(10) &
x_in(3) & x_in(24);
donde x_out
y x_in
son std_logic_vector(31 DOWNTO 0)
. Podría ser escrito así:
x_out(0) <= x_in(15);
x_out(1) <= x_in(6);
x_out(2) <= x_in(19);
x_out(3) <= x_in(20);
x_out(4) <= x_in(28);
x_out(5) <= x_in(11);
x_out(6) <= x_in(27);
x_out(7) <= x_in(16);
x_out(8) <= x_in(0);
x_out(9) <= x_in(14);
x_out(10) <= x_in(22);
x_out(11) <= x_in(25);
x_out(12) <= x_in(4);
x_out(13) <= x_in(17);
x_out(14) <= x_in(30);
x_out(15) <= x_in(9);
x_out(16) <= x_in(1);
x_out(17) <= x_in(7);
x_out(18) <= x_in(23);
x_out(19) <= x_in(13);
x_out(20) <= x_in(31);
x_out(21) <= x_in(26);
x_out(22) <= x_in(2);
x_out(23) <= x_in(8);
x_out(24) <= x_in(18);
x_out(25) <= x_in(12);
x_out(26) <= x_in(29);
x_out(27) <= x_in(5);
x_out(28) <= x_in(21);
x_out(29) <= x_in(10);
x_out(30) <= x_in(3);
x_out(31) <= x_in(24);
¿O en el primer ejemplo es x_out(31) <= x_in(15);
y así sucesivamente?
También en un diseño VHDL, ¿cuál de los 2 métodos son preferidos?