是否可以将
wire
作为输入的默认值,但不能默认声明模块内部信号?
据我了解
`default_nettype`
控制
input
和inout
端口的端口类型(如问题隐式网络类型声明和`default-nettype中所述)logic
)`default_nettype wire
会生成此代码module m1 (
input logic i1,
output logic o1
);
logic l1;
assign l1 = i1;
assign o1 = l1;
endmodule
与以下意思相同:
module m1 (
input wire logic i1, // <-- default wire
output logic o1
);
wire logic l1; // <-- default wire
assign l1 = i1;
assign o1 = l1;
endmodule
是否有一些设置允许
input
获取默认网络类型线,但在使用未定义信号时仍然会导致失败:
module m1 (
input logic i1, // <-- let this one default to wire
output logic o1
);
logic l1;
logic banana;
assign l1 = i1;
assign hanana = i1; // typo, should give error since no default declaration
assign o1 = l1;
endmodule
不,默认输入网络类型的唯一选择是
`default_nettype
。