// 前者是编码时间单位(#), 后者是仿真的步骤分辨率
`timescale 1 ns/ 1 ps

// 用于测试的模块, 这里的变量可以被可视化
// 变量不写在() 内部,而且没有用output input 声明, 说明这个模块不能被其他模块例化
module "module_name"_vlg_tst();
reg clk;
reg rst_n;                                              

// 需要测试的模块的例化, 相当于变量声明                        
"module_name" i1 ( 
	.clk(clk),
	.rst_n(rst_n)
);

// 仿真专用写法
always begin
	#10
	clk = ~clk;
end	

// 仿真专用写法
initial begin
	$display("-------------------------------------Running testbench-------------------------------------------");  
	clk = 1'b0;
	rst_n = 1'b0;
	
	#100;
	rst_n = 1'b1;
		
	$display("-------------------------------------testbench end-------------------------------------------");		
	$stop;
end  
                                                  
endmodule

