DFT覆盖率问题
时间:10-02
整理:3721RD
点击:
在用DFTC进行扫描链插入时,发现用不同的方式得到的覆盖率不一样,差别很大。我用了两种方式进行扫描链插入:
一种是在综合时直接一次性将所有rtl文件读入,一次性插入扫描链,覆盖率大概是95%左右。
另一种是用Bottom up方式,先对子模块进行综合,插入扫描链,并生成网表和CTL文件,在顶层读入子模块的网表和CTL文件,并进行综合及扫描链插入。
但最终得到的覆盖率只有60%多。差距好大!
我检查了一下两种方式下的扫描链长度及扫描链的数目,完全一样的。
请问是什么原因造成了这种现象?
一种是在综合时直接一次性将所有rtl文件读入,一次性插入扫描链,覆盖率大概是95%左右。
另一种是用Bottom up方式,先对子模块进行综合,插入扫描链,并生成网表和CTL文件,在顶层读入子模块的网表和CTL文件,并进行综合及扫描链插入。
但最终得到的覆盖率只有60%多。差距好大!
我检查了一下两种方式下的扫描链长度及扫描链的数目,完全一样的。
请问是什么原因造成了这种现象?
你得看看是哪个模块覆盖率变低了 拉低了整体的覆盖率
子模块覆盖率可以报出来吗?命令是什么?
flash和sram IP电路在计算覆盖率时会算进去吗
可以报出来 用report_faults ,IP 的faults 要拿掉。
你确定正常插入了吗?clock 和reset有没有问题 ? 检查下log中哪些没有cover到? 你两种模式下相差这么多,多半是clock信号的问题
学习了
确定正常插入了,所有寄存器都串到扫描链上了,但是覆盖率还是很低。而用TetraMAX生成测试向量报出来的覆盖率还挺高,有差不多96%