SystemVerilog 包含称为约束块的东西,用于伪随机刺激生成。它还包含一个称为“if”的条件,就像在所有编程语言中一样。但还有一件事就是蕴涵运算符。这写成 ->
我的问题是,对于
constraint
块,蕴涵运算符->
和if
语句有什么区别?我们如何知道该使用哪一个?
另外,为什么我们需要在
==
的左侧和右侧都使用 ->
?我无法理解为什么 -> 存在,因此有一些为 UVM 测试平台编写的文件对我来说毫无意义。
IEEE Std 1800-2017 第 18.5.7 节中规定了 if–else 约束:
if–else样式约束声明相当于 影响
您选择哪一个取决于编码风格。