Tengo un diseño verilog donde hay esta línea:
assign rb = (r == 0) ? 0 : (r == 01) ? g & t : (r == 10) ? g : g|t;
g,t
son valores de 1 bit, r
es un valor de dos bits y rb
es 1 bit.
No soy un gran experto en verilog, pero me preguntaba si esa línea es equivalente a
assign rb = (r == 2'b00) ? 0 : (r == 2'b01) ? g & t : (r == 2'b10) ? g : g|t;
¿Lo es? Si sí es el segundo mejor que el primero? Vale la pena señalar que el código se compila en el primer caso, y la salida de todo el diseño produce lo que espero.