System verilog 如何将模块的输出连接到其输入?

System verilog 如何将模块的输出连接到其输入?,system-verilog,System Verilog,如何在SystemVerilog中判断模块的一个输出直接连接到它的一个输入 它是否取决于所使用的建模级别?如果是,开关电平的正确方式是什么 module abc (input in1, in2, output out1, out2, out3); // out3 needs to be directly connected to in1 // ... endmodule 有很多方法可以做到这一点。但并非所有下游工具(如合成物理工具)都支持它 这是在SystemVerilog中实现的方法 m

如何在SystemVerilog中判断模块的一个输出直接连接到它的一个输入

它是否取决于所使用的建模级别?如果是,开关电平的正确方式是什么

module abc (input in1, in2, output out1, out2, out3);

// out3 needs to be directly connected to in1
// ...

endmodule

有很多方法可以做到这一点。但并非所有下游工具(如合成物理工具)都支持它

这是在SystemVerilog中实现的方法

module abc (input in1, in2, output out1, out2, out3);
// out3 needs to be directly connected to in1
// ...
alias out3 = in1;
endmodule
在Verilog中

module abc (input .in1(sig), in2, output out1, out2, .out3(sig));
wire sig;
// out3 needs to be directly connected to in1
// ...
endmodule

有很多方法可以做到这一点。但并非所有下游工具(如合成物理工具)都支持它

这是在SystemVerilog中实现的方法

module abc (input in1, in2, output out1, out2, out3);
// out3 needs to be directly connected to in1
// ...
alias out3 = in1;
endmodule
在Verilog中

module abc (input .in1(sig), in2, output out1, out2, .out3(sig));
wire sig;
// out3 needs to be directly connected to in1
// ...
endmodule

我假设您正在寻找一种比传统的verilog方法更系统的verilog惯用方法,即
assignout3=in1?是的,SystemVerilog方法更可取。我假设您正在寻找一种比传统的verilog方法
assign out3=in1更系统的verilog惯用方法
?是的,SystemVerilog方式更可取。好的,但是您能说无论是
别名
,还是
分配
,或者出于某种原因,将这两个端口连接到内部网络都比SystemVerilog的其他端口好(除了当前的工具支持)?如果您想要直接连接交换机级别的网络列表,然后使用
别名
。通过
assign
语句,您将失去强度传播。如果您正在编写RTL,那么
assign
就可以了。好吧,但是您可以说
alias
、或
assign
、或将这两个端口连接到内部网络出于某种原因比SystemVerilog的其他端口更好(除了当前工具的支持)?如果您想要直接连接交换机级别的网络列表,然后使用
别名
。通过
assign
语句,您将失去强度传播。如果您正在编写RTL,那么
赋值
就可以了。