
不添加任何额外的HDL代码,工具会通过分析源代码和增加隐藏代码来自动完成代码覆盖率的统计。
当运行完所测试,代码覆盖率工具便会创建相应的数据库。
仿真器都带有代码覆盖率的工具,覆盖率数据也可被转换为可读格式。
行覆盖率:多少行代码已被执行过。
路径覆盖率:在穿过代码和表达式的路径中有哪些已经被执行过。
翻转覆盖率:哪些单位比特变量的值为0或1。
状态机覆盖率:状态机哪些状态和状态转换已经被访问过。
代码覆盖率最终的结果用于衡量你执行了设计中的多少行代码。
关注点应该放在设计代码的分析上,而不是测试平台。
未经测试的设计代码里可能隐藏硬件漏洞,也可能仅仅就是冗余的代码。
代码覆盖率衡量的是测试对于硬件设计描述的“实现”究竟测试得有多彻底,而非针对验证计划。
代码覆盖率达到100%,并意味着验证得工作已经完成,但代码覆盖率100%是验证工作完备性的必要条件。
