前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >断言(assertion),把黑盒变成白盒

断言(assertion),把黑盒变成白盒

作者头像
AsicWonder
发布2021-04-08 11:11:46
9290
发布2021-04-08 11:11:46
举报
文章被收录于专栏:数字芯片实验室

对于在校的学生而言,断言(assertion)可能仅仅是一个新潮的概念,因为学校没有验证

实际上,断言已经是完完全全地融入到了数字IC验证过程中了。由于断言的存在,DUT在验证工程师眼里不再是一个Design Under Test,更不再是一个black box

更准确的说,在数字IC验证工程师眼里,我们所验证的设计应该是一个Design Under Explore,等待我们去探索一切的错误风险以及不合理架构

考虑上述场景,我们需要黑盒验证由A和B两个子模块集成的设计。假设设计输出比对失败,现象是在valid_i拉高后,valid_o一直保持低。由于这是一个黑盒验证,我们需要花费非常多的时间和精力追溯信号来定位导致问题的根本原因。

但是,如果验证人员已经基于对A子模块和B子模块行为的理解加入(使用SystemVerilog语句“ bind ”)了相应的断言,那么就可以极大地减少调试的时间。

同样是上述的例子:

对于未集成断言验证环境的调试过程:从设计最终的输出端valid_o追溯到输入端valid_i,观察是哪个子模块丢失了这个valid信号。对于上述所示的小型系统设计来说这仍然很简单,但是实际的复杂设计定位过程可能会花费我们好几天的时间,因为可能跨越非常多的模块,甚至团队

对于集成断言验证环境的调试过程:仅根据子模块A和子模块B中的断言状态就可以快速定位出根本问题所在。如果子模块A的断言失败,我们就无须再查看子模块B的行为是否正确。将画面再拉到一个复杂的系统级设计,你可以想想这些断言对我们有多大的帮助。

即使是一些不存在功能问题的、误报的断言也可能发现设计不那么合理的地方,以帮助我们优化设计架构。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-04-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数字芯片实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档