从Verilog中的测试平台访问本地模块变量

时间:2013-11-02 01:57:47

标签: verilog

在编写Verilog测试平台以验证模块是否有任何方法可以从测试平台访问该模块的本地特定变量?

1 个答案:

答案 0 :(得分:9)

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

要访问当前模块子层次结构中的变量,可以使用相对路径,如下例“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