写assertion很痛苦?了解一下SVA Checker Library

2023-08-15
关注

现看一段代码

请根据这段代码写一个assertion检查 count 每次加5。

下面是一种写法

看起来不算太复杂。

但是如果让你写一个关于fifo 不能overflow 和 underflow的assertion呢?

是不是发现很头大?

笔者发现我们验证中很多assertion 具有一些共性,比如

某个条件永远不能发生;

某个条件一直为真;

req ack的检查;

在一段时间内,某条件一直为真;

fifo的检查;

等等

这些共性的东西,能不能整理成一个assertion的lib呢?带着疑问我们收集了网上的资料,开始并没有什么收获。

大部分资料都偏向基础的assertion语法解释。

直到我们看到这份文档,笔者大概猜到这就是我们要找的东西。

这完全符合我们最初的设想,有一系列的assertion checker Library 可以供我们调用,实现一些通用的assertion检查。

回到上面第一个问题,我们要用assertion检查count按cycle每次加5怎么做?assert_increment 很好的解决了这个问题。

调用方法:

assert_increment #(0, 7, 5, 0,"ERROR: count has increased beyond allowable limit", 0, 0, 0, 1)invalid_count_increase (clk, reset_n, count);

第二个问题,fifo的underflow ,overflow的检查。可以用assert_fifo 检查。

说了这么多,很多人肯定想知道这个assertion checker library是放在哪里的。

答案是

$VCS_HOME/packages/sva/

没错,他就是VCS的 SVA checker library!

我们点开一个assert_never 看下

各个参数和说明都有,完美!






审核编辑:刘清

您觉得本篇内容如何
评分

相关产品

Honeywell 霍尼韦尔智能工业 在线/便携烟气分析仪专用传感器 气体传感器

CO 传感器;SO2传感器;NO2 传感器;NO传感器;氧气传感器

南方泰科 TGM 压力传感器

TGM是一款SOP8封装的压阻式MEMS压力传感器,其压力传感器芯片封装在 SOP8 塑封壳内。在传感器压力量程内,当用固定电压供电时,传感器产生毫伏输出电压,正比于输入压力。压力传感器芯片为绝压,可提供不同的压力量程的SOP8 压力传感器。

Huba Control 富巴 525系列 压力传感器

525系列压力传感器采用集公司20多年研发经验的陶瓷压力传感器芯片技术。该系列压力传感器可选压力范围大,电气连接形式多。最小量程为50mbar。大批量使用具有很好的性价比。

Cubic 四方光电 PM3009BP 室外粉尘传感器

PM3009BP是一款专门针对餐饮油烟监测的油烟传感器,其采用旁流采样方式,自带除水雾装置,结合智能颗粒物识别算法,确保传感器能够快速准确的检测油烟浓度的变化,同时创新的镜头自清洁技术的应用,能够长效防护传感器油烟污染,大幅度延长传感器的使用寿命。

Winsen 炜盛科技 MH-410D 红外CO2气体传感器 红外传感器

MH-410D红外气体传感器是通用型、智能型、微型传感器,该红外传感器利用非色散红外(NDIR)原理对空气中存在的CO2进行探测,具有很好的选择性,无氧气依赖性,性能稳定、寿命长。内置温度补偿。该红外传感器是通过将成熟的红外吸收气体检测技术与微型机械加工、精良电路设计紧密结合而制作出的小巧型高性能红外传感器。该红外传感器可广泛应用于暖通制冷与室内空气质量监控、工业过程及安全防护监控、农业及畜牧业生产过程监控。

Alliance 莱恩&联众传感线缆 Aurora Tool Cable 医疗电线 医疗线缆

用于连接两个5DOF传感器或一个6DOF传感器的电缆。 可重复使用 用于电磁跟踪系统

RAYCOH 锐科智能 30GM系列 IO-Link输出 2EP-IO,IUEP-IO 超声波测距传感器和接近开关

RAYCOH 锐科智能30GM系列 IO-Link输出 超声波线性位置传感器和开关

评论

您需要登录才可以回复|注册

提交评论

慧生活

这家伙很懒,什么描述也没留下

关注

点击进入下一篇

北上广的打工人,被AI折磨疯了

提取码
复制提取码
点击跳转至百度网盘