seq与property

|->,|=>

seq是单次检查,没什么必要用蕴含操作符
property是并行检查,蕴含操作符的左手是并行检查开启的条件。
##

!!!注意,这里的延迟和仿真里加的#有一点区别。

[*n ]

[=n ]

and

and是同一个周期开始检查,但不一定同一个周期结束检查。
intersect
与and相同是与逻辑,是同一个周期开始检查,也是同一个周期结束检查。
or
是同一个周期开始检查,但不一定同一个周期结束检查。需要左右至少有一个条件满足。才检查。

first_match


throughout

within

if
if和蕴含操作符是一样的

ended

局部变量与赋值
property和sequence内部可以创建局部变量

在sequence、property中调用display

[->1]

$rose $fell $isunknow

$stable

$past

$countbits ,$countones,$onehot,$isunknown

控制assertion的打开和关闭

property 与 assume ,coverage,assertion(checker)

本文详细介绍了SystemVerilog中的序列(seq)和属性(property)的使用,包括单次检查与并行检查的区别、延迟与仿真延迟的不同、周期内检查的各种逻辑操作(如and, intersect, or)以及first_match, throughout, within等语句的用法。此外,还讨论了局部变量的声明和赋值、display的调用以及控制assertion开闭的手段。同时,property与assume、coverage、assertion在验证中的角色也进行了阐述。
1万+

被折叠的 条评论
为什么被折叠?



