testbench
initial begin: TEST1
@(posedge s1);
$display("start to get data");
@(posedge s2);
@(posedge clk);
$display("The data is %h", data_in);
end
说明:s1的上升沿,s2的上升沿以及对应的clk的第二个时钟上升沿实际上是在一个时间点上,因此打印出的信息是
start to get data
The data is d1
若以上代码改写为:
initial begin: TEST1
@(posedge s1);
$display("start to get data");
#2; //加一个小延时,小于一个clk周期
@(posedge s2);
@(posedge clk);
$display("The data is %h", data_in);
end
则打印出来的信息为:
start to get data
The data is d2