Al usar iverilog para compilar un script, aparece el siguiente error:
./alu.v:14: error: Unable to bind parameter 'sel' in 'alu_tb.x1'
./alu.v:14: error: Cannot evaluate genvar case expression: sel
2 error(s) during elaboration.
El código de problema es el siguiente:
module alu(
a,
b,
sel,
out
);
input[7:0] a, b;
input[2:0] sel;
wire a, b, sel;
output[7:0] out;
reg out;
case(sel)
3'b000: assign out = a + b;
3'b001: assign out = a - b;
3'b010: assign out = a * b;
3'b011: assign out = a / b;
3'b100: assign out = a & b;
3'b101: assign out = a | b;
3'b110: assign out = a ^ b;
3'b111: assign out = ~a;
endcase
endmodule
¿Alguien puede ver cuál es el problema aquí? Soy bastante nuevo para verilog. Si ve algo que se pueda hacer mejor, agradecería la orientación.