如何中止任务或代码块的执行?
Verilog disable语句能够中止任务或代码块。 通常在以下场景中会使用disable语句:
1、在循环中执行“break”命令,跳过循环迭代,并退出循环
2、在任务完成之前终止任务
disable语句与语句块名称一起使用。 例如:
- initial begin :block1
- begin : block2
- statement1 ;
- //etc
- disable block2 ;
- statement5 ;
- statement6 ;
- end //of blcok2
- statement7 ;
- end // of block1
在上面的例子中,“block1”和“block2”是语句块名。如果遇到disable语句,则退出语句块2,即语句5和6不会被执行,从而去执行语句7。
使用disable语句的唯一限制是它只能在任务中使用,不能在函数中使用,因为它会使函数返回值无效。