【摘要】:forever循环语句的格式如下:循环过程语句;例6.38:这个例子的含义是:0时间单位给clk赋值为0,第10时间单位进入forever循环,循环无数次,每过100个时间单位,把clk取反后赋值给自己。一般来说,使用forever循环语句的场合都是形成时钟,别的场合用的比较少。因为毕竟是个无限循环。通过这样的方式,就实现了跳出forever循环。
forever循环语句的格式如下:
循环过程语句;
例6.38:
这个例子的含义是:0时间单位给clk赋值为0,第10时间单位进入forever循环,循环无数次,每过100个时间单位,把clk取反后赋值给自己。
一般来说,使用forever循环语句的场合都是形成时钟,别的场合用的比较少。因为毕竟是个无限循环。
对于这种无限循环,可以从两个方面同时着手来控制一下,不让它无止境的循环下去:
(1)在循环过程语句里加入中止语句,进而跳出循环;(www.xing528.com)
(2)在循环过程语句里加入时序触发控制。
例6.39:
上面这个例子,语句1,即0时刻进入initial初始化,counter和clk被赋初始值;
语句4,到达500时刻;语句5,进入一个外层块,这个外层块的名字叫作BREAK_FOREVER,该外层块一直执行到语句12结束;语句6开始forever循环,该循环的范围从语句7到语句11,语句7和语句11构成了一个内层块;语句8,给counter+1,赋值给counter自己;语句9,刚开始的100次循环,counter都达不到大于100,语句9不执行;语句10,建立周期为20个标准时间单位的clk时钟;循环执行到101次,语句9的if条件成立,中止BREAK_FOREVER有名块,也就是从语句5~语句12都中止了,导致for循环结束。
通过这样的方式,就实现了跳出forever循环。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。