我想知道,如果在Verilog代码中声明了一个连接,但没有为它赋值,那么Verilog会将它的值视为零吗?
例如,我看到一个代码,其中:
wire start;
module_if my_module_if(.clk(in_clk), .start(start));我可以假设"start“的值为零吗?这是Verilog可以接受的风格吗?
发布于 2014-04-09 06:06:31
没有分配的网络(包括导线)将被初始化为'z‘(也称为高阻抗)。
但是,如果您试图使用"start“作为某种变量或状态,那么您可能应该将其声明为"reg”或"logic“(System-Verilog),而不是"wire”(通常用于互连)。
就风格而言,对于您和代码的读者来说,明确说明逻辑的初始化可能不太容易出错。例如..。
logic start;
initial begin
start = 1'b0;
endhttps://stackoverflow.com/questions/22949033
复制相似问题