ICC dft optimization后的error
place_opt -dtf_optimize后check_scan_chain发现有类似这样子的error
Error: Ordered list checking failed in chain -1. The connection before XXX/icc_place_opt3312 is inconsistent between the SCANDEF and the netlist.(PSYN-1026)
哪位大牛遇到过类似的问题?如何debug?请指点!
我顶,我顶顶顶
这个error没见过,place之前 check_scan_chain , report_scan_chain 都pass了没,
一般来说 place的 optimize_dft 就是做scan reorder,旨在减少wire length,减少congestion,
scanchain的order肯定会变, 但是对func mode不影响
读入scandef后,check_scan_chain , report_scan_chain 都pass了
但是place_opt后就完蛋了,不知道怎么搞得
读入scandef后,check_scan_chain , report_scan_chain 都pass了
但是place_opt后就完蛋了,不知道怎么搞得
那 report_scan_chain 的 信息和dft的信息一样么,
是用 place_opt -optimize_dft这个命令么,
对,就是这个命令。
然后check_scan_chain就出现Error。
但是我用check_scan_chain -chain 1, check_scan_chain -chain 2. check_scan_chain -chain 3分着check都没问题,是V的
用report_scan_chain怎么比较?place_opt -optimize_dft后它不是reorder了么?连接的顺序应该也不一致了呀
找到原因了,但如何解决还不知。
scan单元存在Q和QN,网表中QN是空闲的
进行create_placement后check_scan_chain是没问题的
单独进行optimize_def -plan_group后check_scan_chain是没问题的
进行place_opt 不带-optimize_dft后check_scan_chain发现问题。
QN后接了一个INV再接一个BUF然后接到SI上,这跟scandef中的Q接SI是有出入的,所以存在不一致,
而Q则加了个BUF后,接到了一个pin上。、、
这种情况如何避免呢?怎么会自动启用QN呢?难道就是因为它闲着?
这个挺奇怪的,发synopsis看看吧
请问现在找到解决办法没?
在.lib中Q和QN都被定义为scan 信号端子,所以后端工具认为用谁都可以吧
只能这么理解了。
最后写出scandef,和netlist比较,如果能够netlist能够走通,就代表没问题,即便是QN+INV也认为是可以的
same problem
same problem...