推荐答案
测试一下
题目
关于代码覆盖率,描述正确的是
A、代码覆盖率不包括toggle覆盖率
B、代码覆盖率包括line覆盖率
C、代码覆盖率包括功能覆盖率
D、代码覆盖率达到100%,表示验证足够完备,可以停止验证
参考答案与知识点
参考答案
正确答案是B。代码覆盖率是衡量代码执行程度的指标,通常包括行覆盖率(line coverage)、条件覆盖率、分支覆盖率、翻转覆盖率(toggle coverage)、状态机覆盖率等。选项A错误,因为toggle覆盖率(翻转覆盖率)是代码覆盖率的一种,用于衡量信号是否发生了0→1或1→0的翻转。选项C错误,功能覆盖率属于功能验证的范畴,用于衡量设计功能是否被充分验证,而不属于代码覆盖率。选项D错误,代码覆盖率达到100%仅表示所有代码行、分支等被至少执行一次,但并不代表验证完备,因为可能存在未覆盖的功能、时序错误、边界情况等,验证需要结合功能覆盖率等其他指标综合判断。因此,只有选项B正确描述了代码覆盖率的组成。
涉及知识点
- 代码覆盖率的组成
- 行覆盖率定义
- 翻转覆盖率归属
- 代码覆盖率与功能覆盖率的区别
- 100%覆盖率并非验证完备