我正在创建计算 a+b、ab、a & b 或 a | 之一的 verilog 模块。湾。
问题是它确实计算了 a+b 和 ab。但它不能计算 a & b 和 a | b 并且什么也不返回。
input [31:0] a, b;
input [2:0] op;
output [31:0] z;
output ex;
wire[31:0]a0,a1,a2,a3;
assign a0 = a & b;
assign a1 = a | b;
assign a2 = a + b;
assign a3 = a - b;
assign z=a0;
//assign z=a1;
//assign z=a2;
//assign z=a3;
endmodule
该模块基本上计算 a+b、ab、a&b 和 a|b 并将其计算值分配给 z。
它确实成功地计算了 a+b 和 ab 并将计算值放入 z。
但是对于 a&b 和 a|b,它不会为 z 分配任何东西。
我该如何解决这个问题?
如果你能帮助我,非常感谢。