验证环境中,对于数据的检查可以通过scoreboard实现,那么如何实现对协议的检查呢?
driver和monitor是基于某种时序进行激励驱动和采样的,所以就需要检验DUT的时序是否符合要求,这个是SVA断言的主要用途。
1. 断言在testbench扮演的角色
对于测试平台testbench来说,它需要对DUT的功能进行验证,testbench的主要功能有激励产生、自检和功能覆盖三点。
激励产生好说,就是driver
自检机制
指testbench能够自动地检验结果是否符合期望,包括协议检验和数据检验。
数据检验在scoreboard实现了,协议检验则是指对通信协议中的数据格式、时序等内容进行检验。
而SVA能够完成协议检验的内容。
功能覆盖
包括协议覆盖和测试计划覆盖。
协议覆盖用于衡量testbench是否穷尽了DUT的所有功能,个人感觉很类似于对testbench进行验证。
测试计划覆盖用于衡量testbench是否穷尽了testbench的所有可能情况,例如数据包的种类、全体存储空间的读写等等
而SVA能够完成协议覆盖的内容。
本文介绍了SystemVerilog HVL中的断言(SVA)在数字IC验证中的应用,特别是在testbench中用于协议检验的角色。断言分为立即断言和并发断言,前者即时判断满足条件,后者关注时序。SVA在自检机制和功能覆盖方面发挥关键作用,特别是协议覆盖,确保testbench充分验证DUT的功能。
订阅专栏 解锁全文
3775

被折叠的 条评论
为什么被折叠?



