我想知道这个 systemVerilog 语法在行为上是否正确:
module m (input [3:0] in1);
endmodule
module top();
assign inst.in1 = 4'b1010;
m inst (.in1());
endmodule
我问这个问题是因为我在运行形式逻辑等价检查时注意到一些奇怪的结果。 还有其他更好的方法来驱动实例端口 in1 吗?
分层引用通常不被认为是可综合的。
如果你想将一个常量驱动到输入中,你可以写
module top();
m inst (.in1(4'b1010));
endmodule
或
module top();
wire [3:0] in = 4'b1010;
m inst (.in1(in));
endmodule