|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
现代集成电路芯片的设计规模越来越大,对其功能验证的要求也随之不断提高。
原有的一些验证手段已不能满足日益复杂芯片的验证需求。功能验证占用了芯片
设计70%以上的资源。为了解决这个困境,EDA 厂商相继推出一些新的验证手
段和概念:随机约束(constrained random),断言(assertion),功能覆盖率(functional
coverage)等等。下面我们将基于SystemVerilog 介绍随机约束(constrained random)
的概念和应用方法。
在验证中,需要产生激励来驱动设计。在时间有限的仿真过程中,定向测试只能
验证芯片的典型行为,而不能验证所有可能的行为,这是定向测试的主要缺陷。
出现这个问题的主要原因是对芯片的定向测试只是针对已知的测试空间,而不是
针对未知的测试空间。即使是仅对已知测试空间的测试也要花费很长时间,一个
小的设计就可能需要上百次不同的测试矢量的测试。而当设计的规模和功能逐渐
增大和变得更加复杂时,我们就可能需要成千上万的定向激励来验证设计的功
能。随着逻辑越来越复杂,验证空间也会相应增加,这不仅要使用大量的人力,
同时随着代码行数的增多也会显著增加代码出错的概率。
因此,随之出现了随机化激励。随机化激励可以仅用几行代码就能产生大量的激
励数据,通过为设计提供随机激励信号来扩大验证的测试空间。
随机化的激励有很多优点:1) 随机激励可以使得验证代码长度明显地缩短,这
不仅减少了时间和人力的花费,还减少了测试平台代码出错的概率。2)随机激
励可以更全面地检测整个设计的功能,找到边角条件下的隐患(有很多是定向验
证难以产生和检查到的边角情况),实现最大化的功能验证覆盖率。3)随机化的
激励一定程度上提高了设计者对设计可靠性的信心。 |
-
-
随机约束.pdf
172.71 KB, 下载次数: 235
, 下载积分:
资产 -2 信元, 下载支出 2 信元
|