Genus进行scan时遇到constant conflict的解决思路
问题描述使用genus工具在scan后的check_dft_rules时检测到测试信号 scan_en 的逻辑值存在冲突。简单来说工具对 scan_en 信号该置高还是置低active high 还是 active low收到了矛盾的指令导致它无法确定正确的测试行为。排查思路首先使用get_db [get_pins path/of/scan_en] .dft_constant_value确认scan_en源头是如何conflict了。发现工具认为此处被固定成了0。之后通过get_fanin [get_pins path/of/scan_en]得到该点的所有逻辑锥。再通过get_db [get_pins ] .dft_constant_value的方法向上逐级追溯整个逻辑锥中所有点发现是scan_en的PAD有点异常。scan_en的IE端为logic_1符合预期但是PAD端为0这直接导致了该pad的输出y端被固定成了0。检查scan的脚本集没有发现有任何地方对该PAD有constant为0的设置。检查io的mdt文件PAD、IE、Y端的方向分别是inout、input、output没有问题。连接关系也正常。没招了