在编写Verilog测试平台以验证模块是否有任何方法可以从测试平台访问该模块的本地特定变量?
答案 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