调试断言失败_想要快速学习SystemVerilog断言吗?简化了的SVA请了解一下

引言不考虑项目中使用的验证方法,SystemVerilog断言可帮助加快验证过程。使用有效的SV断言,能在验证计划中识别正确的检验器集,并实现检验器的检查,有助于快速发现设计错误,并最终帮助进行高质量的设计。如下是SV断言的一些关键优点:使用SVA代码可以有效地在很多行中实现多行代码检查。综合时可以忽略SVA。因为断言可以指出故障的确切时间点,所以断言只需花费较少的时间进行调试,并且断言...
摘要由CSDN通过智能技术生成
734976805d28b1ed4cdce6f45c15e559.png 引言

不考虑项目中使用的验证方法,SystemVerilog断言可帮助加快验证过程。使用有效的SV断言,能在验证计划中识别正确的检验器集,并实现检验器的检查,有助于快速发现设计错误,并最终帮助进行高质量的设计。

如下是 SV断言的一些关键优点
  • 使用SVA代码可以有效地在很多行中实现多行代码检查。
  • 综合时可以忽略SVA。
  • 因为断言可以指出故障的确切时间点,所以断言只需花费较少的时间进行调试,并且断言可以在仿真过程中打开/关闭。断言失败也有严重性级别,即其可能是由于非致命错误或致命错误。
  • 多时钟断言在围绕跨时钟域(CDC)逻辑编写检验器时很有用。
  • 断言也可以用于形式验证。
让我们看一下不同类型的SV断言示例。
  1. 简单的##延迟断言:

       98cc2db98772f976d39c7d71cb1febdb.png         属性hash_delay_p检验的是: a)在每个时钟周期,信号“a”被置为高电平; b)如果两个时钟周期后的一个周期中信号“a”为高电平,则信号“b”必须置为高电平。   波形片段:         9bd47b5c66c1c749567a0dfa64d8c491.png       当信号“a”为高电平,且两个时钟周期后,信号“b”也为高电平时,断言通过。 在以下两种情况时断言失败:
  • 当信号“a”在任何周期内都未被置为高电平;
  • 当信号“a”为高电平,但两个时钟周期后信号“b”未被置为高电平。

  1. 交叠蕴含:

       37af62ae836acb81cd1799676e1af20c.png    属性overlapped_implication_p检验的是: 如果交叠蕴含符“|->”(被称为“先行算子”)的左边条件(“a”==1)为真,则在同一个时钟周期内检查右边(被称为“后续算子”)条件表达式(“b”==1)。   波形片段:         c4ec6672b2b1db9f6568821c17fd79cc.png       在上面的波形片段中,当信号“a”为高电平,并且在同一个时钟周期内,信号“b”也为高电平时,断言通过。当信号“a”未被置为高电平时,断言则保持在“无效”状态。

仅当信号“a”被置为高电平,并且在同一个时钟周期内,信号“b”未被置为高电平时,断言失败。

  1. 非交叠蕴含:

    76a8873bf17592bbb75e2b077763facf.png

属性non_overlapped_implication_p检验的是: 如果非交叠蕴含符“|=>”(被称为“先行算子”)的左边条件(“a”==1)为真,则在下一个时钟周期检查右边(被称为“后续算子”)条件表达式(“b”==1)。   波形片段:         98fc04e84e7e09755cea61c4cddfba94.png       在上面的波形片段中,当信号“a”为高电平,并且在下一个时钟周期内,信号“b”也为高电平时,断言通过。当信号“a”未被置为高电平时,断言则保持在“无效”状态。

仅当信号“a”被置为高电平,并且在下一个时钟周期内,信号“b”未被置为高电平时,断言失败。

  1. 带延迟范围的断言:

         2c85447dabee4ffc3db15155c23304d5.png             属性overlapped_implication_with_range_p检验的是: 当信号“a”被置为高电平时,在给定的等待时间范围内,将检查信号“b”的断言。   波形片段:         55a1ffe003221f14a290a2865d59dc0c.png       在上面的波形片段中,当信号“a”被置为高电平,并且在5到7(MIN_DELAY:MAX_DELAY)个时钟周期内,信号“b”也被置为高电平时,断言完成。

当信号“a”被置为高电平,并且在5到7个时钟周期内,信号“b”未被置为高电平时,断言失败。

  1. $rose:

         8975e5056bc573e4e76cdbfb9e558f7f.png       属性rose_p检验的是当信号“a”置为高电平时,在同一个时钟周期内,还检测到信号“b”的上升沿。   波形片段:         0ee241fc8acda598295d2ae7702b77b7.png       在上面的波形片段中,当信号“a”被置为高电平,在同一个时钟周期内,信号“b”的上升沿也被检测到时,断言通过。

当信号“a”被置为高电平,而在

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值