Verilog断言

时间:2014-07-22 17:39:37

标签: verilog system-verilog assertion

大家。 我对Verilog比较陌生,我正在开发一个内置自测模块。 我正在尝试使用“断言”#39;看逻辑是否正确读取, 我想知道,如果我可以断言PIN而不是信号。

例如,如果我有一个名为MEM_READ的引脚

然后在实例化期间,而不是明确地将引脚定义为.MEM_READ(mem_read)

我正在尝试使用.MEM_READ引脚。

由于

1 个答案:

答案 0 :(得分:2)

您始终可以通过其分层名称引用设计中的任何实体。例如,假设我有以下简单代码:

module top;

  logic a, b;

  modit ma(.in(a),
           .out(b)),
        mb(.in(b),
           .out(a));

endmodule

module modit(input logic in, output logic out);

  assign out = ~in;

endmodule

如果我想从设计中的任何位置引用in模块的mb端口,我可以简单地使用$root.mb.in或者如果我想从顶部引用它模块,我可以使用mb.in

重要的是要意识到in端口实际上只是modit模块中的一个信号,因此我可以使用类似的层次名称来引用任何信号。