热度 8
2015-9-13 19:49
1640 次阅读|
0 个评论
SVA支持expect构造,它与Verilog中的等待wait构造相似,关键的区别在expect语句等待的是属性的成功检验。 expect构造后面的代码是作为一个阻塞的语句来执行。 expect构造的语法与assert构造相似,expect语句允许在一个属性成功或者失败后使用一个执行块。下面举个例子: initial begin @( posedge clk ); #2ns cpu_ready = 1'b1; expect( @(posedge clk) ## memory_ready == 1'b1 ) $display( "Hand shake successful\n" ); else begin $display( "Hand shake failed: exiting\n" ); $finish(); end end 代码很容易看懂,就不解释了!