针对设计人员和验证人员添加systemverilog assertion(SVA)的建议

本文探讨了设计人员与验证人员在SVA(SystemVerilog Assertions)断言上的角色划分,强调了设计人员添加低级别简单断言,验证人员负责高级别复杂断言。提出书写复杂断言的建议,包括使用宏文件、并发断言和独立文件,以提升效率和降低风险。
摘要由CSDN通过智能技术生成

相比Verilog HLD,数字IC设计(RTL开发)人员会觉得SVA学习起来比较复杂。如果一个设计人员不得不书写超过3行的SVA代码,这个工作肯定会迅速转到验证工程师身上

所以,我们需要搞清楚2个问题:

1、什么样的断言由设计人员添加,什么样的断言由验证人员添加?

2、设计人员和设计人员应通过什么样的方式添加断言?

 

一个比较建议的做法是,设计人员直接在RTL内部添加low‐level and simple 断言、由验证人员通过bind方式添加higher‐level and complex 断言。验证人员通过bind方式添加断言的方式能够避免修改RTL带来的风险

对于书写的断言,最好能够遵循下列几个建议:

1、当断言比较复杂,或者比较多的时候,书写在单独的SV文件中。避免像下面这样头重脚轻,无法快速分析需要综合的RTL代码。

 

2、 尽量使用并发断言,因为现在大部分的电路都是同步设计,并发断言能够减少采样次数,提高仿真效率。

3、 使用一个宏文件定义assert property。因为就像前文提到的“如果一个设计人员不得不书写超过3行的SVA代码,这个工作肯定会迅速转到验证工程师身上”。正确的做法应该如下图所示:

 

通过上述这个宏定义,就可以将断言

书写成

看似小小的改变,实际上能够减少我们很多书写3对“()”的编译错误,提高编译调试效率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值