6

在编写 Verilog 测试平台来验证模块时,有没有办法从测试平台访问该模块的本地特定变量?

4

1 回答 1

12

使用层次引用来访问跨层次变量。

要访问当前模块的子层次结构中的变量,您可以使用相对路径,如下例所示,“dut.localvar”。

要访问不属于当前模块层次结构的模块的变量,请使用从顶部开始的绝对路径,例如“testbench.dut.localvar”。

module testbench();
reg clk;
wire out;

DUT dut(clk, out);

always@(posedge clk)
begin
   $display("%b", dut.local_var);
end
endmodule

module DUT(input wire clk,output reg out);
reg local_var = 1'b0;

always@(posedge clk)
begin
   local_var = ~local_var;
end
endmodule
于 2013-11-02T02:14:17.483 回答