芯片验证学习之断言——立即断言、并发断言

一 断言简介

断言是对设计行为属性的描述。它使用描述性语言来描述了设计必须满足的属性。

使用断言的原因:

1.Verilog语言是一种过程性设计语言,在硬件设计过程中不能很好的描述时序行为。

2.SVA是一种描述性语言,可以很好的描述和控制复杂设计的时序的相关问题。

基于断言的验证方法(ABV)是对验证的增补,断言还可以对总线协议进行定义和验证(AHB/APB)。

二 断言分类

1. 立即断言:是非事件性的,类似if语句中的条件表达式,用于检查表达式的值是否为真。如:

assert_info:assert(expression)
     $display("passed");       //expression为真时,执行语句
  else
     $display("failed");      //expression为假时,执行语句

2. 并发断言:基于时钟周期,用于描述一个跨时钟周期的行为,使用关键字property...endproperty描述事件。如:

//当行为属性p_shakehand中的条件request为真时,结果序列必须为真,否者序列失败
property  p_shakehand;                 
   @(posedge  clk)                     

    //符号“|=>”左侧的为原因序列,右侧为结果序列

    request |=> acknowledge ##1 data_enable 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值